Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2013-03-17, 15:33


TerraNova







Wiek: 36
Na forum: 5118 dni
Posty: 98
Nick w MP: Lonalchemik

Piwa: 797

Respekt: 70,5

Nie wy?wietlaj? mi si? dziesi?tki w odliczaniu. Chodzi mi o to ?e zamiast 10 pokazuje mi samo 1

Kod:

CMD:cd(playerid, params[])
{
if(IsPlayerAdmin(playerid) == 1 || PlayerAdmin[playerid] >= 2)
{
if(sscanf(params, "dd", czas, zamrozenie))
return SendClientMessage(playerid, JCZERWONY, "/cd [czas ( 1-240 )] [zamrozenie: 1/0]");
{
if(czas < 1 || czas > 240)
return SendClientMessage(playerid, JCZERWONY, "Z?y czas odliczania!");
if(zamrozenie > 1 || zamrozenie < 0)
return SendClientMessage(playerid, JCZERWONY, "Z?a forma zamro?enia! 1 = tak, 0 = nie");
if(odliczanie == 1)
return SendClientMessage(playerid, JCZERWONY, "Poczekaj a? sko?czy si? obecne odliczanie!");
{
if(zamrozenie == 1)
{
foreach(new i : Player)
{
if (IsPlayerConnected(i))
{
TogglePlayerControllable(i,0);
}
}
}
format(String64, sizeof(String64),"Odliczanie rozpocz?te : %d sekund, Zamrozenie = %d", czas, zamrozenie);
SendClientMessage(playerid, POMARANCZOWY, String64);
odliczanie = 1;
timer_odliczania = SetTimer("admin_cd", 1000, 1);
}
}
return 1;
}
else
return 0;
}


Kod:

forward admin_cd();
public admin_cd()
{
if(czas <= 0)
{
GameTextForAll("~r~GO!",3000,3);
KillTimer(timer_odliczania);
odliczanie = 0;
if(zamrozenie == 1)
{
foreach(new i : Player)
{
if (IsPlayerConnected(i))
{
TogglePlayerControllable(i,1);
}
}
}
}
else
{
format(odliczanko, sizeof(odliczanko), "~w~%d", czas);
GameTextForAll(odliczanko ,3000, 4);
}
czas--;
return;
}


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-17, 20:20


optimus

PawnoMen






Wiek: 27
Na forum: 5613 dni
Posty: 453
Nick w MP: [PMS]ReveresPL

Piwa: 159

Respekt: 59

Ostrzeżeń: 80%
Kod:

format(odliczanko, sizeof(odliczanko), "~w~%d", czas);
GameTextForAll(odliczanko ,3000, 4);


wszystko oki tylko daj sobie tam gdzie czas przypisywany do tekstu czyli %d daj %02d :) tak jak ponizej

Kod:

format(odliczanko, sizeof(odliczanko), "~w~%02d", czas);
GameTextForAll(odliczanko ,3000, 4);


[ Dodano: 2013-03-17, 20:43 ]
A i gdy masz 10 a pokazuje 0 - to s? jedno?ci

Podpis
Prpgramujesz w Unity i potrzebujesz pomocy?
|?Zapraszamy na forum Unity?|
http://www.unity3d.ugu.pl
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-17, 22:57


TerraNova







Wiek: 36
Na forum: 5118 dni
Posty: 98
Nick w MP: Lonalchemik

Piwa: 797

Respekt: 70,5

chodzi o to ?e nie pokazuje mi 10 tylko 1 i tak samo jest wy?ej przy liczbach wielocyfrowych pokazuje tylko jedn? cze?? np przy 25 pokazuje tylko 2 i dziwacznie to wygl?da bo to jest zmy?ka

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-18, 06:56


optimus

PawnoMen






Wiek: 27
Na forum: 5613 dni
Posty: 453
Nick w MP: [PMS]ReveresPL

Piwa: 159

Respekt: 59

Ostrzeżeń: 80%
Kod:

CMD:cd(playerid, params[])
{
if(IsPlayerAdmin(playerid) == 1 || PlayerAdmin[playerid] >= 2)
{
if(sscanf(params, "dd", czas, zamrozenie))
return SendClientMessage(playerid, JCZERWONY, "/cd [czas ( 1-240 )] [zamrozenie: 1/0]");
{
if(czas < 1 || czas > 240)
return SendClientMessage(playerid, JCZERWONY, "Z?y czas odliczania!");
if(zamrozenie > 1 || zamrozenie < 0)
return SendClientMessage(playerid, JCZERWONY, "Z?a forma zamro?enia! 1 = tak, 0 = nie");
if(odliczanie == 1)
return SendClientMessage(playerid, JCZERWONY, "Poczekaj a? sko?czy si? obecne odliczanie!");
{
if(zamrozenie == 1)
{
foreach(new i : Player)
{
if (IsPlayerConnected(i))
{
TogglePlayerControllable(i,0);
}
}
}
format(String64, sizeof(String64),"Odliczanie rozpocz?te : %d sekund, Zamrozenie = %02d", czas, zamrozenie);
SendClientMessage(playerid, POMARANCZOWY, String64);
odliczanie = 1;
timer_odliczania = SetTimer("admin_cd", 1000, 1);
}
}
return 1;
}
else
return 0;
}


Kod:

forward admin_cd();
public admin_cd()
{
if(czas <= 0)
{
GameTextForAll("~r~GO!",3000,3);
KillTimer(timer_odliczania);
odliczanie = 0;
if(zamrozenie == 1)
{
foreach(new i : Player)
{
if (IsPlayerConnected(i))
{
TogglePlayerControllable(i,1);
}
}
}
}
else
{
format(odliczanko, sizeof(odliczanko), "~w~%02d", czas);
GameTextForAll(odliczanko ,3000, 4);
}
czas--;
return;
}


Prosz? chyba teraz czaisz o co mi chodzilo z tym %02d ja tez wlasnie sie bawilem i zauwazylem ze teraz bed? cyfry0-99 a gdy dasz %03d b?d? cyfry od 0-999 ja zawsze tak to rozumialem

Podpis
Prpgramujesz w Unity i potrzebujesz pomocy?
|?Zapraszamy na forum Unity?|
http://www.unity3d.ugu.pl
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-18, 14:48


Wafelowski







Wiek: 29
Na forum: 5347 dni
Posty: 428

Piwa: 100

Respekt: 232
Respekt: 232Respekt: 232

optimus, No brawo! Tylko zauwa?, ?e w taki oto spos?b %02d zostanie wy?wietlone co? takiego 01, 02, 03, 04, 05 itd.


Hm, podejrzewam, ?e tablica jest za ma?a. Zauwa?, ?e kolor te? zalicza si? do znak?w czyli ~w~ to s? dodatkowo 3 kolejne znaki. Tablica powinna wygl?da? tak: new odliczanko[12];. Lepiej j? utworzy? w komendzie ni? globalnie . ;)

Postaw piwo autorowi tego posta
 

 
Tagi: nie :: pokazujące :: się :: dziesiątki :: odliczaniu
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku