[POMOC]Timer

Započeo sanel007, Avgust 06, 2013, 05:46:38 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta: Moja
Opis problema: Aaa napravio areu i timer sve ok odbrojava ali samo kad jednog stavim uredu je i ostale koga god stavim ne odbrojava mu timer nikako neznam kako to da napravim mucim se par dana nista opet...
Dio skripte: // ?


Evo CMD za areu gdje zatvara igraca:
YCMD:area(playerid, params[], help)
{

    if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pGS] >= 4)
    {
        new playa;
        new razlog[128];
        new id, minute;
        if(sscanf(params, "uds[128]", id, minute, razlog)) return SCM(playerid, ZUTA, "Koristi | {FFFFFF}/zatvori [Id/DioImena][Minute][Razlog]");
        if(PlayerInfo[id][pZatvoren] == 1) return SCM(playerid, SIVA, "Taj igrac je ztvoren od strane LSPD-a");
        if(minute < 1) return SCM(playerid, SIVA, "Nemoze ispod 1");

        PlayerInfo[id][pArea] = 1;
        PlayerInfo[id][pAreaVremena] = minute*60;
        new rand = random(sizeof(gRandomAreaSpawns));
        AC_BS_SetPlayerPos(id, gRandomAreaSpawns[rand][0], gRandomAreaSpawns[rand][1], gRandomAreaSpawns[rand][2]);
new str[128];
        format(str,sizeof(str), "Zatvoreni ste od strane Admina/GXa %s-a na %d sekundi || Razlog: %s", ImePrezime(playerid), PlayerInfo[id][pAreaVremena], razlog);
        SCM(id, BELA, str);
        new string3[128];
        format(string3,sizeof(string3),"Zatvorili ste igraca %s",ImePrezime(playa));
        SCM(playerid,BELA,string3);
    }
    return 1;
}


Evo sad gdje mi timer i provjere:
forward zatvorenarea(playerid);
public zatvorenarea(playerid)
{
PlayerInfo[playerid][pAreaVremena] --;
    if(PlayerInfo[playerid][pAreaVremena] == 0)
    {
        PlayerInfo[playerid][pArea] = 0;
        //PlayerInfo[playerid][pAreaVremena] = 0;
    KillTimer(unarea);
        GameTextForPlayer(playerid, "Slobodan", 1000, 3);
        SetPlayerHealth(playerid,0);
        return 1;
}
        return 1;
}

i ovo pod OnGameModeInit:
unarea = SetTimer("zatvorenarea", 800, true);

Ako jos sta treba reci ?

timer mora ic sa foreachom, ovako stavi


forward zatvorenarea();
public zatvorenarea()
{
foreach(Player, i)
{
if(PlayerInfo[i][pAreaVremena] > 0)PlayerInfo[i][pAreaVremena] --;
    if(PlayerInfo[i][pAreaVremena] == 0)
    {
        //PlayerInfo[i][pArea] = 0;
        PlayerInfo[i][pAreaVremena] = 0;
    KillTimer(unarea);
        GameTextForPlayer(i, "Slobodan", 1000, 3);
        SetPlayerHealth(i,0);
        return 1;
}
}
        return 1;
}

jos sam ti ja nest promjenio...
Other Dimension RolePlay | Uskoro
Ukoliko zelite pomoci u razvoju servera, mozete se meni javit na PP/PM!

Nece opet isto sad nikako ne odbrojava ni meni ni drugima..

forward zatvorenarea();
public zatvorenarea()
{
foreach(Player, i)
{
PlayerInfo[i][pAreaVremena] --;
    if(PlayerInfo[i][pAreaVremena] == 0)
    {
        PlayerInfo[i][pArea] = 0;
        //PlayerInfo[i][pAreaVremena] = 0;
    KillTimer(unarea);
        GameTextForPlayer(i, "Slobodan", 1000, 3);
        SetPlayerHealth(i,0);
        return 1;
}
}
        return 1;
}


evo probaj onda ovako, tebi je radilo ovako samo je foreach dodan
Other Dimension RolePlay | Uskoro
Ukoliko zelite pomoci u razvoju servera, mozete se meni javit na PP/PM!

Brate i tako sam probao nista ja stavi na srw sebe ok stavim drugog Nista ne odbrojava a meni sve ok samo meni nikom vise koga prvog stavim tome je ok al ostalim nece odbrojava uvijek stoji isto...