[Pomoc] Praznjenje

Započeo CADILAB
1. Apr. 2014. Zaključano
404
pregleda
14
postova
cadilab
10
Administrator
🔥64
1. Apr. 2014.
Skripta koju koristim: Od 0
Detaljan opis problema: Evo pravim neki poslic, i sada hocu da samo jednom moze da uradi nesto na tom kontenjeru, ali meni se to namesti za sve kontenjere, znaci iz jednog izvadim smece, i iz njega vise ne mogu dok ne zavrsim posao, a meni nemoze nigde onda, i da kako da namestim da kad je u autu ne moze koristiti ovu komandu
	if (newkeys & KEY_SPRINT)
{
    if(KupiSmece == 1)
    {
new Float:Pos;
for(new i = 0; i < sizeof(Kontenjeri); i++)
{
    GetDynamicObjectPos(Kontenjeri, Pos,Pos,Pos);
    if(Kontenjeri == 999) return SCM(playerid, ORANGE, " >> U ovom kontenjeru vise nema smeca !");
    if(IsPlayerInRangeOfPoint(playerid,1.0,Pos,Pos,Pos) && KupiSmece == 1)
    {
SetPlayerAttachedObject(playerid, 0, 1265, 6, 0.298000, -0.031999, -0.050000, 0.000000, -104.599983, 0.000000, 0.683000, 0.648999, 1.077999, 0, 0);
SCM(playerid, RED, " >> Uzimate kontenjer i praznite smece !");
Kontenjeri = 999;
DestroyDynamicPickup(Kontenjeri);
}
}
}
}


Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
cadilab
10
Administrator
🔥64
2. Apr. 2014.
Iko ?
adnan halilovic
4
Enforcer
2. Apr. 2014.
if(!IsPlayerInAnyVehicle(playerid)) return SCM(playerid, CRVENA, "Greska |{FFFFFF} Ne može koristti ovu komandu u vozilu ste!);

Jeli na ovo misliš? ili na nešto drugo?
cadilab
10
Administrator
🔥64
2. Apr. 2014.
Ne vec kad jednom izvrsi akciju na jednom objektu taj isti objekat se ne moze koristiti vise, vec mora se ici po drugim objektima.
Rudimental
5
OG Legend
2. Apr. 2014.
Pa ti si mu napravio sada samo 1 kontejner odradi kada igrac dodje do kontejnera i kada zavrsi s njim da dobije nesto sto mu vise nece dati da tu radi vec novi marker za novi kontejner 😄
Sredis jednostavno sa kordinatama

if (IsPlayerInRangeOfPoint(playerid,3.0,x,y,z)) // 1 kontejner
{
    PokupioSmece = 1;
  // Ponistavas mu sve oko tog kontejnera
  //Stavis mu novi marker
}
else if (IsPlayerInRangeOfPoint(playerid,3.0,x,y,z)) // 2 kontejner
{
}
itd...
Ponovo rodjen
3
Hustler
2. Apr. 2014.
Za ovog iznad mene lupas gluposti.
Vidi logiku, ti stavis tako nesto, ti ces time kada krene loop on prvo proveravati da li je taj kontenjer vec uzimano iz njega ako jeste vratice tu poruku, a to ako uradis sa prvim vise neces moci da vadis smece. Prosto ovako stavis:
	if (newkeys & KEY_SPRINT)
{
    if(KupiSmece == 1)
    {
new Float:Pos;
for(new i = 0; i < sizeof(Kontenjeri); i++)
{
    GetDynamicObjectPos(Kontenjeri, Pos,Pos,Pos);
    if(IsPlayerInRangeOfPoint(playerid,1.0,Pos,Pos,Pos) && KupiSmece == 1)
    {
if(Kontenjeri == 999) return SCM(playerid, ORANGE, " >> U ovom kontenjeru vise nema smeca !");
SetPlayerAttachedObject(playerid, 0, 1265, 6, 0.298000, -0.031999, -0.050000, 0.000000, -104.599983, 0.000000, 0.683000, 0.648999, 1.077999, 0, 0);
SCM(playerid, RED, " >> Uzimate kontenjer i praznite smece !");
Kontenjeri = 999;
DestroyDynamicPickup(Kontenjeri);
}
}
}
}

Prosto, ako je u blizini tog kontenjera i ako mu je taj objekat na 999 on ce vratiti to, ovako ce raditi ja mislim i siguran sam
cadilab
10
Administrator
🔥64
2. Apr. 2014.
Sad kada pridjem i stisnem spejs nista ...
Ponovo rodjen
3
Hustler
2. Apr. 2014.
Shoorty wrote on April 2, 2014, 5:26 pm:
Sad kada pridjem i stisnem spejs nista ...

Da povecas range, jer ako je upitanju kontenjer, ako je 1.0 to znaci da moras biti u kotenjeru verovatno, aj probaj staviti bar 3.0 ili 5.0
adnan halilovic
4
Enforcer
2. Apr. 2014.
"public OnPlayerEnterCheckpoint(playerid)"
Povežeš sa komandom da li me kontaš?
odeš tamo i sada napraviš.
if(GetPVarInt(playerid,"PoceoWork") == 1)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 453)
{
if(GetPVarInt(playerid,"CP") == 1)//Ispitivanje da li CP na 1
{
if(IsPlayerInRangeOfPoint(playerid,5.0,2617.9966,-2482.6226,-0.3542))//Tu kordinate za CP1 kao u komandi
{
SetPlayerCheckpoint(playerid,133.2870,-1937.5846,-0.4944,5.0);
SetPVarInt(playerid,"CP",2);//Stavimo "CP" na 2
SendClientMessage(playerid, COLOR_WHITE, ">>Odvezi opremu sad do svjetleonika.");
}
}
if(GetPVarInt(playerid,"CP") == 2)//Ispitivanje da li CP na 2
{
if(IsPlayerInRangeOfPoint(playerid,5.0,133.2870,-1937.5846,-0.4944))//Tu kordinate za CP2 kao iznad
{
SetPlayerCheckpoint(playerid,1142.1008,-2467.3606,-0.5795,5.0);
SetPVarInt(playerid,"CP",3);//Stavimo "CP" na 3
SendClientMessage(playerid, COLOR_WHITE, ">>Sad se vrati do baze po platu.");
}
}
if(GetPVarInt(playerid,"CP") == 3)//Ispitivanje da li CP na 3
{
if(IsPlayerInRangeOfPoint(playerid,5.0,1142.1008,-2467.3606,-0.5795))//Tu kordinate za CP2 kao iznad
{
DisablePlayerCheckpoint(playerid);
SetPVarInt(playerid,"CP",0);//Stavimo "CP" na 0, jer prakticki zavrsavaju CP-evi
SendClientMessage(playerid, COLOR_WHITE, ">>Dobio si 1000$.");
GivePlayerMoney(playerid, 1000);
}
}
}
}
return 1;
}

To ti je primjer i sada ti sebi tako uradiš? ako misliš na to?
Ali sebi to uradiš kontaš? povežeš sa komandom i ispast če tako kao što si mislio.
Isti tak način sam i ja nešto pravio.
cadilab
10
Administrator
🔥64
2. Apr. 2014.
Hvala gagi radi, al sada kada pokupim nece da unisti taj pickup kod objekta, a postavio sam ovako
DestroyDynamicMapIcon(Kontenjeri);
Ponovo rodjen
3
Hustler
2. Apr. 2014.
Shoorty wrote on April 2, 2014, 6:48 pm:
Hvala gagi radi, al sada kada pokupim nece da unisti taj pickup kod objekta, a postavio sam ovako
DestroyDynamicMapIcon(Kontenjeri);

Kontenjeri je id od objekta, a za map iconu moras nesto tipa
new KontenjeriMapIcone;
I onda kod SetDynamicMapIcon dodas KontenjeriMapIcone = SetDynamicMapIcon...
i onda za to destroy koristis KontenjeriMapIcone, a ne Kontenjeri jer to je objekat, ne map icona
cadilab
10
Administrator
🔥64
2. Apr. 2014.
Pa necu valjda morati dodavati map ikonu posebno za svaki kontenjer, mogu li to loop-at ili ?
Ponovo rodjen
3
Hustler
2. Apr. 2014.
Shoorty wrote on April 2, 2014, 7:59 pm:
Pa necu valjda morati dodavati map ikonu posebno za svako kontenjer, mogu li to loop-at ili ?

Pa dobro u loop-u dodas samo taj deo KontenjeriMapIcone = SetDynamic...
Ili daj mi kako setujes map icone da vidim pa cu dodati odmah, a lako je samo definises nesto tipa ovo KontenjerMapIcone i dodas ono...
cadilab
10
Administrator
🔥64
2. Apr. 2014.
CMD:kupismece(playerid, params[])
{
if(PI != 2) return SCM(playerid, ORANGE, " >> Niste zaposleni kao Djubretar !");
if(KupiSmece != 0) return SCM(playerid, ORANGE, " >> Vec ste krenuli sa kupljenjem smeca !");
new Float:Pos;
for(new i = 0; i < sizeof(Kontenjeri); i++) //Broj 4 je broj kontenjera
{
GetDynamicObjectPos(Kontenjeri,Pos,Pos,Pos);
CreateDynamicMapIcon(Pos,Pos,Pos, 56, -1, -1, -1, -1, 50.0);
}
KupiSmece = 1;
return 1;
}


EDIT: Napravio sam, hvala gagi, kraljina si.

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha