Skripta koju koristim: GTA RP
Detaljan opis problema: hocu da napravim komandu /vuci id sa kojom se pd/fbi vuci kriminalce koje uhapsi. Naprimjer uhapsi ga na nekom brdu gdje nemoze doci sa kolima on ukuca /vuci id i gdje god se pomjeri policajac tu ide i ovaj igrac koji se vuce, i kada ga povuces dokle treba onda ukucas /pusti i igrac se vise nevuce. Ja sam pokusavao nesto napraviti ali nece da radi a evo kako sam ja pokusao pa znali ko dje je greska kad kompilujem nema erora. trazio sam na forumu ima dosta ovih tema ali u nijednoj nije napravljeno
Dio skripte:
Kod:
if(strcmp(cmd, "/vuci", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gTeam[playerid] == 2 || IsACop(playerid))
{
if(KnockedDown[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, "Ne mozete vuci kada ste unesvijesceni.");
return 1;
}
if(PlayerTied[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Vezani ste!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "Koriscenje: /vuci [ID Igraca/Dio Imena]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(gTeam[giveplayerid] == 2 || IsACop(giveplayerid))
{
SendClientMessage(playerid, COLOR_GREY, " Ne mozete vuci Policajca!");
return 1;
}
if(PlayerCuffed[giveplayerid] != 2)
{
SendClientMessage(playerid, COLOR_GREY, " Igracu nisu stavljene lisice!");
return 1;
}
if (ProxDetectorS(8.0, playerid, giveplayerid))
{
if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Ne mozete vuci sami sebe!"); return 1; }
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s vas vuce.", sendername);
SendClientMessage(giveplayerid, COLOR_WHITE, string);
format(string, sizeof(string), "* Vucete %s-a.", giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "* %s vuce %s-a.", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Taj igrac nije blizu vas !");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Igrac je offline !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Niste Policajac / FBI / SWAT !");
}
}
return 1;
}
if(strcmp(cmd, "/pusti", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gTeam[playerid] == 2)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "Koriscenje: /pusti [ID Igraca/Dio Imena]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if (ProxDetectorS(8.0, playerid, giveplayerid))
{
if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Ne mozete sebe pustiti!"); return 1; }
if(PlayerCuffed[giveplayerid])
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s vas je pustio.", sendername);
SendClientMessage(giveplayerid, COLOR_WHITE, string);
format(string, sizeof(string), "* Pustili ste %s-a.", giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
TogglePlayerControllable(giveplayerid, 0);
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Tome igracu nisu stavljene lisice !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Taj igrac nije blizu vas !");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Taj igrac je offline !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Niste Policajac / FBI / SWAT !");
}
}
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Ovako (http://wiki.sa-mp.com/wiki/AttachObjectToPlayer)slicno ti ide :)
Ako ne razumijes javi se na Pm, pomoci cu ti :D
Citat: [SC] ScHaLe poslato Oktobar 29, 2011, 03:19:19 PRE PODNE
Ovako (http://wiki.sa-mp.com/wiki/AttachObjectToPlayer)slicno ti ide :)
Ako ne razumijes javi se na Pm, pomoci cu ti :D
poslao sam, a ako ako neko jos zna neka ovdje objavi ili mi posalje na pm
Evo probao sam nesto napraviti dosla mi ideja :D
if(strcmp(cmd, "/vuci", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gTeam[playerid] == 2 || IsACop(playerid))
{
if(KnockedDown[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, "Ne mozete vuci kada ste unesvijesceni.");
return 1;
}
if(PlayerTied[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Vezani ste!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "Koriscenje: /vuci [ID Igraca/Dio Imena]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(gTeam[giveplayerid] == 2 || IsACop(giveplayerid))
{
SendClientMessage(playerid, COLOR_GREY, " Ne mozete vuci Policajca!");
return 1;
}
if(PlayerCuffed[giveplayerid] != 2)
{
SendClientMessage(playerid, COLOR_GREY, " Igracu nisu stavljene lisice!");
return 1;
}
if (ProxDetectorS(8.0, playerid, giveplayerid))
{
if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Ne mozete vuci sami sebe!"); return 1; }
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s vas vuce.", sendername);
SendClientMessage(giveplayerid, COLOR_WHITE, string);
format(string, sizeof(string), "* Vucete %s-a.", giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "* %s vuce %s-a.", sendername ,giveplayer);
SetPVarInt(playerid,"VuceIgraca",giveplayer);//Postavio na varijablu VuceIgraca ID igraca kojeg vuce
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Taj igrac nije blizu vas !");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Igrac je offline !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Niste Policajac / FBI / SWAT !");
}
}
return 1;
}
if(strcmp(cmd, "/pusti", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gTeam[playerid] == 2)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "Koriscenje: /pusti [ID Igraca/Dio Imena]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if (ProxDetectorS(8.0, playerid, giveplayerid))
{
if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Ne mozete sebe pustiti!"); return 1; }
if(PlayerCuffed[giveplayerid])
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s vas je pustio.", sendername);
SendClientMessage(giveplayerid, COLOR_WHITE, string);
format(string, sizeof(string), "* Pustili ste %s-a.", giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
TogglePlayerControllable(giveplayerid, 0);
SetPVarInt(playerid,"VuceIgraca",999);
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Tome igracu nisu stavljene lisice !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Taj igrac nije blizu vas !");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Taj igrac je offline !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Niste Policajac / FBI / SWAT !");
}
}
Sada pod public OnPlayerUpdate
if(GetPVarInt(playerid,"VuceIgraca") != 999)
{
new Float:Pos[3];
GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);//Uzima kordinate igraca
SetPlayerPos(GetPVarInt(playerid,"VuceIgraca"),Pos[0],Pos[1],Pos[2]);//Tom igracu postavlja poziciju igraca koji ga vuce
}
Aj tako nesto probaj :)
ovo sam uradio ali dobijam sledeci eror koji nikako da ispravim
C:\Users\Users\Desktop\w.pwn(42984) : error 035: argument type mismatch (argument 3)
a taj kod je
SetPVarInt(playerid,"VuceIgraca",giveplayer);//Postavio na varijablu VuceIgraca ID igraca kojeg vuce
Citat: Frile poslato Oktobar 29, 2011, 22:33:26 POSLE PODNE
ovo sam uradio ali dobijam sledeci eror koji nikako da ispravim
C:\Users\Users\Desktop\w.pwn(42984) : error 035: argument type mismatch (argument 3)
a taj kod je
SetPVarInt(playerid,"VuceIgraca",giveplayer);//Postavio na varijablu VuceIgraca ID igraca kojeg vuce
Moja je bila greska stavi ovako:
SetPVarInt(playerid,"VuceIgraca",giveplayerid);
e sad imam jos jedan problem :'( :'( :'(
kad kompilujem neizadje mi nikakav erora ali kada udjem na server zaglavim se na lokaciju na koju sam zadnji put bio i nemogu da se pomjerim, pa do cega moze biti to