Szerző Téma: miért nem jó?=(  (Megtekintve 544 alkalommal)

dexi

  • Vendég
miért nem jó?=(
« Dátum: 2011. november 14. - 11:31:57 »
0 Show voters
[pawn]public OnPlayerUpdate(playerid)
{
new penz;
penz = GetPlayerMoney(playerid);
if(penz < 0 && minuszertesitve[playerid] == false)
{
SendClientMessage(playerid, RED, \"Adósságba verted magad, figyelj oda!\");
minuszertesitve[playerid] = true;
}
}[/pawn]
BElépek minden okéé... leviszem lémet 0 alá akkor egyfojtában befloodolja hogy \"Adosságba verted magad, figyelj oda!\"

Nem elérhető hunfiu

  • 161
    • Profil megtekintése
miért nem jó?=(
« Válasz #1 Dátum: 2011. november 14. - 13:03:43 »
0 Show voters
mert ez automatán mindig megnézi a pénzed szóval 1megnézi utána megint és megint...
Sorry: kijavítást nem tom hogy kell :(

miért nem jó?=(
« Válasz #2 Dátum: 2011. november 14. - 13:11:01 »
0 Show voters
A hibát én sejtem mi lehet: van egy olyan kódrészlet ami felülírja a minuszertesitve változót ajánlott más logikai elvet használni, vagy felülírással megoldani.
A felülírásra (ami pazarolni fog neked nagyon) itt egy példa:
[pawn]
public OnPlayerUpdate(playerid)
{
new penz;
penz = GetPlayerMoney(playerid);
if(penz > 0 && minuszertesitve[playerid] == true)
{
   minuszertesitve[playerid] = false;
}
else
{
   SendClientMessage(playerid, RED, \"Adósságba verted magad, figyelj oda!\");
   minuszertesitve[playerid] = true;
}
[/pawn]
Arról, hogy mûködni fog nincs ötletem mivel nem próbáltam ki a kódot. Lehet rossz a logikai elvem de én ilyesmi irányba indulnék el a megoldás terén.

miért nem jó?=(
« Válasz #3 Dátum: 2011. november 14. - 14:34:45 »
0 Show voters
Elvileg jónak kéne lennie...
Próbáld meg így:
[pawn]if(penz < 0 && minuszertesitve[playerid] != true)[/pawn]
Ugyanaz amit eddigis írtál, de hátha jó lesz így. Ha nem jó akkor próbáld meg timerrel megoldani (timert indítod ongminit / onfsinit alatt: [pawn]for(new i = 0; i<MAX_PLAYERS;i++)SetTimerEx(\"MoneyCheck\", 300, 1, \"i\",i);[/pawn] A többit meg tudod gondolom ha nem ak szólj.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal