diff --git a/About/About.xml b/About/About.xml index 81d24bf5dc..63c7bc5622 100644 --- a/About/About.xml +++ b/About/About.xml @@ -3,5 +3,6 @@ Combat Extended CE Team 0.17.1557 - Version: 1.0\n\nExtends combat mechanics to make them deeper and more tactical. + https://ludeon.com/forums/index.php?topic=33461.0 + Version: 0.17.1.1\n\nExtends combat mechanics to make them deeper and more tactical. diff --git a/Assemblies/CombatExtended.dll b/Assemblies/CombatExtended.dll index d73fdc4fa7..1549874e92 100644 Binary files a/Assemblies/CombatExtended.dll and b/Assemblies/CombatExtended.dll differ diff --git a/Defs/Ammo/HighCaliber/12.7x108mmSoviet.xml b/Defs/Ammo/HighCaliber/12.7x108mmSoviet.xml new file mode 100644 index 0000000000..898f25cc5b --- /dev/null +++ b/Defs/Ammo/HighCaliber/12.7x108mmSoviet.xml @@ -0,0 +1,233 @@ + + + + + Ammo127x108mm + + AmmoHighCaliber + + + + + + AmmoSet_127x108mm + + + Bullet_127x108mm_FMJ + Bullet_127x108mm_HE + Bullet_127x108mm_Incendiary + + + + + + + Large caliber bullet used by many heavy machine guns and anti-materiel rifles. + + 0.17 + 0.18 + + +
  • CE_AutoEnableTrade
  • +
  • CE_AutoEnableCrafting
  • +
    + +
  • Ammo127x108mm
  • +
    + 200 +
    + + + Ammo_127x108mm_FMJ + + + Things/Ammo/HighCaliber/FMJ + Graphic_StackCount + + + 0.5 + + FullMetalJacket + Bullet_127x108mm_FMJ + + + + Ammo_127x108mm_HE + + + Things/Ammo/HighCaliber/HE + Graphic_StackCount + + + 0.71 + + ExplosiveAP + Bullet_127x108mm_HE + + + + Ammo_127x108mm_Incendiary + + + Things/Ammo/HighCaliber/Incendiary + Graphic_StackCount + + + 0.89 + + IncendiaryAP + Bullet_127x108mm_Incendiary + + + + + + + Things/Projectile/Bullet_Big + Graphic_Single + + + Bullet + 205 + true + + + + + Bullet_127x108mm_FMJ + + + 45 + 0.90 + + + + + Bullet_127x108mm_HE + + + 28 + 1.05 + +
  • + Bomb_Secondary + 18 +
  • +
    +
    +
    + + + Bullet_127x108mm_Incendiary + + + 27 + 1.05 + +
  • + Flame_Secondary + 9 +
  • +
    +
    +
    + + + + + MakeAmmo_127x108mm_FMJ + + Craft 200 12.7x108mm (FMJ) cartridges. + Making 12.7x108mm (FMJ) cartridges. + +
  • + + +
  • Steel
  • + + + 31 + +
    + + +
  • Steel
  • +
    +
    + + 200 + + 5250 +
    + + + MakeAmmo_127x108mm_HE + + Craft 200 12.7x108mm (HE) cartridges. + Making 12.7x108mm (HE) cartridges. + +
  • + + +
  • Steel
  • + + + 27 + +
  • + + +
  • FSX
  • + + + 4 + +
    + + +
  • Steel
  • +
  • FSX
  • +
    +
    + + 200 + + 12500 +
    + + + MakeAmmo_127x108mm_Incendiary + + Craft 200 12.7x108mm (AP-I) cartridges. + Making 12.7x108mm (AP-I) cartridges. + +
  • + + +
  • Steel
  • + + + 29 + +
  • + + +
  • Prometheum
  • + + + 2 + +
    + + +
  • Steel
  • +
  • Prometheum
  • +
    +
    + + 200 + + 10250 +
    + +
    \ No newline at end of file diff --git a/Defs/Ammo/Pistols/44Magnum.xml b/Defs/Ammo/Pistols/44Magnum.xml new file mode 100644 index 0000000000..cb651f5ce3 --- /dev/null +++ b/Defs/Ammo/Pistols/44Magnum.xml @@ -0,0 +1,202 @@ + + + + + Ammo44Magnum + + AmmoPistols + + + + + + AmmoSet_44Magnum + + + Bullet_44Magnum_FMJ + Bullet_44Magnum_AP + Bullet_44Magnum_HP + + + + + + + Ancient pistol cartridge originally designed for revolvers. + + 0.023 + 0.03 + + +
  • CE_AutoEnableTrade
  • +
  • CE_AutoEnableCrafting
  • +
    + +
  • Ammo44Magnum
  • +
    +
    + + + Ammo_44Magnum_FMJ + + + Things/Ammo/Pistol/FMJ + Graphic_StackCount + + + 0.08 + + FullMetalJacket + Bullet_44Magnum_FMJ + + + + Ammo_44Magnum_AP + + + Things/Ammo/Pistol/AP + Graphic_StackCount + + + 0.11 + + ArmorPiercing + Bullet_44Magnum_AP + + + + Ammo_44Magnum_HP + + + Things/Ammo/Pistol/HP + Graphic_StackCount + + + 0.11 + + HollowPoint + Bullet_44Magnum_HP + + + + + + + Things/Projectile/Bullet_Small + Graphic_Single + + + Bullet + 97 + true + + + + + Bullet_44Magnum_FMJ + + + 18 + 0.423 + + + + + Bullet_44Magnum_AP + + + 11 + 0.573 + + + + + Bullet_44Magnum_HP + + + 25 + 0.273 + + + + + + + MakeAmmo_44Magnum_FMJ + + Craft 500 .44 Magnum (FMJ) cartridges. + Making .44 Magnum (FMJ) cartridges. + +
  • + + +
  • Steel
  • + + + 14 + +
    + + +
  • Steel
  • +
    +
    + + 500 + + 2000 +
    + + + MakeAmmo_44Magnum_AP + + Craft 500 .44 Magnum (AP) cartridges. + Making .44 Magnum (AP) cartridges. + +
  • + + +
  • Steel
  • + + + 18 + +
    + + +
  • Steel
  • +
    +
    + + 500 + + 3000 +
    + + + MakeAmmo_44Magnum_HP + + Craft 500 .44 Magnum (HP) cartridges. + Making .44 Magnum (HP) cartridges. + +
  • + + +
  • Steel
  • + + + 14 + +
    + + +
  • Steel
  • +
    +
    + + 500 + + 4250 +
    + +
    \ No newline at end of file diff --git a/Defs/Ammo/Rifle/7.92x57mmMauser.xml b/Defs/Ammo/Rifle/7.92x57mmMauser.xml new file mode 100644 index 0000000000..7ebc2b59b3 --- /dev/null +++ b/Defs/Ammo/Rifle/7.92x57mmMauser.xml @@ -0,0 +1,199 @@ + + + + + Ammo792x51mmMauser + + AmmoRifles + + + + + + AmmoSet_792x51mmMauser + + + Bullet_792x51mmMauser_FMJ + Bullet_792x51mmMauser_AP + Bullet_792x51mmMauser_HP + + + + + + + Large rifle bullet used in machine guns, sniper rifles and the occasional assault rifle. + + 0.029 + 0.06 + + +
  • CE_AutoEnableTrade
  • +
  • CE_AutoEnableCrafting
  • +
    + +
  • Ammo792x51mmMauser
  • +
    +
    + + + Ammo_792x51mmMauser_FMJ + + + Things/Ammo/Rifle/FMJ + Graphic_StackCount + + + 0.14 + + FullMetalJacket + Bullet_792x51mmMauser_FMJ + + + + Ammo_792x51mmMauser_AP + + + Things/Ammo/Rifle/AP + Graphic_StackCount + + + 0.19 + + ArmorPiercing + Bullet_792x51mmMauser_AP + + + + Ammo_792x51mmMauser_HP + + + Things/Ammo/Rifle/HP + Graphic_StackCount + + + 0.2 + + HollowPoint + Bullet_792x51mmMauser_HP + + + + + + + Things/Projectile/Bullet_Small + Graphic_Single + + + Bullet + 200 + true + + + + + Bullet_792x51mmMauser_FMJ + + + 23 + 0.466 + + + + + Bullet_792x51mmMauser_AP + + + 14 + 0.712 + + + + + Bullet_792x51mmMauser_HP + + + 32 + 0.562 + + + + + + + MakeAmmo_792x51mmMauser_FMJ + + Craft 500 7.92x57mm Mauser (FMJ) cartridges. + Making 7.92x57mm Mauser (FMJ) cartridges. + +
  • + + +
  • Steel
  • + + + 21 + +
    + + +
  • Steel
  • +
    +
    + + 500 + +
    + + + MakeAmmo_792x51mmMauser_AP + + Craft 500 7.92x57mm Mauser (AP) cartridges. + Making 7.92x57mm Mauser (AP) cartridges. + +
  • + + +
  • Steel
  • + + + 26 + +
    + + +
  • Steel
  • +
    +
    + + 500 + +
    + + + MakeAmmo_792x51mmMauser_HP + + Craft 500 7.92x57mm Mauser (HP) cartridges. + Making 7.92x57mm Mauser (HP) cartridges. + +
  • + + +
  • Steel
  • + + + 21 + +
    + + +
  • Steel
  • +
    +
    + + 500 + +
    + +
    \ No newline at end of file diff --git a/Defs/Ammo/Rifle/9x39mmSoviet.xml b/Defs/Ammo/Rifle/9x39mmSoviet.xml new file mode 100644 index 0000000000..76ed2a0b8f --- /dev/null +++ b/Defs/Ammo/Rifle/9x39mmSoviet.xml @@ -0,0 +1,202 @@ + + + + + Ammo9x39mmSoviet + + AmmoRifles + + + + + + AmmoSet_9x39mmSoviet + + + Bullet_9x39mmSoviet_FMJ + Bullet_9x39mmSoviet_AP + Bullet_9x39mmSoviet_HP + + + + + + + Small, high-velocity rifle bullet used in a variety of assault rifles. + + 0.024 + 0.04 + + +
  • CE_AutoEnableTrade
  • +
  • CE_AutoEnableCrafting
  • +
    + +
  • Ammo9x39mmSoviet
  • +
    +
    + + + Ammo_9x39mmSoviet_FMJ + + + Things/Ammo/Rifle/FMJ + Graphic_StackCount + + + 0.09 + + FullMetalJacket + Bullet_9x39mmSoviet_FMJ + + + + Ammo_9x39mmSoviet_AP + + + Things/Ammo/Rifle/AP + Graphic_StackCount + + + 0.11 + + ArmorPiercing + Bullet_9x39mmSoviet_AP + + + + Ammo_9x39mmSoviet_HP + + + Things/Ammo/Rifle/HP + Graphic_StackCount + + + 0.11 + + HollowPoint + Bullet_9x39mmSoviet_HP + + + + + + + Things/Projectile/Bullet_Small + Graphic_Single + + + Bullet + 80 + true + + + + + Bullet_9x39mmSoviet_FMJ + + + 13 + 0.369 + + + + + Bullet_9x39mmSoviet_AP + + + 8 + 0.519 + + + + + Bullet_9x39mmSoviet_HP + + + 18 + 0.269 + + + + + + + MakeAmmo_9x39mmSoviet_FMJ + + Craft 500 9x39mm Soviet (FMJ) cartridges. + Making 9x39mm Soviet (FMJ) cartridges. + +
  • + + +
  • Steel
  • + + + 12 + +
    + + +
  • Steel
  • +
    +
    + + 500 + + 2250 +
    + + + MakeAmmo_9x39mmSoviet_AP + + Craft 500 9x39mm Soviet (AP) cartridges. + Making 9x39mm Soviet (AP) cartridges. + +
  • + + +
  • Steel
  • + + + 14 + +
    + + +
  • Steel
  • +
    +
    + + 500 + + 3250 +
    + + + MakeAmmo_9x39mmSoviet_HP + + Craft 500 9x39mm Soviet (HP) cartridges. + Making 9x39mm Soviet (HP) cartridges. + +
  • + + +
  • Steel
  • + + + 12 + +
    + + +
  • Steel
  • +
    +
    + + 500 + + 4250 +
    + +
    \ No newline at end of file diff --git a/Defs/Ammo/Rocket/84x246mmR.xml b/Defs/Ammo/Rocket/84x246mmR.xml new file mode 100644 index 0000000000..d751e0c551 --- /dev/null +++ b/Defs/Ammo/Rocket/84x246mmR.xml @@ -0,0 +1,235 @@ + + + + + Ammo84x246mmR + + AmmoRockets + + + + + + AmmoSet_84x246mmR + + + Bullet_84x246mmR_HEAT + Bullet_84x246mmR_HE + + + + + + + Recoilless cartridge designed for use with the Carl Gustav rifle. + + 150 + + +
  • CE_AutoEnableTrade
  • +
  • CE_AutoEnableCrafting
  • +
    + +
  • Ammo84x246mmR
  • +
    + 25 + 40 + MortarBomb_Explode +
    + + + Ammo_84x246mmR_HEAT + + + Things/Ammo/Cannon/HEAT + Graphic_Single + + + 31.14 + 3.2 + 6 + + RocketHEAT + +
  • + 30 + Bomb + 1 + + 30 + + MortarBomb_Explode +
  • +
    +
    + + + Ammo_84x246mmR_HE + + + Things/Ammo/Cannon/HE + Graphic_Single + + + 34.87 + 3.1 + 6 + + GrenadeHE + +
  • + 40 + Bomb + 2.5 + MortarBomb_Explode +
  • +
    +
    + + + + + + Things/Projectile/Rocket_Big + Graphic_Single + TransparentPostLight + + + 51 + RocketPropelledLoop_Small + + + + + Bullet_84x246mmR_HEAT + + + Bullet + 150 + 3.0 + + +
  • + 30 + Bomb + 1 + + 30 + + MortarBomb_Explode +
  • +
    +
    + + + Bullet_84x246mmR_HE + + + 1.5 + Bomb + 60 + + +
  • + 40 + Bomb + 2.5 + MortarBomb_Explode + + 150 + +
  • +
    +
    + + + + + MakeAmmo_84x246mmR_HEAT + + Craft 5 84x246mmR HEAT cartridges. + Making 84x246mmR HEAT cartridge. + 15000 + +
  • + + +
  • Steel
  • + + + 16 + +
  • + + +
  • FSX
  • + + + 3 + +
  • + + +
  • Component
  • + + + 3 + +
    + + +
  • Steel
  • +
  • FSX
  • +
  • Component
  • +
    +
    + + 5 + +
    + + + MakeAmmo_84x246mmR_HE + + Craft 5 84x246mmR HE cartridges. + Making 84x246mmR HE cartridges. + 15000 + +
  • + + +
  • Steel
  • + + + 14 + +
  • + + +
  • FSX
  • + + + 5 + +
  • + + +
  • Component
  • + + + 3 + +
    + + +
  • Steel
  • +
  • FSX
  • +
  • Component
  • +
    +
    + + 5 + +
    + +
    \ No newline at end of file diff --git a/Defs/Ammo/Rocket/RPG7.xml b/Defs/Ammo/Rocket/RPG7.xml index 2734db2db3..6b4f052e88 100644 --- a/Defs/Ammo/Rocket/RPG7.xml +++ b/Defs/Ammo/Rocket/RPG7.xml @@ -75,7 +75,7 @@ 37.03 4.5 - 6 + 5 RocketThermobaric @@ -99,7 +99,7 @@ 18.17 2 - 6 + 2.5 RocketFrag @@ -162,11 +162,11 @@ 1.7 Thermobaric - 50 + 100
  • - 40 + 80 Thermobaric 4.0 true @@ -184,7 +184,7 @@ Graphic_Single - 1.7 + 1 Bomb 50 diff --git a/Defs/Ammo/Rocket/RPO.xml b/Defs/Ammo/Rocket/RPO.xml new file mode 100644 index 0000000000..63576286f3 --- /dev/null +++ b/Defs/Ammo/Rocket/RPO.xml @@ -0,0 +1,67 @@ + + + + + AmmoRPOGrenades + + AmmoRockets + + + + + + + Things/Projectile/Rocket_Big + Graphic_Single + TransparentPostLight + + + 51 + RocketPropelledLoop_Small + + + + + Bullet_RPO_A_Grenade + + + 2.5 + Thermobaric + 100 + + +
  • + 80 + Thermobaric + 5.0 + true + MortarBomb_Explode +
  • +
    + + + + Bullet_RPO_Z_Grenade + + + Flame + 50 + 5 + FilthFuel + 0.5 + MortarIncendiary_Explode + + + + + Bullet_RPO_D_Grenade + + + Smoke + 8 + Gas_Smoke + 1 + + + + \ No newline at end of file diff --git a/Defs/Ammo/Rocket/SPG9.xml b/Defs/Ammo/Rocket/SPG9.xml new file mode 100644 index 0000000000..c921787fb8 --- /dev/null +++ b/Defs/Ammo/Rocket/SPG9.xml @@ -0,0 +1,243 @@ + + + + + AmmoSPG9Grenades + + AmmoRockets + + + + + + AmmoSet_SPG9Grenade + + + Bullet_SPG9Grenade_HEAT + Bullet_SPG9Grenade_Frag + + + + + + + Rocket-assisted projectile for use with the SPG-9 launcher. + + 150 + + +
  • CE_AutoEnableTrade
  • +
  • CE_AutoEnableCrafting
  • +
    + +
  • AmmoSPG9Grenades
  • +
    + 25 + 40 + MortarBomb_Explode +
    + + + Ammo_SPG9Grenade_HEAT + + + Things/Ammo/RPG/HEAT + Graphic_StackCount + + + 33.76 + 4.4 + 5 + + RocketHEAT + +
  • + 30 + Bomb + 1 + 6 + + 30 + + MortarBomb_Explode +
  • +
    +
    + + + Ammo_SPG9Grenade_Frag + + + Things/Ammo/RPG/Frag + Graphic_StackCount + + + 35.51 + 5.35 + 5 + + RocketFrag + +
  • + 50 + Bomb + 1.5 + + 400 + + MortarBomb_Explode +
  • +
    +
    + + + + + + TransparentPostLight + + + 65 + RocketPropelledLoop_Small + + + + + Bullet_SPG9Grenade_HEAT + + + Things/Projectile/RPG/HEAT + Graphic_Single + + + Bullet + 150 + 3.0 + + +
  • + 30 + Bomb + 1 + + 30 + + MortarBomb_Explode +
  • +
    +
    + + + Bullet_SPG9Grenade_Frag + CombatExtended.ProjectileCE_Explosive + + + Things/Projectile/RPG/Frag + Graphic_Single + + + 2 + Bomb + 70 + + +
  • + + 400 + + MortarBomb_Explode +
  • +
    +
    + + + + + MakeAmmo_SPG9Grenade_HEAT + + Craft 5 SPG-9 HEAT grenades. + Making SPG-9 HEAT grenades. + 15000 + +
  • + + +
  • Steel
  • + + + 22 + +
  • + + +
  • FSX
  • + + + 3 + +
  • + + +
  • Component
  • + + + 3 + +
    + + +
  • Steel
  • +
  • FSX
  • +
  • Component
  • +
    +
    + + 5 + +
    + + + MakeAmmo_SPG9Grenade_Frag + + Craft 5 SPG-9 frag grenades. + Making SPG-9 frag grenades. + 15000 + +
  • + + +
  • Steel
  • + + + 26 + +
  • + + +
  • FSX
  • + + + 3 + +
  • + + +
  • Component
  • + + + 3 + +
    + + +
  • Steel
  • +
  • FSX
  • +
  • Component
  • +
    +
    + + 5 + +
    + +
    \ No newline at end of file diff --git a/Defs/Ammo/Shell/81mmMortar.xml b/Defs/Ammo/Shell/81mmMortar.xml index 28406b9aef..308a30ee8a 100644 --- a/Defs/Ammo/Shell/81mmMortar.xml +++ b/Defs/Ammo/Shell/81mmMortar.xml @@ -89,7 +89,7 @@ 20 - +
    diff --git a/Defs/Ammo/Shell/90mmCannon.xml b/Defs/Ammo/Shell/90mmCannon.xml index 535ecb3a04..252a0597a9 100644 --- a/Defs/Ammo/Shell/90mmCannon.xml +++ b/Defs/Ammo/Shell/90mmCannon.xml @@ -34,7 +34,7 @@ 200 10 - 7 + 14 30 MortarBomb_Explode @@ -76,9 +76,9 @@ GrenadeHE
  • - 50 + 60 Bomb - 2.5 + 4 300 @@ -169,7 +169,7 @@
  • 100 Bomb - 2.5 + 4 300 @@ -189,14 +189,14 @@ EMP 80 - 5 + 6 Explosion_Bomb
  • 20 Electrical - 5 + 6
  • diff --git a/Patches/Core/HediffDefs/Hediffs_Local_AddedParts.xml b/Patches/Core/HediffDefs/Hediffs_Local_AddedParts.xml index a82a1c0144..fbbf8adcb2 100644 --- a/Patches/Core/HediffDefs/Hediffs_Local_AddedParts.xml +++ b/Patches/Core/HediffDefs/Hediffs_Local_AddedParts.xml @@ -23,7 +23,7 @@ CombatExtended.Verb_MeleeAttackCE 1.2 15 - Scratch + Slash 0.3 diff --git a/Patches/Core/ThingDefs_Misc/Weapons_Grenades.xml b/Patches/Core/ThingDefs_Misc/Weapons_Grenades.xml index f9cf76f040..dd43361d99 100644 --- a/Patches/Core/ThingDefs_Misc/Weapons_Grenades.xml +++ b/Patches/Core/ThingDefs_Misc/Weapons_Grenades.xml @@ -118,58 +118,6 @@ CombatExtended.AmmoDef - - */ThingDef[defName="Weapon_GrenadeFrag"]/weaponTags - -
  • CE_AI_Grenade
  • -
  • CE_OneHandedWeapon
  • -
    -
    - - - */ThingDef[defName="Weapon_GrenadeFrag"]/statBases/MarketValue - - 5.25 - - - - - */ThingDef[defName="Weapon_GrenadeFrag"]/statBases/RangedWeapon_Cooldown - - 1 - - - - - */ThingDef[defName="Weapon_GrenadeFrag"]/statBases - - 0.15 - - - - - */ThingDef[defName="Weapon_GrenadeFrag"]/verbs - - -
  • - - CombatExtended.Verb_ShootCEOneUse - true - 10.0 - 0.8 - 4 - true - ThrowGrenade - - true - - Proj_GrenadeFrag - true -
  • -
    -
    -
    - */ThingDef[defName="Weapon_GrenadeFrag"]/smeltProducts @@ -204,6 +152,34 @@ + + Weapon_GrenadeFrag + + 5.25 + 1 + 0.15 + + + + CombatExtended.Verb_ShootCEOneUse + true + 10.0 + 0.8 + 4 + true + ThrowGrenade + + true + + Proj_GrenadeFrag + true + + +
  • CE_AI_Grenade
  • +
  • CE_OneHandedWeapon
  • +
    +
    + @@ -271,59 +247,6 @@ CombatExtended.AmmoDef - - */ThingDef[defName="Weapon_GrenadeMolotov"]/weaponTags - -
  • CE_AI_Grenade
  • -
  • CE_OneHandedWeapon
  • -
    -
    - - - */ThingDef[defName="Weapon_GrenadeMolotov"]/statBases/MarketValue - - 2.10 - - - - - */ThingDef[defName="Weapon_GrenadeMolotov"]/statBases/RangedWeapon_Cooldown - - 1 - - - - - */ThingDef[defName="Weapon_GrenadeMolotov"]/statBases - - 0.15 - - - - - */ThingDef[defName="Weapon_GrenadeMolotov"]/verbs - - -
  • - - CombatExtended.Verb_ShootCEOneUse - true - 10 - 0.8 - 4 - true - true - ThrowMolotovCocktail - - true - - Proj_GrenadeMolotov - true -
  • -
    -
    -
    - Always @@ -353,6 +276,35 @@ + + Weapon_GrenadeMolotov + + 2.1 + 1 + 0.15 + + + + CombatExtended.Verb_ShootCEOneUse + true + 10 + 0.8 + 4 + true + true + ThrowMolotovCocktail + + true + + Proj_GrenadeMolotov + true + + +
  • CE_AI_Grenade
  • +
  • CE_OneHandedWeapon
  • +
    +
    + @@ -408,7 +360,6 @@ 10 Electrical 4 - Explosion_Bomb @@ -449,61 +400,37 @@ CombatExtended.AmmoDef - - */ThingDef[defName="Weapon_GrenadeEMP"]/weaponTags - -
  • CE_AI_Grenade
  • -
  • CE_OneHandedWeapon
  • -
    + + */ThingDef[defName="Weapon_GrenadeEMP"]/smeltProducts - - */ThingDef[defName="Weapon_GrenadeEMP"]/statBases/MarketValue - + + Weapon_GrenadeEMP + 7.65 - - - - - */ThingDef[defName="Weapon_GrenadeEMP"]/statBases/RangedWeapon_Cooldown - 1 - - - - - */ThingDef[defName="Weapon_GrenadeEMP"]/statBases - 0.15 - - - - - */ThingDef[defName="Weapon_GrenadeEMP"]/verbs - - -
  • - - CombatExtended.Verb_ShootCEOneUse - true - 10 - 0.8 - 4 - false - ThrowGrenade - - true - - Proj_GrenadeEMP - true -
  • -
    -
    -
    - - - */ThingDef[defName="Weapon_GrenadeEMP"]/smeltProducts - + + + + CombatExtended.Verb_ShootCEOneUse + true + 10 + 0.8 + 4 + false + ThrowGrenade + + true + + Proj_GrenadeEMP + true + + +
  • CE_AI_Grenade
  • +
  • CE_OneHandedWeapon
  • +
    +
    diff --git a/Patches/Core/ThingDefs_Misc/Weapons_Guns.xml b/Patches/Core/ThingDefs_Misc/Weapons_Guns.xml index 461b020a9d..eabd99841f 100644 --- a/Patches/Core/ThingDefs_Misc/Weapons_Guns.xml +++ b/Patches/Core/ThingDefs_Misc/Weapons_Guns.xml @@ -1,2050 +1,659 @@ - - - - */ThingDef[@ParentName="BaseGun" or @ParentName="BaseHumanMakeableGun" or @ParentName="BaseWeaponNeolithic"]/statBases/AccuracyTouch - + - - */ThingDef[@ParentName="BaseGun" or @ParentName="BaseHumanMakeableGun" or @ParentName="BaseWeaponNeolithic"]/statBases/AccuracyShort - + + Gun_Pistol + + 1.11 + 0.38 + 0.35 + 0.17 + 1.32 + 2.10 + 5000 + + + 25 + 2 + + + CombatExtended.Verb_ShootCE + true + Bullet_45ACP_FMJ + 0.6 + 12 + ShotPistol + GunTail_Light + 9 + + + 7 + 4 + AmmoSet_45ACP + + + FALSE + + +
  • CE_Sidearm
  • +
  • CE_AI_Pistol
  • +
  • CE_OneHandedWeapon
  • +
    +
    - - */ThingDef[@ParentName="BaseGun" or @ParentName="BaseHumanMakeableGun" or @ParentName="BaseWeaponNeolithic"]/statBases/AccuracyMedium - + - - */ThingDef[@ParentName="BaseGun" or @ParentName="BaseHumanMakeableGun" or @ParentName="BaseWeaponNeolithic"]/statBases/AccuracyLong - + + Gun_PumpShotgun + + 3.00 + 1.0 + 0.14 + 1.20 + 9.0 + 0.5 + 8500 + + + 40 + 10 + 1 + + + CombatExtended.Verb_ShootCE + true + Bullet_12Gauge_Buck + 0.6 + 16 + ShotShotgun + GunTail_Heavy + 9 + + + 5 + 4.25 + AmmoSet_12Gauge + + + +
  • CE_AI_AssaultWeapon
  • +
    +
    - + - + + Gun_ChainShotgun + + 3.50 + 0.39 + 0.15 + 1.26 + 6.7 + 0.5 + 13500 + + + 40 + 2 + + + CombatExtended.Verb_ShootCE + true + Bullet_12Gauge_Buck + 0.6 + 16 + ShotShotgun + GunTail_Heavy + 9 + 15 + 4.34 + + + 8 + 4 + AmmoSet_12Gauge + + + +
  • CE_AI_AssaultWeapon
  • +
    +
    - - */ThingDef[defName="Gun_Pistol"]/statBases/Mass - - 1.11 - - + - - */ThingDef[defName="Gun_Pistol"]/statBases/RangedWeapon_Cooldown - - 0.38 - - + + Gun_BoltActionRifle + + 4.19 + 1.17 + 0.50 + 0.02 + 1.68 + 12.60 + 10500 + + + 50 + 15 + 1 + + + CombatExtended.Verb_ShootCE + true + Bullet_303British_FMJ + 1.4 + 55 + ShotBoltActionRifle + GunTail_Heavy + 9 + + + 10 + 4.3 + AmmoSet_303British + + + AimedShot + + +
  • CE_AI_Rifle
  • +
    +
    - - */ThingDef[defName="Gun_Pistol"]/statBases - - 0.35 - 0.17 - 1.32 - 2.10 - - + - - */ThingDef[defName="Gun_Pistol"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Bullet_45ACP_FMJ - 0.6 - 12 - ShotPistol - GunTail_Light - 9 -
  • -
    -
    -
    + + Gun_AssaultRifle + + 3.26 + 0.36 + 0.50 + 0.07 + 1.33 + 10.03 + 23500 + + + 60 + 4 + + + 1.18 + CombatExtended.Verb_ShootCE + true + Bullet_556x45mmNATO_FMJ + 1.1 + 55 + 6 + 4 + ShotAssaultRifle + GunTail_Medium + 9 + + + 30 + 4 + AmmoSet_556x45mmNATO + + + 3 + TRUE + AimedShot + + +
  • CE_AI_Rifle
  • +
    +
    - + - - Always - -
  • - */ThingDef[defName="Gun_Pistol"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_Pistol"] - - - -
  • -
    -
    + + Gun_SniperRifle + + 7.30 + 1.16 + 1.6 + 0.05 + 1.92 + 10.92 + 22500 + + + 75 + 4 + + + CombatExtended.Verb_ShootCE + true + Bullet_762x51mmNATO_FMJ + 2.1 + 75 + ShotSniperRifle + GunTail_Heavy + 9 + + + 5 + 4 + AmmoSet_762x51mmNATO + + + AimedShot + + +
  • CE_AI_Rifle
  • +
    +
    - - */ThingDef[defName="Gun_Pistol"]/comps - -
  • - 7 - 4 - AmmoSet_45ACP -
  • -
  • - FALSE -
  • -
    -
    + - + + Gun_MachinePistol + + 3.50 + 0.36 + 0.50 + 0.12 + 0.99 + 4.7 + 21500 + + + 45 + 4 + + + 0.91 + CombatExtended.Verb_ShootCE + true + Bullet_9x19mmPara_FMJ + 0.6 + 20 + 6 + 6 + ShotMachinePistol + GunTail_Light + 9 + + + 32 + 4 + AmmoSet_9x19mmPara + + + 3 + FALSE + + +
  • CE_SMG
  • +
  • CE_AI_AssaultWeapon
  • +
  • CE_OneHandedWeapon
  • +
    +
    - - Always - -
  • - */ThingDef[defName="Gun_Pistol"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_Pistol"] - - - -
  • -
    -
    + - - */ThingDef[defName="Gun_Pistol"]/weaponTags - -
  • CE_Sidearm
  • -
  • CE_AI_Pistol
  • + + Gun_HeavySMG + + 1.40 + 0.37 + 0.35 + 0.17 + 1.46 + 3.17 + 20000 + + + 45 + 4 + + + 2.16 + CombatExtended.Verb_ShootCE + true + Bullet_45ACP_FMJ + 0.6 + 16 + 6 + 9 + ShotHeavySMG + GunTail_Heavy + 9 + + + 20 + 4 + AmmoSet_9x19mmPara + + + 3 + FALSE + + +
  • CE_SMG
  • +
  • CE_AI_AssaultWeapon
  • CE_OneHandedWeapon
  • -
    -
    - - - - - */ThingDef[defName="Gun_Pistol"]/statBases/WorkToMake - - 5000 - - + + - - */ThingDef[defName="Gun_Pistol"]/costList - - - 25 - 2 - - - + - + + Gun_IncendiaryLauncher + + 8 + 0.43 + 0.50 + 0.15 + 1.8 + 10 + 33000 + + + 75 + 30 + 6 + + + CombatExtended.Verb_ShootCE + true + Bullet_30x64mmFuel_Incendiary + true + 1.1 + 40 + 0 + ShotIncendiaryLauncher + GunTail_Medium + 14 + + true + + + + 5 + 4 + AmmoSet_30x64mmFuel + + + FALSE + SuppressFire + + +
  • CE_AI_Rifle
  • +
  • CE_AI_Launcher
  • +
    +
    - + - - */ThingDef[defName="Gun_PumpShotgun"]/statBases/Mass - - 3.00 - - + + Gun_LMG + + 9.12 + 0.56 + 0.50 + 0.05 + 1.53 + 13.7 + + + 80 + 10 + 4 + + + 0.82 + CombatExtended.Verb_ShootCE + true + Bullet_762x54mmR_FMJ + 1.25 + 75 + 7 + 10 + ShotMinigun + GunTail_Medium + 9 + + true + + Mounted + + + 47 + 4.9 + AmmoSet_762x54mmR + + + 5 + FALSE + SuppressFire + + +
  • CE_MachineGun
  • +
  • CE_AI_Suppressive
  • +
    +
    - - */ThingDef[defName="Gun_PumpShotgun"]/statBases/RangedWeapon_Cooldown - - 1.0 - - + - - */ThingDef[defName="Gun_PumpShotgun"]/statBases - - 0.14 + + Gun_ChargeRifle + + 3.0 + 0.36 + 0.60 + 0.08 1.20 - 9.0 - 0.5 - - - - - */ThingDef[defName="Gun_PumpShotgun"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Bullet_12Gauge_Buck - 0.6 - 16 - ShotShotgun - GunTail_Heavy - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_PumpShotgun"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_PumpShotgun"] - - - -
  • -
    -
    + 9.00 + 42500 + + + 55 + 25 + 9 + + + 1.13 + CombatExtended.Verb_ShootCE + true + Bullet_6x24mmCharged + 1.0 + 55 + 5 + 6 + ShotChargeRifle + GunTail_Medium + 9 + + + 30 + 4 + AmmoSet_6x24mmCharged + + + 3 + TRUE + AimedShot + + +
  • CE_AI_Rifle
  • +
    + - - */ThingDef[defName="Gun_PumpShotgun"]/comps - -
  • - 5 - 4.25 - AmmoSet_12Gauge -
  • -
  • - - + - + + Gun_TurretImprovised + + 0.35 + 0.5 + 0.07 + 1.80 + 8.00 + + + 55 + 25 + 9 + + + 0.22 + CombatExtended.Verb_ShootCE + true + Bullet_556x45mmNATO_FMJ + 1.1 + 48 + 5 + 10 + GunShotA + GunTail_Light + 9 + Mounted + + + 200 + 7.8 + false + AmmoSet_556x45mmNATO + + + AimedShot + true + true + + - - Always - -
  • - */ThingDef[defName="Gun_PumpShotgun"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_PumpShotgun"] - - - -
  • - -
    + - - */ThingDef[defName="Gun_PumpShotgun"]/weaponTags - -
  • CE_AI_AssaultWeapon
  • -
    -
    + + Gun_Minigun + + 39.00 + 0.35 + 50 + 0.06 + 4.70 + 8.02 + + + 0.09 + CombatExtended.Verb_ShootCE + true + Bullet_762x51mmNATO_FMJ + 1.1 + 75 + 300 + 1 + ShotMinigun + GunTail_Medium + 9 + + + 600 + 9.2 + AmmoSet_762x51mmNATO + + + AimedShot + + +
  • CE_AI_Suppressive
  • +
    +
    - + - - */ThingDef[defName="Gun_PumpShotgun"]/statBases/WorkToMake - - 8500 - + + */ThingDef[defName="Gun_Minigun"] + ParentName + BaseGun - - */ThingDef[defName="Gun_PumpShotgun"]/costList - - - 40 - 10 - 1 - - + + */ThingDef[defName="Gun_Minigun"]/costList - - - - - - */ThingDef[defName="Gun_ChainShotgun"]/statBases/Mass - - 3.50 - - - - - */ThingDef[defName="Gun_ChainShotgun"]/statBases/RangedWeapon_Cooldown - - 0.39 - - - - - */ThingDef[defName="Gun_ChainShotgun"]/statBases - - 0.15 - 1.26 - 6.7 - 0.5 - - - - - */ThingDef[defName="Gun_ChainShotgun"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Bullet_12Gauge_Buck - 0.6 - 16 - ShotShotgun - GunTail_Heavy - 9 - 15 - 4.34 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_ChainShotgun"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_ChainShotgun"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_ChainShotgun"]/comps - -
  • - 8 - 4 - AmmoSet_12Gauge -
  • -
  • - - - - - - - Always - -
  • - */ThingDef[defName="Gun_ChainShotgun"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_ChainShotgun"] - - - -
  • - -
    - - - */ThingDef[defName="Gun_ChainShotgun"]/weaponTags - -
  • CE_AI_AssaultWeapon
  • -
    -
    - - - - - */ThingDef[defName="Gun_ChainShotgun"]/statBases/WorkToMake - - 13500 - - - - - */ThingDef[defName="Gun_ChainShotgun"]/costList - - - 40 - 2 - - - - - - - - - - */ThingDef[defName="Gun_BoltActionRifle"]/statBases/Mass - - 4.19 - - - - - */ThingDef[defName="Gun_BoltActionRifle"]/statBases/RangedWeapon_Cooldown - - 1.17 - - - - - */ThingDef[defName="Gun_BoltActionRifle"]/statBases - - 0.50 - 0.02 - 1.68 - 12.60 - - - - - */ThingDef[defName="Gun_BoltActionRifle"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Bullet_303British_FMJ - 1.4 - 55 - ShotBoltActionRifle - GunTail_Heavy - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_BoltActionRifle"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_BoltActionRifle"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_BoltActionRifle"]/comps - -
  • - 10 - 4.3 - AmmoSet_303British -
  • -
  • - AimedShot -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_BoltActionRifle"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_BoltActionRifle"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_BoltActionRifle"]/weaponTags - -
  • CE_AI_Rifle
  • -
    -
    - - - - - */ThingDef[defName="Gun_BoltActionRifle"]/statBases/WorkToMake - - 10500 - - - - - */ThingDef[defName="Gun_BoltActionRifle"]/costList - - - 50 - 15 - 1 - - - - - - - - - - */ThingDef[defName="Gun_AssaultRifle"]/statBases/Mass - - 3.26 - - - - - */ThingDef[defName="Gun_AssaultRifle"]/statBases/RangedWeapon_Cooldown - - 0.36 - - - - - */ThingDef[defName="Gun_AssaultRifle"]/statBases - - 0.50 - 0.07 - 1.33 - 10.03 - - - - - */ThingDef[defName="Gun_AssaultRifle"]/verbs - - -
  • - 1.18 - CombatExtended.Verb_ShootCE - true - Bullet_556x45mmNATO_FMJ - 1.1 - 55 - 6 - 4 - ShotAssaultRifle - GunTail_Medium - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_AssaultRifle"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_AssaultRifle"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_AssaultRifle"]/comps - -
  • - 30 - 4 - AmmoSet_556x45mmNATO -
  • -
  • - 3 - TRUE - AimedShot -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_AssaultRifle"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_AssaultRifle"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_AssaultRifle"]/weaponTags - -
  • CE_AI_Rifle
  • -
    -
    - - - - - */ThingDef[defName="Gun_AssaultRifle"]/statBases/WorkToMake - - 23500 - - - - - */ThingDef[defName="Gun_AssaultRifle"]/costList - - - 60 - 4 - - - - - - - - - - */ThingDef[defName="Gun_SniperRifle"]/statBases/Mass - - 7.30 - - - - - */ThingDef[defName="Gun_SniperRifle"]/statBases/RangedWeapon_Cooldown - - 1.16 - - - - - */ThingDef[defName="Gun_SniperRifle"]/statBases - - 1.6 - 0.05 - 1.92 - 10.92 - - - - - */ThingDef[defName="Gun_SniperRifle"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Bullet_762x51mmNATO_FMJ - 2.1 - 75 - ShotSniperRifle - GunTail_Heavy - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_SniperRifle"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_SniperRifle"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_SniperRifle"]/comps - -
  • - 5 - 4 - AmmoSet_762x51mmNATO -
  • -
  • - AimedShot -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_SniperRifle"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_SniperRifle"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_SniperRifle"]/weaponTags - -
  • CE_AI_Rifle
  • -
    -
    - - - - - */ThingDef[defName="Gun_SniperRifle"]/statBases/WorkToMake - - 22500 - - - - - */ThingDef[defName="Gun_SniperRifle"]/costList - - - 75 - 4 - - - - - - - - - - */ThingDef[defName="Gun_MachinePistol"]/statBases/Mass - - 3.50 - - - - - */ThingDef[defName="Gun_MachinePistol"]/statBases/RangedWeapon_Cooldown - - 0.36 - - - - - */ThingDef[defName="Gun_MachinePistol"]/statBases - - 0.50 - 0.12 - 0.99 - 4.7 - - - - - */ThingDef[defName="Gun_MachinePistol"]/verbs - - -
  • - 0.91 - CombatExtended.Verb_ShootCE - true - Bullet_9x19mmPara_FMJ - 0.6 - 20 - 6 - 6 - ShotMachinePistol - GunTail_Light - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_MachinePistol"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_MachinePistol"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_MachinePistol"]/comps - -
  • - 32 - 4 - AmmoSet_9x19mmPara -
  • -
  • - 3 - FALSE -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_MachinePistol"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_MachinePistol"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_MachinePistol"]/weaponTags - -
  • CE_SMG
  • -
  • CE_AI_AssaultWeapon
  • -
  • CE_OneHandedWeapon
  • -
    -
    - - - - - */ThingDef[defName="Gun_MachinePistol"]/statBases/WorkToMake - - 21500 - - - - - */ThingDef[defName="Gun_MachinePistol"]/costList - - - 45 - 4 - - - - - - - - - - */ThingDef[defName="Gun_HeavySMG"]/statBases/Mass - - 1.40 - - - - - */ThingDef[defName="Gun_HeavySMG"]/statBases/RangedWeapon_Cooldown - - 0.37 - - - - - */ThingDef[defName="Gun_HeavySMG"]/statBases - - 0.35 - 0.17 - 1.46 - 3.17 - - - - - */ThingDef[defName="Gun_HeavySMG"]/verbs - - -
  • - 2.16 - CombatExtended.Verb_ShootCE - true - Bullet_45ACP_FMJ - 0.6 - 16 - 6 - 9 - ShotHeavySMG - GunTail_Heavy - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_HeavySMG"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_HeavySMG"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_HeavySMG"]/comps - -
  • - 20 - 4 - AmmoSet_9x19mmPara -
  • -
  • - 3 - FALSE -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_HeavySMG"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_HeavySMG"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_HeavySMG"]/weaponTags - -
  • CE_SMG
  • -
  • CE_AI_AssaultWeapon
  • -
  • CE_OneHandedWeapon
  • -
    -
    - - - - - */ThingDef[defName="Gun_HeavySMG"]/statBases/WorkToMake - - 20000 - - - - - */ThingDef[defName="Gun_HeavySMG"]/costList - - - 45 - 4 - - - - - - - - - - */ThingDef[defName="Gun_IncendiaryLauncher"]/statBases/Mass - - 8 - - - - - */ThingDef[defName="Gun_IncendiaryLauncher"]/statBases/RangedWeapon_Cooldown - - 0.43 - - - - - */ThingDef[defName="Gun_IncendiaryLauncher"]/statBases - - 0.50 - 0.15 - 1.8 - 10 - - - - - */ThingDef[defName="Gun_IncendiaryLauncher"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Bullet_30x64mmFuel_Incendiary - true - 1.1 - 40 - 0 - ShotIncendiaryLauncher - GunTail_Medium - 14 - - true - -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_IncendiaryLauncher"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_IncendiaryLauncher"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_IncendiaryLauncher"]/comps - -
  • - 5 - 4 - AmmoSet_30x64mmFuel -
  • -
  • - FALSE - SuppressFire -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_IncendiaryLauncher"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_IncendiaryLauncher"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_IncendiaryLauncher"]/weaponTags - -
  • CE_AI_Rifle
  • -
  • CE_AI_Launcher
  • -
    -
    - - - - - */ThingDef[defName="Gun_IncendiaryLauncher"]/statBases/WorkToMake - - 33000 - - - - - */ThingDef[defName="Gun_IncendiaryLauncher"]/costList - - - 75 - 30 - 6 - - - - - - - - - - */ThingDef[defName="Gun_LMG"]/statBases/Mass - - 9.12 - - - - - */ThingDef[defName="Gun_LMG"]/statBases/RangedWeapon_Cooldown - - 0.56 - - - - - */ThingDef[defName="Gun_LMG"]/statBases - - 0.50 - 0.05 - 1.53 - 13.7 - - - - - */ThingDef[defName="Gun_LMG"]/verbs - - -
  • - 0.82 - CombatExtended.Verb_ShootCE - true - Bullet_762x54mmR_FMJ - 1.25 - 75 - 7 - 10 - ShotMinigun - GunTail_Medium - 9 - - true - - Mounted -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_LMG"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_LMG"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_LMG"]/comps - -
  • - 47 - 4.9 - AmmoSet_762x54mmR -
  • -
  • - 5 - FALSE - SuppressFire -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_LMG"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_LMG"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_LMG"]/weaponTags - -
  • CE_MachineGun
  • -
  • CE_AI_Suppressive
  • -
    -
    - - - - - */ThingDef[defName="Gun_LMG"]/statBases/WorkToMake - - 27000 - - - - - */ThingDef[defName="Gun_LMG"]/costList - - - 80 - 10 - 4 - - - - - - - - - - */ThingDef[defName="Gun_ChargeRifle"]/statBases/Mass - - 3.0 - - - - - */ThingDef[defName="Gun_ChargeRifle"]/statBases/RangedWeapon_Cooldown - - 0.36 - - - - - */ThingDef[defName="Gun_ChargeRifle"]/statBases - - 0.60 - 0.08 - 1.20 - 9.00 - - - - - */ThingDef[defName="Gun_ChargeRifle"]/verbs - - -
  • - 1.13 - CombatExtended.Verb_ShootCE - true - Bullet_6x24mmCharged - 1.0 - 55 - 5 - 6 - ShotChargeRifle - GunTail_Medium - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_ChargeRifle"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_ChargeRifle"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_ChargeRifle"]/comps - -
  • - 30 - 4 - AmmoSet_6x24mmCharged -
  • -
  • - 3 - TRUE - AimedShot -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_ChargeRifle"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_ChargeRifle"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_ChargeRifle"]/weaponTags - -
  • CE_AI_Rifle
  • -
    -
    - - - - - */ThingDef[defName="Gun_ChargeRifle"]/statBases/WorkToMake - - 42500 - - - - - */ThingDef[defName="Gun_ChargeRifle"]/costList - - - 55 - 25 - 9 - - - - - - - - - - */ThingDef[defName="Gun_TurretImprovised"]/statBases/RangedWeapon_Cooldown - - 0.35 - - - - - */ThingDef[defName="Gun_TurretImprovised"]/statBases - - 0.5 - 0.07 - 1.80 - 8.00 - - - - - */ThingDef[defName="Gun_TurretImprovised"]/verbs - - -
  • - 0.22 - CombatExtended.Verb_ShootCE - true - Bullet_556x45mmNATO_FMJ - 1.1 - 48 - 5 - 10 - GunShotA - GunTail_Light - 9 - Mounted -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_TurretImprovised"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_TurretImprovised"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_TurretImprovised"]/comps - -
  • - 200 - 7.8 - false - AmmoSet_556x45mmNATO -
  • -
  • - AimedShot - true - true -
  • -
    -
    - - - - - - - */ThingDef[defName="Gun_Minigun"]/statBases/Mass - - 39.00 - - - - - */ThingDef[defName="Gun_Minigun"]/statBases/RangedWeapon_Cooldown - - 0.35 - - - - - */ThingDef[defName="Gun_Minigun"]/statBases - - 50 - 0.06 - 4.70 - 8.02 - - - - - */ThingDef[defName="Gun_Minigun"]/verbs - - -
  • - 0.09 - CombatExtended.Verb_ShootCE - true - Bullet_762x51mmNATO_FMJ - 1.1 - 75 - 300 - 1 - ShotMinigun - GunTail_Medium - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_Minigun"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_Minigun"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_Minigun"]/comps - -
  • - 600 - 9.2 - AmmoSet_762x51mmNATO -
  • -
  • - AimedShot -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_Minigun"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_Minigun"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_Minigun"]/weaponTags - -
  • CE_AI_Suppressive
  • -
    -
    - - - - - */ThingDef[defName="Gun_Minigun"] - ParentName - BaseGun - - - - */ThingDef[defName="Gun_Minigun"]/costList - - - - */ThingDef[defName="Gun_Minigun"]/recipeMaker - - - - */ThingDef[defName="Gun_Minigun"]/statBases - - 2200 - - - - - */ThingDef[defName="Gun_Minigun"] - - Never - True - True - - - - - - - - - */ThingDef[defName="Gun_DoomsdayRocket" or defName="Gun_TripleRocket"]/weaponTags/li[.="Gun"] - - - - */ThingDef[defName="Gun_DoomsdayRocket" or defName="Gun_TripleRocket"] - ParentName - BaseMakeableGun - - - - - - */ThingDef[defName="Bullet_DoomsdayRocket"]/thingClass - - CombatExtended.ProjectileCE_Explosive - - - - - */ThingDef[defName="Bullet_DoomsdayRocket"]/projectile - - - Bomb - 250 - 7.8 - 100 - - - - - - Always - -
  • - */ThingDef[defName="Bullet_DoomsdayRocket"]/comps - Invert -
  • -
  • - */ThingDef[defName="Bullet_DoomsdayRocket"] - - - -
  • -
    -
    - - - */ThingDef[defName="Bullet_DoomsdayRocket"]/comps - -
  • - 1 - - 400 - -
  • -
    -
    - - - - - */ThingDef[defName="Gun_DoomsdayRocket"]/statBases/Mass - - 20.00 - - - - - */ThingDef[defName="Gun_DoomsdayRocket"]/statBases/RangedWeapon_Cooldown - - 1.5 - - - - - */ThingDef[defName="Gun_DoomsdayRocket"]/statBases - - 1.24 - 0.2 - 3.24 - 13.0 - - - - - */ThingDef[defName="Gun_DoomsdayRocket"]/verbs - - -
  • - CombatExtended.Verb_ShootCEOneUse - true - Bullet_DoomsdayRocket - 0.0 - 2.3 - 48 - 1 - InfernoCannon_Fire - GunTail_Heavy - true - - true - - 14 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_DoomsdayRocket"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_DoomsdayRocket"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_DoomsdayRocket"]/comps - -
  • - AimedShot -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_DoomsdayRocket"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_DoomsdayRocket"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_DoomsdayRocket"]/weaponTags - -
  • CE_AI_Launcher
  • -
    -
    - - - - - */ThingDef[defName="Gun_DoomsdayRocket"]/statBases/MarketValue - - - - */ThingDef[defName="Gun_DoomsdayRocket"] - - - LargeRockets - - - 125 - 7 - 5 - - - - - - - - - - */ThingDef[defName="Bullet_Rocket"]/thingClass - - CombatExtended.ProjectileCE_Explosive - - - - - */ThingDef[defName="Bullet_Rocket"]/projectile - - - Bomb - 180 - 3.0 - 100 - - - - - - Always - -
  • - */ThingDef[defName="Bullet_Rocket"]/comps - Invert -
  • -
  • - */ThingDef[defName="Bullet_Rocket"] - - - -
  • -
    -
    - - - */ThingDef[defName="Bullet_Rocket"]/comps - -
  • - 1 - - 150 - -
  • -
    -
    - - - - - */ThingDef[defName="Gun_TripleRocket"]/statBases/Mass - - 12.00 - - - - - */ThingDef[defName="Gun_TripleRocket"]/statBases/RangedWeapon_Cooldown - - 1.5 - + + */ThingDef[defName="Gun_Minigun"]/recipeMaker - */ThingDef[defName="Gun_TripleRocket"]/statBases - - 0.5 - 0.2 - 2.20 - 13.00 - - - - - */ThingDef[defName="Gun_TripleRocket"]/verbs + */ThingDef[defName="Gun_Minigun"]/statBases - -
  • - CombatExtended.Verb_ShootCEOneUse - true - Bullet_Rocket - 2.0 - 1.9 - 40 - 20 - 3 - InfernoCannon_Fire - GunTail_Heavy - true - false - - true - - 14 -
  • -
    + 2200
    - - - - Always - -
  • - */ThingDef[defName="Gun_TripleRocket"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_TripleRocket"] - - - -
  • -
    -
    - - */ThingDef[defName="Gun_TripleRocket"]/comps + */ThingDef[defName="Gun_Minigun"] -
  • - FALSE - AimedShot - true -
  • + Never + True + True
    - + - - Always - -
  • - */ThingDef[defName="Gun_TripleRocket"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_TripleRocket"] - - - -
  • -
    -
    + - - */ThingDef[defName="Gun_TripleRocket"]/weaponTags - -
  • CE_AI_Launcher
  • -
    + + */ThingDef[defName="Gun_DoomsdayRocket" or defName="Gun_TripleRocket"]/weaponTags/li[.="Gun"] - + + */ThingDef[defName="Gun_DoomsdayRocket" or defName="Gun_TripleRocket"] + ParentName + BaseMakeableGun + - */ThingDef[defName="Gun_TripleRocket"]/statBases/MarketValue + */ThingDef[defName="Gun_DoomsdayRocket" or defName="Gun_TripleRocket"]/statBases/MarketValue - */ThingDef[defName="Gun_TripleRocket"] + */ThingDef[defName="Gun_DoomsdayRocket" or defName="Gun_TripleRocket"] LargeRockets - - 90 - 6 - 3 - - - - - - - */ThingDef[defName="Gun_ChargeBlasterHeavy"]/statBases/Mass - - 35.00 - - + - */ThingDef[defName="Gun_ChargeBlasterHeavy"]/statBases/RangedWeapon_Cooldown - - 0.36 - - - - - */ThingDef[defName="Gun_ChargeBlasterHeavy"]/statBases + */ThingDef[defName="Bullet_DoomsdayRocket"]/thingClass - 0.5 - 0.01 - 4.80 - 13.00 + CombatExtended.ProjectileCE_Explosive - */ThingDef[defName="Gun_ChargeBlasterHeavy"]/verbs + */ThingDef[defName="Bullet_DoomsdayRocket"]/projectile - -
  • - 0.75 - CombatExtended.Verb_ShootCE - true - Bullet_12x64mmCharged - 2.9 - 1.1 - 86 - 6 - 20 - ShotChargeBlaster - GunTail_Heavy - 9 - Mounted -
  • -
    + + Bomb + 250 + 7.8 + 100 +
    - - Always
  • - */ThingDef[defName="Gun_ChargeBlasterHeavy"]/comps + */ThingDef[defName="Bullet_DoomsdayRocket"]/comps Invert
  • - */ThingDef[defName="Gun_ChargeBlasterHeavy"] + */ThingDef[defName="Bullet_DoomsdayRocket"] @@ -2053,104 +662,91 @@ - */ThingDef[defName="Gun_ChargeBlasterHeavy"]/comps + */ThingDef[defName="Bullet_DoomsdayRocket"]/comps -
  • - 100 - 9.2 - AmmoSet_12x64mmCharged -
  • -
  • - 5 - AimedShot -
  • +
  • + 1 + + 400 + +
  • - - - - Always - -
  • - */ThingDef[defName="Gun_ChargeBlasterHeavy"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_ChargeBlasterHeavy"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_ChargeBlasterHeavy"]/weaponTags - -
  • CE_AI_Suppressive
  • -
    -
    + - + + Gun_DoomsdayRocket + + 20.00 + 1.5 + 1.24 + 0.2 + 3.24 + 13.0 + 46000 + + + 125 + 7 + 5 + + + CombatExtended.Verb_ShootCEOneUse + true + Bullet_DoomsdayRocket + 0.0 + 2.3 + 48 + 1 + InfernoCannon_Fire + GunTail_Heavy + true + + true + + 14 + + + AimedShot + + +
  • CE_AI_Launcher
  • +
    +
    - + - - */ThingDef[defName="Gun_InfernoCannon"]/statBases/Mass - - 300.00 - - + - */ThingDef[defName="Gun_InfernoCannon"]/statBases/RangedWeapon_Cooldown - - 2.53 - - - - - */ThingDef[defName="Gun_InfernoCannon"]/statBases + */ThingDef[defName="Bullet_Rocket"]/thingClass - 0.5 - 0.01 - 0.82 - 20.00 + CombatExtended.ProjectileCE_Explosive - */ThingDef[defName="Gun_InfernoCannon"]/verbs + */ThingDef[defName="Bullet_Rocket"]/projectile - -
  • - CombatExtended.Verb_ShootCE - true - Bullet_80x256mmFuel_Thermobaric - true - 4.1 - 86 - 1 - InfernoCannon_Fire - GunTail_Light - 14 -
  • -
    + + Bomb + 180 + 3.0 + 100 +
    - - Always
  • - */ThingDef[defName="Gun_InfernoCannon"]/comps + */ThingDef[defName="Bullet_Rocket"]/comps Invert
  • - */ThingDef[defName="Gun_InfernoCannon"] + */ThingDef[defName="Bullet_Rocket"] @@ -2159,147 +755,175 @@ - */ThingDef[defName="Gun_InfernoCannon"]/comps + */ThingDef[defName="Bullet_Rocket"]/comps -
  • - 1 - 9.8 - AmmoSet_80x256mmFuel -
  • -
  • - AimedShot +
  • + 1 + + 150 +
  • - + - - Always - -
  • - */ThingDef[defName="Gun_InfernoCannon"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_InfernoCannon"] - - - -
  • -
    -
    + + Gun_TripleRocket + + 12.00 + 1.5 + 0.5 + 0.2 + 2.20 + 13.00 + 39000 + + + 90 + 6 + 3 + + + CombatExtended.Verb_ShootCEOneUse + true + Bullet_Rocket + 2.0 + 1.9 + 40 + 20 + 3 + InfernoCannon_Fire + GunTail_Heavy + true + false + + true + + 14 + + + AimedShot + true + + +
  • CE_AI_Launcher
  • +
    +
    - - */ThingDef[defName="Gun_InfernoCannon"]/weaponTags - + + + + Gun_ChargeBlasterHeavy + + 35.00 + 0.36 + 0.5 + 0.01 + 4.80 + 13.00 + + + 0.75 + CombatExtended.Verb_ShootCE + true + Bullet_12x64mmCharged + 2.9 + 1.1 + 86 + 6 + 20 + ShotChargeBlaster + GunTail_Heavy + 9 + Mounted + + + 100 + 9.2 + AmmoSet_12x64mmCharged + + + 5 + AimedShot + + +
  • CE_AI_Suppressive
  • +
    +
    + + + + + Gun_InfernoCannon + + 300.00 + 2.53 + 0.5 + 0.01 + 0.82 + 20.00 + + + CombatExtended.Verb_ShootCE + true + Bullet_80x256mmFuel_Thermobaric + true + 4.1 + 86 + 1 + InfernoCannon_Fire + GunTail_Light + 14 + + + 1 + 9.8 + AmmoSet_80x256mmFuel + + + AimedShot + +
  • CE_AI_Launcher
  • -
    -
    + +
    - - - - */ThingDef[defName="Gun_ChargeLance"]/statBases/Mass - + + Gun_ChargeLance + 8.00 - - - - - */ThingDef[defName="Gun_ChargeLance"]/statBases/RangedWeapon_Cooldown - 0.35 - - - - - */ThingDef[defName="Gun_ChargeLance"]/statBases - 0.5 0.01 2.10 13.00 - - - - - */ThingDef[defName="Gun_ChargeLance"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Bullet_5x35mmCharged - 1.1 - 62 - 1 - ChargeLance_Fire - GunTail_Heavy - 9 -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_ChargeLance"]/comps - Invert -
  • -
  • - */ThingDef[defName="Gun_ChargeLance"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_ChargeLance"]/comps - -
  • - 1 - 1.6 - AmmoSet_5x35mmCharged -
  • -
  • - AimedShot -
  • -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Gun_ChargeLance"]/weaponTags - Invert -
  • -
  • - */ThingDef[defName="Gun_ChargeLance"] - - - -
  • -
    -
    - - - */ThingDef[defName="Gun_ChargeLance"]/weaponTags - + + + CombatExtended.Verb_ShootCE + true + Bullet_5x35mmCharged + 1.1 + 62 + 1 + ChargeLance_Fire + GunTail_Heavy + 9 + + + 1 + 1.6 + AmmoSet_5x35mmCharged + + + AimedShot + +
  • CE_AI_Rifle
  • -
    -
    + +
    diff --git a/Patches/Core/ThingDefs_Misc/Weapons_RangedNeolithic.xml b/Patches/Core/ThingDefs_Misc/Weapons_RangedNeolithic.xml index e740e655fc..2d3457c4fc 100644 --- a/Patches/Core/ThingDefs_Misc/Weapons_RangedNeolithic.xml +++ b/Patches/Core/ThingDefs_Misc/Weapons_RangedNeolithic.xml @@ -3,151 +3,67 @@ - - - - */ThingDef[defName="Bow_Short"]/statBases/RangedWeapon_Cooldown - - 1 - - - - - */ThingDef[defName="Bow_Short"]/statBases - + + Bow_Short + 0.35 1 2 3.00 - - - - - */ThingDef[defName="Bow_Short"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Projectile_Arrow_Stone - 1 - 28 - BowSmall -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Bow_Short"]/comps - Invert -
  • -
  • - */ThingDef[defName="Bow_Short"] - - - -
  • -
    -
    - - - */ThingDef[defName="Bow_Short"]/comps - -
  • - AmmoSet_Arrow -
  • -
  • - - - - - - - */ThingDef[defName="Bow_Short"]/weaponTags - + 1 + + + 25 + 2 + + + CombatExtended.Verb_ShootCE + true + Projectile_Arrow_Stone + 1 + 28 + BowSmall + + + AmmoSet_Arrow + + +
  • CE_Bow
  • -
    -
    + + - - - - */ThingDef[defName="Bow_Great"]/statBases/RangedWeapon_Cooldown - - 1 - - - - - */ThingDef[defName="Bow_Great"]/statBases - + + Bow_Great + 0.35 1 2 5.00 - - - - - */ThingDef[defName="Bow_Great"]/verbs - - -
  • - CombatExtended.Verb_ShootCE - true - Projectile_GreatArrow_Stone - 1.3 - 33 - BowLarge -
  • -
    -
    -
    - - - - - Always - -
  • - */ThingDef[defName="Bow_Great"]/comps - Invert -
  • -
  • - */ThingDef[defName="Bow_Great"] - - - -
  • -
    -
    - - - */ThingDef[defName="Bow_Great"]/comps - -
  • - AmmoSet_GreatArrow -
  • -
  • - - - - - - - */ThingDef[defName="Bow_Great"]/weaponTags - + 1 + + + 25 + 2 + + + CombatExtended.Verb_ShootCE + true + Projectile_GreatArrow_Stone + 1.3 + 33 + BowLarge + + + AmmoSet_GreatArrow + + +
  • CE_Bow
  • -
    -
    + + diff --git a/Patches/EPOE/Bionics.xml b/Patches/EPOE/Bionics.xml new file mode 100644 index 0000000000..49ce712925 --- /dev/null +++ b/Patches/EPOE/Bionics.xml @@ -0,0 +1,158 @@ + + + + + + + Always + +
  • + Expanded Prosthetics and Organ Engineering 2.0 +
  • +
  • + */BodyDef[defName="Human"]/corePart/parts/li[def="Rib1" or def="Rib2" or def="Rib3" or def="Rib4" or def="Rib5" or def="Rib6" or def="Rib7" or def="Rib8" or def="Rib9" or def="Rib10" or def="Rib11" or def="Rib12" or def="Rib13"]/coverage + + 0.001 + +
  • +
    +
    + + + Always + +
  • + Expanded Prosthetics and Organ Engineering 2.0 +
  • +
  • + */BodyPartDef[defName="Rib1" or defName="Rib2" or defName="Rib3" or defName="Rib4" or defName="Rib5" or defName="Rib6" or defName="Rib7" or defName="Rib8" or defName="Rib9" or defName="Rib10" or defName="Rib11" or defName="Rib12" or defName="Rib13"]/hitPoints + + 13 + +
  • +
    +
    + + + + + + Always + +
  • + Expanded Prosthetics and Organ Engineering 2.0 +
  • +
  • + */HediffDef[defName="SteelArm"]/comps/li[@Class="HediffCompProperties_VerbGiver"] +
  • +
  • + */HediffDef[defName="HookHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/verbs + + +
  • + CombatExtended.Verb_MeleeAttackCE + 1.65 + 7 + Scratch + 0.1 +
  • + + + +
    +
    + + + + + Always + +
  • + Expanded Prosthetics and Organ Engineering 2.0 +
  • +
  • + */HediffDef[defName="SimpleProstheticHand" or defName="SimpleProstheticArm"]/comps/li[@Class="HediffCompProperties_VerbGiver"] +
  • +
    +
    + + + + + Always + +
  • + Expanded Prosthetics and Organ Engineering 2.0 +
  • +
  • + */HediffDef[defName="BionicHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/verbs + + +
  • + CombatExtended.Verb_MeleeAttackCE + 1.65 + 9 + Blunt + 0.15 +
  • + + + +
  • + */HediffDef[defName="PowerArm"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/verbs + + +
  • + CombatExtended.Verb_MeleeAttackCE + 1.2 + 15 + Slash + 0.3 +
  • + + + +
    +
    + + + + + Always + +
  • + Expanded Prosthetics and Organ Engineering 2.0 +
  • +
  • + */HediffDef[defName="AdvancedPowerArm"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/verbs + + +
  • + CombatExtended.Verb_MeleeAttackCE + 0.9 + 20 + Slash + 0.4 +
  • + + + +
  • + */HediffDef[defName="AdvancedBionicArm" or defName="AdvancedBionicHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/verbs + + +
  • + CombatExtended.Verb_MeleeAttackCE + 1.65 + 12 + Blunt + 0.2 +
  • + + + +
    +
    + +
    + diff --git a/Source/CombatExtended/CombatExtended.csproj b/Source/CombatExtended/CombatExtended.csproj index c3c5da950a..99280ff03c 100644 --- a/Source/CombatExtended/CombatExtended.csproj +++ b/Source/CombatExtended/CombatExtended.csproj @@ -146,6 +146,8 @@ + + diff --git a/Source/CombatExtended/CombatExtended/CE_Utility.cs b/Source/CombatExtended/CombatExtended/CE_Utility.cs index e22c954f59..72ac33e070 100644 --- a/Source/CombatExtended/CombatExtended/CE_Utility.cs +++ b/Source/CombatExtended/CombatExtended/CE_Utility.cs @@ -190,11 +190,7 @@ public static Pair GetCollisionBodyFactors(Pawn pawn) } RacePropertiesExtensionCE props = pawn.def.GetModExtension() ?? new RacePropertiesExtensionCE(); var shape = props.bodyShape; -#if DEBUG if (shape == CE_BodyShapeDefOf.Invalid) Log.ErrorOnce("CE returning BodyType Undefined for pawn " + pawn.ToString(), 35000198 + pawn.GetHashCode()); -#else - if (shape == CE_BodyShapeDefOf.Invalid) Log.Warning("CE returning BodyType Undefined for pawn " + pawn.ToString()); -#endif if (pawn.GetPosture() != PawnPosture.Standing) { return new Pair(shape.widthLaying, shape.heightLaying); diff --git a/Source/CombatExtended/CombatExtended/PatchOperationFindMod.cs b/Source/CombatExtended/CombatExtended/PatchOperationFindMod.cs new file mode 100644 index 0000000000..4f8147b4b8 --- /dev/null +++ b/Source/CombatExtended/CombatExtended/PatchOperationFindMod.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Xml; +using RimWorld; +using Verse; +using UnityEngine; + +namespace CombatExtended +{ + public class PatchOperationFindMod : PatchOperation + { + private string modName; + + protected override bool ApplyWorker(XmlDocument xml) + { + if (modName.NullOrEmpty()) + { + return false; + } + return ModsConfig.ActiveModsInLoadOrder.Any(m => m.Name == modName); + } + } +} diff --git a/Source/CombatExtended/CombatExtended/PatchOperationMakeGunCECompatible.cs b/Source/CombatExtended/CombatExtended/PatchOperationMakeGunCECompatible.cs new file mode 100644 index 0000000000..dbe358989e --- /dev/null +++ b/Source/CombatExtended/CombatExtended/PatchOperationMakeGunCECompatible.cs @@ -0,0 +1,168 @@ +using System; +using System.Xml; + +using Verse; + +namespace CombatExtended +{ + public class PatchOperationMakeGunCECompatible : PatchOperation + { + public string defName; + public XmlContainer statBases; + public XmlContainer Properties; + public XmlContainer AmmoUser; + public XmlContainer FireModes; + public XmlContainer weaponTags; + public XmlContainer costList; + + protected override bool ApplyWorker (XmlDocument xml) + { + bool result = false; + + if (defName.NullOrEmpty()) { + return false; + } + + foreach (var current in xml.SelectNodes ("*/ThingDef[defName=\"" + defName + "\"]")) { + result = true; + + var xmlNode = current as XmlNode; + + if (statBases?.node.HasChildNodes ?? false) + { + AddOrReplaceStatBases(xml, xmlNode); + } + if (costList?.node.HasChildNodes ?? false) + { + AddOrReplaceCostList(xml, xmlNode); + } + + if (Properties != null && Properties.node.HasChildNodes) { + AddOrReplaceVerbPropertiesCE (xml, xmlNode); + } + + if (AmmoUser != null || FireModes != null) { + AddOrReplaceCompsCE (xml, xmlNode); + } + + if (weaponTags != null && weaponTags.node.HasChildNodes) { + AddOrReplaceWeaponTags (xml, xmlNode); + } + } + + return result; + } + + private bool GetOrCreateNode(XmlDocument xml, XmlNode xmlNode, string name, out XmlElement output) { + var comps_nodes = xmlNode.SelectNodes (name); + if (comps_nodes.Count == 0) { + output = xml.CreateElement (name); + xmlNode.AppendChild (output); + return false; + } else { + output = comps_nodes [0] as XmlElement; + return true; + } + } + + private XmlElement CreateListElementAndPopulate (XmlDocument xml, XmlNode reference, string type = null) + { + var element = xml.CreateElement ("li"); + if (type != null) { + element.SetAttribute ("Class", type); + } + + Populate (xml, reference, ref element); + + return element; + } + + private void Populate(XmlDocument xml, XmlNode reference, ref XmlElement destination, bool overrideExisting = false) + { + foreach (XmlNode current in reference) + { + if (overrideExisting) + { + var existingNode = destination.SelectSingleNode(current.Name); + if (existingNode != null && existingNode.Value != null) + { + existingNode.Value = current.Value; + continue; + } + } + destination.AppendChild(xml.ImportNode(current, true)); + } + } + + private void AddOrReplaceVerbPropertiesCE (XmlDocument xml, XmlNode xmlNode) + { + XmlElement verbs; + if (GetOrCreateNode(xml, xmlNode, "verbs", out verbs)) { + // remove Verb_Shoot + var verb_shoot_nodes = verbs.SelectNodes ("li[verbClass=\"Verb_Shoot\" or verbClass=\"Verb_ShootOneUse\" or verbClass=\"Verb_LaunchProjectile\"]"); + foreach (var verb_shoot_current in verb_shoot_nodes) { + var verb_shoot = verb_shoot_current as XmlNode; + if (verb_shoot != null) { + verbs.RemoveChild (verb_shoot); + } + } + } + + verbs.AppendChild (CreateListElementAndPopulate (xml, this.Properties.node, "CombatExtended.VerbPropertiesCE")); + } + + private void AddOrReplaceCompsCE (XmlDocument xml, XmlNode xmlNode) + { + XmlElement comps; + GetOrCreateNode (xml, xmlNode, "comps", out comps); + + // add CompProperties_AmmoUser + if (AmmoUser != null) { + comps.AppendChild (CreateListElementAndPopulate (xml, AmmoUser.node, "CombatExtended.CompProperties_AmmoUser")); + } + + // add CompProperties_FireModes + if (FireModes != null) { + comps.AppendChild (CreateListElementAndPopulate (xml, FireModes.node, "CombatExtended.CompProperties_FireModes")); + } + } + + private void AddOrReplaceWeaponTags(XmlDocument xml, XmlNode xmlNode) { + XmlElement weaponTagsElement; + GetOrCreateNode (xml, xmlNode, "weaponTags", out weaponTagsElement); + + Populate(xml, this.weaponTags.node, ref weaponTagsElement); + } + + private void AddOrReplaceStatBases(XmlDocument xml, XmlNode xmlNode) { + XmlElement statBasesElement; + GetOrCreateNode (xml, xmlNode, "statBases", out statBasesElement); + + // Remove unused vanilla stats + if (statBasesElement.HasChildNodes) + { + var vanillaStats = statBasesElement.SelectNodes("AccuracyTouch | AccuracyShort | AccuracyMedium | AccuracyLong"); + foreach(XmlNode cur in vanillaStats) + { + statBasesElement.RemoveChild(cur); + } + } + + Populate(xml, statBases.node, ref statBasesElement, true); + } + + private void AddOrReplaceCostList(XmlDocument xml, XmlNode xmlNode) + { + XmlElement costListElement; + GetOrCreateNode(xml, xmlNode, "costList", out costListElement); + + // Clear list first + if (costListElement.HasChildNodes) + { + costListElement.RemoveAll(); + } + + Populate(xml, costList.node, ref costListElement); + } + } +} \ No newline at end of file diff --git a/Source/CombatExtended/CombatExtended/Things/Building_TurretGunCE.cs b/Source/CombatExtended/CombatExtended/Things/Building_TurretGunCE.cs index 300ec75098..0345490e33 100644 --- a/Source/CombatExtended/CombatExtended/Things/Building_TurretGunCE.cs +++ b/Source/CombatExtended/CombatExtended/Things/Building_TurretGunCE.cs @@ -58,7 +58,7 @@ private bool CanSetForcedTarget { get { - return mannableComp == null || MannedByColonist; // Add check for mannableComp == null since we allow auto-turrets to manually target stuff + return MannedByColonist; } } public override LocalTargetInfo CurrentTarget