Jump to content
Autentificarea cu Google și Facebook nu mai este disponibilă. ×

Question

Posted

Salut, am o problema la un sistem de rob baza pe pickup-uri. Spre exemplu, daca un jucator da rob, va aparea un pickup de bani (acest pickup doar acel jucator ar trebui sa il poata lua), alt jucator da si el rob. Primul jucator poate lua banii celui de-al doilea jucator, ceea ce nu ar trebui sa fie posibil.

YCMD:rob(playerid, params[], help) {

GetPlayerPos(playerid, AtmMoneyPos[playerid][0], AtmMoneyPos[playerid][1], AtmMoneyPos[playerid][2]);

rob_pickup[playerid][0] = CreateDynamicPickup(1212, 23, AtmMoneyPos[playerid][0], AtmMoneyPos[playerid][1], AtmMoneyPos[playerid][2], 0);

return 1;

}

iar la OnPlayerPickUpDynamicPickup:

public OnPlayerPickUpDynamicPickup(playerid, pickupid) {

if(pickupid == rob_pickup[playerid][0]) {
        money_collect = PlayerInfo[playerid][pLevel] * 4500 + random(100) + random(100) + random(100) + random(100);
        SCMf(playerid, -1, "You collected {347C17}$%s {FFFFFF}from the ATM.", FormatNumbers(money_collect));

        GivePlayerCash(playerid, 1, money_collect);
        Update(playerid, pCashx);
        DestroyDynamicPickup(rob_pickup[playerid][0]);
    }

}

7 answers to this question

Recommended Posts

  • 0
Posted (edited)

Salut. Sunt mai multe lucruri.

In primul rand modifica public OnPlayerPickUpDynamicPickup(playerid, pickupid) in public OnPlayerPickUpDynamicPickup(playerid, STREAMER_TAG_PICKUP pickupid) deoarece aceasta este nativa callback-ului.

Apoi, la CreateDynamicPickup, al doilea parametru reprezinta PickUp Type-ul, iar 23 nu exista. PickUp type-urile sunt pana la 22, iar daca pui mai mult de 22 iti da valoare null, adica 0, iar PickUp Type 0 nu da trigger la OnPlayerPickUpDynamicPickUp 
image.png.4e790f8ad083b910d9024342951144b9.png

Poti folosi pentru acest System Pickup Type 8
image.png.990c7cfb6c6c375c53961c87b948a9ec.png

De asemenea, am vazut ca folosesti STREAMER, ceea ce inseamna ca atunci cand declari variabila rob_pickup[playerid][0] trebuie sa o declari cu tag-ul specific
image.png.d2db7e7615ec052cdecf5d3eca5f73e5.png

Incearca sa modifici lucrurile astea si vezi daca se rezolva problema. M-ar ajuta un +1 daca ti-a fost de folos. Succes.

Edited by Trippie
  • 0
Posted
25 minutes ago, Trippie said:

Salut. Sunt mai multe lucruri.

In primul rand modifica public OnPlayerPickUpDynamicPickup(playerid, pickupid) in public OnPlayerPickUpDynamicPickup(playerid, STREAMER_TAG_PICKUP pickupid) deoarece aceasta este nativa callback-ului.

Apoi, la CreateDynamicPickup, al doilea parametru reprezinta PickUp Type-ul, iar 23 nu exista. PickUp type-urile sunt pana la 22, iar daca pui mai mult de 22 iti da valoare null, adica 0, iar PickUp Type 0 nu da trigger la OnPlayerPickUpDynamicPickUp 
image.png.4e790f8ad083b910d9024342951144b9.png

Poti folosi pentru acest System Pickup Type 8
image.png.990c7cfb6c6c375c53961c87b948a9ec.png

De asemenea, am vazut ca folosesti STREAMER, ceea ce inseamna ca atunci cand declari variabila rob_pickup[playerid][0] trebuie sa o declari cu tag-ul specific
image.png.d2db7e7615ec052cdecf5d3eca5f73e5.png

Incearca sa modifici lucrurile astea si vezi daca se rezolva problema. M-ar ajuta un +1 daca ti-a fost de folos. Succes.

Multumesc frumos

  • 0
Posted
On 8/28/2022 at 1:11 AM, Trippie said:

Salut. Sunt mai multe lucruri.

In primul rand modifica public OnPlayerPickUpDynamicPickup(playerid, pickupid) in public OnPlayerPickUpDynamicPickup(playerid, STREAMER_TAG_PICKUP pickupid) deoarece aceasta este nativa callback-ului.

Apoi, la CreateDynamicPickup, al doilea parametru reprezinta PickUp Type-ul, iar 23 nu exista. PickUp type-urile sunt pana la 22, iar daca pui mai mult de 22 iti da valoare null, adica 0, iar PickUp Type 0 nu da trigger la OnPlayerPickUpDynamicPickUp 
image.png.4e790f8ad083b910d9024342951144b9.png

Poti folosi pentru acest System Pickup Type 8
image.png.990c7cfb6c6c375c53961c87b948a9ec.png

De asemenea, am vazut ca folosesti STREAMER, ceea ce inseamna ca atunci cand declari variabila rob_pickup[playerid][0] trebuie sa o declari cu tag-ul specific
image.png.d2db7e7615ec052cdecf5d3eca5f73e5.png

Incearca sa modifici lucrurile astea si vezi daca se rezolva problema. M-ar ajuta un +1 daca ti-a fost de folos. Succes.

Primesc warninguri de genul: warning 213: tag mismatch: expected tag none ("_"), but found "DynamicPickup" daca definesc new DynamicPickup: pills_pickup[MAX_PLAYERS] si folosesc DestroyDynamicPickup(pills_pickup[playerid]);

  • 0
Posted (edited)
55 minutes ago, TheGodfather said:

Primesc warninguri de genul: warning 213: tag mismatch: expected tag none ("_"), but found "DynamicPickup" daca definesc new DynamicPickup: pills_pickup[MAX_PLAYERS] si folosesc DestroyDynamicPickup(pills_pickup[playerid]);

EDIT: Eu incerc sa fac pickupuri per jucator, de exemplu daca 2 jucatori au un pickup (cu acelasi id) in aceeasi locatia, ambii ar trebui sa poata sa ia pickupul atribuit lor

Edited by TheGodfather
  • 0
Posted

Salutare din nou. Pastreaza toate modificarile facute dar scoate TAG-ul DynamicPickup: din definirea variabilei pentru ca aparent, TAG-urile trebuiau specificate in versiunile mai vechi de streamer, si la tine probabil nu e cazul, si vezi daca merge.

  • 0
Posted
27 minutes ago, Trippie said:

Salutare din nou. Pastreaza toate modificarile facute dar scoate TAG-ul DynamicPickup: din definirea variabilei pentru ca aparent, TAG-urile trebuiau specificate in versiunile mai vechi de streamer, si la tine probabil nu e cazul, si vezi daca merge.

Tot la fel face, nu merge.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.