Szerző Téma: Kocsi ajtó probléma/bug  (Megtekintve 630 alkalommal)

Nem elérhető kos

  • 292
    • Profil megtekintése
Kocsi ajtó probléma/bug
« Dátum: 2014. február 26. - 12:47:41 »
0 Show voters
Üdv, nos én nem is tudom hogyan mondjam el xD A parancs jó, de mégsem  :facepalm:
Szóval normálisan ki írja, ha beírom /kocsi ajtó akkor szépen bezárja, majd ha ismét kinyitja ezek az üzenet részek, de ott van a parancs is, hogy zárja be, de nem zárja be mikor ki írja a bezárást.... Szóval nem értem lefut de nem csinálja   :shurg: nem tudom mi lehet a problémája....
 

CMD:kocsi(playerid, params[])
{
new string[128];
if(isnull(params))
{
SendClientMessage(playerid, -1,\"========================================================================================\");
SendClientMessage(playerid, -1,\"/kocsi [ajtó]\");
SendClientMessage(playerid, -1,\"========================================================================================\");
return 1;
}
if(!strcmp(params, \"ajtó\", true))
{
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
   new Float:vx, Float:vy, Float:vz, idx;
   idx = GetVehiclePos(i, vx, vy, vz);
   GetVehiclePos(i, vx, vy, vz);
   if(IsPlayerInRangeOfPoint(playerid, 3, vx, vy, vz))
   {
      new engine,lights,alarm,doors,bonnet,boot,objective;
                     GetVehicleParamsEx(idx,engine,lights,alarm,doors,bonnet,boot,objective);
      if(doors == 1)
       {
           SetVehicleParamsEx(idx,engine,lights,alarm,0,bonnet,boot,objective);
           SendClientMessage(playerid,-1,\"Ajtók nyitva!\");
       }else{
           SetVehicleParamsEx(idx,engine,lights,alarm,1,bonnet,boot,objective);
           SendClientMessage(playerid,-1,\"Ajtók zárva!\");
       }
   }//else{SendClientMessage(playerid,-1,\"Nincs közeledben jármû!\");}
}
}
return 1;
}

 
Köszi elõre is a segítséget :)

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Kocsi ajtó probléma/bug
« Válasz #1 Dátum: 2014. február 26. - 13:12:10 »
0 Show voters
Tessék:
 
#include a_samp
#include sscanf2
#include zcmd
CMD:ajto(playerid, params[]) {
new functions[16];
if(sscanf(params, \"s[16]\", functions)) return SendClientMessage(playerid, -1, \"Használat: /ajto [nyit/zár]\");
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, 0xff0000ff, \"Hiba! Vezetned kell egy jármûvet!\");
if(!strcmp(functions, \"nyit\")) {
for(new i; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && i != playerid) SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid), i, 0, 0);
SendClientMessage(playerid, 0x33aa33ff, \"Ajtók nyitva!\");
}
else if(!strcmp(functions, \"zár\")) {
for(new i; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && i != playerid) SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid), i, 0, 1);
SendClientMessage(playerid, 0x99aa99ff, \"Ajtók zárva!\");
}
else SendClientMessage(playerid, -1, \"Használat: /ajto [nyit/zár]\");
return 1;
}
« Utoljára szerkesztve: 2014. február 26. - 13:33:53 írta Flash »

Nem elérhető kos

  • 292
    • Profil megtekintése
Kocsi ajtó probléma/bug
« Válasz #2 Dátum: 2014. február 26. - 13:40:33 »
0 Show voters
Hát nem tudom, hogy ez példa akart e lenni, mert
1. ez a script nem mûködik megfelelõen.
2. amúgy is az kocsiban ülve lehet csak használni. (nekem pedig a közelben lévõ kocsis megoldás kéne)
3. meg ha példa is akart lenni nem használtad a kód függvényeket amit én használtam.
4. kocsiban üléssel nekem megy bug mentesen, de nekem úgy kéne hogy az a ranges(területi) megoldás jó legyen.
De azért köszi :)

Dupla hozzászólás automatikusan összefûzve. ( 2014. február 26. - 13:49:51 )

Téma megoldva  8)
Elnéztem  :facepalm:
 

CMD:kocsi(playerid, params[])
{
new functions[16];
if(sscanf(params, \"s[16]\", functions)) return SendClientMessage(playerid, -1, \"Használat: /kocsi [ajtó]\");
if(!strcmp(functions, \"ajtó\", true))
{
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
   new Float:vx, Float:vy, Float:vz, idx;
   //idx = GetVehiclePos(i, vx, vy, vz);
   GetVehiclePos(i, vx, vy, vz);
   if(IsPlayerInRangeOfPoint(playerid, 3, vx, vy, vz))
   {
      new engine,lights,alarm,doors,bonnet,boot,objective;
      idx = GetPlayerVehicleID(playerid);
                     GetVehicleParamsEx(i,engine,lights,alarm,doors,bonnet,boot,objective);
      if(doors == 1)
       {
           SetVehicleParamsEx(i,engine,lights,alarm,0,bonnet,boot,objective);
           SendClientMessage(playerid,-1,\"Ajtók nyitva!\");
       }else{
           SetVehicleParamsEx(i,engine,lights,alarm,1,bonnet,boot,objective);
           SendClientMessage(playerid,-1,\"Ajtók zárva!\");
       }
   }//else{SendClientMessage(playerid,-1,\"Nincs közeledben jármû!\");}
}
}
return 1;
}

 
ugye bár az idx volt a kocsi id definiálása, de én a max vehicle függvényt akartam használni, és ilyenkor nem szabad mással is definiálni... Tehát az idx helyére i betût beírtam és mûködik is  8)
De azért még 1x köszi, legalább rövidítettem a sorokat a tiéd szerint fent  :smokin:
« Utoljára szerkesztve: 2014. február 26. - 13:49:51 írta kos »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal