Skripta koju koristim: NL
Detaljan opis problema: Pokušajem da riješim ali ne mogu ne znam što. Joj . sve gledam i po forumima i sve .
Dio skripte:
new string[256];
to je ta linija SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0); DilaDrogu[playerid] = 1;
return DilaDrogu(-1,string);
C:\Users\Korisnik\Desktop\wg\gamemodes\WGRPG.pwn(84203) : error 028: invalid subscript (not an array or too many subscripts): "DilaDrogu"
C:\Users\Korisnik\Desktop\wg\gamemodes\WGRPG.pwn(84203) : warning 215: expression has no effect
C:\Users\Korisnik\Desktop\wg\gamemodes\WGRPG.pwn(84203) : error 001: expected token: ";", but found "]"
C:\Users\Korisnik\Desktop\wg\gamemodes\WGRPG.pwn(84203) : error 029: invalid expression, assumed zero
C:\Users\Korisnik\Desktop\wg\gamemodes\WGRPG.pwn(84203) : fatal error 107: too many error messages on one line
Neke slike/video za lakse dobivanje pomoci(neobavezno):
http://wiki.sa-mp.com/wiki/Errors_List#Fatal_errors eto ti tuj imas neka rijesenja ze erore
new DilaDrogu[MAX_PLAYERS];
To sam rijeÅ¡io skontao sam u Äemu je problem.
Ali sada kada ja dodjem na ovaj crveni CP.
Neće da mi nastavi dalje uÄitavati , gdje tu može biti problem?
Daj entercheckpoint public mozda ti provere nisu dobre.
pa trebaš sad onplayerentercheckpoint nešto napraviti msm to što zelis napraviti , citaj malo wiki i skontat ces nmg ti sad sve napravit http://wiki.sa-mp.com/wiki/OnPlayerEnterCheckpoint
CMD:dilanjedroge(playerid, params[])
{
if(PI[playerid][Clan] != -1 && PI[playerid][Lider] != 1) return SendClientMessage(playerid,-1,"Samo clanovi Mafije!");
{
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0); DilaDrogu[playerid] = 1;
}
if(DilaDrogu[playerid] == 1)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, 2455.2285,-2090.3384,14.1206))
{
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga utovari.");
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0);
DilaDrogu[playerid] = 2;
}
}
if(DilaDrogu[playerid] == 2)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, 2455.2285,-2090.3384,14.1206))
{
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga istovari , pa se nazad vrati u bazu!");
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0);
DilaDrogu[playerid] = 3;
}
}
if(DilaDrogu[playerid] == 3)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, 2455.2285,-2090.3384,14.1206))
{
SCM(playerid,-1,"[DILANJE-PROTECT] Završio si dilanje droge , možete se vratiti nazad u bazu!");
DilaDrogu[playerid] = 0;
DisablePlayerCheckpoint(playerid);
}
}
return 1;
}
Ja sam to sve ovako stavio? jeli neki problem?
znam sigurno da sam pogrješio
Ako hoces da se nesto desi kad udjes u CP tj. da kreira ponovo novi CP to radis u onplayerentercheckpoint CP i tamo radis ovu proveru
Evo ti primer:
public OnPlayerSpawn(playerid)
{
if(Dilao[playerid] == 1)
{
// Postavis mu novi Cp
}
if(Dilao[playerid] == 2)
{
// Postavis mu novi Cp
}
return 1;
}
Komanda ti samo sluzi da pokrenes CP i postavis varijablu.
Onda mi stvori Äitav bug u skrpti neće da podnese uopÅ¡te sve onda warna i eror baca.
Evo sada pokušao , kada obrišem sve normlano cc
Ajde neko help , nije valjda da se ovo ne može riješiti i ubaciti?
Citat: Sivilo ^^ poslato Januar 31, 2015, 17:47:58 POSLE PODNE
Onda mi stvori Äitav bug u skrpti neće da podnese uopÅ¡te sve onda warna i eror baca.
Evo sada pokušao , kada obrišem sve normlano cc
Ajde neko help , nije valjda da se ovo ne može riješiti i ubaciti?
Daj da vidim sta si uradio, ti nesto ocigleno gresis.
Citat: Denis_Lapi poslato Januar 31, 2015, 18:05:01 POSLE PODNE
Citat: Sivilo ^^ poslato Januar 31, 2015, 17:47:58 POSLE PODNE
Onda mi stvori Äitav bug u skrpti neće da podnese uopÅ¡te sve onda warna i eror baca.
Evo sada pokušao , kada obrišem sve normlano cc
Ajde neko help , nije valjda da se ovo ne može riješiti i ubaciti?
Daj da vidim sta si uradio, ti nesto ocigleno gresis.
Evo sekunda samo da slikam , nemoj mi ono pisati za DP.
Moram postati kasnije da vidiš..
Eh evo ti.
http://i.imgur.com/SeinT4t.png kada je tu u skripti.
http://i.imgur.com/kIUUGTq.png ogromni erori koji stvore se , nije vezano za ovo. Nego jednostavo za skripteru to jeste kreirajint a sve je u dure.
http://i.imgur.com/hEDXPQS.png kad izbacim.
http://i.imgur.com/4oUsZS1.png compile sve rega.
Nemoj da proveravas da li na nekoj poziciji, prati moju kompoziciju, Evi ti ceo primer.
if(DilaDrogu[playerid] == 1)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 2; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
SetPlayerCheckpoint(playerid, x,y,z, 5.0); // Stvara novi CP
SendClientMessage(playerid,-1,"Usao si u CP, idu u sledeci);
}
if(DilaDrogu[playerid] == 2)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 3; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
SetPlayerCheckpoint(playerid, x,y,z, 5.0); // Stvara novi CP
SendClientMessage(playerid,-1,"Usao si u CP, idu u sledeci);
}
Evo sad ću da pokuÅ¡am :D 8) javim ti odmah Äim bude moglo.
Denise ja sam sada sto u onaj krug on svake sec izbacuje ovo . msm tekst koji sam stavio.
I neće da ga pomjeri na drugi CheckPoint stojim tu ali ništa.
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 1; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga utovari.");
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0); // Stvara novi CP
vidiš?
neće da ga pomjeri u drugi.
Evo sve taÄno kako sam uradio.
if(DilaDrogu[playerid] == 1)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 1; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0); // Stvara novi CP
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga utovari.");
}
if(DilaDrogu[playerid] == 2)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 2; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga istovari , pa se nazad vrati u bazu!");
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0);
DilaDrogu[playerid] = 2;
}
if(DilaDrogu[playerid] == 3)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 3; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
SCM(playerid,-1,"[DILANJE-PROTECT] Završio si dilanje droge , možete se vratiti nazad u bazu!");
DilaDrogu[playerid] = 0;
DisablePlayerCheckpoint(playerid);
}
Pa zameni koordinate covece, stavi koordinate novog CP-a. Ti si ostavio iste i naravno da nece da radi.
Citat: Denis_Lapi poslato Januar 31, 2015, 18:57:21 POSLE PODNE
Pa zameni koordinate covece, stavi koordinate novog CP-a. Ti si ostavio iste i naravno da nece da radi.
Ma govorim ti za onu poruku samo reda chat ali hajde oke sad ću to da uradim. :D
Ocigledno ne shvatas sustinu postavljanja varijabli.
Ovo ubaci u komandu:
DilaDrogu[playerid] = 1;
Ovo zameni sa starim i naravno stavi koordinate nove.
if(DilaDrogu[playerid] == 1)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 2; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0); // Stvara novi CP
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga utovari.");
}
if(DilaDrogu[playerid] == 2)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 2; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga istovari , pa se nazad vrati u bazu!");
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0);
DilaDrogu[playerid] = 3;
}
if(DilaDrogu[playerid] == 3)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 0; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
SCM(playerid,-1,"[DILANJE-PROTECT] Završio si dilanje droge , možete se vratiti nazad u bazu!");
}
To sam uradio kako da postavim odreÄ'enje bande da budu? :-*
Koristi varijablu bande kao proveru na pocetak komande, tamo gde pokreces prvi CP.
Citat: Denis_Lapi poslato Januar 31, 2015, 20:21:51 POSLE PODNE
Koristi varijablu bande kao proveru na pocetak komande, tamo gde pokreces prvi CP.
Kako to misliš , wtf , ? ???
ocito za tebe nije skriptanje dok ne naucis engleski jezik i malo se bolje ponasat ne pravit dp 20 puta u jednoj temi
Nadji varijablu koju hoces da proveravas. Recimo pClan ili koju vec koristis za to. Proveravas preko:
if(Varijabla == 1){
// Akcija
}
if(DilaDrogu[playerid] == 1)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 2; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0); // Stvara novi CP
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga utovari.");
return 1;
}
if(DilaDrogu[playerid] == 2)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 3; // Postavlja mu var na 2 da bi radilo u kasnijoj proveri
utovar[playerid] = SetTimerEx("preposta", 15000, false, "d", playerid);
SCM(playerid,-1,"[DILANJE-PROTECT] SaÄekaj da se droga istovari , pa se nazad vrati u bazu!");
SetPlayerCheckpoint(playerid, 2455.2285,-2090.3384,14.1206, 5.0);
return 1;
}
if(DilaDrogu[playerid] == 3)
{
DisablePlayerCheckpoint(playerid); // Gasi mu ovaj CP u koji je sad usao
DilaDrogu[playerid] = 0; // Postavlja mu var na 0 i tu je zavrsio
SCM(playerid,-1,"[DILANJE-PROTECT] Završio si dilanje droge , možete se vratiti nazad u bazu!");
DisablePlayerCheckpoint(playerid);
return 1;
}