Szerző Téma: A /motor parancs fejlesztése  (Megtekintve 1210 alkalommal)

Nem elérhető sz18k

A /motor parancs fejlesztése
« Dátum: 2011. június 22. - 12:47:14 »
0 Show voters
Helló!
Az lenne egy kérésem, hogy ami most van nekem motor indítási szkriptem, az amikor nem megy a motor nem engedi, hogy mozgassam a kamerát, és amikor beülök egy kocsiba, motorba, és nincs beindítva a motor, akkor is zúg. A kérésem az lenne, hogy amikor benne ülök és nincs beindítva, akkor is tudjam mozgatni a kamerát, és amikor nincs beindítva ne zúgjon még a motor.
Íme a jelenlegi szkript:
Ez a /motor parancs:
[pawn]   if(!strcmp(cmd, \"/motor\", true) || !strcmp(cmd, \"/motor\", true))
{
    if(IsPlayerConnected(playerid))
    {
      if(IsPlayerInAnyVehicle(playerid))
      {
          if(!engineOn[GetPlayerVehicleID(playerid)])
          {
              if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
            {
               return 1;
            }
            if(idcar == 59 || idcar == 60)
            {
               return 1;
            }
            if(idcar >= 135 && idcar <= 154)
            {
                if(HireCar[playerid] != idcar)
                {
                  return 1;
               }
            }
            if(IsAHarvest(idcar))
            {
                return 1;
            }
            if(IsASweeper(idcar))
            {
                return 1;
            }
            if(gEngine[playerid] == 1) { return 1; }
            new playerveh = GetPlayerVehicleID(playerid);
            PutPlayerInVehicle(playerid, playerveh, 0);
            SendClientMessage(playerid, COLOR_LIGHTGREEN,\"Beindítod a motort...\");
            SetTimerEx(\"StartingTheVehicle\",2000,0,\"i\",playerid);
            GameTextForPlayer(playerid, \"~w~Indítás...\",2000,3);
            new y, m, d;
            new h,mi,s;
            getdate(y,m,d);
            gettime(h,mi,s);
            format(string,sizeof(string), \"(%d/%d/%d)[%d:%d:%d] %s [CMD] -> /motor\",d,m,y,h,mi,s,sendername);
            CommandLog(string);
            return 1;
         }
         else if(engineOn[GetPlayerVehicleID(playerid)])
          {
              if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
            {
               return 1;
            }
            if(pveh == 510 || pveh == 462 || pveh == 481 || pveh == 509)
            {
               return 1;
            }
            if(idcar == 59 || idcar == 60)
            {
               return 1;
            }
            if(idcar >= 135 && idcar <= 154)
            {
                if(HireCar[playerid] != idcar)
                {
                  return 1;
               }
            }
            if(IsAHarvest(idcar))
            {
                return 1;
            }
            if(IsASweeper(idcar))
            {
                return 1;
            }
            engineOn[GetPlayerVehicleID(playerid)] = false;
            //SafeRemovePlayerFromVehicle(playerid);
                    TogglePlayerControllable(playerid,0);
            format(string, sizeof(string), \"* Valaki leállította a motort.\");
            ProxDetector(30.0, playerid, string, COLOR_CHAT1,COLOR_CHAT2,COLOR_CHAT3,COLOR_CHAT4,COLOR_CHAT5);
                    gEngine[playerid] = 0;
            new y, m, d;
            new h,mi,s;
            getdate(y,m,d);
            gettime(h,mi,s);
            format(string,sizeof(string), \"(%d/%d/%d)[%d:%d:%d] %s [CMD] -> /motor\",d,m,y,h,mi,s,sendername);
            CommandLog(string);
            return 1;
         }
      }
    }
    return 1;
}[/pawn]
Ez pedig ha SHIFT-el indítom a motort:
[pawn]  else if(PRESSED(KEY_JUMP))
    {
        if(IsPlayerInAnyVehicle(playerid))
        {
      if(IsPlayerConnected(playerid))
      {
         if(!engineOn[GetPlayerVehicleID(playerid)])
         {
             new idcar = GetPlayerVehicleID(playerid);
            
               if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER) return 1;
            if(pveh == 510 || pveh == 462 || pveh == 481 || pveh == 509) return 1;
            if(IsARentableCar(idcar))
            {
                if(HireCar[playerid] != idcar) return 1;
            }
            if(IsAHarvest(idcar)) return 1;
            if(IsADrugHarvest(idcar)) return 1;
            if(IsASweeper(idcar)) return 1;
            if(CanTurnEngine[playerid] != idcar && CanTurnEngine[playerid] == 9999)
                return SendClientMessage(playerid, COLOR_GREY,\"* Nem tudod elindítani ezt a motort!\");
            new plname[MAX_PLAYER_NAME];
            GetPlayerName(playerid, plname, sizeof(plname));
            format(string, sizeof(string), \"* Valaki elfordítja a kulcsot és megpróbálja beindítani a motort.\");
            ProxDetector(30.0, playerid, string, COLOR_CHAT1,COLOR_CHAT2,COLOR_CHAT3,COLOR_CHAT4,COLOR_CHAT5);
            if(PlayerInfo[playerid][pAdmin] < 1337 && PlayerInfo[playerid][pAdminDuty] == 1)
            {
                SetTimerEx(\"StartingTheVehicle\",1,0,\"i\",playerid);
            }
            else
            {
               SetTimerEx(\"StartingTheVehicle\",3500,0,\"i\",playerid);
            }
            GameTextForPlayer(playerid, \"~w~Motor indítása...\",3500,3);
            gEngine[playerid] = 1;
            new y, m, d;
            new h,mi,s;
            getdate(y,m,d);
            gettime(h,mi,s);
            format(string,sizeof(string), \"(%d/%d/%d)[%d:%d:%d] %s [CMD] -> /motor\",d,m,y,h,mi,s,plname);
            CommandLog(string);
            return 1;
         }
      }
   }[/pawn]
Tehát ezt kellene átalakítani. Elõre is köszönöm az ötleteket!!!
Üdv: konorbi.

A /motor parancs fejlesztése
« Válasz #1 Dátum: 2011. június 23. - 22:37:20 »
0 Show voters
Annyira nem értek a scripteléshez de hogy mozogjon a kamera, azt asszem úgy oldjuk meg, hogy ha kiszedjük ezt a sort:
[pawn]if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)[/pawn]

Nem elérhető Stray

  • 617
    • Profil megtekintése
A /motor parancs fejlesztése
« Válasz #2 Dátum: 2011. június 24. - 10:11:39 »
0 Show voters
Azt nem ajánlatos kiszedni, mert akkor az utasok is be, illetve letudják állítani a motort.

Nem elérhető sz18k

A /motor parancs fejlesztése
« Válasz #3 Dátum: 2011. június 27. - 19:11:40 »
0 Show voters
Senki többet?  ;)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal