destroy object help!!!
#1

This code is after i rob a store , it will create a locker in the store.
i robbed 4 store , but after the robbery checkpoint cooldown , the locker only destroy the last locker that i rob.
Help me pls

Код:
new csafe[MAX_PLAYERS];
stock CreateLocker(playerid)
{
    new Locker = 1829;
    new Float:pos[3];
    new Float:Angle;
    new pworld = GetPlayerVirtualWorld(playerid);
    new pint = GetPlayerInterior(playerid);
	GetPlayerFacingAngle(playerid, Angle);
	GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
    pos[0] += (1 * floatsin(-Angle, degrees));
    pos[1] += (1 * floatcos(-Angle, degrees));
    csafe[playerid] = CreateDynamicObject(Locker,pos[0],pos[1],pos[2],0,0,Angle,pworld,pint);
    return 1;
}
Код:
stock dsafe(playerid)
{
    DestroyDynamicObject(csafe[playerid]);
    return 1;
}
Reply
#2

That is because you lose your object reference!
What you need to do since you can rob multiple stores is create a clean up function and call it on a timer instead for instance.

pawn Код:
SetTimeEx("CleanupStore", 60000, false, "ii", storeid, objectid);
Pretty simple to do here is some more ideas.

pawn Код:
CreateLocker(playerid)
{
    new Locker = 1829;
    new Float:pos[3];
    new Float:Angle;
    new pworld = GetPlayerVirtualWorld(playerid);
    new pint = GetPlayerInterior(playerid);
    GetPlayerFacingAngle(playerid, Angle);
    GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
    pos[0] += (1 * floatsin(-Angle, degrees));
    pos[1] += (1 * floatcos(-Angle, degrees));
    return CreateDynamicObject(Locker,pos[0],pos[1],pos[2],0,0,Angle,pworld,pint);
}
So I changed it to return the objectid that is created in the streamer so you can supply that return value in your timer. I am guessing that you would have another function that calls CreateLocker() so that is where you will want to initiate your timer to clean up.
Reply
#3

I use :

Код:
SetTimerEx("atatrob", 180000, false,"i",playerid);
Код:
forward atatrob(playerid);
public atatrob(playerid)
{
    dsafe(playerid);
    return 1;
}
Reply
#4

Then update it to delete the object there.
Reply
#5

ya i know ok
example : rob 4 store = create 4 locker
after the timer finish , the system only delete 1 locker.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)