I need a script that blow up the mine when you hit him and not just remove it. Also he must take the owner of the mine as creator of the explosion. Anybody can help me?
>Normal activation of mines when you walk over them.
:Server
addEvent ("poopoutthemine", true )
function laymine(player)
local posx, posy, posz = getElementPosition ( player )
local landmine = createObject ( 1510, posx, posy, posz - .999, 0, 0, 3.18 )
local landminecol = createColSphere ( posx, posy, posz, 3 )
setElementData ( landminecol, "type", "alandmine" )
setElementData ( landminecol, "owner", player )
setElementData ( landmine, "type", "proximity" )
setElementParent ( landmine, landminecol )
end
addEventHandler("poopoutthemine",getRootElement(),laymine)
--DETECTS THE HIT
function landminehit ( player, matchingDimension )
if ( getElementData ( source, "type" ) == "alandmine" ) then
if ( getElementData ( player, "stealthmode" ) ~= "on" ) then
local mineowner = getElementData ( source, "owner" )
local ownersteam = getPlayerTeam ( mineowner )
local victimteam = getPlayerTeam ( player )
if ownersteam ~= victimteam then --IS THIS PLAYER ON THE SAME TEAM AS THE GUY WHO PUT IT THERE?
local posx, posy, posz = getElementPosition ( source )
createExplosion (posx, posy, posz, 8, mineowner )
setElementData ( source, "type", nil )
destroyElement ( source )
end
end
end
end
addEventHandler ( "onColShapeHit", getRootElement(), landminehit )
:Client
Not much importants
------------------------------------------------------------------------------------------------
>Activation of mines when you shoot them.
:Server
--KILLS THE MINE WHEN SHOT
addEvent ("destroylandmine", true )
function destroymine(hitElement)
if (hitElement) then
local damagedmine = getElementParent ( hitElement )
destroyElement ( damagedmine )
end
end
addEventHandler("destroylandmine",getRootElement(),destroymine)
:Client
--TRIGGERS THE SERVER EVENT TO DESTROY A LAND MINE ONCE IT'S SHOT
function weaponfired (weapon, ammo, ammoInClip, hitX, hitY, hitZ, hitElement )
if source == getLocalPlayer () then
if (hitElement) then
if ( getElementData ( hitElement, "type" ) == "proximity" ) then
if minedelay ~= 1 then
minedelay = 1
triggerServerEvent ("destroylandmine", getLocalPlayer (), hitElement )
endminedelay = setTimer ( minedelaystop, 400, 1, player )
end
end
end
end
end
addEventHandler ( "onClientPlayerWeaponFire", getRootElement(), weaponfired )
function minedelaystop()
minedelay = 0
end
I have try everything to fix it, but I just script sinds 3 weeks and this step is to big for me to take.
plsssss HELP!! I will be very happy!!!!