Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --CREATING THE MG
- function mg_pos()
- createMG(-2861.9, 19.4, 14.83, 0, -10, 188)
- createMG2(-2862.1, -65.5, 14.72, 0, -10, 188)
- createMG3(-2421, -582, 131.2, 0, -10, 190)
- end
- addEventHandler ( "onResourceStart", getResourceRootElement(getThisResource()), mg_pos)
- --MG 1
- function createMG(posX,posY,posZ,rotX,rotY,rotZ)
- mg = createObject ( 356, 0,0,0)
- local weapon_base = createObject ( 1897, posX,posY,posZ,rotX,rotY,rotZ)
- local weapon = createObject ( 356, 0,0,0)
- attachElements ( weapon, weapon_base, -0.55, 0, 1.75, 0, 0, 0)
- setElementData ( mg, "weapon_base", weapon_base)
- setElementData ( mg, "weapon", weapon)
- setElementAlpha(weapon_base, 0)
- setTimer ( event, 500, 1 )
- setTimer ( col, 500, 1, posX,posY )
- end
- function col(posX,posY)
- triggerClientEvent("createCol", root, posX,posY)
- col_s = createColCircle ( posX,posY, 3 )
- end
- function createMG2(posX,posY,posZ,rotX,rotY,rotZ)
- mg2 = createObject ( 356, 0,0,0)
- local weapon_base = createObject ( 1897, posX,posY,posZ,rotX,rotY,rotZ)
- local weapon = createObject ( 356, 0,0,0)
- attachElements ( weapon, weapon_base, -0.55, 0, 1.75, 0, 0, 0)
- setElementData ( mg2, "weapon_base", weapon_base)
- setElementData ( mg2, "weapon", weapon)
- setElementAlpha(weapon_base, 0)
- setTimer ( col2, 500, 1, posX,posY )
- end
- function col2(posX,posY)
- triggerClientEvent("createCol2", root, posX,posY)
- col_s2 = createColCircle ( posX,posY, 3 )
- end
- function createMG3(posX,posY,posZ,rotX,rotY,rotZ)
- mg3 = createObject ( 356, 0,0,0)
- local weapon_base = createObject ( 1897, posX,posY,posZ,rotX,rotY,rotZ)
- local weapon = createObject ( 356, 0,0,0)
- attachElements ( weapon, weapon_base, -0.55, 0, 1.75, 0, 0, 0)
- setElementData ( mg3, "weapon_base", weapon_base)
- setElementData ( mg3, "weapon", weapon)
- setElementAlpha(weapon_base, 0)
- setTimer ( col3, 500, 1, posX,posY )
- end
- function col3(posX,posY)
- triggerClientEvent("createCol3", root, posX,posY)
- col_s3 = createColCircle ( posX,posY, 3 )
- end
- function event()
- local weapon = getElementData ( mg, "weapon" )
- local weapon2 = getElementData ( mg2, "weapon" )
- local weapon3 = getElementData ( mg3, "weapon" )
- triggerClientEvent("createRealWeapon", root, weapon,weapon2,weapon3)
- end
- --ENTERING THE MG
- function attach()
- local detection = isElementWithinColShape ( source, col_s )
- local detection2 = isElementWithinColShape ( source, col_s2 )
- local detection3 = isElementWithinColShape ( source, col_s3 )
- if detection then
- local weap = getElementData ( mg, "weapon_base" )
- attachElements ( source, weap, -1.2, 0.22, 1.75, 0, 0, 0 )
- triggerClientEvent("inUse_server", root)
- elseif detection2 then
- local weap = getElementData ( mg2, "weapon_base" )
- attachElements ( source, weap, -1.2, 0.22, 1.75, 0, 0, 0 )
- triggerClientEvent("inUse_server2", root)
- elseif detection3 then
- local weap = getElementData ( mg3, "weapon_base" )
- attachElements ( source, weap, -1.2, 0.22, 1.75, 0, 0, 0 )
- triggerClientEvent("inUse_server3", root)
- end
- setPedAnimation ( source, "SILENCED", "SilenceCrouchfire", 0.7, false, false, false, true )
- setPedAnimationProgress(source, "SilenceCrouchfire", 0.7)
- toggleControl (source,"fire", false)
- setElementData ( source, "attachedToWeapon_w", weap )
- setTimer ( refresh_anim, 1000, 1, source )
- end
- addEvent("attachPlayerToMG", true)
- addEventHandler("attachPlayerToMG",getRootElement(), attach)
- function refresh_anim(source)
- setPedAnimationProgress(source, "SilenceCrouchfire", 0.7)
- end
- function detach()
- local detection = isElementWithinColShape ( source, col_s )
- local detection2 = isElementWithinColShape ( source, col_s2 )
- local detection3 = isElementWithinColShape ( source, col_s3 )
- if detection then
- triggerClientEvent("noUse_server", root)
- elseif detection2 then
- triggerClientEvent("noUse_server2", root)
- elseif detection3 then
- triggerClientEvent("noUse_server3", root)
- end
- local attachTo = getElementData(source,"attachedToWeapon_w")
- setPedAnimation ( source, "ped","SEAT_UP", false )
- setTimer(setPedAnimation, 1300,1,source,false)
- detachElements(source,attachTo)
- setElementCollisionsEnabled ( source, true )
- toggleControl (source,"fire", true)
- setElementData ( source, "attachedToWeapon_w", nil )
- setElementData ( source,"attachedToWeapon",false)
- end
- addEvent("detachPlayerFromMG", true)
- addEventHandler("detachPlayerFromMG",getRootElement(),detach)
- function dmg_anim()
- setPedAnimationProgress(source, "SilenceCrouchfire", 0.7)
- end
- addEvent("demage_anim", true)
- addEventHandler("demage_anim",getRootElement(),dmg_anim)
- function rotate(rot,rot2_x)
- local detection = isElementWithinColShape ( source, col_s )
- local detection2 = isElementWithinColShape ( source, col_s2 )
- local detection3 = isElementWithinColShape ( source, col_s3 )
- if detection then
- local weap = getElementData ( mg, "weapon_base" )
- local weap2 = getElementData ( mg, "weapon" )
- local x,y,z = getElementRotation (weap)
- setElementRotation ( weap, 0,0,rot+97)
- if rot < 40 then
- --outputChatBox ( "< 40" )
- --triggerClientEvent("right", root)
- end
- if rot > 140 then
- --outputChatBox ( "> 180" )
- --triggerClientEvent("left", root)
- end
- local x,y,z,rx,ry,rz = getElementAttachedOffsets (weap2)
- if -rot2_x < 8 then
- setElementAttachedOffsets ( weap2, x, y, z, rx, -rot2_x+10, rz)
- end
- elseif detection2 then
- local weap = getElementData ( mg2, "weapon_base" )
- local weap2 = getElementData ( mg2, "weapon" )
- local x,y,z = getElementRotation (weap)
- setElementRotation ( weap, 0,0,rot+97)
- if rot < 40 then
- --outputChatBox ( "< 40" )
- --triggerClientEvent("right", root)
- end
- if rot > 140 then
- --outputChatBox ( "> 180" )
- --triggerClientEvent("left", root)
- end
- local x,y,z,rx,ry,rz = getElementAttachedOffsets (weap2)
- if -rot2_x < 8 then
- setElementAttachedOffsets ( weap2, x, y, z, rx, -rot2_x+10, rz)
- end
- elseif detection3 then
- local weap = getElementData ( mg3, "weapon_base" )
- local weap2 = getElementData ( mg3, "weapon" )
- local x,y,z = getElementRotation (weap)
- setElementRotation ( weap, 0,0,rot+97)
- if rot < 40 then
- --outputChatBox ( "< 40" )
- --triggerClientEvent("right", root)
- end
- if rot > 140 then
- --outputChatBox ( "> 180" )
- --triggerClientEvent("left", root)
- end
- local x,y,z,rx,ry,rz = getElementAttachedOffsets (weap2)
- if -rot2_x < 8 then
- setElementAttachedOffsets ( weap2, x, y, z, rx, -rot2_x+10, rz)
- end
- end
- end
- addEvent("rotatePlayerWeapon", true)
- addEventHandler("rotatePlayerWeapon",getRootElement(), rotate)
- function fire_server(player,px,py,pz)
- local detection = isElementWithinColShape ( source, col_s )
- local detection2 = isElementWithinColShape ( source, col_s2 )
- local detection3 = isElementWithinColShape ( source, col_s3 )
- if detection then
- triggerClientEvent("fire_client", getRootElement(), player,px,py,pz)
- elseif detection2 then
- triggerClientEvent("fire_client2", getRootElement(), player,px,py,pz)
- elseif detection3 then
- triggerClientEvent("fire_client3", getRootElement(), player,px,py,pz)
- end
- end
- addEvent("fire_server", true)
- addEventHandler("fire_server",getRootElement(), fire_server)
- function ready_server(player,x,y,z)
- triggerClientEvent("ready_client", getRootElement(), player,x,y,z)
- end
- addEvent("ready_server", true)
- addEventHandler("ready_server",getRootElement(), ready_server)
- function vehicle_demage(veh)
- local vehicleHP = getElementHealth(veh)
- if vehicleHP > 0 then
- setElementHealth(veh,vehicleHP-10)
- elseif not ( isVehicleBlown ( veh ) ) then
- blowVehicle ( veh )
- end
- end
- addEvent("causeVehicleDamageFromMG", true)
- addEventHandler("causeVehicleDamageFromMG", getRootElement(), vehicle_demage)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement