Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Fr0z3n poslato Maj 20, 2020, 14:27:01 POSLE PODNE

Naslov: Timer
Poruka od: Fr0z3n poslato Maj 20, 2020, 14:27:01 POSLE PODNE
Problem(error/warning): Zasto kada pozovem timer i stopiram ga on idalje nastavlja da radi??
Dio skripte: [pawn]timer TDLogin[ 2200 ]( playerid, option )
{
    switch( option )
    {
        case 0: TextDrawShowForPlayer(playerid, LogReg_gTD[0]);
        case 1: TextDrawShowForPlayer(playerid, LogReg_gTD[1]);
        case 2: TextDrawShowForPlayer(playerid, LogReg_gTD[2]);
        case 3: TextDrawShowForPlayer(playerid, LogReg_gTD[3]);
        case 4: TextDrawShowForPlayer(playerid, LogReg_gTD[4]);
        case 5: TextDrawShowForPlayer(playerid, LogReg_gTD[5]);
        case 6: TextDrawShowForPlayer(playerid, LogReg_gTD[6]);
        case 7: TextDrawShowForPlayer(playerid, LogReg_gTD[7]);
        case 8: TextDrawShowForPlayer(playerid, LogReg_gTD[8]);
    }
    if( option+1 > 8 ) stop TDLogin(playerid, -1);
    defer TDLogin(playerid, option+1);
}[/pawn]

Ovde ga pozivam: [pawn]public OnPlayerRequestClass(playerid, classid)
{
    lz_SetPlayerPos(playerid, 2057.441406, 1291.667358, 15.748653);
    PlayerPlaySound(playerid, 1069, 0.0, 0.0, 0.0);
    GetPlayerPos(playerid,X,Y,Z);
    Streamer_UpdateEx(playerid,X,Y,Z);
    SetTimerEx("LoginCeka", 22000, false, "i", playerid);
    defer TDLogin(playerid, 0);
    ClearChatbox(playerid, 20);
    SCM(playerid, -1, "{00CED1}====================================");
    SCM(playerid, -1, "");
    SCM(playerid, -1, "{00CED1}    HARD LIFE ROLEPLAY COMMUNITY");
    SCM(playerid, -1, "");
    SCM(playerid, -1, "{00CED1}====================================");
    stop TDLogin(playerid, -1);
    return true;
}[/pawn]

A ovde stopiram:

[pawn]public LoginCeka(playerid)
{
    TDLoginHide(playerid);
    if(UlogovanIgrac[playerid] != 1)
    {[/pawn]

Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):
Kod:
//
Slika/video ingame problema(obavezno ako je ingame problem): //
Naslov: Odg: Timer
Poruka od: Shadow. poslato Maj 20, 2020, 17:39:58 POSLE PODNE
Ispod LoginCeka nema koda gdje stopiraš, probaj ovo:
[pawn]timer TDLogin[ 2200 ]( playerid, option )
{
    switch( option )
    {
        case 0: TextDrawShowForPlayer(playerid, LogReg_gTD[0]);
        case 1: TextDrawShowForPlayer(playerid, LogReg_gTD[1]);
        case 2: TextDrawShowForPlayer(playerid, LogReg_gTD[2]);
        case 3: TextDrawShowForPlayer(playerid, LogReg_gTD[3]);
        case 4: TextDrawShowForPlayer(playerid, LogReg_gTD[4]);
        case 5: TextDrawShowForPlayer(playerid, LogReg_gTD[5]);
        case 6: TextDrawShowForPlayer(playerid, LogReg_gTD[6]);
        case 7: TextDrawShowForPlayer(playerid, LogReg_gTD[7]);
        case 8: TextDrawShowForPlayer(playerid, LogReg_gTD[8]);
    }
    if( option+1 > 8 ) { stop TDLogin(playerid, -1); return ( true ); }
    defer TDLogin(playerid, option+1);
}[/pawn]
Naslov: Odg: Timer
Poruka od: Fr0z3n poslato Maj 23, 2020, 15:50:09 POSLE PODNE
warning 209: function "TDLogin" should return a value
Naslov: Odg: Timer
Poruka od: Darkic poslato Maj 23, 2020, 15:54:23 POSLE PODNE
Citat: Fr0z3n poslato Maj 23, 2020, 15:50:09 POSLE PODNE
warning 209: function "TDLogin" should return a value
Samo ti kaže šta fali.
Naslov: Odg: Timer
Poruka od: Fr0z3n poslato Maj 23, 2020, 15:57:04 POSLE PODNE
uradio sam return i idalje mi ostaje cak i kad se spawnam mi ostaje