Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Borelli poslato April 26, 2020, 19:44:36 POSLE PODNE

Naslov: Problem sa svercom
Poruka od: Borelli poslato April 26, 2020, 19:44:36 POSLE PODNE
Problem(error/warning): Kreirao sam sverc za organizaciju i sve je dobro pokrene se on i kada dodjem do mesta gde treba da utovarim tj do markera ono nece udjem u cenar markera opet nece samo stoji
Dio skripte: evo sve https://pastebin.com/iTqBBpVG
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): //
Slika/video ingame problema(obavezno ako je ingame problem): //
Naslov: Odg: Problem sa svercom
Poruka od: Borelli poslato April 27, 2020, 09:27:47 PRE PODNE
Neko pomoc?
Naslov: Odg: Problem sa svercom
Poruka od: V01D poslato April 27, 2020, 13:10:41 POSLE PODNE
Jesi siguran da si prosao sve provere?

Ove:

[pawn]if(SvercDroge[playerid] == 1 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2]  && GetPlayerState(playerid) == 2)[/pawn]
Naslov: Odg: Problem sa svercom
Poruka od: Borelli poslato April 27, 2020, 13:51:22 POSLE PODNE
Citat: V01D poslato April 27, 2020, 13:10:41 POSLE PODNE
Jesi siguran da si prosao sve provere?

Ove:

[pawn]if(SvercDroge[playerid] == 1 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2]  && GetPlayerState(playerid) == 2)[/pawn]

Jesam sve po 10 puta i opet nece
Naslov: Odg: Problem sa svercom
Poruka od: rane poslato April 27, 2020, 14:46:08 POSLE PODNE
Greška ti je u komandi
[pawn]// komanda
{
     if(voz == tvf[0] || voz == tvf[1] || voz == tvf[2])
        {
            if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SCM(playerid,-1,""CRVENA"[UP:RP] "SIVA"Morate biti na mestu vozaca da bi pokrenuli sverc!");
            if(SvercOruzija[playerid] >= 1) return SCM(playerid,-1, ""CRVENA"[UP:RP] "SIVA"Vec svercujes drogu!");
            if(PlayerInfo[playerid][pNovacDzep] < 100) return SCM(playerid,-1,""SPLAVA"[UP:RP] "SIVA"Nemate dovolj novca za sverc (100$)");
            SvercOruzija[playerid] = 1; g_NovacMinus(playerid,100);
            SetPlayerCheckpoint(playerid, -2641.8669,1437.2267,7.1016, 5.0);
            SCM(playerid,-1,""CRVENA"[TVF]: "BELA"Krenuli ste sa svercom droge otidjite u luku da utovarite oruzije.");
        }
        else return SCM(playerid,-1,""CRVENA"[TVF]: "SIVA"Niste u kombiju za sverc!");
    }[/pawn]
Podesi ti SvercOruzija a ne svercdroge i posle u provjeri ti zbog toga ne moze odraditi
Naslov: Odg: Problem sa svercom
Poruka od: Borelli poslato April 27, 2020, 16:41:25 POSLE PODNE
Citat: Kleo poslato April 27, 2020, 14:46:08 POSLE PODNE
Greška ti je u komandi
[pawn]// komanda
{
     if(voz == tvf[0] || voz == tvf[1] || voz == tvf[2])
        {
            if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SCM(playerid,-1,""CRVENA"[UP:RP] "SIVA"Morate biti na mestu vozaca da bi pokrenuli sverc!");
            if(SvercOruzija[playerid] >= 1) return SCM(playerid,-1, ""CRVENA"[UP:RP] "SIVA"Vec svercujes drogu!");
            if(PlayerInfo[playerid][pNovacDzep] < 100) return SCM(playerid,-1,""SPLAVA"[UP:RP] "SIVA"Nemate dovolj novca za sverc (100$)");
            SvercOruzija[playerid] = 1; g_NovacMinus(playerid,100);
            SetPlayerCheckpoint(playerid, -2641.8669,1437.2267,7.1016, 5.0);
            SCM(playerid,-1,""CRVENA"[TVF]: "BELA"Krenuli ste sa svercom droge otidjite u luku da utovarite oruzije.");
        }
        else return SCM(playerid,-1,""CRVENA"[TVF]: "SIVA"Niste u kombiju za sverc!");
    }[/pawn]
Podesi ti SvercOruzija a ne svercdroge i posle u provjeri ti zbog toga ne moze odraditi

Promenio sam i opet mi dodje do markera i nista
Naslov: Odg: Problem sa svercom
Poruka od: rane poslato April 27, 2020, 17:07:15 POSLE PODNE
Interesantno, ako si promijenio u SvercDroge onda ne vidim drugi moguci razlog zbog cega nece

Jel ti ovo
[pawn]if(SvercDroge[playerid] == 1 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2]  && GetPlayerState(playerid) == 2)
    {
        if(IsPlayerInRangeOfPoint(playerid, 5.0, -2641.8669,1437.2267,7.1016))
        {
            TogglePlayerControllable(playerid, 0);
            utovar[playerid] = SetTimerEx("utovar1", 7000, false, "d", playerid);
            GameTextForPlayer(playerid, "~y~utovar droge...", 5000, 3);
            SetPlayerCheckpoint(playerid, -2879.1038,497.7489,4.9141, 5.0);
            SvercDroge[playerid] = 2;
            SCM(playerid,-1,""ZUTA"TVF]: "BELA"Posle utovara odvezite drogu u skladiste...");
        }
    }
    if(SvercDroge[playerid] == 2 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2] && GetPlayerState(playerid) == 2)
    {
        if(IsPlayerInRangeOfPoint(playerid, 5.0, -2879.1038,497.7489,4.9141))
        {
            TogglePlayerControllable(playerid, 0);
            utovar[playerid] = SetTimerEx("utovar1", 7000, false, "d", playerid);
            GameTextForPlayer(playerid, "~y~istovar droge...", 5000, 3);
            PlayerInfo[playerid][pDroga] += 800; SvercDroge[playerid] = 0;
            DisablePlayerCheckpoint(playerid);
            SCM(playerid,-1,""ZUTA"[TVF]: "BELA"Zavrsili ste sverc i dobili ste 800g droge!");
        }
    }[/pawn]
pod OnPlayerEnterCheckpoint?
Naslov: Odg: Problem sa svercom
Poruka od: Borelli poslato April 27, 2020, 17:24:50 POSLE PODNE
Citat: Kleo poslato April 27, 2020, 17:07:15 POSLE PODNE
Interesantno, ako si promijenio u SvercDroge onda ne vidim drugi moguci razlog zbog cega nece

Jel ti ovo
[pawn]if(SvercDroge[playerid] == 1 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2]  && GetPlayerState(playerid) == 2)
    {
        if(IsPlayerInRangeOfPoint(playerid, 5.0, -2641.8669,1437.2267,7.1016))
        {
            TogglePlayerControllable(playerid, 0);
            utovar[playerid] = SetTimerEx("utovar1", 7000, false, "d", playerid);
            GameTextForPlayer(playerid, "~y~utovar droge...", 5000, 3);
            SetPlayerCheckpoint(playerid, -2879.1038,497.7489,4.9141, 5.0);
            SvercDroge[playerid] = 2;
            SCM(playerid,-1,""ZUTA"TVF]: "BELA"Posle utovara odvezite drogu u skladiste...");
        }
    }
    if(SvercDroge[playerid] == 2 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2] && GetPlayerState(playerid) == 2)
    {
        if(IsPlayerInRangeOfPoint(playerid, 5.0, -2879.1038,497.7489,4.9141))
        {
            TogglePlayerControllable(playerid, 0);
            utovar[playerid] = SetTimerEx("utovar1", 7000, false, "d", playerid);
            GameTextForPlayer(playerid, "~y~istovar droge...", 5000, 3);
            PlayerInfo[playerid][pDroga] += 800; SvercDroge[playerid] = 0;
            DisablePlayerCheckpoint(playerid);
            SCM(playerid,-1,""ZUTA"[TVF]: "BELA"Zavrsili ste sverc i dobili ste 800g droge!");
        }
    }[/pawn]
pod OnPlayerEnterCheckpoint?

Jestte tako mi je sve, da li nije mozda sto je TVF org posto je imala sverc ulja i sverc materijala i ja sam promenio bazu skroz i namestio samo sverc droge. Da li mozda nije do toga?
Naslov: Odg: Problem sa svercom
Poruka od: rane poslato April 27, 2020, 17:29:22 POSLE PODNE
Kako su ti definisana vozila u skripti da nije do toga? Da li ideš sa Burritom ili kojim vec vozilom?
Naslov: Odg: Problem sa svercom
Poruka od: Borelli poslato April 27, 2020, 18:09:54 POSLE PODNE
Citat: Kleo poslato April 27, 2020, 17:29:22 POSLE PODNE
Kako su ti definisana vozila u skripti da nije do toga? Da li ideš sa Burritom ili kojim vec vozilom?

To sam isto proveravao i u sva tri Burrita mi se pokrece sverc. Kako se meni cini da je sa komandom /sverc sve uredu ali posle nesto zajebe
Naslov: Odg: Problem sa svercom
Poruka od: V01D poslato April 27, 2020, 20:53:06 POSLE PODNE
[pawn]if(IsPlayerInRangeOfPoint(playerid, 5.0, -2641.8669,1437.2267,7.1016))[/pawn]

Ovo nema potrebe da ti ima, ako je usao u checkpoint, logicno da se nalazi na tim koordinatama.. Stavi tipa ovako:

[pawn]if(SvercDroge[playerid] == 1 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2]  && GetPlayerState(playerid) == 2)
{
   printf("CP1");
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -2641.8669,1437.2267,7.1016))
    {
        TogglePlayerControllable(playerid, 0);
        utovar[playerid] = SetTimerEx("utovar1", 7000, false, "d", playerid);
        GameTextForPlayer(playerid, "~y~utovar droge...", 5000, 3);
        SetPlayerCheckpoint(playerid, -2879.1038,497.7489,4.9141, 5.0);
        SvercDroge[playerid] = 2;
        SCM(playerid,-1,""ZUTA"TVF]: "BELA"Posle utovara odvezite drogu u skladiste...");
    }
}
if(SvercDroge[playerid] == 2 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2] && GetPlayerState(playerid) == 2)
{
   printf("CP2");
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -2879.1038,497.7489,4.9141))
    {
        TogglePlayerControllable(playerid, 0);
        utovar[playerid] = SetTimerEx("utovar1", 7000, false, "d", playerid);
        GameTextForPlayer(playerid, "~y~istovar droge...", 5000, 3);
        PlayerInfo[playerid][pDroga] += 800; SvercDroge[playerid] = 0;
        DisablePlayerCheckpoint(playerid);
        SCM(playerid,-1,""ZUTA"[TVF]: "BELA"Zavrsili ste sverc i dobili ste 800g droge!");
    }
}[/pawn]

Dodato printf, pre te provere za range, tako da sada testaj, kada udjes u Checkpoint, proveri konzolu, ako izbaci poruku CP1 ili CP2 u konzoli (samp-server.exe) onda je problem do provere IsPlayerInRageOfPoint, ako ne izbaci nista, onda je problem do :
[pawn]if(SvercDroge[playerid] == 1 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2]  && GetPlayerState(playerid) == 2)[/pawn]
Naslov: Odg: Problem sa svercom
Poruka od: Borelli poslato April 27, 2020, 22:02:48 POSLE PODNE
Citat: V01D poslato April 27, 2020, 20:53:06 POSLE PODNE
[pawn]if(IsPlayerInRangeOfPoint(playerid, 5.0, -2641.8669,1437.2267,7.1016))[/pawn]

Ovo nema potrebe da ti ima, ako je usao u checkpoint, logicno da se nalazi na tim koordinatama.. Stavi tipa ovako:

[pawn]if(SvercDroge[playerid] == 1 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2]  && GetPlayerState(playerid) == 2)
{
   printf("CP1");
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -2641.8669,1437.2267,7.1016))
    {
        TogglePlayerControllable(playerid, 0);
        utovar[playerid] = SetTimerEx("utovar1", 7000, false, "d", playerid);
        GameTextForPlayer(playerid, "~y~utovar droge...", 5000, 3);
        SetPlayerCheckpoint(playerid, -2879.1038,497.7489,4.9141, 5.0);
        SvercDroge[playerid] = 2;
        SCM(playerid,-1,""ZUTA"TVF]: "BELA"Posle utovara odvezite drogu u skladiste...");
    }
}
if(SvercDroge[playerid] == 2 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2] && GetPlayerState(playerid) == 2)
{
   printf("CP2");
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -2879.1038,497.7489,4.9141))
    {
        TogglePlayerControllable(playerid, 0);
        utovar[playerid] = SetTimerEx("utovar1", 7000, false, "d", playerid);
        GameTextForPlayer(playerid, "~y~istovar droge...", 5000, 3);
        PlayerInfo[playerid][pDroga] += 800; SvercDroge[playerid] = 0;
        DisablePlayerCheckpoint(playerid);
        SCM(playerid,-1,""ZUTA"[TVF]: "BELA"Zavrsili ste sverc i dobili ste 800g droge!");
    }
}[/pawn]

Dodato printf, pre te provere za range, tako da sada testaj, kada udjes u Checkpoint, proveri konzolu, ako izbaci poruku CP1 ili CP2 u konzoli (samp-server.exe) onda je problem do provere IsPlayerInRageOfPoint, ako ne izbaci nista, onda je problem do :
[pawn]if(SvercDroge[playerid] == 1 && CID == tvf[0] || CID == tvf[1] || CID == tvf[2]  && GetPlayerState(playerid) == 2)[/pawn]

Sada sam ubacio to u proradilo mi je :D, hvala puno na vremenu koje ste izdvoljili. Lock