GM koji koristite: svoje
Problem:
pa radim neki posao i sada treba mi kad igrac je blize tog auta is posla sta je da mogu raditi ...npr radim farmer posao i kad idem na kordinate X Y Z stisnem Y i uzimam mljeko ..ali hocu uraditi kad je igrac blize farmerske aute i pritisne dugme Y da ostavi mljeko ..ali nez kako uraditi to neki savet?
i isto tako hocu da uradim kad pritisne Y da mu okaci object
probao sam uraditi ss CreatePlayerObject(playerid, IDobject, X, Y, Z); neradi
a isto probao sam ss SetPlayerAttachedObject i okaci mi object ali nece mi skidati posle to..
Deo skripte: //
Pa pod OnPlayerKeyStateChange stavis ako je if(newkeys == 65536) to ti je Y ako stisnes i onda izmes poziciju auta tog i onda ako je do tog auta da odradi to i to
a daj mi taj kod sto si pravio da se stvori objekat i sto nece da ti radi...
Citat: Vuzimir poslato Jun 29, 2015, 12:09:38 POSLE PODNE
Pa pod OnPlayerKeyStateChange stavis ako je if(newkeys == 65536) to ti je Y ako stisnes i onda izmes poziciju auta tog i onda ako je do tog auta da odradi to i to
a daj mi taj kod sto si pravio da se stvori objekat i sto nece da ti radi...
pa nemoze to tako da uzmem X y Z od aute i stavim kodove jer mora aute da se pomera od mjesto 1 do mjesto 2 kje ima crven marker na mapu i mora odradicu to
evo za kontinjeri sta sam radio a nece ..
if(PlayerToPoint(1.0,playerid,1698.2157,-1865.3314,13.5590))
{
if(KontinjeriOtpad <= 0) return SCM(playerid,-1, "{840042}GRESKA:{FFFFFF} Kontinjerot e prazen");
//SetPlayerAttachedObject(playerid, 5, 1264, 6, 0.325998, -0.316000, 0.059998, -72.100006, -61.199993, -140.100021, 1.000000, 1.000000, 1.000000);
pObject[playerid] = CreatePlayerObject(playerid, 1264, 0.325998, 1-0.316000, 0.059998, 0, 0, 96);
PlayerInfo[playerid][pGjubre] += 1;
KontinjeriOtpad -= 1;
SCM(playerid,-1, "{0049FF}INFO:{FFFFFF} Ja zemavte kesata so gjubre stavete ja vo kamijonot");
}
1.) Kako ne mozes da uzmes X,Y,Z ako treba da se pomjera? uvjek kada stisne Y napravis da GetVehiclePos i da sacuva u kordinate, vidis da moze.
2.)CreatePlayerObject(playerid, 1264, 0.325998, 1-0.316000, 0.059998, 0, 0, 96);
na ovo sto kazes da nece da se kreira objekat samo ajde portaj se na kordinate tog objekta i bice ti sve jasno, portaj se na ove kordinate: 0.325998, 1-0.316000, 0.059998
sredio sam za to object ali ovo za aute nemogu ...uradio sam ovako nesto ali hoce mi raditi kad je u aute ja hocu da radi kad je iza aute
new newcar = GetPlayerVehicleID(playerid);
new Float:PX,Float:PY,Float:PZ,Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,PX,PY,PZ);
GetVehiclePos(newcar, X,Y,Z);
new Float:Distance = (X-PX)*(X-PX)+(Y-PY)*(Y-PY)+(Z-PZ)*(Z-PZ);
if(Distance <= Djubretar[0])
{
if(PlayerInfo[playerid][pSeno] <= 0) return SCM(playerid, -1, "{840042}GRESKA:{FFFFFF} nemate kesa so gjubre");
DestroyPlayerObject(playerid, pObject[playerid]);
GivePlayerMoney(playerid, 500);
PlayerInfo[playerid][pSeno] -= 1;
SCM(playerid,-1, "{0049FF}INFO:{FFFFFF} Ja ostavivte kesata so gjubre vo kamijonot i zarabotivte 500$");
}
Prvo ako si van auta moras u neku variablu sacuvati ID auta
ovako bi trebalo izgledati:
//new newcar = GetPlayerVehicleID(playerid); - AKO SI U AUTU
//new newcar = VariablaIDauta[playerid]; - AKO SI VAN AUTA
new Float:X,Float:Y,Float:Z;
GetVehiclePos(newcar, X,Y,Z);
if(IsPlayerInRangeOfPoint(playerid, 2.0,X,Y,Z))
{
if(PlayerInfo[playerid][pSeno] <= 0) return SCM(playerid, -1, "{840042}GRESKA:{FFFFFF} nemate kesa so gjubre");
DestroyPlayerObject(playerid, pObject[playerid]);
GivePlayerMoney(playerid, 500);
PlayerInfo[playerid][pSeno] -= 1;
SCM(playerid,-1, "{0049FF}INFO:{FFFFFF} Ja ostavivte kesata so gjubre vo kamijonot i zarabotivte 500$");
}
jel mogu dati neki deo skripte jer ovako nemogu uraditi trazio sam i na wiki ali nemogu naci nista ..:/
Pa dodaj na vrh skripte new VariablaIDauta[MAX_PLAYERS];
i onda u tom djelu kad on izlazi iz auta OnPlayerExitVehicle ispod tog dodas VariablaIDauta[playerid] = vehicleid;
i onaj kod sto sam ti u proslom postu napisao dodas tamo gdje ti treba biti i to je to...
uradio sam to nece opet uff umricu ...