Skripta koju koristim: CLRP
Detaljan opis problema: ja kad kucam /rentmoto komanda noramlno radi i ja rentam motor ali odmah ispod toga mi pise "Server unknow command"kako da maknem to?
Dio skripte:
Citatif(strcmp(cmd, "/rentmoto", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(GetPlayerVehicleID(playerid) >= 186 && GetPlayerVehicleID(playerid) <= 210)
{
new hirefee = HireCost(GetPlayerVehicleID(playerid));
/*if(PlayerInfo[playerid][pPbiskey] == 0)
{
GameTextForPlayer(playerid, "~w~No charge for the boss", 5000, 3);
TogglePlayerControllable(playerid, 1);
return 1;
}*/
if (GetPlayerMoney(playerid) < SBizzInfo[0][sbEntranceCost])
{
SendClientMessage(playerid, COLOR_GRAD2, "Nemate dovoljno novca !");
return 1;
}
if(HireCar[playerid] != 299)
{
gCarLock[HireCar[playerid]] = 0;
UnLockCar(HireCar[playerid]);
SendClientMessage(playerid, COLOR_GREY, "Morate prvo da vratite iznajmljeni auto/motor/camac !");
return 1;
}
foreach (Player, i)
{
if(HireCar == GetPlayerVehicleID(playerid))
{
SendClientMessage(playerid, COLOR_GREY, "Netko je vec iznajmio ovaj motor !");
return 1;
}
}
GivePlayerCash(playerid,-SBizzInfo[0][sbEntranceCost]);
SBizzInfo[0][sbTill] += SBizzInfo[0][sbEntranceCost];
ExtortionSBiz(0, SBizzInfo[0][sbEntranceCost]);
SBizzInfo[0][sbProducts]--;
HireCar[playerid] = GetPlayerVehicleID(playerid);
OnPropUpdate();
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "Iznajmili ste vozilo sada samo vi mozete voziti ovo vozilo.",hirefee);
SendClientMessage(playerid, BELA, string);
TogglePlayerControllable(playerid, 1);
gEngine[GetPlayerVehicleID(playerid)] = 1;
GameTextForPlayer(playerid, string, 5000, 3);
}
}
return 1;
}
Neke slike/video za lakse dobivanje pomoci(neobavezno)://
Ajde pomagajte!!!!!
evo sta mi izbaci
CitatC:\Users\user\Desktop\techland xperia\gamemodes\CLRP.pwn(37423) : error 021: symbol already defined: "OnPlayerCommandPerformed"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
mozda sam negdje krivo stavio,reci mi ti di triba to stavit
Pa do cega je onda?? al shvatio sam da kad upisem valjanu komandu onda mi pise "Server unknow command" a kad upisem neku bezveze krivu komandu onda mi to nepise
Zatos to je ono provera za ZCMD komande a ti koliko vidim koristis strcmp .. Obrisi ono i dodaj
na kraju callbacka tjst u onplayercommandText i ono return 0 umesto return 0 stavi
return SendClientMessage(playerid, 0xAA3333AA, "GRESKA: Komanda koju ste uneli ne postoji!");
Koristi samo ZCMD ili STRCMP :)
na kraju komande rentmoto stavi return 0 i probaj
Da ali meni na skoro svim komanda se to dogadja...
Pa samo i koristim strcmp
Daj callback "OnPlayerCommandPerformed"
Isuse i bože! Pa daj samo prebaci /rentmoto u ZCMD i neces imati to! Hjoj bože bože
E brt nisam ti ja bas neki skripter tek sam pocetnik pa sta ja znam,znaci ovi momci kazu da nebi smjeo mijesat zcmd i ono jos nesto,ja bih sad htio sve onda komande prebacit u zcmd i nebi trebalo bit problema jel tako?? evo stavi mi ovu komandu u zcmd ako moze samo da vidim princip
Citatif(strcmp(cmd, "/rentcar", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(GetPlayerVehicleID(playerid) >= RentCar[0] && GetPlayerVehicleID(playerid) <= RentCar[5])
{
new hirefee = HireCost(GetPlayerVehicleID(playerid));
if (GetPlayerMoney(playerid) < 250)
{
SendClientMessage(playerid, COLOR_GRAD2, "Nemate toliko novca !");
return 1;
}
if(HireCar[playerid] != 299)
{
gCarLock[HireCar[playerid]] = 0;
UnLockCar(HireCar[playerid]);
SendClientMessage(playerid, COLOR_GREY, "Morate prvo da vratite iznajmljeni auto/motor/camac !");
return 1;
}
foreach (Player, i)
{
if(HireCar == GetPlayerVehicleID(playerid))
{
SendClientMessage(playerid, COLOR_GREY, "Neko je vec iznajmio ovaj auto !");
return 1;
}
}
GivePlayerCash(playerid,-250);
SBizzInfo[15][sbTill] += 250;
ExtortionSBiz(15, SBizzInfo[15][sbEntranceCost]);
SBizzInfo[15][sbProducts]--;
HireCar[playerid] = GetPlayerVehicleID(playerid);
OnPropUpdate();
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "Iznajmili ste vozilo sada samo vi mozete voziti ovo vozilo.",hirefee);
SendClientMessage(playerid, YELLOW, string);
SendClientMessage(playerid, COLOR_YELLOW2, "Sada mozete upaliti motor !");
gEngine[playerid] = 0;
engineOn[GetPlayerVehicleID(playerid)] = false;
TogglePlayerControllable(playerid, 1);
GameTextForPlayer(playerid, string, 5000, 3);
}
}
return 1;
}
Ja ti mijesam STRCMP i ZCMD pa nista... Mislim prelijen sam da prebacim u ZCMD... kad tad cu prebaciti u ZCMD
A za rentcar komandu evo...
CMD:rentcar(playerid, params[])
{
if(IsPlayerConnected(playerid))
{
if(GetPlayerVehicleID(playerid) >= RentCar[0] && GetPlayerVehicleID(playerid) <= RentCar[5])
{
new string[128];
new hirefee = HireCost(GetPlayerVehicleID(playerid));
if (GetPlayerMoney(playerid) < 250)
{
SendClientMessage(playerid, COLOR_GRAD2, "Nemate toliko novca !");
return 1;
}
if(HireCar[playerid] != 299)
{
gCarLock[HireCar[playerid]] = 0;
UnLockCar(HireCar[playerid]);
SendClientMessage(playerid, COLOR_GREY, "Morate prvo da vratite iznajmljeni auto/motor/camac !");
return 1;
}
foreach (Player, i)
{
if(HireCar == GetPlayerVehicleID(playerid))
{
SendClientMessage(playerid, COLOR_GREY, "Neko je vec iznajmio ovaj auto !");
return 1;
}
}
GivePlayerCash(playerid,-250);
SBizzInfo[15][sbTill] += 250;
ExtortionSBiz(15, SBizzInfo[15][sbEntranceCost]);
SBizzInfo[15][sbProducts]--;
HireCar[playerid] = GetPlayerVehicleID(playerid);
OnPropUpdate();
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "Iznajmili ste vozilo sada samo vi mozete voziti ovo vozilo.",hirefee);
SendClientMessage(playerid, YELLOW, string);
SendClientMessage(playerid, COLOR_YELLOW2, "Sada mozete upaliti motor !");
gEngine[playerid] = 0;
engineOn[GetPlayerVehicleID(playerid)] = false;
TogglePlayerControllable(playerid, 1);
GameTextForPlayer(playerid, string, 5000, 3);
}
}
return 1;
}
E a vidi sad ovo,za zcmd komande mi izbacuje "ta komanda ne postoji,kucajte /help" a za strcmp nije... pa wtf ,najbolje da prebacim onda sve komane u strcmp jel tako???dacu ti par komandi koje treba prebacit i koja je razlika izmedju zcmd i strcmp???
Vidi, ako imas to "Ta komanda se ne koristi..." unutar OnPlayerCommand" ugl tamo di su strcmp komande onda naravno da ce ti na ZCMD komande tako reagirati... Obrisi si to pa ti nece izbacivati... Po meni bi si ti trebao sve prebaciti u ZCMD i onda napraviti ako igrac nije unio neku od ZCMD komandi da mu doÄ'e ta poruka kontas
a sta to trebam izbrisat pa da me ne izbacuje?? reci pa cu ja to izbrisat i onda prebacit komande u zcmd i onda ponovno sta treba stavit i gdje da mi pise "ta komanda ne postoji..."za strcmp komande
Samo kucaj u CTRL + F taj tekst sto ti izbaci, inace je to na kraju strcmp komandi... Kada obrises prebaci si sve komande u ZCMD.. kada si prebacis onda mi se javi da ti posaljem kod za ZCMD ...
CitatSendClientMessage(playerid, LIGHTRED, "| SkyAs |{FFFFFF} Pomoc: Ta komanda ne postoji, da vidite listu svih dostupnih komandi upisite /help.");
return 1;
}
evo ovo mi na kraju strcmp komandi,da to izbrisem??? i kako treba prebacit strcmp komandu u zcmd
Citatif(strcmp(cmd, "/up", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pAdmin] >= 1)
{
new Float:slx, Float:sly, Float:slz;
GetPlayerPos(playerid, slx, sly, slz);
SetPlayerPos(playerid, slx, sly, slz+2);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "(greska) Niste autorizovani da koristite ovu komandu!");
}
}
return 1;
}
evo ti mi ovud komandu prebaci u zcmd i reci sta si napravio tocno tako da mogu ja ostale prebacit
Da obrisi to... Ako je komanda jednostavna onda samo postavis ovaj gornji dio, obrati pozornost
CMD:up(playerid, params[]) // samo to
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pAdmin] >= 1)
{
new Float:slx, Float:sly, Float:slz;
GetPlayerPos(playerid, slx, sly, slz);
SetPlayerPos(playerid, slx, sly, slz+2);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "(greska) Niste autorizovani da koristite ovu komandu!");
}
}
return 1;
}
MeÄ'utim ako u komandi ima recimo IDX ili STRING ili neka varijabla koja je inace definirana u OnPlayerCommand, morat ces ju i ovdje... to sve vidis kada kompiliras....
znaci samo tu prvu liniju promijenim za sve komande???a ove dole funkcije ostaje iste jel?na nekim zcmd komandama ima ovo #pragma unused params,jeli to dio funkcije ili se i to dodaje kad stavljas komandu u zcmd?
Pragma unused params i mozes staviti i ne moras, zavisi gdje je potrebno....Citat
znaci samo tu prvu liniju promijenim za sve komande???a ove dole funkcije ostaje iste jel?
Gornji dio se uvijek mijenja, al kako sam ti vec rekao neke komande su složenije pa ce biti potrebno dodavati kod nekih new string[128]; i te stvari
cemu sluzi pragma unused params ?kad je potrebna?,kako da znam za koje komande moram stavljat new string[128]; i to i jeli taj new string[128]; ide povise komande odmah?
Pragma unused params stavljas tamo gdje ne treba "params" - Params inace treba kod komandi kao /report itd... "params" stavljas umjesto "cmdtext" ... Da ne dužim, uvijek kompiliraj i ako ti kaze da ne zna sto je recimo "string" , "sendername" ili sta ti ja znam jednostavno napravi na vrh komande to i nece biti problema
CitatC:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4370) : error 017: undefined symbol "GivePlayerCash"
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4403) : error 017: undefined symbol "GivePlayerCash"
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4432) : error 004: function "SafeResetPlayerWeapons" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4433) : error 004: function "SafeGivePlayerWeapon" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4457) : error 004: function "SafeResetPlayerWeapons" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4820) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4832) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4836) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4848) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4852) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4856) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4860) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4864) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4868) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4872) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4876) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4880) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4884) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4896) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4900) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4904) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4908) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4912) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4924) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4928) : error 004: function "PlayerToPoint" is not implemented
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(4932) : error 004: function "PlayerToPoint" is not implemented
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
26 Errors.
Evo stavio sam ovu tvoju zcmd komandu /up i evo sta mi je izbacilo
Probaj ovako, do zagrade je problem
CMD:up(playerid, params[]) // samo to
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pAdmin] >= 1)
{
new Float:slx, Float:sly, Float:slz;
GetPlayerPos(playerid, slx, sly, slz);
SetPlayerPos(playerid, slx, sly, slz+2);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "(greska) Niste autorizovani da koristite ovu komandu!");
}
}
return 1;
}
jebo joj ja sve meni se copira u pawn isto ko i ona prva komanda sta si mi dao,nevidim razliku
CitatC:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(43937) : error 029: invalid expression, assumed zero
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(43937) : error 017: undefined symbol "cmd_up"
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(43937) : error 029: invalid expression, assumed zero
C:\Users\user\Desktop\Croatia Sky RP\Croatia Sky RolePlay\gamemodes\CSRP.pwn(43937) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Umjesto cmd_up napisi cmd:up
tako mi vec i je,a mogu li ja prebacit sve komande na strcmp i ove sta su zcmd isto u strcmp jer sa ovima nemam problema??ima li to ikakve razlike sto nije zcmd vec ove druge
Mozes prebaciti, ali to je sporiji komandni procesor... Daj mi tu liniju da vidim kako si napravio, kod mene je sve dobro... I da, mozda je glupo pitanje, ali jesi li komandu stavio izvan publica?
Citatif(strcmp(cmd, "/down", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pAdmin] >= 1)
{
new Float:slx, Float:sly, Float:slz;
GetPlayerPos(playerid, slx, sly, slz);
SetPlayerPos(playerid, slx, sly, slz-2);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "(greska) Niste autorizovani da koristite ovu komandu!");
}
}
return 1;
}
CMD:up(playerid, params[]) // samo to
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pAdmin] >= 1)
{
new Float:slx, Float:sly, Float:slz;
GetPlayerPos(playerid, slx, sly, slz);
SetPlayerPos(playerid, slx, sly, slz+2);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "(greska) Niste autorizovani da koristite ovu komandu!");
}
}
return 1;
}
stavio sam komandu na mjesto one stare strcmp /up komande,povise ove tvoje ima jos jedna koja valja i izvan publica je
ZCMD komande moraju biti izvan publica!!! OBRISI ju odavde i stavi izvan publica, najbolje na kraj moda!!!
A cekaj kako cu sad onda sve komande brisat i pravit ponovo na kraju skripte???
Eh to ti je ZCMD, odabrat ces cijelu komandu pa CTRL + X i staviti na kraj moda i ureÄ'ivati... Tako za svaku komandu...
jeboteeeee,pa ima komandi pun krc,i sta dobijem time sto ih prebacim u zcmd???i kazes jednu po jednu ureÄ'ivat i stavljat na kraj skripte a od gore izbrisat
Tako je... Eh šta dobijes... Pa dobijes na brzini, kako da ti objasnim... Malo se potrudi, to ti barem nije toliko tesko... Ako budes zapeo javi se na forum ili meni na PM ako je sitni problem da ne otvaras temu bezveze...
a kad to sve premjestim kako onda da ubacim ono govno za netocnu komandu "komanda nepostoji..." i kako mislis brzina,npr kucam /kupikucu i kupi je u sekund haha na sta mislis
Prvo ti to sve sredi pa ti dam preko PM-a taj kod... Haha ne mislim na to.. i STRCMP komanda ce ju kupiti u sekundi... Razlika izmedju STRCMP i ZCMD je ta sto ucestalo koristenje STRCMP komandi (npr u 3 sekunde otkucas 4 puta istu komandu) dovodi do "štekanja" ,a kod ZCMD to nije slucaj...
Ahaa ok,onda definitivno moram prebacit na zcmd da mogu spamat na /b haha provacu ako negdi zapnem pm cu te
Dobro.. Mislim da je vrijeme da idem spavati hhahah... Neka Lockaju temu nema vise sta tu raspravljati
nece da mi se prebace neke komande u zcmd,izbacilo mi je nesto string i jos par errora i onda sam probao stavit new temp[128]; i #pragma unused params al nece nista,do ceg je??
jbt pola komandi izbaci errore kad probam prebacit u zcmd a radio sam kako si mi rekao
ajde low pomagaj
Dodaj ove linije kod komandi, to su uobicajene koje fale... Ako neka ne treba samo obrises...
new string[256];
new giveplayerid;
new giveplayer[MAX_PLAYER_NAME];
new sendername[MAX_PLAYER_NAME];
new idx;
new tmp[256];
M ja to nekuzim nista samo cu sjebat,bili mi ti mogao prebacit sve komande ili bar vecinu u zcmd za 1338 admina na mom serveru,mos bit g.skripter ako hoces
Javi mi se na PM
Mozete lock