Removing all vendor machines?
#1

Hello,since i've maked a my custom /shop ingame,i want to remove ALL vending machines at San Andreas.How i can?
Reply
#2

You can use the new 0.3d function RemoveBuilding.

https://sampwiki.blast.hk/wiki/RemoveBuildingForPlayer

You will have to find the vending machine IDs...

https://sampwiki.blast.hk/wiki/Game_Object_ID_List

And if they have a LOD object, remove them too.
Reply
#3

Quote:
Originally Posted by Phanto90
Посмотреть сообщение
Simply create a bidimensional array where you put coords of vending machines:
pawn Код:
new VMachines[43][3]=
{
    {x,y,z},
    {x2,y2,z2},
    // ... and so on (previous post has all the coordinates (should be 43))
Then create a function that look is player is in range of vending machines:
pawn Код:
stock IsPlayerInRangeOfVMachine(playerid)
{
    for(new i=0;i<sizeof(VMachine);i++) {
        if(IsPlayerInRangeOfPoint(playerid,2.5,VMachine[i][0],VMachine[i][1],VMachine[i][2]))
        return 1;
    }
    return 0;
}
Then in onplayerkeystatechange
pawn Код:
// Make sure to define PRESSED as this:
#define PRESSED(%0) \
    (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
if(PRESSED(KEY_SECONDARY_ATTACK)) {
    if(IsPlayerInRangeOfVMachine(playerid))
    ClearAnimations(playerid);
}
Quote:
Originally Posted by GanG$Ta
Посмотреть сообщение
Candy machines:
2480.86,-1959.27,12.9609
1634.11,-2237.53,12.8906
2139.52,-1161.48,23.3594
2153.23,-1016.15,62.2344
-1350.12,493.859,10.5859
-2229.19,286.414,34.7031
1659.46,1722.86,10.2188
2647.7,1129.66,10.2188
2845.73,1295.05,10.7891
1398.84,2222.61,10.4219
-1455.12,2591.66,55.2344
-76.0312,1227.99,19.125
662.43,-552.164,15.7109
-253.742,2599.76,62.2422
2271.73,-76.4609,25.9609

Sprunk machines:
1789.21,-1369.27,15.1641
1729.79,-1943.05,12.9453
2060.12,-1897.64,12.9297
1928.73,-1772.45,12.9453
2325.98,-1645.13,14.2109
2352.18,-1357.16,23.7734
1154.73,-1460.89,15.1562
-1350.12,492.289,10.5859
-2118.97,-423.648,34.7266
-2118.62,-422.414,34.7266
-2097.27,-398.336,34.7266
-2092.09,-490.055,34.7266
-2063.27,-490.055,34.7266
-2005.65,-490.055,34.7266
-2034.46,-490.055,34.7266
-2068.56,-398.336,34.7266
-2039.85,-398.336,34.7266
-2011.14,-398.336,34.7266
-1980.79,142.664,27.0703
2319.99,2532.85,10.2188
1520.15,1055.27,10.00
2503.14,1243.7,10.2188
2085.77,2071.36,10.4531
-862.828,1536.61,21.9844
-14.7031,1175.36,18.9531
-253.742,2597.95,62.2422
201.016,-107.617,0.898438
1277.84,372.516,18.9531
I hope it works
Reply
#4

Why create an array and put position checks under OnPlayerKeyStateChange (which is probably called alot) when you can just remove a certain model ID?
Reply
#5

EDIT: Fixed,i'll work on it,thanks
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)