[TRAŽIM INCLUDE] Health se smanjuje svaku minutu

Započeo GloomY, Januar 06, 2010, 21:26:12 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

Citat: John poslato Januar 07, 2010, 09:52:15 PRE PODNE
Zato jesu gore navodnici pod "3 loopa".

A ti Capone malo se skoncentriraj i slusaj se, lako je bit borac poslje bitke, kladim se u kolko god oces novaca da nisi ni procitao post od zerocoolsa. Nema "ko da nije krenuo" kad je to globalni timer koji krece kad se mod u kojem je pokrene, procitaj malo SetTimer funkciju i bit ce ti jasno.
To sto ne radi nista tom igracu, o bome bogami i njega loopa ili po tvome misljenju ne? i loopa samo konektirane igrace kazes?

covjece nemoj me nasmijavat i malo pazi kome ces tisina govorit ubuduce

E jel ti vidis citat bgt? Opet pricas o o konektiranim igracima? Pa jel se ti gubis jesam rijec o tome prico citaj vise, ja CIJELO VRIJEME sam pricao samo o gPlayerLogged. 2. nemoj me ucit skriptanju
3. znam da tajmer ide jer ide ispod OnGameModeInit, ali kazem da neradi nista igracu tj. nesamnjuje mu health... 4. Isto kome cu ja govorit tisina je moja stvar jer ocito ti ne shvacas o cemu ja pricam

sad cu ti ja Capone pokazati jedan jos bolji nacin, pa ako skontas skontas, ako ne ne jbg,...

#include <foreach>

Itter_Create(PLogged, MAX_PLAYERS);

tamo gdje se igrac prijavljuje(uspjesno):


Itter_Add(PLogged, playerid)


Na OnPlayerDisconnect:
Itter_Remove(PLogged, playerid)



I preko toga Zerocool-ov timer svedemo na ovo:


SetTimer("HealthSmanjenje",60000,1);// 1 minut timer, mozes i razlicito stavit, 1000ms = 1s

forward HealthSmanjenje();

public HealthSmanjenje()
{
        new Float:health;
foreach(PLogged, i)
{
                GetPlayerHealth(i,health);
                SetPlayerHealth(i, floatround(health) - 5);
}
}



To je brzi nacin, makar izgleda kompliciranije...

ma znam ja to John i to ocu rec, ja nisam rekao da nemoze jednostavnije nego samo sam rekao kako se nista nece dogodit, a ti si onda oso skroz na drugu stranu :D, ajde necu vise tu spamat izgubit ce se ovaj covjek sto je otovrio temu

Ljudi, riješen je problem, sve radi i štima. Dakle ovako sam ja napravio, koristio sam se ipak načinom od zera.
public HealthSmanjenje()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
                       if(gPlayerLogged[i] == 1)//gledas dali je logiran jer inace nema potrebe da smanjuje health za tog igraca
                       {
                              new Float:health;
                              GetPlayerHealth(i, health);
                              SetPlayerHealth(i, floatround(health)-5);
                       }
}
}
}

Komanda radi i nemam nikakvih problema, hvala svima što ste mi htjeli pomoći, mnogo sam naučio. ;)

Citat: haxby poslato Januar 07, 2010, 19:30:53 POSLE PODNE
Ljudi, riješen je problem, sve radi i štima. Dakle ovako sam ja napravio, koristio sam se ipak načinom od zera.
public HealthSmanjenje()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
                       if(gPlayerLogged[i] == 1)//gledas dali je logiran jer inace nema potrebe da smanjuje health za tog igraca
                       {
                              new Float:health;
                              GetPlayerHealth(i, health);
                              SetPlayerHealth(i, floatround(health)-5);
                       }
}
}
}

Komanda radi i nemam nikakvih problema, hvala svima što ste mi htjeli pomoći, mnogo sam naučio. ;)

Naravno da si slusao zeru...njegov mod je 19 u svijetu...

Ovako, sada da ne otvaram bezveze novu temu, imam jednu malu pomoć takoÄ'er. Znam da je lagana za vas, ali eto.

if(EngineStatus[vehicle])
        {
        format(form, sizeof(form), "~w~~n~~n~~n~~n~~n~~n~~y~Vozilo upaljeno~n~~w~Gorivo:~g~ %d%~n~~r~Malo goriva",Fuel[vehicle]);
    GameTextForPlayer(i,form,1000,5);
        }

Što u ovom trebam izbrisati da mi ne bi treptalo cijelo vrijeme, nego samo da piše.

Ako mislis paljenje i gasenje gametexta u roku od sekunde, promjeni ovaj predzadnji value na:

GameTextForPlayer(i,form,1000,5);

ako stavis ovih 1000 na 2000 trajat ce ti 2 sekunde itd itd

Citat: haxby poslato Januar 07, 2010, 19:41:14 POSLE PODNE
Ovako, sada da ne otvaram bezveze novu temu, imam jednu malu pomoć takoÄ'er. Znam da je lagana za vas, ali eto.

if(EngineStatus[vehicle])
       {
      format(form, sizeof(form), "~w~~n~~n~~n~~n~~n~~n~~y~Vozilo upaljeno~n~~w~Gorivo:~g~ %d%~n~~r~Malo goriva",Fuel[vehicle]);
    GameTextForPlayer(i,form,1000,5);
       }

Što u ovom trebam izbrisati da mi ne bi treptalo cijelo vrijeme, nego samo da piše.
Mislim da imam rijesenje za taj tvoj problem a to je sledece
Ovo je neki callback koji pozivas timerom svakih npr 3 sekunde,a stavio si da ti GameText traje 1 sekundu iz toga ti razloga trepce.Stavi GameTextForPlayer(i,form,OVO,5); na onoliko MS koliko ti timer poziva.
Ove pre postove necu da komentiram jer neki pricaju nebuloze btw nemojte Ivanu govorit Tisina jer mislim da on jako mnogo zna ako nista zna mnogo vise od onih copy paste.
I jos da dodam kad vrtite loop u loopu npr loop od 200 i u njemu jos jedan loop od 200 ukupno izvrseno
40 000 jer prvi loop "odvrti" 1 krece drugi loop koji sad vrti svih 200 znaci vec 200+prvi loop vrti drugi put opet dolazi an red prvi loop koji opet vrti 200 tako da smo vec na 400. i tako jos 198 puta ovo je dodatak na neke nebuloze.Hvala
Poslednja Izmena: Januar 08, 2010, 01:22:27 PRE PODNE od pliva♫♪

[NUDIM ]
Gang-Rush server TDM besplatno


zerocoolos

pliva nisi pratio, bullet je rekao da ako imas provjeru parametra da je to kao dva loopa, a ne loop u loopu...

Citat: zerocoolos poslato Januar 08, 2010, 01:29:16 PRE PODNE
pliva nisi pratio, bullet je rekao da ako imas provjeru parametra da je to kao dva loopa, a ne loop u loopu...
znam to sto je pricao da SetPlayerHP sam u sebi ima da neki djabe vrse kontrolu.

[NUDIM ]
Gang-Rush server TDM besplatno


Ovakva je struktura za SetPlayerHealth:

[ Start ]
- kod za razdvajanje parametera [ nama nije bitno ] -
- kod za IsPlayerConnected -
- poziv funkciji INTERNAL_SetPlayerHealth
[ End   ]

Ono sto sam ja htio reci da je onaj IsPlayerConnected bio ne potreban, nista vise.

Citat: JoeBullet v2.1 poslato Januar 08, 2010, 01:41:32 PRE PODNE
Ovakva je struktura za SetPlayerHealth:

[ Start ]
- kod za razdvajanje parametera [ nama nije bitno ] -
- kod za IsPlayerConnected -
- poziv funkciji INTERNAL_SetPlayerHealth
[ End   ]

Ono sto sam ja htio reci da je onaj IsPlayerConnected bio ne potreban, nista vise.
a i pod nekom Varijablom IsLogged se podrazumjeva da je connected,zar ne?Ovo spominjem onako.

[NUDIM ]
Gang-Rush server TDM besplatno


Citat: pliva♫♪ poslato Januar 08, 2010, 01:46:41 PRE PODNE
Citat: JoeBullet v2.1 poslato Januar 08, 2010, 01:41:32 PRE PODNE
Ovakva je struktura za SetPlayerHealth:

[ Start ]
- kod za razdvajanje parametera [ nama nije bitno ] -
- kod za IsPlayerConnected -
- poziv funkciji INTERNAL_SetPlayerHealth
[ End   ]

Ono sto sam ja htio reci da je onaj IsPlayerConnected bio ne potreban, nista vise.
a i pod nekom Varijablom IsLogged se podrazumjeva da je connected,zar ne?Ovo spominjem onako.
ako si mislio na gPlayerLogged onda je to tocno, ali ovaj unutrasnji IsPlayerConnected mozes maknuti jedino ako napravis plugin sa svojom funkcijom koja ce direktno pozvati INTERNAL_SetPlayerHealth.

Gledaj pliva ti ako mi imas sto reci slobodno reci tu... a to sto pricas kako neki copy paste necu komentirat. Ovo spominjem onako

Necu ja vas da komentiram koji se prozivate skripterima,a neznate ni prioritete operatora.

[NUDIM ]
Gang-Rush server TDM besplatno