Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Matteo poslato Oktobar 24, 2010, 12:00:59 POSLE PODNE

Naslov: [Pomoc] Kazaljka
Poruka od: Matteo poslato Oktobar 24, 2010, 12:00:59 POSLE PODNE
Vidio sam puno tema takvog oblika no nijedna mi nije puno pomogla, napravim sve i pise mi stalno 0 km na h pa ako mi moze neko od pocetka sve detaljno objasnit, bio bi mu jako zahvalan. Unaprijed Hvala!
Naslov: Odg: [Pomoc] Kazaljka
Poruka od: Tony Zero poslato Oktobar 24, 2010, 15:07:20 POSLE PODNE
samo skini neku filterskriptu za to...mozes ih naci mnoogoo  :)
Naslov: Odg: [Pomoc] Kazaljka
Poruka od: Matteo poslato Oktobar 24, 2010, 15:14:06 POSLE PODNE
Reko sam da hocu SAM napraviti kazaljku... Imam vec skripta...
Naslov: Odg: [Pomoc] Kazaljka
Poruka od: makelele poslato Oktobar 24, 2010, 15:27:51 POSLE PODNE
pa de stavi ovde to sto si ti napravio pa da se vidi gde si pogrijesio
Naslov: Odg: [Pomoc] Kazaljka
Poruka od: Matteo poslato Oktobar 24, 2010, 18:07:04 POSLE PODNE
na vrhu skripte imam:

forward chack(playerid);

forward chack2(playerid);

new Speed;

new Text:TextDraw2;

Speed = GetSpeed(playerid);


zatim imam pod public OnGameModeInit():

TextDraw2 = TextDrawCreate(390.0, 425.0, "km/h");//slozio sam samo za test, kasnije cu ga uredit...

pod komandama:

if (strcmp("/upali", cmdtext, true, 10) == 0)
{
       TextDrawShowForPlayer(playerid, TextDraw2);
      format(string, sizeof(string), "%0.0f km/h", Speed);
TextDrawSetString(TextDraw2, string);
SetTimer("chack", 500, 1);
return 1;
}
if (strcmp("/ugasi", cmdtext, true, 10) == 0)
{
       TextDrawHideForPlayer(playerid, TextDraw2);
return 1;
}


pod stock GetSpeed(playerid)

stock GetSpeed(playerid)
{
    new Float:ST[3];
    GetVehicleVelocity(GetPlayerVehicleID(playerid),ST[0],ST[1],ST[2]);
    return floatround(1.61*floatsqroot(floatpower(floatabs(ST[0]), 2.0) + floatpower(floatabs(ST[1]), 2.0) + floatpower(floatabs(ST[2]), 2.0)) * 100.3);
}


pod public chack(playerid)

public chack(playerid)
{
TextDrawShowForPlayer(playerid, TextDraw2);
format(string, sizeof(string), "%0.0f km/h", Speed);
TextDrawSetString(TextDraw2, string);
SetTimer("chack2", 500, 1);
   return 1;
}


pod public chack2(playerid)

public chack2(playerid)
{
TextDrawShowForPlayer(playerid, TextDraw2);
format(string, sizeof(string), "%0.0f km/h", Speed);
TextDrawSetString(TextDraw2, string);
SetTimer("chack1", 500, 1);
   return 1;
}


i to je to... kada ukucam /upali stalno je 0 km/h... neznam di sam pogrijesio
Naslov: Odg: [Pomoc] Kazaljka
Poruka od: нaмed - pusim si ćaći :D poslato Oktobar 25, 2010, 12:38:41 POSLE PODNE
if (strcmp("/upali", cmdtext, true, 10) == 360 ili koliko vec oces tak sam ja isot sam kod mene /shift)
Naslov: Odg: [Pomoc] Kazaljka
Poruka od: LuKsA poslato Oktobar 25, 2010, 13:22:18 POSLE PODNE
mad9dog molim te ne pricaj [cenzura]osti.. kakve if (strcmp("/upali", cmdtext, true, 10) == 360 ??

matteokov, zasto ponavljas timere? Stavio si da se timer 'chack' ponavlja odma na pocetku, pa ne moras onda u svakom callbacku tako, procitaj malo settimer i settimerex funkciju.. Zasto si stavljao bezveze chack2? Ne trebaju ti 2 timera/callbacka

public chack(playerid)
{
TextDrawShowForPlayer(playerid, TextDraw2);
format(string, sizeof(string), "%0.0f km/h", GetSpeed(playerid));
TextDrawSetString(TextDraw2, string);
//SetTimer("chack2", 500, 1);
    return 1;
}


Pod komandom upali si morao stavit ovo:

SetTimerEx("chack", 500, 1, "ii", playerid);

I da.. ne pise se chack nego check

Znaci ja ti pokusavam objasniti da nesmijes koristiti SetTimer nego SetTimerEx ako je za odredenog igraca, i takoder, da nemoras ponavljati timere ako vec jesu s ponavljanjem(repeating), molio bih te da procitas SetTimer i SetTimerEx funkciju.
Naslov: Odg: [Pomoc] Kazaljka
Poruka od: Matteo poslato Oktobar 25, 2010, 16:38:49 POSLE PODNE
Uredu... No nekuzim bas.....

Mozes mi malo objasnit taj SetTimerEx i el treba ono public....
Naslov: Odg: [Pomoc] Kazaljka
Poruka od: Aleksandar? poslato Oktobar 25, 2010, 16:52:20 POSLE PODNE
http://wiki.sa-mp.com/wiki/SetTimerEx (http://wiki.sa-mp.com/wiki/SetTimerEx)

sve bi ti trebalo biti jasno,kada bi to pocitao..