mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-21 13:05:36 +01:00
Converts drunkness and dizziness to status effects. Refactors status effect examine text (and, subsequently, stabilized black extracts). (#66340)
* Refactors dizziness into a status effect * Refactors the dizziness setter to use the new kind * Drunkness. - Should drunk continue to work off of a magic value or be swapped to duration? I've not yet decided: For understandability it's preferabale for "drunk" to use a timer (they are drunk for 3 more minutes), but both adding drunk and decreasing drunk currently use weird calculations which would be difficult to carry over. - Ballmer is a liver trait * Dizzy was a setter, not an adjuster * Does all the drunk effects over - refactors examine text fully - refactors stabilized blacks because of this * Removed * repaths, fixes some issues * Minor fixes * Some erroneous changes * Fixes some dizziness errors * Consistency thing * Warning * Undoes this change, I dont like its implementation * max_duration * Max amount * Should be a negative * max duration * drunk doesn't tick on death * Rework dizziness strength * Erroneous dizzy change * Fixes return type
This commit is contained in:
@@ -146,7 +146,6 @@
|
||||
/// The dedicated status effect for the hazard_area component - use with caution and know what it does!
|
||||
/datum/status_effect/hazard_area
|
||||
id = "hazard_area"
|
||||
examine_text = "SUBJECTPRONOUN appears to be largely immobilized through unknown means."
|
||||
status_type = STATUS_EFFECT_UNIQUE
|
||||
alert_type = /atom/movable/screen/alert/status_effect/hazard_area
|
||||
|
||||
@@ -163,6 +162,9 @@
|
||||
owner.remove_movespeed_modifier(/datum/movespeed_modifier/status_effect/hazard_area, update=TRUE)
|
||||
owner.remove_actionspeed_modifier(/datum/actionspeed_modifier/status_effect/hazard_area, update=TRUE)
|
||||
|
||||
/datum/status_effect/hazard_area/get_examine_text()
|
||||
return span_notice("[owner.p_they(TRUE)] appear[owner.p_s()] to be largely immobilized through unknown means.")
|
||||
|
||||
/atom/movable/screen/alert/status_effect/hazard_area
|
||||
name = "Hazardous Area"
|
||||
desc = "The area you are currently within is incredibly hazardous to you. Check your surroundings and vacate as soon as possible."
|
||||
|
||||
@@ -247,10 +247,14 @@
|
||||
var/attack_mod = 0
|
||||
|
||||
// DE-FENSE
|
||||
if(target.drunkenness > 60) // drunks are easier to knock off balance
|
||||
|
||||
// Drunks are easier to knock off balance
|
||||
var/target_drunkenness = target.get_drunk_amount()
|
||||
if(target_drunkenness > 60)
|
||||
defense_mod -= 3
|
||||
else if(target.drunkenness > 30)
|
||||
else if(target_drunkenness > 30)
|
||||
defense_mod -= 1
|
||||
|
||||
if(HAS_TRAIT(target, TRAIT_CLUMSY))
|
||||
defense_mod -= 2
|
||||
if(HAS_TRAIT(target, TRAIT_FAT)) // chonkers are harder to knock over
|
||||
@@ -291,11 +295,12 @@
|
||||
|
||||
// OF-FENSE
|
||||
var/mob/living/carbon/sacker = parent
|
||||
|
||||
if(sacker.drunkenness > 60) // you're far too drunk to hold back!
|
||||
var/sacker_drunkenness = sacker.get_drunk_amount()
|
||||
if(sacker_drunkenness > 60) // you're far too drunk to hold back!
|
||||
attack_mod += 1
|
||||
else if(sacker.drunkenness > 30) // if you're only a bit drunk though, you're just sloppy
|
||||
else if(sacker_drunkenness > 30) // if you're only a bit drunk though, you're just sloppy
|
||||
attack_mod -= 1
|
||||
|
||||
if(HAS_TRAIT(sacker, TRAIT_CLUMSY))
|
||||
attack_mod -= 2
|
||||
if(HAS_TRAIT(sacker, TRAIT_DWARF))
|
||||
|
||||
Reference in New Issue
Block a user