Szerző Téma: nem törlõdik a lehívott kocsi...  (Megtekintve 700 alkalommal)

dexi

  • Vendég
nem törlõdik a lehívott kocsi...
« Dátum: 2011. december 14. - 12:47:15 »
0 Show voters
[pawn]          if(strcmp(cmdtext, \"/kocsi\", true) == 0)
         {
         new spawnoltkocsiid;
         new Float:pos[4];
         new lespawnolva;
         new spawnoltemar[MAX_PLAYERS];
         spawnoltkocsiid = GetVehicleModel(GetPlayerVehicleID(playerid));
         GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
         GetPlayerFacingAngle(playerid,pos[3]);
         if (spawnoltemar[playerid] == 0)
         {
         lespawnolva = CreateVehicle(spawnoltkocsiid,pos[0],pos[1]+5,pos[2],pos[3], 1, 1, -1);
         spawnoltemar[playerid] = 1;
         }
         else
                     DestroyVehicle(lespawnolva);
         spawnoltemar[playerid] = 0;
         return 1;
            }[/pawn]
Lényeg hogy ha már le van hívva egy jármû(ugyanolyan mint amiben ülünk) akkor törölje az elõzõ lehívott kocsit... de nem akarja törölni az elõzõt.

Nem elérhető Kovacs_Richard

  • 1743
  • HRP Fejlesztő
  • Discord: Kovacs_Richard#0321
    • Profil megtekintése
    • Hun Role Play Web
nem törlõdik a lehívott kocsi...
« Válasz #1 Dátum: 2011. december 14. - 13:09:16 »
0 Show voters
[pawn]
new SpawnedVehicle[MAX_PLAYERS];
OnPlayerCommand:
if(strcmp(cmdtext, \"/kocsi\", true) == 0)
{
if(!IsPlayerInAnyVehicle(playerid){ return 1; } // if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) { return 1; }
new model,Float:pos[4];
//
model = GetVehicleModel(GetPlayerVehicleID(playerid));
GetPlayerPos(playerid,pos[0],pos[1],pos[2]); GetPlayerFacingAngle(playerid,pos[3]);
//
if(!!SpawnedVehicle[playerid]) { DestroyVehicle(SpawnedVehicle[playerid]); }
SpawnedVehicle[playerid] = CreateVehicle(model,pos[0],pos[1]+5,pos[2],pos[3], 1, 1, -1);
return 1;
}
[/pawn]
én kb igy oldanám meg a problémád :) 2 féle variációt írtam az elején ellenõrzésre, az ami most van az csak azt nézi, hogy jármûben van e, ha azt szeretnéd hogy csak sofõr tudja használni akkor a // után levõt rakd be :)
« Utoljára szerkesztve: 2011. december 14. - 13:11:22 írta Kovacs_Richard »
Régóta nem tevékenykedem, mint SA-MP scripter.
HRP Fejlesztő.

Nem elérhető Dead

  • 2045
    • Profil megtekintése
nem törlõdik a lehívott kocsi...
« Válasz #2 Dátum: 2011. december 14. - 17:48:47 »
0 Show voters
[pawn]   if(IsPlayerInAnyVehicle(playerid)) SendClientMessage(playerid,red,\"HIBA: neked már van egy jármûved\");[/pawn]
:D

Dupla hozzászólás automatikusan összefûzve. ( 2011. december 14. - 17:50:33 )

[pawn]   
CMD:v(playerid, params[])
{
new Index;
    new tmp[256];  tmp  = strtok(params,Index);
new tmp2[256]; tmp2 = strtok(params,Index);
new tmp3[256]; tmp3 = strtok(params,Index);
    if(!strlen(tmp)) return
SendClientMessage(playerid, COLOR_YELLOW, \"Használat: /v {FF0000}[Név / ID] {1E90FF}[szín 1] {0000FF}[szín 2]\");
if(IsPlayerInAnyVehicle(playerid)) SendClientMessage(playerid,red,\"HIBA: neked már van egy jármûved\");
new car;
new string[128];
new colour1, colour2;
if(!IsNumeric(tmp))
    car = GetVehicleModelIDFromName(tmp);
else car = strval(tmp);
if(car < 400 || car > 611) return  SendClientMessage(playerid, COLOR_ULTRARED, \"Hiba: Érvénytelen ID vagy név!\");
if(!strlen(tmp2)) colour1 = random(126); else colour1 = strval(tmp2);
if(!strlen(tmp3)) colour2 = random(126); else colour2 = strval(tmp3);
    if(SpawnedVehicles[playerid] != 0) DestroyVehicle(SpawnedVehicles[playerid]);
new Float:X,Float:Y,Float:Z;
new Float:Angle,int1;
new LVehicleID = GetPlayerVehicleID(playerid);
GetPlayerPos(playerid, X,Y,Z);
GetPlayerFacingAngle(playerid,Angle);
int1 = GetPlayerInterior(playerid);
SpawnedVehicles[playerid] = CreateVehicle(car, X+3,Y,Z, Angle, colour1, colour2, -1);
LinkVehicleToInterior(LVehicleID,int1);
PlayerPlaySound(playerid,1085,0,0,0);
PutPlayerInVehicle(playerid,SpawnedVehicles[playerid],0);
format(string, 128, \"{33AA33}Lekértél egy {FFFF00}%s -t! | {33CCFF}Színei: {FFFF00}%i, %i\", VehicleNames[car-400], colour1, colour2);
return SendClientMessage(playerid, -1, string);
}
stock GetVehicleModelIDFromName(vname[])
{
for(new i = 0; i < 211; i++)
{
if ( strfind(VehicleNames, vname, true) != -1 )

return i + 400;


}


return -1;


}


stock IsNumeric(string[])


{


for (new i = 0, j = strlen(string);


i < j; i++)


{


if (string
> \'9\' || string < \'0\')

return 0;


}


return 1;


}


[/pawn]
« Utoljára szerkesztve: 2011. december 14. - 17:50:33 írta Dead »

dexi

  • Vendég
nem törlõdik a lehívott kocsi...
« Válasz #3 Dátum: 2011. december 14. - 19:13:30 »
0 Show voters
Dead, én nem egy /v parancsot kértem :D Én az én parancsom \"megjavítását\"

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal