Problem(error/warning): Kada ukucam komandu /quitjob, izbaci mi da ne mogu dati otkaz jer nisam ispunio ugovor a preostalo mi je još 0 sati ugovora, pa reko ko koga pravi manitim.
Deo skripte:
[pawn]if(strcmp(cmd, "/quitjob", true) == 0)
{
if(IsPlayerConnected(playerid) && gPlayerLogged[playerid] == 1)
{
if(PlayerInfo[playerid][pJob] >= 1)
{
if(PlayerInfo[playerid][pJobTime] <= 0)
{
if(Jober[playerid] == 1)
{
PlayerInfo[playerid][pJob] = 0;
Jober[playerid] = 0;
PlayerInfo[playerid][pJobTime] = 0;
Delator[playerid] = 0;
DelTiming[playerid] = 0;
Delator[playerid] = 0;
Bolator[playerid] = 0;
Grotor[playerid] = 0;
Bustor[playerid] = 0;
Piztor[playerid] = 0;
Zastor[playerid] = 0;
SCM(playerid, COLOR_GOLD, "POSAO: Uspjesno ste dali otkaz na poslu - sada se mozete opet zaposliti.");
UpdateDynamic3DTextLabelText(Drugshit, COLOR_BFUSION,
}
}
else
{
format(string, 128, "ERROR: Niste ispunili svoj ugovor posla - morate raditi jos %d sati da bi mogli dati otkaz.", PlayerInfo[playerid][pJobTime]/3600);
SCM(playerid, COLOR_LIGHTRED, string);
}
}
else
{
SCM(playerid, COLOR_LIGHTRED, "ERROR: Ne mozete dati otkaz jer niste zaposleni.");
}
}
return 1;
}[/pawn]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): Nije potrebno.
Slika/video ingame problema(obavezno ako je ingame problem): Nije potrebno.
Zar ne treba biti -1 ?
Citat: Mister Naithan poslato Jun 08, 2019, 20:44:42 POSLE PODNE
Zar ne treba biti -1 ?
Definirao sam 1 kao neispunjen a 0 kao ispunjen Å¡to se tiÄe pJobTime, ako misliÅ¡ na to
pa onda ti upit nije dobar :)
Nesto dobro nisi napravio/podesio :]
Evo ti... ::)
[pawn]if(strcmp(cmd, "/quitjob", true) == 0)
{
if(IsPlayerConnected(playerid) && gPlayerLogged[playerid] == 1)
{
if(PlayerInfo[playerid][pJob] >= 1)
{
if(PlayerInfo[playerid][pJobTime] <= 0)
{
if(Jober[playerid] == 1)
{
PlayerInfo[playerid][pJob] = 0;
Jober[playerid] = 0;
PlayerInfo[playerid][pJobTime] = 0;
Delator[playerid] = 0;
DelTiming[playerid] = 0;
Delator[playerid] = 0;
Bolator[playerid] = 0;
Grotor[playerid] = 0;
Bustor[playerid] = 0;
Piztor[playerid] = 0;
Zastor[playerid] = 0;
SCM(playerid, COLOR_GOLD, "POSAO: Uspjesno ste dali otkaz na poslu - sada se mozete opet zaposliti.");
UpdateDynamic3DTextLabelText(Drugshit, COLOR_BFUSION,
}
}
else
{
SCM(playerid, COLOR_LIGHTRED, "ERROR: Ne mozete dati otkaz jer niste zaposleni.");
}
}
else
{
format(string, 128, "ERROR: Niste ispunili svoj ugovor posla - morate raditi jos %d sati da bi mogli dati otkaz.", PlayerInfo[playerid][pJobTime]/3600);
SCM(playerid, COLOR_LIGHTRED, string);
}
}
return 1;
}[/pawn]
Citat: Vasic poslato Jun 09, 2019, 00:05:45 PRE PODNE
Evo ti... ::)
[pawn]if(strcmp(cmd, "/quitjob", true) == 0)
{
if(IsPlayerConnected(playerid) && gPlayerLogged[playerid] == 1)
{
if(PlayerInfo[playerid][pJob] >= 1)
{
if(PlayerInfo[playerid][pJobTime] <= 0)
{
if(Jober[playerid] == 1)
{
PlayerInfo[playerid][pJob] = 0;
Jober[playerid] = 0;
PlayerInfo[playerid][pJobTime] = 0;
Delator[playerid] = 0;
DelTiming[playerid] = 0;
Delator[playerid] = 0;
Bolator[playerid] = 0;
Grotor[playerid] = 0;
Bustor[playerid] = 0;
Piztor[playerid] = 0;
Zastor[playerid] = 0;
SCM(playerid, COLOR_GOLD, "POSAO: Uspjesno ste dali otkaz na poslu - sada se mozete opet zaposliti.");
UpdateDynamic3DTextLabelText(Drugshit, COLOR_BFUSION,
}
}
else
{
SCM(playerid, COLOR_LIGHTRED, "ERROR: Ne mozete dati otkaz jer niste zaposleni.");
}
}
else
{
format(string, 128, "ERROR: Niste ispunili svoj ugovor posla - morate raditi jos %d sati da bi mogli dati otkaz.", PlayerInfo[playerid][pJobTime]/3600);
SCM(playerid, COLOR_LIGHTRED, string);
}
}
return 1;
}[/pawn]
Nije to riješenje problema jer s ovim kodom sto si poslo bi izbacivalo da nisam zaposlen. Mislim da nije problem u rasporedu nego u ocitavanju sati ugovora a ne kontam gdje sam pogriješio jer sam pokušavo sve i svašta. Hvala ti što si makar pokušao.
Probaj samo
https://pastebin.com/PxQw1c8C ??
Citat: Vasic poslato Jun 09, 2019, 10:34:02 PRE PODNE
Probaj samo
Probao sam. Izbacuje kako sam i rekao.
Citat: .tayloR ãƒ,, poslato Jun 09, 2019, 10:40:08 PRE PODNE
https://pastebin.com/PxQw1c8C ??
Ovim kodom se samo promijeni tekst niÅ¡ta viÅ¡e a do toga oÄito nije, kažem.
[pawn]}
forward Posao(playerid);
public Posao(playerid)
{
if(PlayerInfo[playerid][pJob] >= 1)
{
if(Jober[playerid] == 0)
{
if(PlayerInfo[playerid][pJobTime] >= 1)
{
PlayerInfo[playerid][pJobTime]--;
}
else if(PlayerInfo[playerid][pJobTime] == 0)
{
Jober[playerid] == 1;
}
}
}
return 1;
}[/pawn]
Možda je ovdje problem? Iako sam pokušavao i ovdje ali bez uspjeha.
Ne znas ni ti sta hoces buraz.. Gdje si postavio da igracu daje Ugovor na 1. To stavis na payday funkcij i tjt? Ne znam sta komplikujes
[pawn]if(strcmp(cmd, "/quitjob", true) == 0)
{
if(IsPlayerConnected(playerid) && gPlayerLogged[playerid] == 1)
{
if(PlayerInfo[playerid][pJob] >= 1)
{
if(PlayerInfo[playerid][pJobTime] < 1)
{
PlayerInfo[playerid][pJob] = 0;
Jober[playerid] = 0;
PlayerInfo[playerid][pJobTime] = 0;
Delator[playerid] = 0;
DelTiming[playerid] = 0;
Delator[playerid] = 0;
Bolator[playerid] = 0;
Grotor[playerid] = 0;
Bustor[playerid] = 0;
Piztor[playerid] = 0;
Zastor[playerid] = 0;
SCM(playerid, COLOR_GOLD, "POSAO: Uspjesno ste dali otkaz na poslu - sada se mozete opet zaposliti.");
UpdateDynamic3DTextLabelText(Drugshit, COLOR_BFUSION,
}
else
{
format(string, 128, "ERROR: Niste ispunili svoj ugovor posla - morate raditi jos %d sati da bi mogli dati otkaz.", PlayerInfo[playerid][pJobTime]/3600);
SCM(playerid, COLOR_LIGHTRED, string);
}
}
else
{
SCM(playerid, COLOR_LIGHTRED, "ERROR: Ne mozete dati otkaz jer niste zaposleni.");
}
}
return 1;
}
[/pawn]
@ 002 - Riješio si problem. Još jednom hvala.