Wysłany: 2012-08-23, 17:46
popek28
Wiek: 38 Na forum: 5811 dni Posty: 66
Piwa : 2
Witam ma takie co?
Kod: new odlicznaprawe; //nazywamy nasz timer kt?ry b?dzie wywo?ywany przez komende i kasowany przez KillTimer ... o tym potem
new odlicznaprawe2 = 116; //tutaj definiujemy ile chcemy by nasze odliczanie mia?o sekund
Kod: odlicznaprawe = SetTimer("odlicznaprawe3",4000,1);//tworzy timera
Kod:
forward odlicznaprawe3(playerid);
public odlicznaprawe3(playerid)
{
if(odlicznaprawe2 <= 0) // co ma si? dzia? jak sko?czy odlicza?
{
KillTimer(odlicznaprawe); //niszczy naszego timera
odlicznaprawe2 = 116; //znowu ustawia nam na 5 sekund
}else{
new str[10];
format(str, sizeof(str), "~y~ %d", odlicznaprawe2); // odliczanie na ?rodku ekranu
GameTextForPlayer(playerid, str,2000,1);
}
odlicznaprawe2 = odlicznaprawe2 - 1; // odejmuje nam po 1 sekundzie za ka?dym wy?wietleniem
return 1;
}
I TO NIE DZIA?A PROSZ? O POMOC!
Wysłany: 2012-08-23, 18:02
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
Kod: odlicznaprawe = SetTimer("odlicznaprawe3",1000,1);//tworzy timera
Zrobi?e? timer na 4 sek, czyli odlicz napraw? wykona?oby si? za 116*4, czyli 464 sekundy.
Kod: odlicznaprawe2 = odlicznaprawe2 - 1;
Zamie? na
Kod:
Wysłany: 2012-08-23, 18:17
popek28
Wiek: 38 Na forum: 5811 dni Posty: 66
Piwa : 2
Dobra, ale jak zrobi? aby to by?o tak ?adnie, po jednej sekundzie bo mi to dzia?a ?e po par? sekund np mam 116 a nagle jest 114 a ja chce aby bylo 116 nagle 115 114 113
A i dlaczego pokazuje tego timera graczowi obok a nie mi ?xd
ZRobilem to tu
Kod: SetTimerEx("OnPlayerRepairVehicle", 2 * 60 * 1000, 0, "ddd", offererid, Offer[offererid][oValue], Offer[offererid][oPrice]);
SendClientMessage(playerid, BIALY, "Tw?j pojazd zostanie naprawiony za 2 minuty! ");
TogglePlayerControllable(playerid, false);
odlicznaprawe = SetTimer("odlicznaprawe3",4000,1);//tworzy timera
[ Dodano : 2012-08-23, 18:20 ]
A po zako?czeniu uruchamia si? ponownie o co biega, mam ten sam kod.
Kod: forward odlicznaprawe3(playerid);
public odlicznaprawe3(playerid)
{
if(odlicznaprawe2 <= 0) // co ma si? dzia? jak sko?czy odlicza?
{
KillTimer(odlicznaprawe); //niszczy naszego timera
odlicznaprawe2 = 116; //znowu ustawia nam na 5 sekund
}else{
new str[10];
format(str, sizeof(str), "~y~ %d", odlicznaprawe2); // odliczanie na ?rodku ekranu
GameTextForPlayer(playerid, str,2000,1);
}
odlicznaprawe2--;
return 1;
}
[ Dodano : 2012-08-23, 18:23 ]
Poda? by? gg lub skype? By?o by szybciej, a po drugie to nie jest ostatni raz jeszcze pomocy b?d? potrzebowa?.
Wysłany: 2012-08-23, 18:27
xqz
otaku desu!
Wiek: 32 Na forum: 6407 dni Posty: 723
Nick w MP: xqz
Piwa : 5465
"popek28" napisał/a :GameTextForPlayer(playerid, str,2000,1);
Jak chcesz plynnie to zrob TextDraw.
Wysłany: 2012-08-23, 18:48
popek28
Wiek: 38 Na forum: 5811 dni Posty: 66
Piwa : 2
A to nie chce mi si?, ale jak to zrobi? dla gracza kt?ry przyj?? napraw? Prosz? o pomoc no!
Wysłany: 2012-08-23, 19:47
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
"popek28" napisał/a :
Co za pech, Tobie si? nie chce = innym si? nie chce.
Wysłany: 2012-08-23, 21:00
xqz
otaku desu!
Wiek: 32 Na forum: 6407 dni Posty: 723
Nick w MP: xqz
Piwa : 5465
"popek28" napisał/a :ale jak to zrobi? dla gracza kt?ry przyj?? napraw? Prosz? o pomoc no!
"popek28" napisał/a :odlicznaprawe = SetTimer("odlicznaprawe3",4000,1);//tworzy timera
Wiec moze sprobuj to zrobic dla gracza o innym id niz 0? (SetTimerEx)
Wysłany: 2012-08-24, 09:55
popek28
Wiek: 38 Na forum: 5811 dni Posty: 66
Piwa : 2
Combat, ale mi chodzi?o o to, ?e mi si? nie chce, ale nie pisa?em, ?eby mi kto? zrobi?.
Wysłany: 2012-08-24, 11:40
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
Nie ?ciemniaj. Ja tobie pomagam (przynajmniej si? staram), ale twoja pomoc polega na 'gotowcu'. Napisa?em ci co jest ?le, xqz r?wnie? napisa? co jest ?le. Z??cz to w ca?o?? i b?dzie dzia?a?.
Wysłany: 2012-08-24, 13:43
popek28
Wiek: 38 Na forum: 5811 dni Posty: 66
Piwa : 2
Dobrze, przepraszam ci?.
Kod: odlicznaprawe = SetTimerEx("odlicznaprawe3",4000, true, "i", playerid);
To nie dzia?a.
Wysłany: 2012-08-24, 15:02
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
Pokazuje si? 116, a p??niej 114 i tak skacze, bo je?eli dw?ch graczy u?yje tego timera, to b?dzie odlicza? podw?jnie, musisz zrobi? definicj? odlicznaprawe2 dla ka?dego gracza z osobna, np.
Kod: new odlicznaprawe[20], odlicznaprawe2[20]; //Tworzymy dla 20 graczy, mo?esz tu wpisa? MAX_PLAYERS, lub ilo?? slot?w na Twoim serwerze.
odlicznaprawe[playerid] = SetTimerEx("odlicznaprawe3", 1000, true, "i", playerid);
forward odlicznaprawe3(playerid);
public odlicznaprawe3(playerid)
{
if(odlicznaprawe2[playerid] <= 0) // co ma si? dzia? jak sko?czy odlicza?
{
KillTimer(odlicznapraw[playerid]e); //niszczy naszego timera
odlicznaprawe2[playerid] = 116; //znowu ustawia nam na 5 sekund
}else{
new str[10];
format(str, sizeof(str), "~y~ %d", odlicznaprawe2[playerid]); // odliczanie na ?rodku ekranu
GameTextForPlayer(playerid, str,2000,1);
}
odlicznaprawe2[playerid]--;
return 1;
}
Wysłany: 2012-08-24, 20:03
xqz
otaku desu!
Wiek: 32 Na forum: 6407 dni Posty: 723
Nick w MP: xqz
Piwa : 5465
"popek28" napisał/a :
odlicznaprawe = SetTimerEx("odlicznaprawe3",4000, true, "i", playerid);
Teraz to robisz dla osoby ktora ma widziec odliczanie.
Daj tak
Kod: odlicznaprawe = SetTimerEx("odlicznaprawe3",4000, true, "i", offererid);
Tagi: odliczanie :: nie :: działa!
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: