204 lines
7.0 KiB
Lua
204 lines
7.0 KiB
Lua
--ACF missile list.
|
|
--Obviously none of this is balanced yet.
|
|
|
|
AddCSLuaFile("acf/shared/acfmissilelist.lua")
|
|
|
|
local RackTable = {}
|
|
|
|
local RackSingle = {}
|
|
RackSingle.id = "rack_single"
|
|
RackSingle.ent = "acf_rack"
|
|
RackSingle.type = "Missiles"
|
|
RackSingle.name = "Missile Rack - Single"
|
|
RackSingle.desc = "Missile racks fire guided or unguided missiles with HEAT or HE warheads."
|
|
RackSingle.model = "models/missiles/rack_single.mdl"
|
|
RackSingle.shots = 1
|
|
RackSingle.weight = 500
|
|
RackSingle.maxweight = 500
|
|
RackSingle.armored = false
|
|
if ( CLIENT ) then
|
|
RackSingle.guicreate = (function( Panel, Table ) ACFRackGUICreate ( Table ) end or nil)
|
|
RackSingle.guiupdate = function() return end
|
|
end
|
|
RackTable["rack_single"] = RackSingle
|
|
|
|
local RackDouble = {}
|
|
RackDouble.id = "rack_double"
|
|
RackDouble.ent = "acf_rack"
|
|
RackDouble.type = "Missiles"
|
|
RackDouble.name = "Missile Rack - Double"
|
|
RackDouble.desc = "Missile racks fire guided or unguided missiles with HEAT or HE warheads."
|
|
RackDouble.model = "models/missiles/rack_double.mdl"
|
|
RackDouble.shots = 2
|
|
RackDouble.weight = 500
|
|
RackDouble.maxweight = 300
|
|
RackDouble.armored = false
|
|
if ( CLIENT ) then
|
|
RackDouble.guicreate = (function( Panel, Table ) ACFRackGUICreate ( Table ) end or nil)
|
|
RackDouble.guiupdate = function() return end
|
|
end
|
|
RackTable["rack_double"] = RackDouble
|
|
|
|
local RackQuad = {}
|
|
RackQuad.id = "rack_quad"
|
|
RackQuad.ent = "acf_rack"
|
|
RackQuad.type = "Missiles"
|
|
RackQuad.name = "Missile Rack - Quad"
|
|
RackQuad.desc = "Missile racks fire guided or unguided missiles with HEAT or HE warheads."
|
|
RackQuad.model = "models/missiles/rack_quad.mdl"
|
|
RackQuad.shots = 4
|
|
RackQuad.weight = 500
|
|
RackQuad.maxweight = 150
|
|
RackQuad.armored = false
|
|
if ( CLIENT ) then
|
|
RackQuad.guicreate = (function( Panel, Table ) ACFRackGUICreate ( Table ) end or nil)
|
|
RackQuad.guiupdate = function() return end
|
|
end
|
|
RackTable["rack_quad"] = RackQuad
|
|
|
|
local Minipod = {}
|
|
Minipod.id = "minipod"
|
|
Minipod.ent = "acf_rack"
|
|
Minipod.type = "Missiles"
|
|
Minipod.name = "16 Shot Rocket Pod"
|
|
Minipod.desc = "Rocket pods fire smaller missiles."
|
|
Minipod.model = "models/missiles/minipod.mdl"
|
|
Minipod.shots = 16
|
|
Minipod.weight = 500
|
|
Minipod.maxweight = 30
|
|
Minipod.armored = true
|
|
if ( CLIENT ) then
|
|
Minipod.guicreate = (function( Panel, Table ) ACFRackGUICreate ( Table ) end or nil)
|
|
Minipod.guiupdate = function() return end
|
|
end
|
|
RackTable["minipod"] = Minipod
|
|
|
|
list.Set( "ACFEnts", "Missiles", RackTable )
|
|
|
|
-- missile list
|
|
|
|
local Missiles = {}
|
|
|
|
local FFAR = {}
|
|
FFAR.id = "ffar"
|
|
FFAR.model = "models/missiles/70mmFFAR.mdl"
|
|
FFAR.name = "70mm FFAR"
|
|
FFAR.mechanics = {}
|
|
FFAR.mechanics.maxweight = 30
|
|
FFAR.mechanics.maxengine = 10 -- maximum engine kg
|
|
FFAR.mechanics.maxwarhead = 30 -- maximum warhead kg
|
|
FFAR.mechanics.eiwtmod = 1 -- engine impulse weight mod (kg/(N/s))
|
|
FFAR.mechanics.ecwtmod = 1 -- engine cutoff weight mod (kg/s)
|
|
FFAR.mechanics.tcwtmod = 1 -- tracking cone weight mod (kg/deg)
|
|
FFAR.mechanics.trwtmod = 1 -- turning radius weight mod (kg/(deg/s))
|
|
FFAR.mechanics.drag = 1 -- drag
|
|
FFAR.mechanics.gldrag = 1 -- gliding drag.
|
|
FFAR.mechanics.tidrag = 1 -- turn induced drag
|
|
FFAR.mechanics.guidanceweight = 1 -- weight of an included guidance system (GPS/IR/Radar)
|
|
Missiles["ffar"] = FFAR
|
|
|
|
local Sidewinder = {}
|
|
Sidewinder.id = "sidewinder"
|
|
Sidewinder.model = "models/missiles/aim9.mdl"
|
|
Sidewinder.name = "AIM-9 Sidewinder"
|
|
Sidewinder.mechanics = {}
|
|
Sidewinder.mechanics.maxweight = 120
|
|
Sidewinder.mechanics.maxengine = 10
|
|
Sidewinder.mechanics.maxwarhead = 30
|
|
Sidewinder.mechanics.eiwtmod = 1
|
|
Sidewinder.mechanics.ecwtmod = 1
|
|
Sidewinder.mechanics.tcwtmod = 1
|
|
Sidewinder.mechanics.trwtmod = 1
|
|
Sidewinder.mechanics.drag = 1
|
|
Sidewinder.mechanics.gldrag = 1
|
|
Sidewinder.mechanics.tidrag = 1
|
|
Sidewinder.mechanics.guidanceweight = 1
|
|
Missiles["sidewinder"] = Sidewinder
|
|
|
|
local ATGM = {}
|
|
ATGM.id = "atgm"
|
|
ATGM.model = "models/missiles/micro.mdl"
|
|
ATGM.name = "ATGM"
|
|
ATGM.mechanics = {}
|
|
ATGM.mechanics.maxweight = 150
|
|
ATGM.mechanics.maxengine = 10
|
|
ATGM.mechanics.maxwarhead = 80
|
|
ATGM.mechanics.eiwtmod = 1
|
|
ATGM.mechanics.ecwtmod = 1
|
|
ATGM.mechanics.tcwtmod = 1
|
|
ATGM.mechanics.trwtmod = 1
|
|
ATGM.mechanics.drag = 1
|
|
ATGM.mechanics.gldrag = 1
|
|
ATGM.mechanics.tidrag = 1
|
|
ATGM.mechanics.guidanceweight = 1
|
|
Missiles["atgm"] = ATGM
|
|
|
|
local AMRAAM = {}
|
|
AMRAAM.id = "amraam"
|
|
AMRAAM.model = "models/missiles/aim120.mdl"
|
|
AMRAAM.name = "AIM-120 AMRAAM"
|
|
AMRAAM.mechanics = {}
|
|
AMRAAM.mechanics.maxweight = 250
|
|
AMRAAM.mechanics.maxengine = 10
|
|
AMRAAM.mechanics.maxwarhead = 30
|
|
AMRAAM.mechanics.eiwtmod = 1
|
|
AMRAAM.mechanics.ecwtmod = 1
|
|
AMRAAM.mechanics.tcwtmod = 1
|
|
AMRAAM.mechanics.trwtmod = 1
|
|
AMRAAM.mechanics.drag = 1
|
|
AMRAAM.mechanics.gldrag = 1
|
|
AMRAAM.mechanics.tidrag = 1
|
|
AMRAAM.mechanics.guidanceweight = 1
|
|
Missiles["amraam"] = AMRAAM
|
|
|
|
local Phoenix = {}
|
|
Phoenix.id = "phoenix"
|
|
Phoenix.model = "models/missiles/aim54.mdl"
|
|
Phoenix.name = "AIM-54 Phoenix"
|
|
Phoenix.mechanics = {}
|
|
Phoenix.mechanics.maxweight = 350
|
|
Phoenix.mechanics.maxengine = 10
|
|
Phoenix.mechanics.maxwarhead = 30
|
|
Phoenix.mechanics.eiwtmod = 1
|
|
Phoenix.mechanics.ecwtmod = 1
|
|
Phoenix.mechanics.tcwtmod = 1
|
|
Phoenix.mechanics.drag = 1
|
|
Phoenix.mechanics.gldrag = 1
|
|
Phoenix.mechanics.tidrag = 1
|
|
Phoenix.mechanics.guidanceweight = 1
|
|
Missiles["phoenix"] = Phoenix
|
|
|
|
local FAB = {}
|
|
FAB.id = "fab"
|
|
FAB.model = "models/missiles/fab250.mdl"
|
|
FAB.name = "FAB-250 General Purpose Bomb"
|
|
FAB.mechanics = {}
|
|
FAB.mechanics.maxweight = 200
|
|
FAB.mechanics.maxengine = 0
|
|
FAB.mechanics.maxwarhead = 200
|
|
FAB.mechanics.eiwtmod = 1
|
|
FAB.mechanics.ecwtmod = 1
|
|
FAB.mechanics.drag = 1
|
|
FAB.mechanics.gldrag = 1
|
|
FAB.mechanics.tidrag = 1
|
|
FAB.mechanics.guidanceweight = 1
|
|
Missiles["fab"] = FAB
|
|
|
|
local Paveway = {}
|
|
Paveway.id = "paveway"
|
|
Paveway.model = "models/missiles/GBU12.mdl"
|
|
Paveway.name = "GBU-12 Paveway II"
|
|
Paveway.mechanics = {}
|
|
Paveway.mechanics.maxweight = 500
|
|
Paveway.mechanics.maxengine = 0
|
|
Paveway.mechanics.maxwarhead = 500
|
|
Paveway.mechanics.eiwtmod = 1
|
|
Paveway.mechanics.ecwtmod = 1
|
|
Paveway.mechanics.drag = 1
|
|
Paveway.mechanics.gldrag = 1
|
|
Paveway.mechanics.tidrag = 1
|
|
Paveway.mechanics.guidanceweight = 1
|
|
Missiles["paveway"] = Paveway
|
|
|
|
list.Set( "ACFClasses", "MissileTypes", Missiles )
|