stock IsVehicleInRangeOfPoint(vehicleid, Float:radi, Float:x, Float:y, Float:z)
{
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetVehiclePos(vehicleid, oldposx, oldposy, oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
return 0;
}
stock IsVehicleInRangeOfPoint(vehicleid, Float:range, Float:x, Float:y, Float:z) { new Float:px,Float:py,Float:pz; GetVehiclePos(vehicleid,px,py,pz); px -= x; py -= y; pz -= z; return ((px * px) + (py * py) + (pz * pz)) < (range * range); }
forward BombEx(playerid);
public BombEx(playerid)
{
new Float:Pos[3], Obj, rand = random(50000), pKilledN[ MAX_PLAYER_NAME ];
SendClientMessage(playerid, -1, "Bomb planted, now wait for a tank to come here!");
GetPlayerPos( playerid, Pos[ 0 ], Pos[ 1 ], Pos[ 2 ] );
Obj = CreateObject(ObjID, Pos[ 0 ], Pos[ 1 ], Pos[ 2 ]-1, 0.0, 0.0, 0.0, 0.0);
if(IsVehicleInRangeOfPoint( 432, 5.0, Pos[ 0 ], Pos [ 1 ], Pos[ 2 ] ))
{
for( new i = 0; i < MAX_PLAYERS; i++)
{
pMineV[ i ][ oMine ] = true;
DestroyObject(Obj);
GetPlayerName(i, pKilledN, MAX_PLAYER_NAME);
SendDeathMessage(playerid, i, 53);
CreateExplosion(Pos[ 0 ], Pos[ 1 ], Pos[ 2 ], 3, 3.0);
SetPlayerHealth(i, 0);
GameTextForPlayer(i, "Exploded by a mine!", 5000, 4);
format(str, SOFS, "You've killed %s ! and got $%d", pKilledN, rand);
SendClientMessage(playerid, -1, str);
}
}
return 1;
}
if(IsVehicleInRangeOfPoint( 432, 5.0, Pos[ 0 ], Pos [ 1 ], Pos[ 2 ] )) |
if(IsVehicleInRangeOfPoint( 432, 5.0, Pos[ 0 ], Pos [ 1 ], Pos[ 2 ] ))
{
if(GetVehicleModel(vehicleid) ==432)
{
for( new i = 0; i < MAX_PLAYERS; i++)
{
pMineV[ i ][ oMine ] = true;
DestroyObject(Obj);
GetPlayerName(i, pKilledN, MAX_PLAYER_NAME);
SendDeathMessage(playerid, i, 53);
CreateExplosion(Pos[ 0 ], Pos[ 1 ], Pos[ 2 ], 3, 3.0);
SetPlayerHealth(i, 0);
GameTextForPlayer(i, "Exploded by a mine!", 5000, 4);
format(str, SOFS, "You've killed %s ! and got $%d", pKilledN, rand);
SendClientMessage(playerid, -1, str);
}
}
}
return 1;
}
pawn Код:
|
vehicleid = GetPlayerVehicleID(playerid);
Yea, i moved the GetVehicleModel above IsVehicleInRangeOfPoint, still the bomb doesn't explode.. :/ |
if(IsVehicleInRangeOfPoint( 432, 5.0, Pos[ 0 ], Pos [ 1 ], Pos[ 2 ] ))
if(IsVehicleInRangeOfPoint( GetPlayerVehicleID(playerid), 5.0, Pos[ 0 ], Pos [ 1 ], Pos[ 2 ] ))