Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Artillery - Light Howitzers
- -- Howitzer Base Class
- local HowitzerClass = Weapon:New{
- collisionSize = 4,
- edgeEffectiveness = 0.15,
- explosionGenerator = [[custom:HE_Large]],
- explosionSpeed = 30,
- gravityAffected = true,
- impulseFactor = 0,
- intensity = 0.1,
- leadLimit = 0.05,
- myGravity = 1/3,
- noSelfDamage = true,
- rgbColor = [[0.5 0.5 0.0]],
- separation = 2,
- size = 1,
- soundStart = [[GEN_105mm]],
- soundHit = [[GEN_Explo_4]],
- stages = 50,
- targetMoveError = 0.75,
- tolerance = 3000,
- turret = true,
- weaponType = [[Cannon]],
- weaponVelocity = 1200,
- customparams = {
- damagetype = [[explosive]],
- howitzer = 1,
- },
- }
- -- HE Round Class
- local HowitzerHEClass = HowitzerClass:New{
- name = [[HE Shell]],
- customparams = {
- fearaoe = 210,
- fearid = 501,
- },
- }
- -- Smoke Round Class
- local HowitzerSmokeClass = HowitzerClass:New{
- areaOfEffect = 30,
- name = [[Smoke Shell]],
- customparams = {
- smokeradius = 250,
- smokeduration = 40,
- smokeceg = [[SMOKESHELL_Medium]],
- },
- damage = {
- default = 100,
- } ,
- }
- -- Implementations
- -- QF 25pdr Gun (GBR)
- local QF25Pdr = HowitzerClass:New{
- accuracy = 720,
- areaOfEffect = 94,
- edgeEffectiveness = 0.2, -- overrides default
- name = [[Ordnance QF 25pdr Gun Mk. II]],
- range = 7780,
- reloadtime = 7.2,
- damage = {
- default = 1088,
- },
- }
- local QF25PdrHE = QF25Pdr:Inherit(HowitzerHEClass)
- local QF25PdrSmoke = QF25Pdr:Inherit(HowitzerSmokeClass)
- -- 10.5cm LeFH 18/40 (GER)
- local LeFH18 = HowitzerClass:New{
- accuracy = 1050,
- areaOfEffect = 129,
- name = [[10.5cm LeFH 18/40]],
- range = 7200,
- reloadtime = 11.25,
- damage = {
- default = 4200,
- },
- }
- local LeFH18HE = LeFH18:Inherit(HowitzerHEClass)
- local LeFH18Smoke = LeFH18:Inherit(HowitzerSmokeClass)
- -- M2 105mm Howitzer (USA)
- local M2 = HowitzerClass:New{
- accuracy = 1050,
- areaOfEffect = 131,
- name = [[10.5cm LeFH 18/40]],
- range = 7200,
- reloadtime = 11.25,
- damage = {
- default = 4360,
- },
- }
- local M2HE = M2:Inherit(HowitzerHEClass)
- local M2Smoke = M2:Inherit(HowitzerSmokeClass)
- -- M-30 122mm Howitzer (RUS)
- local M30122mm = HowitzerClass:New{
- accuracy = 1150,
- areaOfEffect = 154,
- name = [[M-30 122mm Howitzer]],
- range = 6965,
- reloadtime = 15,
- damage = {
- default = 7200,
- },
- }
- local M30122mmHE = M30122mm:Inherit(HowitzerHEClass):New{
- customparams = {
- fearaoe = 250,
- }
- }
- local M30122mmSmoke = M30122mm:Inherit(HowitzerSmokeClass)
- -- Return only the full weapons
- return lowerkeys({
- QF25PdrHE = QF25PdrHE,
- QF25PdrSmoke = QF25PdrSmoke,
- LeFH18HE = LeFH18HE,
- LeFH18Smoke = LeFH18Smoke,
- M2HE = M2HE,
- M2Smoke = M2Smoke,
- M30122mmHE = M30122mmHE,
- M30122mmSmoke = M30122mmSmoke,
- })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement