Skripta koju koristim: Svoja
Detaljan opis problema: Ovako, napravio sam komandu /zavezi i /odvezi, sta je problem ? Uz komandu /zavezi napravio sam komandu /uzmikanap , da proverava da li je igrac uzeo kanap pre nego sto koristi komandu /zavezi, meni na zalost kad udjem na server tu komandu ne detektuje tacnije ne ispisuje da ne postoji ali nista se ne desava u chat-u, a ja mogu koristiti komandu /zavezi iako postoji cuvanje za [pUzeoKanap] Do cega moze biti problem ako moze neko da mi ispravi ?
Dio skripte:
YCMD:uzmikanap(playerid, params[], help)
{
#pragma unused help
new string[256];
if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,""BELA"Ne mozete koristiti ovu komandu jer niste ulogovani.");
if(PlayerInfo[playerid][pUzeoKanap] == 1) return 1;
format(string,sizeof(string), "* %s uzima svoj kanap iz dzepa", GetName(playerid));
ProxDetector(20.0, playerid, string, PROX,PROX,PROX,PROX,PROX);
PlayerInfo[playerid][pUzeoKanap] = 1;
return 1;
}
YCMD:zavezi(playerid, params[], help)
{
#pragma unused help
if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,""BELA"Ne mozete koristiti ovu komandu jer niste ulogovani.");
new id, string[256];
if(PlayerInfo[playerid][pKanap] <= 0) return SCM(playerid, -1, ""BELA"Ne mozete koristiti ovu komandu jer nemate kanap.");
if(PlayerInfo[playerid][pUzeoKanap] == 0) return SCM(playerid, -1, ""BELA"Ne mozete koristiti ovu komandu jer niste uzeli kanap.");
if(sscanf(params, "u", id)) return SCM(playerid, -1, ""BELA"/zavezi [ID Igraca/Deo Imena]");
if(!IsPlayerConnected(id)) return SCM(playerid, -1, ""BELA"Taj igrac nije na serveru.");
if(id == playerid) return SCM(playerid, -1, ""BELA"Ne mozete koristiti ovu komandu jer ne mozete vezati samog sebe.");
if(PlayerInfo[playerid][pZatvor] != 0) return SCM(playerid, -1, ""BELA"Ne mozete koristiti ovu komandu jer je igrac u zatvoru.");
if(!DaljinaIgraca(5.0,playerid,id)) return SCM(playerid,-1,""BELA"Ne mozete koristiti ovu komandu jer taj igrac nije blizu vas.");
if(IgracTazovan[id] == 1) return SCM(playerid,-1,""BELA"Ne mozete koristiti ovu komandu jer je taj igrac tazovan.");
if(StavljeneLisice[id] == 1) return SCM(playerid,-1,""BELA"Ne mozete koristiti ovu komandu jer taj igrac ima lisice.");
if(IgracTazovan[playerid] == 1) return SCM(playerid,-1,""BELA"Ne mozete koristiti ovu komandu jer ste tazovani.");
if(StavljeneLisice[playerid] == 1) return SCM(playerid,-1,""BELA"Ne mozete koristiti ovu komandu jer imate lisice.");
if(Zavezan[id] == 1) return SCM(playerid, -1, ""BELA"Ne mozete koristiti ovu komandu jer je igrac vec vezan.");
if(Zavezan[playerid] == 1) return SCM(playerid, -1, ""BELA"Ne mozete koristiti ovu komandu jer ste vezani.");
Zavezan[id] = 1;
TogglePlayerControllable(id, 0);
GameTextForPlayer(id, "~w~Zavezani ste", 5, 5000);
format(string,sizeof(string),""CRVENA"Zavezali ste igraca %s",GetName(id));
SCM(playerid,-1,string);
format(string,sizeof(string),""BELA"Igrac %s vas je zavezao,ako izadjete sa servera izgubicete 2000$",GetName(playerid));
SCM(id,-1,string);
format(string,sizeof(string), "* %s uzima kanap i vezuje gradjanina %s", GetName(playerid),GetName(id));
ProxDetector(20.0, playerid, string, PROX,PROX,PROX,PROX,PROX);
SavePlayer(playerid);
return 1;
}
Neke slike/video za lakse dobivanje pomoci(neobavezno):
hmm, pregledao sam ovaj kod na brzinu, nisam nasao greske, probaj preko print debuga da vidis gdje kod stane...
Ispod ovog
[pawn]#define KORISNICI "Korisnici/%s.ini"
enum pInfo
{[/pawn]
Dodaj ovo
[pawn]pUzeoKanap,[/pawn]
---------------------------------------------------------
ispod ovog
[pawn]public OnPlayerConnect(playerid)[/pawn]
dodaj ovo [pawn] PlayerInfo[playerid][pUzeoKanap] = 0;[/pawn] ( u ovom dijelu http://prntscr.com/8vfd06 )
------------------------------------------------------------------
stavi cmd
[pawn]YCMD:uzmikanap(playerid, params[], help)
{
#pragma unused help
new string[256];
if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,""BELA"Ne mozete koristiti ovu komandu jer niste ulogovani.");
if(PlayerInfo[playerid][pKanap] <= 0) return SCM(playerid, COLOR_GRESKA, " "BELA"Nemate kanap!");
PlayerInfo[playerid][pUzeoKanap] = 1;
SCM(playerid,-1, ""BELA"Uzeli ste kanap sada mozete /zavezi!");
format(string,sizeof(string), "* %s uzima kanap iz svog dzepa.", GetName(playerid));
ProxDetector(20.0, playerid, string, PROX,PROX,PROX,PROX,PROX);
return 1;
}[/pawn]
----------------------------------------------------------------
ovo dodaj u cmd zavezi
[pawn]if(PlayerInfo[playerid][pUzeoKanap] <= 0) return SCM(playerid, COLOR_GRESKA, " "BELA"Niste uzeli kanap (/uzmikanap)!");[/pawn]
-----------------------------------------------------------------
ispod ovog [pawn]public LoadUser_data(playerid,name[],value[])[/pawn]
dodaj ovo[pawn] INI_Int("UzeoKanap",PlayerInfo[playerid][pUzeoKanap]);[/pawn]
-------------------------------------------------------------------------------------------------------
ispod ovog [pawn]stock SavePlayer(playerid)[/pawn]
dodaj ovo[pawn] INI_WriteInt(File,"UzeoKanap",PlayerInfo[playerid][pUzeoKanap]);[/pawn]
--------------------------------------------------------------------------------------------------
TO BI BILO TO :D
P.S. nije cmd ispisivala tekst pa sam prepravio
Rešeno može lock