SoldierConfig = {}; require('Script.Global.Table.ItemTable') require('Script.Global.Table.WeaponTable') require('Script.Global.Table.BuffConfig') -- 特殊体征类型 ---@class ESpecialType ---@field Health int32 ---@field Damage int32 ---@field Speed int32 ---@field Poison int32 ---@field Defence int32 SoldierConfig.ESpecialType = { Health = 1, -- 生命 Damage = 2, -- 伤害 Speed = 3, -- 移速 Poison = 4, -- 毒杀 Defence = 5, -- 防御值 Jump = 6, -- 跳跃 } ---@class ESkillType ---@field None int32 ---@field Active int32 ---@field Passive int32 SoldierConfig.ESkillType = { None = 0, Active = 1, Passive = 2, } ---@type table SoldierConfig.ESpecialTypeName = { [SoldierConfig.ESpecialType.Health] = "生命"; [SoldierConfig.ESpecialType.Damage] = "伤害"; [SoldierConfig.ESpecialType.Speed] = "移速"; [SoldierConfig.ESpecialType.Poison] = "免疫"; [SoldierConfig.ESpecialType.Defence] = "护甲"; [SoldierConfig.ESpecialType.Jump] = "跳跃"; } -- 技术分 ---@class TechnologyType ---@field Kill int32 ---@field RoundWin int32 ---@field Survive int32 ---@field Recovery int32 ---@field TrapDamage int32 SoldierConfig.TechnologyType = { Kill = 1, -- 击杀 RoundWin = 2, -- 回合胜利 Survive = 3, -- 存活 Recovery = 4, -- 恢复 TrapDamage = 5, -- 陷阱伤害 } -- 兵种 ---@class ESoldierType ---@field SuicideSquad int32 ---@field Sniper int32 ---@field Rifleman int32 ---@field MedicalCorps int32 ---@field Demolitions int32 ---@field Scout int32 ---@field Commander int32 ---@field Volunteer int32 ---@field SpecialSoldier int32 ---@field AntichemicalCorp int32 ---@field HeavyCorp int32 SoldierConfig.ESoldierType = { SuicideSquad = 1, -- 敢死队 Sniper = 2, -- 狙击手 Rifleman = 3, -- 突击兵 MedicalCorps = 4, -- 医疗兵 Demolitions = 5, -- 爆破兵 Commander = 6, -- 指挥官 Volunteer = 7, -- 志愿兵 SpecialSoldier = 8, -- 特战兵 AntichemicalCorp = 9, -- 防化兵 HeavyCorp = 10, -- 重装兵 Archer = 11, -- 弓箭手 Musketeer = 12, -- 火枪手 Scout = 13, -- 侦察兵 } ---@param InType ESoldierType ---@return string Soldier Name function SoldierConfig.GetSoldierName(InType) for i, v in pairs(SoldierConfig.ESoldierType) do if v == InType then return i; end end return ''; end -- 中文名 ---@type table SoldierConfig.Chinese = { [SoldierConfig.ESoldierType.SuicideSquad] = "冲锋兵", [SoldierConfig.ESoldierType.Sniper] = "狙击手", [SoldierConfig.ESoldierType.Rifleman] = "突击兵", [SoldierConfig.ESoldierType.MedicalCorps] = "医疗兵", [SoldierConfig.ESoldierType.Demolitions] = "爆破兵", [SoldierConfig.ESoldierType.Scout] = "侦察兵", [SoldierConfig.ESoldierType.Commander] = "指挥官", [SoldierConfig.ESoldierType.Volunteer] = "支援兵", [SoldierConfig.ESoldierType.SpecialSoldier] = "特战兵", [SoldierConfig.ESoldierType.AntichemicalCorp] = "防化兵", [SoldierConfig.ESoldierType.HeavyCorp] = "重装兵", [SoldierConfig.ESoldierType.Archer] = "弓箭手", [SoldierConfig.ESoldierType.Musketeer] = "火枪手", } ---@type table SoldierConfig.SoldierIcon = { [SoldierConfig.ESoldierType.SuicideSquad] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier2.Soldier2'), [SoldierConfig.ESoldierType.Sniper] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier12.Soldier12'), [SoldierConfig.ESoldierType.Rifleman] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier1.Soldier1'), [SoldierConfig.ESoldierType.MedicalCorps] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier5.Soldier5'), [SoldierConfig.ESoldierType.Demolitions] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier14.Soldier14'), [SoldierConfig.ESoldierType.Scout] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier4.Soldier4'), [SoldierConfig.ESoldierType.Commander] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier9.Soldier9'), [SoldierConfig.ESoldierType.Volunteer] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier15.Soldier15'), [SoldierConfig.ESoldierType.SpecialSoldier] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier10.Soldier10'), [SoldierConfig.ESoldierType.AntichemicalCorp] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier8.Soldier8'), [SoldierConfig.ESoldierType.HeavyCorp] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier7.Soldier7'), [SoldierConfig.ESoldierType.Archer] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier13.Soldier13'), [SoldierConfig.ESoldierType.Musketeer] = UGCGameSystem.GetUGCResourcesFullPath('Asset/Art/UITexture/Soldier/Soldier6.Soldier6'), } -- 武器限制 ---@type table> 限制的武器类型 SoldierConfig.WeaponLimits = { [SoldierConfig.ESoldierType.SuicideSquad] = { EWeaponTypeNew.EWeaponTypeNew_Melee }, [SoldierConfig.ESoldierType.Sniper] = { EWeaponTypeNew.EWeaponTypeNew_SingleShotSniper, EWeaponTypeNew.EWeaponTypeNew_BurstShotSniper, }, [SoldierConfig.ESoldierType.Rifleman] = { EWeaponTypeNew.EWeaponTypeNew_Rifle, EWeaponTypeNew.EWeaponTypeNew_Submachine, }, [SoldierConfig.ESoldierType.MedicalCorps] = { EWeaponTypeNew.EWeaponTypeNew_Rifle, EWeaponTypeNew.EWeaponTypeNew_Submachine, }, [SoldierConfig.ESoldierType.Demolitions] = { EWeaponTypeNew.EWeaponTypeNew_Submachine, }, [SoldierConfig.ESoldierType.Scout] = { EWeaponTypeNew.EWeaponTypeNew_Pistol, }, [SoldierConfig.ESoldierType.Commander] = { EWeaponTypeNew.EWeaponTypeNew_Pistol, EWeaponTypeNew.EWeaponTypeNew_Rifle, }, [SoldierConfig.ESoldierType.Volunteer] = { EWeaponTypeNew.EWeaponTypeNew_MachineGun, }, [SoldierConfig.ESoldierType.SpecialSoldier] = { EWeaponTypeNew.EWeaponTypeNew_Special, EWeaponTypeNew.EWeaponTypeNew_Pistol, }, [SoldierConfig.ESoldierType.AntichemicalCorp] = { EWeaponTypeNew.EWeaponTypeNew_SingleShotSniper, EWeaponTypeNew.EWeaponTypeNew_BurstShotSniper, }, [SoldierConfig.ESoldierType.HeavyCorp] = { EWeaponTypeNew.EWeaponTypeNew_MachineGun, }, [SoldierConfig.ESoldierType.Archer] = { EWeaponTypeNew.EWeaponTypeNew_Crossbow, }, [SoldierConfig.ESoldierType.Musketeer] = { EWeaponTypeNew.EWeaponTypeNew_ShotGun, }, } ---@type table 武器数量 SoldierConfig.WeaponCount = { [SoldierConfig.ESoldierType.SuicideSquad] = 1, [SoldierConfig.ESoldierType.Sniper] = 1, [SoldierConfig.ESoldierType.Rifleman] = 1, [SoldierConfig.ESoldierType.MedicalCorps] = 1, [SoldierConfig.ESoldierType.Demolitions] = 1, [SoldierConfig.ESoldierType.Scout] = 1, [SoldierConfig.ESoldierType.Commander] = 2, [SoldierConfig.ESoldierType.Volunteer] = 1, [SoldierConfig.ESoldierType.SpecialSoldier] = 2, [SoldierConfig.ESoldierType.AntichemicalCorp] = 1, [SoldierConfig.ESoldierType.HeavyCorp] = 1, [SoldierConfig.ESoldierType.Archer] = 1, [SoldierConfig.ESoldierType.Musketeer] = 1, }; ---@type table> SoldierConfig.WeaponSet = { -- 特战兵 [SoldierConfig.ESoldierType.SpecialSoldier] = { { 106002, 107002, }; { 106001, 107002, }; { 106002, 107094, }; { 106001, 107094, }; { 106006, 107098, }; }, --- 指挥官 [SoldierConfig.ESoldierType.Commander] = { [1] = { 101001, 106002 }; [2] = { 101001, 106006 }; [3] = { 101003, 106001 }; [4] = { 101009, 106001 }; [5] = { 101006, 106001 }; [6] = { 101008, 106002 }; }, }; -- 特性 ---@type table> SoldierConfig.Features = { [SoldierConfig.ESoldierType.SuicideSquad] = { [SoldierConfig.ESpecialType.Health] = 1.5, [SoldierConfig.ESpecialType.Damage] = 1.5, [SoldierConfig.ESpecialType.Speed] = 1.5, }, [SoldierConfig.ESoldierType.Sniper] = { [SoldierConfig.ESpecialType.Damage] = 2.0, }, [SoldierConfig.ESoldierType.Rifleman] = {}, [SoldierConfig.ESoldierType.MedicalCorps] = { [SoldierConfig.ESpecialType.Health] = 1.5, [SoldierConfig.ESpecialType.Poison] = 1.5, }, [SoldierConfig.ESoldierType.Demolitions] = {}, [SoldierConfig.ESoldierType.Scout] = { [SoldierConfig.ESpecialType.Health] = 1.2, [SoldierConfig.ESpecialType.Damage] = 1.2, [SoldierConfig.ESpecialType.Speed] = 1.5, [SoldierConfig.ESpecialType.Jump] = 1.5 }, [SoldierConfig.ESoldierType.Commander] = {}, [SoldierConfig.ESoldierType.Volunteer] = {}, [SoldierConfig.ESoldierType.SpecialSoldier] = {}, [SoldierConfig.ESoldierType.AntichemicalCorp] = { [SoldierConfig.ESpecialType.Poison] = 0.75, }, [SoldierConfig.ESoldierType.HeavyCorp] = { [SoldierConfig.ESpecialType.Health] = 2, [SoldierConfig.ESpecialType.Damage] = 1.2, [SoldierConfig.ESpecialType.Speed] = 0.75, }, [SoldierConfig.ESoldierType.Archer] = {}, [SoldierConfig.ESoldierType.Musketeer] = { [SoldierConfig.ESpecialType.Health] = 1.2, }, }; --- 描述 ---@type table SoldierConfig.Descs = { [SoldierConfig.ESoldierType.SuicideSquad] = "血厚-高伤-高移速", [SoldierConfig.ESoldierType.Sniper] = "伤害非常高", [SoldierConfig.ESoldierType.Rifleman] = "呼吸恢复", [SoldierConfig.ESoldierType.MedicalCorps] = "奶妈", [SoldierConfig.ESoldierType.Demolitions] = "高爆手雷", [SoldierConfig.ESoldierType.Scout] = "移速非常快", [SoldierConfig.ESoldierType.Commander] = "全队强化", [SoldierConfig.ESoldierType.Volunteer] = "无限子弹", [SoldierConfig.ESoldierType.SpecialSoldier] = "特殊武器", [SoldierConfig.ESoldierType.AntichemicalCorp] = "免疫增加", [SoldierConfig.ESoldierType.HeavyCorp] = "血厚-高伤-移速慢", [SoldierConfig.ESoldierType.Archer] = "爆炸弩箭", [SoldierConfig.ESoldierType.Musketeer] = "近战之神", }; --- 技术分 ---@type table> SoldierConfig.Scores = { [SoldierConfig.ESoldierType.SuicideSquad] = { [SoldierConfig.TechnologyType.Kill] = 5, [SoldierConfig.TechnologyType.RoundWin] = 1, }, [SoldierConfig.ESoldierType.Sniper] = { [SoldierConfig.TechnologyType.Kill] = 3, [SoldierConfig.TechnologyType.Survive] = 2, }, [SoldierConfig.ESoldierType.Rifleman] = { [SoldierConfig.TechnologyType.Kill] = 3, [SoldierConfig.TechnologyType.Survive] = 2, }, [SoldierConfig.ESoldierType.MedicalCorps] = { [SoldierConfig.TechnologyType.Kill] = 3, [SoldierConfig.TechnologyType.Survive] = 1, [SoldierConfig.TechnologyType.Recovery] = 1, }, [SoldierConfig.ESoldierType.Demolitions] = { [SoldierConfig.TechnologyType.Kill] = 3, [SoldierConfig.TechnologyType.Survive] = 1, [SoldierConfig.TechnologyType.TrapDamage] = 1, }, [SoldierConfig.ESoldierType.Scout] = { [SoldierConfig.TechnologyType.Kill] = 4, [SoldierConfig.TechnologyType.Survive] = 1, [SoldierConfig.TechnologyType.RoundWin] = 1, }, [SoldierConfig.ESoldierType.Commander] = { [SoldierConfig.TechnologyType.Kill] = 3, [SoldierConfig.TechnologyType.Survive] = 1, [SoldierConfig.TechnologyType.RoundWin] = 2, }, [SoldierConfig.ESoldierType.Volunteer] = { [SoldierConfig.TechnologyType.Kill] = 2, [SoldierConfig.TechnologyType.Survive] = 1, [SoldierConfig.TechnologyType.RoundWin] = 1, }, [SoldierConfig.ESoldierType.SpecialSoldier] = { [SoldierConfig.TechnologyType.Kill] = 3, [SoldierConfig.TechnologyType.RoundWin] = 2, }, [SoldierConfig.ESoldierType.AntichemicalCorp] = { [SoldierConfig.TechnologyType.Kill] = 2, [SoldierConfig.TechnologyType.Survive] = 3, }, [SoldierConfig.ESoldierType.HeavyCorp] = { [SoldierConfig.TechnologyType.Kill] = 2, [SoldierConfig.TechnologyType.RoundWin] = 2, }, [SoldierConfig.ESoldierType.Archer] = { [SoldierConfig.TechnologyType.Kill] = 2, [SoldierConfig.TechnologyType.RoundWin] = 2, }, [SoldierConfig.ESoldierType.Musketeer] = { [SoldierConfig.TechnologyType.Kill] = 2, [SoldierConfig.TechnologyType.RoundWin] = 2, }, }; --- 兵种拥有的炸弹类型 ---@type table> SoldierConfig.Bombs = { -- 手榴弹 燃烧瓶 震爆弹 烟雾弹 [SoldierConfig.ESoldierType.SuicideSquad] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 1, [EBombType.SmokeBomb] = 0, }, [SoldierConfig.ESoldierType.Sniper] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.Rifleman] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.MedicalCorps] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.Demolitions] = { [EBombType.Grenade] = 4, [EBombType.FireBomb] = 3, [EBombType.StunGrenade] = 2, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.Scout] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.Commander] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.Volunteer] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.SpecialSoldier] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.AntichemicalCorp] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 2, }, [SoldierConfig.ESoldierType.HeavyCorp] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.Archer] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, [SoldierConfig.ESoldierType.Musketeer] = { [EBombType.Grenade] = 1, [EBombType.FireBomb] = 1, [EBombType.StunGrenade] = 0, [EBombType.SmokeBomb] = 1, }, }; --- 兵种拥有的药品 ---@type table> SoldierConfig.Medications = { [SoldierConfig.ESoldierType.SuicideSquad] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 2, [EMedicationType.FirstAidKit] = 0, }, [SoldierConfig.ESoldierType.Sniper] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.Rifleman] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.MedicalCorps] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 2, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.Demolitions] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.Scout] = { [EMedicationType.Beverage] = 2, [EMedicationType.Adrenaline] = 1, [EMedicationType.Painkiller] = 2, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 2, }, [SoldierConfig.ESoldierType.Commander] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.Volunteer] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.SpecialSoldier] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.AntichemicalCorp] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.HeavyCorp] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.Archer] = { [EMedicationType.Beverage] = 1, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, [SoldierConfig.ESoldierType.Musketeer] = { [EMedicationType.Beverage] = 2, [EMedicationType.Adrenaline] = 0, [EMedicationType.Painkiller] = 1, [EMedicationType.Bandage] = 5, [EMedicationType.FirstAidKit] = 1, }, } ---@type table 兵种拥有的护甲 SoldierConfig.DefenceItems = { [SoldierConfig.ESoldierType.SuicideSquad] = { Armor = EArmorType.Armor1, Helmet = EHelmetType.Helmet1, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.Sniper] = { Armor = EArmorType.Armor3, Helmet = EHelmetType.Helmet3, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.Rifleman] = { Armor = EArmorType.Armor2, Helmet = EHelmetType.Helmet2, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.MedicalCorps] = { Armor = EArmorType.Armor2, Helmet = EHelmetType.Helmet2, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.Demolitions] = { Armor = EArmorType.Armor2, Helmet = EHelmetType.Helmet2, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.Scout] = { Armor = EArmorType.Armor1, Helmet = EHelmetType.Helmet1, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.Commander] = { Armor = EArmorType.Armor2, Helmet = EHelmetType.Helmet3, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.Volunteer] = { Armor = EArmorType.Armor2, Helmet = EHelmetType.Helmet2, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.SpecialSoldier] = { Armor = EArmorType.Armor2, Helmet = EHelmetType.Helmet2, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.AntichemicalCorp] = { Armor = EArmorType.Armor3, Helmet = EHelmetType.Helmet2, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.HeavyCorp] = { Armor = EArmorType.Armor3, Helmet = EHelmetType.Helmet3, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.Archer] = { Armor = EArmorType.Armor2, Helmet = EHelmetType.Helmet2, Bag = EBagType.Bag1, }, [SoldierConfig.ESoldierType.Musketeer] = { Armor = EArmorType.Armor3, Helmet = EHelmetType.Helmet3, Bag = EBagType.Bag1, }, }; --- 是否是初始就可以选择的兵种 ---@type table SoldierConfig.InitShowTypes = { [SoldierConfig.ESoldierType.SuicideSquad] = true, [SoldierConfig.ESoldierType.Sniper] = true, [SoldierConfig.ESoldierType.Rifleman] = true, [SoldierConfig.ESoldierType.MedicalCorps] = true, [SoldierConfig.ESoldierType.Demolitions] = true, [SoldierConfig.ESoldierType.Scout] = true, [SoldierConfig.ESoldierType.Commander] = true, [SoldierConfig.ESoldierType.Volunteer] = true, [SoldierConfig.ESoldierType.SpecialSoldier] = true, [SoldierConfig.ESoldierType.AntichemicalCorp] = true, [SoldierConfig.ESoldierType.HeavyCorp] = true, [SoldierConfig.ESoldierType.Archer] = true, [SoldierConfig.ESoldierType.Musketeer] = true, } --- 解锁需要的金币数 ---@type table SoldierConfig.UnlockScore = { [SoldierConfig.ESoldierType.SuicideSquad] = { Score = 10 }, [SoldierConfig.ESoldierType.Sniper] = { Score = 10 }, [SoldierConfig.ESoldierType.Rifleman] = { Score = 10 }, [SoldierConfig.ESoldierType.MedicalCorps] = { Score = 50 }, [SoldierConfig.ESoldierType.Demolitions] = { Score = 20 }, [SoldierConfig.ESoldierType.Scout] = { Score = 30 }, [SoldierConfig.ESoldierType.Commander] = { Score = 10 }, [SoldierConfig.ESoldierType.Volunteer] = { Score = 10 }, [SoldierConfig.ESoldierType.SpecialSoldier] = { Score = 10 }, [SoldierConfig.ESoldierType.AntichemicalCorp] = { Score = 60 }, [SoldierConfig.ESoldierType.Musketeer] = { Score = 40 }, [SoldierConfig.ESoldierType.Archer] = { Score = 40 }, [SoldierConfig.ESoldierType.HeavyCorp] = { Score = 40 }, }; ---@type table 描述 SoldierConfig.SoldierDesc = { [SoldierConfig.ESoldierType.SuicideSquad] = "勇猛向前,无惧困难\n技能:无敌\n可在短时间内无敌", [SoldierConfig.ESoldierType.Sniper] = "不瞒你说,素有鹰眼之称\n技能:鹰眼\n己方可以看到敌方玩家的位置", [SoldierConfig.ESoldierType.Rifleman] = "满血俺向前,残血俺就跑\n技能:呼吸回血\n脱离战斗几秒后回血", [SoldierConfig.ESoldierType.MedicalCorps] = "没事,有我呢!\n技能:全体治疗\n瞬间治疗,其他医疗兵回复减半", [SoldierConfig.ESoldierType.Demolitions] = "艺术就是爆炸\n特征:拥有更多的炸弹,投掷物伤害增强", [SoldierConfig.ESoldierType.Scout] = "小喽啰一枚", [SoldierConfig.ESoldierType.Commander] = "好好干,明年就给你加薪!\n技能:提升士气\n全队攻击力提升1.3倍", [SoldierConfig.ESoldierType.Volunteer] = "数量没输过,伤害没赢过\n技能:无限子弹", [SoldierConfig.ESoldierType.SpecialSoldier] = "没有任何困难是RPG解决不了的\n特征:拥有两把武器", [SoldierConfig.ESoldierType.AntichemicalCorp] = "安全区外很安全!\n技能:一段时间内无视安全区的效果", [SoldierConfig.ESoldierType.HeavyCorp] = "主打的就是一个安全感\n技能:全队防御力提升0.5倍", [SoldierConfig.ESoldierType.Archer] = "我有一箭!!\n特征:弓箭在落地会爆炸", [SoldierConfig.ESoldierType.Musketeer] = "真男人不需要解释", }; --- 技能 ---@type table SoldierConfig.Skills = { [SoldierConfig.ESoldierType.SuicideSquad] = { SkillType = SoldierConfig.ESkillType.Active, Skills = { [1] = { BuffType = BuffConfig.EBuffType.Invincible, -- 无敌 ContinueTime = 4, Cooldown = 22, }, }, }, [SoldierConfig.ESoldierType.Sniper] = { SkillType = SoldierConfig.ESkillType.Active, ContinueTime = 4, Skills = { [1] = { BuffType = BuffConfig.EBuffType.ShowEnemyPos, -- 显示敌方位置 ContinueTime = 4, Cooldown = 22, }, }, }, [SoldierConfig.ESoldierType.Rifleman] = { SkillType = SoldierConfig.ESkillType.Passive, Skills = { [1] = { BuffType = BuffConfig.EBuffType.SingleRespiratoryRegurgitation, -- 呼吸回血 -- 受伤延迟间隔 InHitDelayExecution = 5, -- 每秒回复 InRecoveryPerSecond = 8, }, }, }, [SoldierConfig.ESoldierType.MedicalCorps] = { SkillType = SoldierConfig.ESkillType.Active, Skills = { [1] = { BuffType = BuffConfig.EBuffType.Regurgitation, -- 回血 Cooldown = 30, Params = { 10000, 0.7, }, -- 距离,自己加血,别人加血 }, }, }, [SoldierConfig.ESoldierType.Demolitions] = { SkillType = SoldierConfig.ESkillType.None, Damage = 1.5; Skills = {}; }, [SoldierConfig.ESoldierType.Scout] = { SkillType = SoldierConfig.ESkillType.None, Skills = {}; }, [SoldierConfig.ESoldierType.Commander] = { SkillType = SoldierConfig.ESkillType.Active, Skills = { [1] = { BuffType = BuffConfig.EBuffType.Strengthen, -- 全队攻击力变强 ContinueTime = 6, Cooldown = 15, Params = { 1.3 }, }, }; }, [SoldierConfig.ESoldierType.Volunteer] = { SkillType = SoldierConfig.ESkillType.Passive, Skills = { [1] = { BuffType = BuffConfig.EBuffType.InfiniteBullets, -- 无限子弹(需要换弹夹) Params = { EFillBulletType.ClipInfinite, nil, }, }, }; }, [SoldierConfig.ESoldierType.SpecialSoldier] = { SkillType = SoldierConfig.ESkillType.None, Skills = {}; }, [SoldierConfig.ESoldierType.AntichemicalCorp] = { SkillType = SoldierConfig.ESkillType.Active, Skills = { [1] = { BuffType = BuffConfig.EBuffType.IgnorePoison, -- 自己无视毒圈 ContinueTime = 4, Cooldown = 25, Params = { false, 0. }, }, }; }, [SoldierConfig.ESoldierType.HeavyCorp] = { SkillType = SoldierConfig.ESkillType.Active, Skills = { [1] = { BuffType = BuffConfig.EBuffType.DefenceChange, -- 全队防御力增强 Cooldown = 4, ContinueTime = 22, Params = { true, 0.66667 }, }, }; }, [SoldierConfig.ESoldierType.Musketeer] = { SkillType = SoldierConfig.ESkillType.None, Skills = {}; }, [SoldierConfig.ESoldierType.Archer] = { SkillType = SoldierConfig.ESkillType.Passive, Skills = { [1] = { BuffType = BuffConfig.EBuffType.BombExplosion, -- 全队防御力增强 }, }; }, };