Skripta koju koristim: iStunt
Detaljan opis problema: Napravio sam TDove za odbrojavanje GMX-a, znaci kad kucam /gmx tek za 5 sekundi se restarta srerver, ali sam pokusao napraviti da u TD-ovima ide odbrojavanje ono: GMx za 5, GMX za 4, GMX za 3 itd. napravio publice ali u GMX koamndi treba nesto staviti za to ja sam probavao pa ne radi, mislim radu TD.ovi ali se izmjesaju itd.
Dio skripte:
CMD:gmx(playerid,params[])
{
if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdminLevel] >= 3)
{
{
SetTimerEx("gmxtimer", 5000, false, "i", playerid);
}
else SendClientMessage(playerid, COLOR_KRED, "Niste autorizirani za korištenje ove komande!");
return 1;
}
public za Timere
forward GTDTimer5(playerid);
forward GTDTimer4(playerid);
forward GTDTimer3(playerid);
forward GTDTimer2(playerid);
forward GTDTimer1(playerid);
forward GTDTimer0(playerid);
public GTDTimer5(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer5", 1000, false);
TextDrawShowForAll(GMX5);
}
}
return 1;
}
public GTDTimer4(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer4", 1000, false);
TextDrawShowForAll(GMX4);
}
}
return 1;
}
public GTDTimer3(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer3", 1000, false);
TextDrawShowForAll(GMX3);
}
}
return 1;
}
public GTDTimer2(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer2", 1000, false);
TextDrawShowForAll(GMX2);
}
}
return 1;
}
public GTDTimer1(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer1", 1000, false);
TextDrawShowForAll(GMX1);
}
}
return 1;
}
public GTDTimer0(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer5", 1000, false);
TextDrawShowForAll(GMX0);
}
}
return 1;
}
Neke slike/video za lakse dobivanje pomoci(neobavezno):
public GTDTimer0(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer5", 1000, false);
TextDrawShowForAll(GMX0);
}
}
return 1;
}
Probaj
public GTDTimer0(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer0", 1000, false);
TextDrawShowForAll(GMX0);
}
}
return 1;
nije do toga problem, nego sto treba ici u koamndu, ja sam probao satviti timer pa ga onda KillTimer ali nece
sta tu tacno sada neradi... koliko sam ja skonto hoces da napravis da kad ukucas /gmx...da on odbrojava 5 sec na desktopu i tek onda restartuje...
CMD:gmx(playerid,params[])
{
if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdminLevel] >= 3)
{
{
SetTimer("GTDTimer5", 1000, false);
}
else SendClientMessage(playerid, COLOR_KRED, "Niste autorizirani za korištenje ove komande!");
return 1;
}
forward GTDTimer5(playerid);
forward GTDTimer4(playerid);
forward GTDTimer3(playerid);
forward GTDTimer2(playerid);
forward GTDTimer1(playerid);
forward GTDTimer0(playerid);
public GTDTimer5(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer4", 1000, false);
TextDrawShowForAll(GMX5);
}
}
return 1;
}
public GTDTimer4(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer3", 1000, false);
TextDrawShowForAll(GMX4);
}
}
return 1;
}
public GTDTimer3(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer2", 1000, false);
TextDrawShowForAll(GMX3);
}
}
return 1;
}
public GTDTimer2(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer1", 1000, false);
TextDrawShowForAll(GMX2);
}
}
return 1;
}
public GTDTimer1(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer0", 1000, false);
TextDrawShowForAll(GMX1);
}
}
return 1;
}
public GTDTimer0(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimerEx("gmxtimer", 500, false, "i", playerid);
TextDrawShowForAll(GMX0);
}
}
return 1;
}
Citat: Yook3R5o5 poslato Maj 24, 2011, 00:09:27 PRE PODNE
sta tu tacno sada neradi... koliko sam ja skonto hoces da napravis da kad ukucas /gmx...da on odbrojava 5 sec na desktopu i tek onda restartuje...
CMD:gmx(playerid,params[])
{
if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdminLevel] >= 3)
{
{
SetTimer("GTDTimer5", 1000, false);
}
else SendClientMessage(playerid, COLOR_KRED, "Niste autorizirani za korištenje ove komande!");
return 1;
}
forward GTDTimer5(playerid);
forward GTDTimer4(playerid);
forward GTDTimer3(playerid);
forward GTDTimer2(playerid);
forward GTDTimer1(playerid);
forward GTDTimer0(playerid);
public GTDTimer5(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer4", 1000, false);
TextDrawShowForAll(GMX5);
}
}
return 1;
}
public GTDTimer4(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer3", 1000, false);
TextDrawShowForAll(GMX4);
}
}
return 1;
}
public GTDTimer3(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer2", 1000, false);
TextDrawShowForAll(GMX3);
}
}
return 1;
}
public GTDTimer2(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer1", 1000, false);
TextDrawShowForAll(GMX2);
}
}
return 1;
}
public GTDTimer1(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimer("GTDTimer0", 1000, false);
TextDrawShowForAll(GMX1);
}
}
return 1;
}
public GTDTimer0(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(playerid))
{
SetTimerEx("gmxtimer", 500, false, "i", playerid);
TextDrawShowForAll(GMX0);
}
}
return 1;
}
Vidi ovo:
forward GTDTimer5(playerid);
sta ce ti parametar playerid ? Kontas ti uopce zasto stavljas u public funkcije parametre? meni se cini da ne... nigdje u toj public funkciji ne koristis taj parametar playerid pa ti nije potreban...
pa nisam ni gledao sam sam editovao malo ovo njegovo sto je on radio...a i koristi se ovdje
if(IsPlayerConnected(playerid))
{
Citat: Yook3R5o5 poslato Maj 24, 2011, 00:25:37 PRE PODNE
pa nisam ni gledao sam sam editovao malo ovo njegovo sto je on radio...a i koristi se ovdje
if(IsPlayerConnected(playerid))
{
opet glupost izvaljujes, ta public nije tocna zato playerid ne treba!
treba ici ovako: if(IsPlayerConnected(i))
jer loopa po i! ovako ce za svakog igraca provjeravat jel konektiran onaj koji je pokrenuo gmx online a ne raditi ono sta ustvari treba,,,
jos jednom ti ponavljam da to nisam ni gledao samo sam edit ovaj drugi dio...koji je po meni bitniji od tog ko je konektovan a ko ne
Citat: Yook3R5o5 poslato Maj 24, 2011, 00:32:39 PRE PODNE
jos jednom ti ponavljam da to nisam ni gledao samo sam edit ovaj drugi dio...koji je po meni bitniji od tog ko je konektovan a ko ne
ti i programiranje/skriptanje niste bas na "ti"... itekako je vazno tko je konektiran, a tko nije, a ovdje gledas jel playerid konektiran i vrtis loop u kojem pozivas 500 puta isti timer i prikazujes 500 puta isti textdraw konektiranim igracima ali i praznim slotovima... totalno netocno i totalno prikazuje da je bolje da ne pomazes jer ne znas niti osnove... preporucujem ti da naucis pawn kreiranje funkcije, i loop petlju kako treba...
Kao prvo necu da se prepirem sa tobom oko toga...
kao drugo ti me neces uciti kako da pravim to jer sam ih pravio sto puta...samo jednostavno nisam gledao...sta je tu problem...covjece dvanaest je sati a ti hoces od mene da radim ko masina pa jbg brate
kao trece ajde sad da pomognemo momku...
public GTDTimer5(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
SetTimer("GTDTimer4", 1000, false);
TextDrawShowForAll(GMX5);
}
}
return 1;
}
public GTDTimer4(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
TextDrawHideForAll(GMX5);
TextDrawShowForAll(GMX4);
SetTimer("GTDTimer3", 1000, false);
}
}
return 1;
}
public GTDTimer3(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
TextDrawHideForAll(GMX4);
TextDrawShowForAll(GMX3);
SetTimer("GTDTimer2", 1000, false);
}
}
return 1;
}
public GTDTimer2(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
TextDrawHideForAll(GMX3);
TextDrawShowForAll(GMX2);
SetTimer("GTDTimer1", 1000, false);
}
}
return 1;
}
public GTDTimer1(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
TextDrawHideForAll(GMX2);
TextDrawShowForAll(GMX1);
SetTimer("GTDTimer0", 1000, false);
}
}
return 1;
}
public GTDTimer0(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
TextDrawHideForAll(GMX1);
TextDrawShowForAll(GMX0);
SetTimerEx("gmxtimer", 500, false, "i", playerid);
}
}
return 1;
}
mislis editirao neku komandu pa si kao "napravio"... a zasto to mislim, evo gledaj:
Citat: Yook3R5o5 poslato Maj 23, 2011, 19:33:08 POSLE PODNE
Evo posto vidim da ti jos niko nije pomogao...ja cu
if(strcmp(cmd, "/eportaj", true) == 0)
{
ResetPlayerWeapons(playerid);
SetPlayerPos(playerid, -2372.4692,-2180.5385,33.45);
return 1;
}
Editirana komanda, cemu ce ti resetiranje oruzja ovdje?
gle, mozes ti pricat da znas sve to ili ne, ali decko vidljivo mi je po tvojim postovima da si tek nedavno poceo s skriptanjem, tako da, ako ti lijepo kazem da grijesis i da je ono smece od koda najblaze receno, a vjeruj mi da ne govorim glupost onda poslusaj, ne moras se raspravljat kad uopce nisi u pravu, no posto ti neces da naucis kako treba onda ti ja tu ne mogu pomoci....
e brate...upravu si sto se toga tice...moj osnovni problem je sto sam jos "dijete"...i uopste ne gledam...nije mi to bitno samo gledam kako cu sto brze da zavrsis...ali uvijek se uspijem izvuci...i na kraju uradim sve kako treba...i hvala na savjetima... a sto se tice ovoga prvog dijela uopste nisi u pravu sam sam napravio to... a sto se tice restartovanja oruzja sta ti mislis da ti se neko portuje na event sa gunom i pobije ih tamo sve...pa nije logicno zato sam to tu ubacio
Citat: Yook3R5o5 poslato Maj 24, 2011, 00:55:12 PRE PODNE
moj osnovni problem je sto sam jos "dijete"...
Tvoj osnovni problem jest taj što si mentalno bolestan.I sada mi nije jasno šta ti radiš na ovim forum retardu retardirani?
Brate, jesi ti dobro...ja mozda jos nisam punoljetan, ali nemoras me tako nazivati
Citat: Yook3R5o5 poslato Maj 24, 2011, 01:36:02 PRE PODNE
Brate, jesi ti dobro...ja mozda jos nisam punoljetan, ali nemoras me tako nazivati
Ti misliš da sam ja glu*p?
Jedan od tvoji mnogobrojni postova iz kante:
Citat: Yook3R5o5 poslato April 11, 2011, 21:47:14 POSLE PODNE
//server uklonjen! odlazi sa "Balkan" SAMP-a
Niste hteli da srpski server bude clan vase zajednice ,ostavljamo ovu zajednicu hrvatskim serverima
Odlazimo kao i Los Balkan i Ge Force
Nikoga nismo vredjali,psovali ili ponizavali na ovom forumu ,a svako od njih je pokusao koliko toliko
da unisti server uklonjen!
Zelimo vam svu srecu u daljem radu ,ali bez nas
Veliki pozdrav
Markoni
Alo bre nemoj mene da uporedjujes sa ti debilom Markom igrao sam kod njega na serveru 1000 godina da bi me nakraju banovao bez razloga...ako ista mrzim mrzim kad mi njega spomenu
Äinjenica je da ste vi ode cijelu stranicu naspamali, vidim i ja da sam se zajebo u funkciji i da je tu onda loop za kura* kad dodem kuci prova cu ali sumnjam da je do tog!
@Yook nemoj nista raditi ako neznas da pomognes...
@Koksildo resi to sa njim na PM, a neismejavaj u temi u kojoj treba iskljucivo POMOC
@Dude dobro si rekao
@[AG] System32
new
gmxp,
gmxt;
CMD:gmx(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Niste autorizirani za korištenje ove komande!");
gmxt = SetTimer("GTDTimer", 1000, true);
gmxp = 1;
return true;
}
forward GTDTimer();
public GTDTimer()
{
switch(gmxp)
{
case 0:
{
return false;
}
case 1:
{
gmxp = 2;
for(new i = 0; i < MAX_PLAYERS; i++)
GameTextForPlayer(i, "4", 1000, 6);
return true;
}
case 2:
{
gmxp = 3;
for(new i = 0; i < MAX_PLAYERS; i++)
GameTextForPlayer(i, "3", 1000, 6);
return true;
}
case 3:
{
gmxp = 4;
for(new i = 0; i < MAX_PLAYERS; i++)
GameTextForPlayer(i, "2", 1000, 6);
return true;
}
case 4:
{
gmxp = 5;
for(new i = 0; i < MAX_PLAYERS; i++)
GameTextForPlayer(i, "1", 1000, 6);
return true;
}
case 5:
{
gmxp = 6;
for(new i = 0; i < MAX_PLAYERS; i++)
GameTextForPlayer(i, "GMX", 1000, 6);
return true;
}
case 6:
{
KillTimer(gmxt);
gmxp = 0;
SendRconCommand("gmx");
return true;
}
}
return true;
}
e ali ja zelim sa Textdrawowima, napravio sam ali ih treba razbiti samo neznam kako, ono da se odbrojava itd...
forward GTDTimer();
public GTDTimer()
{
switch(gmxp)
{
case 0:
{
return false;
}
case 1:
{
gmxp = 2;
for(new i = 0; i < MAX_PLAYERS; i++)
TextDrawShowForAll(GMX5);
return true;
}
case 2:
{
gmxp = 3;
for(new i = 0; i < MAX_PLAYERS; i++)
TextDrawShowForAll(GMX4);
return true;
}
case 3:
{
gmxp = 4;
for(new i = 0; i < MAX_PLAYERS; i++)
TextDrawShowForAll(GMX3);
return true;
}
case 4:
{
gmxp = 5;
for(new i = 0; i < MAX_PLAYERS; i++)
TextDrawShowForAll(GMX2);
return true;
}
case 5:
{
gmxp = 6;
for(new i = 0; i < MAX_PLAYERS; i++)
TextDrawShowForAll(GMX1);
return true;
}
case 6:
{
KillTimer(gmxt);
gmxp = 0;
SendRconCommand("gmx");
return true;
}
}
return true;
}
forward GTDTimer();
public GTDTimer()
{
switch(gmxp)
{
case 0:
{
return false;
}
case 1:
{
gmxp = 2;
TextDrawShowForAll(GMX5);
return true;
}
case 2:
{
gmxp = 3;
TextDrawHideForAll(GMX5);
TextDrawShowForAll(GMX4);
return true;
}
case 3:
{
gmxp = 4;
TextDrawHideForAll(GMX4);
TextDrawShowForAll(GMX3);
return true;
}
case 4:
{
gmxp = 5;
TextDrawHideForAll(GMX3);
TextDrawShowForAll(GMX2);
return true;
}
case 5:
{
gmxp = 6;
TextDrawHideForAll(GMX2);
TextDrawShowForAll(GMX1);
return true;
}
case 6:
{
TextDrawHideForAll(GMX1);
KillTimer(gmxt);
gmxp = 0;
SendRconCommand("gmx");
return true;
}
}
return true;
}
ljubim te u celo :D Hvala-lock
Citat: [AG] System32 poslato Maj 24, 2011, 14:50:56 POSLE PODNE
ljubim te u celo :D Hvala-lock
Nisam riknuo da me ljubis u celo xD...
Lock!