GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => Szkript kérések => SA-MP: Szerverfejlesztés => RP/RPG kérések => A témát indította: Devil112 - 2016. január 05. - 16:16:36

Cím: Kocsirestart
Írta: Devil112 - 2016. január 05. - 16:16:36
Sziasztok.
Olyan problémám van , hogy ha a kocsikat restartolom mindegyik kocsi megjavul, és azt szeretném, hogy egyik kocsi se javuljon meg.
 
   if (strcmp(cmd, \"/kocsiresi\", true) == 0)
{
    if(IsPlayerConnected(playerid))
{
   {
   if(Admin(playerid, 3))
      {
         for(new vehicleid = 0; vehicleid <= 500; vehicleid++)
         {
             SetVehicleToRespawn(vehicleid);
             engineOn[vehicleid]=false;
            format(string, sizeof(string), \"RLR-%d\", vehicleid);
         }
      }
      new nev[32];
         GetPlayerName(playerid, nev, sizeof(nev));
      new h,mi,s,y,m,d;
      getdate(y,m,d);
      gettime(h,mi,s);
      format(stringx,sizeof(stringx), \"[%d/%d/%d][%d:%d:%d] %s helyretette az összes járművet.\",y,m,d,h,mi,s,nev);
      LoOoG(stringx);
      SendClientMessageToAll(COLOR_BLUE,\"Összes jármű respawnolva.!\");
      GetPlayerName(playerid, sendername, sizeof(sendername));
      format(string, sizeof(string), \"Admin %s respawnolta az összes járművet!\", sendername);
      SendAdminMessage(COLOR_ADMIN,string);
           }
}
return 1;
}
Cím: Kocsirestart
Írta: zsoolt997 - 2016. január 05. - 16:29:25
Annyit kell csak csinálnod, hogy lekéred az összes jármű HP-ját egy adott változóba, majd azt felhasználva az OnVehicleSpawn callback alatt visszaállítottad a járműnek az életét. Csak ugye globális változónak kell lennie, mert több helyen használod fel.
Cím: Kocsirestart
Írta: 1Mark6 - 2016. január 06. - 17:54:06
Vagy esetleg megoldod, úgy hogy nem a SetVehicleToRespawn-t használod, hanem például amikor leparkolod a kocsit, akkor lemented vele a respawn poziciót is, és amikor, használod a \"/kocsiresi\" parancsot akkor SetVehiclePos és helyükre rakod.
 

enum CarData
{
    Float:car_respawn_pos[4];
}
new cInfo[MAX_VEHICLES][CarData];
stock ParkVehicle(vehicleid)
{
   GetVehiclePos(vehicleid,cInfo[vehicleid][car_respawn_pos][0],cInfo[vehicleid][car_respawn_pos][1],cInfo[vehicleid][car_respawn_pos][2]);
   GetVehicleZAngle(vehicleid,cInfo[vehicleid][car_respawn_pos][3]);
}
CMD:kocsiresi(playerid)
{
   for(new i = 0; i < MAX_VEHICLES; i++)
   {
       SetVehiclePos(i,cInfo[car_respawn_pos][0],cInfo[car_respawn_pos][1],cInfo[car_respawn_pos][2]);
       SetVehicleZAngle(i,cInfo[car_respawn_pos][3]);
   }
   return 1;
}