LARP Expansion Pack DLC - Tactical lying down (#15952)

* Initial implementation

* Commented code

* More work for directional handling

* Initial wielding accuracy integration

* Final touchups

* Changelog

* Linter plz

* Alright you prefer this?

* Update code/_onclick/hud/screen_objects.dm

Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>

* Update code/_onclick/hud/screen_objects.dm

Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>

* Small fix

* and this too

* Diona now have the icon back, but it's locked to walk and lay down

* Fix buckling direction

* Fucking merge conflicts resolution editor highlighter

---------

Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
This commit is contained in:
Fluffy
2023-09-03 15:48:07 +02:00
committed by GitHub
parent 3bab5267b9
commit 326ea5cbaf
15 changed files with 178 additions and 30 deletions

View File

@@ -756,6 +756,7 @@
update_icon()
update_held_icon()
/obj/item/gun/proc/wield()
wielded = TRUE
update_firing_delays()
@@ -766,14 +767,17 @@
update_icon()
update_held_icon()
#define LYING_DOWN_FIRE_DELAY_AND_RECOIL_STAT_MULTIPLIER 0.9 //If the mob is intentionally lying down, apply this as a bonus to the fire delay and recoil
#define LYING_DOWN_ACCURACY_STAT_MULTIPLIER 1.1 //If the mob is intentionally lying down, apply this as a bonus to accuracy
/obj/item/gun/proc/update_firing_delays()
if(wielded)
if(fire_delay_wielded)
fire_delay = fire_delay_wielded
fire_delay = usr.lying_is_intentional ? (fire_delay_wielded * LYING_DOWN_FIRE_DELAY_AND_RECOIL_STAT_MULTIPLIER) : fire_delay_wielded
if(recoil_wielded)
recoil = recoil_wielded
recoil = usr.lying_is_intentional ? (recoil_wielded * LYING_DOWN_FIRE_DELAY_AND_RECOIL_STAT_MULTIPLIER) : recoil_wielded
if(accuracy_wielded)
accuracy = accuracy_wielded
accuracy = usr.lying_is_intentional ? (accuracy_wielded * LYING_DOWN_ACCURACY_STAT_MULTIPLIER) : accuracy_wielded
else
if(fire_delay_wielded)
fire_delay = initial(fire_delay)
@@ -782,6 +786,9 @@
if(accuracy_wielded)
accuracy = initial(accuracy)
#undef LYING_DOWN_FIRE_DELAY_AND_RECOIL_STAT_MULTIPLIER
#undef LYING_DOWN_ACCURACY_STAT_MULTIPLIER
/obj/item/gun/mob_can_equip(mob/user, slot, disable_warning, ignore_blocked)
//Cannot equip wielded items.
if(wielded)