Szerző Téma: else utáni hiba. JAVITVA  (Megtekintve 1191 alkalommal)

else utáni hiba. JAVITVA
« Dátum: 2015. október 03. - 11:44:43 »
0 Show voters
Sziasztok.
Javitom.Elnézést.
Van egy repülős munkám amben belekell hogy ülj egy repülőbe és beirni hogy /repulomunka
ekkor kidob 3 mapicont 3 kordinátával.Elkell repülni valamelyikhez és ha ott vagy akkor be irod hogy /letesz és kapsz 1200$ árt nos az a baj hogy a sok troll be irná egymás után vagy 80x hogy /letesz és igy 80xkapna 1200$ ugyan azon ahelyen megmozdulás nélkül. Ezt kellene valahogy gátlásolni
KÓD:
 
CMD:levesz(playerid,params[])
{
if(IsPlayerInRangeOfPoint(playerid, 15.0, -1491.1643,2.5248,14.1484)) // Repülő 1
RemovePlayerMapIcon(playerid, 21);
GivePlayerMoney(playerid,400);
SendClientMessage(playerid,Piros,\"Itt van 400$ de elnemond a fönöködnek!\");
} else
if(IsPlayerInRangeOfPoint(playerid, 15.0, 216.5060,2499.6987,16.4844)) // Repülő  2
{
RemovePlayerMapIcon(playerid, 22);
} else
if(IsPlayerInRangeOfPoint(playerid, 15.0, 1477.1128,1505.4510,10.8203)) // Repülő  3
{
RemovePlayerMapIcon(playerid, 23);
SetPlayerMapIcon(playerid, 24, 1926.1964,-2416.1304,13.5391, 41, 0, MAPICON_GLOBAL);
} else
if(IsPlayerInRangeOfPoint(playerid, 30.0, 1926.1964,-2416.1304,13.5391)) //Repülő 4
{
SendClientMessage(playerid,Piros,\"Már levetted a csomagot!\");
}
else
RemovePlayerMapIcon(playerid, 24);
GivePlayerMoney(playerid,1200);
SendClientMessage(playerid,Piros,\"Sikeresen végrehajtotttad a feladatott ezért kapsz 1200$\");
}
}
else SendClientMessage(playerid,Piros,\"Nem vagy a megadott helyen!\");
return 1;
}
« Utoljára szerkesztve: 2015. október 03. - 12:12:32 írta narancs741 »

else utáni hiba. JAVITVA
« Válasz #1 Dátum: 2015. október 03. - 12:02:04 »
0 Show voters
Szia.
Kérlek próbáld meg jobban elmagyarázni, hogy mi a gond, mi kéne, vagy mi nem, mert így sokat nem értünk abból amit leírtál.
Tisztelettel Szilikee.

else utáni hiba. JAVITVA
« Válasz #2 Dátum: 2015. október 03. - 12:13:18 »
0 Show voters
Javitva

else utáni hiba. JAVITVA
« Válasz #3 Dátum: 2015. október 03. - 12:17:11 »
0 Show voters
Ez így sehogy se jó. Keversz mindent mindennel, az if-ek és else-k rossz helyen vannak, 3 koordinátát használsz elvileg, de itt van 4 is. Próbáld meg azt leírni, hogy melyik 3 koordináta az, ahol le kell adnia a csomagot, és úgy tudok segíteni.

else utáni hiba. JAVITVA
« Válasz #4 Dátum: 2015. október 03. - 12:22:17 »
0 Show voters
Jaaaaaaj Az mind1 lehet 4 is nekem csak az a megoldás kellene ami gátlásolja vegyük példának ez a 3 kordit :

-1491.1643,2.5248,14.1484
216.5060,2499.6987,16.4844
1477.1128,1505.4510,10.8203

 
Erre a 3 kordira kell elrepülnöm.De csak 1 parancsal a /levesz el akarok mind a 3 helyen levenni xD külömbözőő jutalmakkal.

else utáni hiba. JAVITVA
« Válasz #5 Dátum: 2015. október 03. - 12:26:31 »
0 Show voters
Hozz létre egy globális változót:
new valami[MAX_PLAYERS];
Mikor a játékos beírja hogy /repulosmunka adj neki egy értéket :
valami[playerid]= 1;
Mikor beírja hogy /lerak lekérdezed :
 
if(valami[playerid] == 1)
{
// ad neki pénzt mindent.
valami[playerid]=0; // lenullázod az értéket
}
else
{
// visszajelzést küldesz hogy lepakolta
}

else utáni hiba. JAVITVA
« Válasz #6 Dátum: 2015. október 03. - 12:30:19 »
0 Show voters
// Globális változó:
new levehet[MAX_PLAYERS]; // Ezzel annyi a feladatod, amikor /repulosmunka vagy mit beír, hogy dolgozzon, adsz neki egy értéket:
// levehet[playerid] = 1;
CMD:levesz(playerid)
{
if(levehet[playerid] == 0) return SendClientMessage(playerid, Piros, \"Nem tudsz levenni semmit!\"); // Ha már levette, vagy nincs munka, akkor nem tudja használni
if(IsPlayerInRangeOfPoint(playerid, 15.0, -1491.1643, 2.5248, 14.1484)) // Repülő 1
        {
levehet[playerid] = 0;
                RemovePlayerMapIcon(playerid, 21);
GivePlayerMoney(playerid, 400);
SendClientMessage(playerid, Piros, \"Itt van 400$.\");
}
else if(IsPlayerInRangeOfPoint(playerid, 15.0, 216.5060, 2499.6987, 16.4844)) // Repülő  2
{
levehet[playerid] = 0;
RemovePlayerMapIcon(playerid, 22);
GivePlayerMoney(playerid, 600);
SendClientMessage(playerid, Piros, \"Itt van 600$.\");
}
else if(IsPlayerInRangeOfPoint(playerid, 15.0, 1477.1128, 1505.4510, 10.8203)) // Repülő  3
{
levehet[playerid] = 0;
RemovePlayerMapIcon(playerid, 23);
GivePlayerMoney(playerid, 800);
SendClientMessage(playerid, Piros, \"Itt van 800$.\");
}
else SendClientMessage(playerid, Piros, \"Nem vagy a megadott helyen!\");
return 1;
}

else utáni hiba. JAVITVA
« Válasz #7 Dátum: 2015. október 03. - 12:57:00 »
0 Show voters
Köszönöm szilikee1998 Válasza alapján átrendeztem a sorokat és müködik :)
Hawky A tied is jó csak már megcsináltam köszönöm neked is. :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal