GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: palesz_88 - 2011. Augusztus 06. - 14:26:01

Cím: Óra
Írta: palesz_88 - 2011. Augusztus 06. - 14:26:01
Sziasztok
Csináltam egy óra szkriptet a GM-embe, de valamiért nem jó  :-[
 
   SetTimerEx(\"TimeTimer\", 1000, true, \"i\", playerid);

 

public TimeTimer(playerid)
{
new hour, minute, timestring[6];
GetPlayerTime(playerid, hour, minute);
if(minute > 59)
{
    hour++;
    minute=00;
SetPlayerTime(playerid, hour, minute);
format(timestring, sizeof(timestring), \"%02i:%02i\", hour, minute);
TextDrawSetString(ClockText, timestring);
}
else if(hour > 24)
{
hour=00;
minute=00;
SetPlayerTime(playerid, hour, minute);
format(timestring, sizeof(timestring), \"%02i:%02i\", hour, minute);
TextDrawSetString(ClockText, timestring);
}
else
{
minute++;
SetPlayerTime(playerid, hour, minute);
format(timestring, sizeof(timestring), \"%02i:%02i\", hour, minute);
TextDrawSetString(ClockText, timestring);
}
return 1;
}

 
Mikor felmegyek a szerverre, megjeleniti a textdrawot, stb, de csak 1-et ad hozzá, aztán megáll ::|
Pedig az idõzítõ úgy van beállítva, hogy ismételje magát...
Cím: Óra
Írta: Zsolesszka - 2011. Augusztus 06. - 15:02:58
Nem elég csak a textdraw stringet megváltoztatni.
Frissíteni is kell a textdrawot.
[pawn]
TextDrawHideForAll(ClockText);
TextDrawSetString(ClockText, timestring);
TextDrawShowForAll(ClockText);
[/pawn]
Cím: Óra
Írta: palesz_88 - 2011. Augusztus 06. - 15:58:07
Idézetet írta: Zsolesszka date=1312635778\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"10232\" data-ipsquote-contentclass=\"forums_Topic
Nem elég csak a textdraw stringet megváltoztatni.
Frissíteni is kell a textdrawot.
[pawn]
TextDrawHideForAll(ClockText);
TextDrawSetString(ClockText, timestring);
TextDrawShowForAll(ClockText);
[/pawn]
 
Nem hinném hogy így van. Attól hogy elrejtem, meg visszateszem, még nem fog megváltozni. Nem a textdrawwal van a hiba, mert az idõ sem telik :(
Cím: Óra
Írta: Norby - 2011. Augusztus 06. - 17:09:25
Szerintem az a probléma hogy SetTimerEx et használsz mert én csak SetTimerEx et akkot használok ha mondjuk beirok egy parancsot és akkor induljon el a timer ha beirtam szval én ezt nem nagyon szoktam használni de ez nem biztos hogy baj de
próbáld meg az OnGameModeInit alá ezt :
 
SetTimer(\"TimerTimer\",1000,1);

 
de szerintem ez nem változtat semmin de hátha nem mondtam hülyeséget xDD
Cím: Óra
Írta: kadaradam - 2011. Augusztus 06. - 17:25:10
Hülyeséget nem mondtál,csak pont nem ennek a problémának az orvosolása,hanem egy másiknak,ami az hogy most csak a 0-é ID-jûnek futtatja a timert,de ah settimerex-t használ(sz) akkor a palyerid-nek fogja futtatni a timer-t
Cím: Óra
Írta: Zsolesszka - 2011. Augusztus 06. - 17:54:28
Akkor nézd meg a gl_realtime.pwn-t alap filterscript a szerver csomagban.
Hátha segít valamit.
Cím: Óra
Írta: palesz_88 - 2011. Augusztus 06. - 17:57:16
Nézegettem, de nekem olyan kéne, mint a toggleplayerclock meg ilyesmi, csak az bugos, és megpróbáltam irni egy sajátot, de hibás.
Cím: Óra
Írta: Armani - 2011. Augusztus 08. - 18:38:44
Nekem is kéne egy iesmi script
Cím: Óra
Írta: palesz_88 - 2011. Augusztus 08. - 18:43:43
Idézetet írta: Armani date=1312821524\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"10232\" data-ipsquote-contentclass=\"forums_Topic
Nekem is kéne egy iesmi script
 
TogglePlayerClock(playerid, true);