SA-MP Forums Archive
DestroyDynamicPickup - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: DestroyDynamicPickup (/showthread.php?tid=493887)



DestroyDynamicPickup - Lidor124 - 10.02.2014

Hi...
I have problem with command which changes position of pickup, my problem is when i set
DestroyDynamicPickup(Points[pointid][PointPickupID]);
to the destroy the previous pickup and create the new pickup in my position, the previous pickup doesnt destroy.

I type /pedit position 0...

picture:




My code:

Код:
if (!strcmp(choice, "position", true))
        {
			new Float: slx, Float: sly, Float: slz;
			GetPlayerPos(playerid, slx, sly, slz);
			DestroyDynamicPickup(Points[pointid][PointPickupID]);
			DestroyDynamic3DTextLabel(Points[pointid][TextLabel]);
			Points[pointid][Pointx] = slx;
			Points[pointid][Pointy] = sly;
			Points[pointid][Pointz] = slz;
			Points[pointid][PointPickupID] = CreateDynamicPickup( 1239, 23, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz]);
			if(Points[pointid][Type] == 3)
			{
				format(string, sizeof(string), " POT AVAILABLE: %d/1000.", Points[pointid][Stock]);
				Points[pointid][TextLabel] = CreateDynamic3DTextLabel(string, COLOR_YELLOW, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz], 4.0);
				Points[pointid][CratePoint] = 1;
			}
			else if(Points[pointid][Type] == 4)
			{
				format(string, sizeof(string), " CRACK AVAILABLE: %d/500.", Points[pointid][Stock]);
				Points[pointid][TextLabel] = CreateDynamic3DTextLabel(string, COLOR_YELLOW, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz], 4.0);
				Points[pointid][CratePoint] = 2;
			}
			CreateDynamicPickup(1239, 23, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz]);
			format(string, sizeof(string), "You have set point's ID %d position to X: %f Y: %f Z: %f", pointid, slx, sly, slz);
			SendClientMessageEx(playerid, COLOR_WHITE, string);
			UpdatePoints();
			LoadPoints();
        }



Re: DestroyDynamicPickup - Lidor124 - 22.02.2014

BUMP


Re: DestroyDynamicPickup - BornHuman - 22.12.2014

Show us the code where it originally creates the pickup model, and text label.


Re: DestroyDynamicPickup - RaeF - 22.12.2014

You are creating double pickup here
pawn Код:
Points[pointid][Pointz] = slz;
            Points[pointid][PointPickupID] = CreateDynamicPickup( 1239, 23, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz]);
and here

pawn Код:
CreateDynamicPickup(1239, 23, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz]);
            format(string, sizeof(string), "You have set point's ID %d position to X: %f Y: %f Z: %f", pointid, slx, sly, slz);
            SendClientMessageEx(playerid, COLOR_WHITE, string);

pawn Код:
if (!strcmp(choice, "position", true))
        {
            new Float: slx, Float: sly, Float: slz;
            GetPlayerPos(playerid, slx, sly, slz);
            DestroyDynamicPickup(Points[pointid][PointPickupID]);
            DestroyDynamic3DTextLabel(Points[pointid][TextLabel]);
            Points[pointid][Pointx] = slx;
            Points[pointid][Pointy] = sly;
            Points[pointid][Pointz] = slz;
            Points[pointid][PointPickupID] = CreateDynamicPickup( 1239, 23, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz]);
            if(Points[pointid][Type] == 3)
            {
                format(string, sizeof(string), " POT AVAILABLE: %d/1000.", Points[pointid][Stock]);
                Points[pointid][TextLabel] = CreateDynamic3DTextLabel(string, COLOR_YELLOW, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz], 4.0);
                Points[pointid][CratePoint] = 1;
            }
            else if(Points[pointid][Type] == 4)
            {
                format(string, sizeof(string), " CRACK AVAILABLE: %d/500.", Points[pointid][Stock]);
                Points[pointid][TextLabel] = CreateDynamic3DTextLabel(string, COLOR_YELLOW, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz], 4.0);
                Points[pointid][CratePoint] = 2;
            }
            CreateDynamicPickup(1239, 23, Points[pointid][Pointx], Points[pointid][Pointy], Points[pointid][Pointz]);
            format(string, sizeof(string), "You have set point's ID %d position to X: %f Y: %f Z: %f", pointid, slx, sly, slz);
            SendClientMessageEx(playerid, COLOR_WHITE, string);
            UpdatePoints();
            LoadPoints();
        }