mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 12:37:26 +01:00
it works tiger pants
This commit is contained in:
@@ -3,4 +3,7 @@
|
||||
/datum/status_effect/high_five
|
||||
id = "high_five"
|
||||
duration = 25
|
||||
alert_type = null
|
||||
alert_type = null
|
||||
|
||||
/datum/status_effect/high_five/on_timeout()
|
||||
owner.visible_message("[owner] was left hanging....")
|
||||
@@ -10,6 +10,7 @@
|
||||
var/mob/living/owner //The mob affected by the status effect.
|
||||
var/status_type = STATUS_EFFECT_UNIQUE //How many of the effect can be on one mob, and what happens when you try to add another
|
||||
var/on_remove_on_mob_delete = FALSE //if we call on_remove() when the mob is deleted
|
||||
var/can_timeout = FALSE //use for effect that to a diffrent thing on time out (so it can do something on time out rather then on just remove)
|
||||
var/examine_text //If defined, this text will appear when the mob is examined - to use he, she etc. use "SUBJECTPRONOUN" and replace it in the examines themselves
|
||||
var/alert_type = /obj/screen/alert/status_effect //the alert thrown by the status effect, contains name and description
|
||||
var/obj/screen/alert/status_effect/linked_alert = null //the alert itself, if it exists
|
||||
@@ -52,11 +53,13 @@
|
||||
tick()
|
||||
tick_interval = world.time + initial(tick_interval)
|
||||
if(duration != -1 && duration < world.time)
|
||||
on_timeout()
|
||||
qdel(src)
|
||||
|
||||
/datum/status_effect/proc/on_apply() //Called whenever the buff is applied; returning FALSE will cause it to autoremove itself.
|
||||
return TRUE
|
||||
/datum/status_effect/proc/tick() //Called every tick.
|
||||
/datum/status_effect/proc/on_timeout()//called when a buff times out
|
||||
/datum/status_effect/proc/on_remove() //Called whenever the buff expires or is removed; do note that at the point this is called, it is out of the owner's status_effects but owner is not yet null
|
||||
/datum/status_effect/proc/be_replaced() //Called instead of on_remove when a status effect is replaced by itself or when a status effect with on_remove_on_mob_delete = FALSE has its mob deleted
|
||||
owner.clear_alert(id)
|
||||
|
||||
@@ -840,27 +840,28 @@
|
||||
if("highfive")
|
||||
if(restrained())
|
||||
return
|
||||
visible_message("<b>[name]</b> requests a highfive.", "You request a highfive.")
|
||||
if(!has_status_effect(STATUS_EFFECT_HIGHFIVE))
|
||||
apply_status_effect(STATUS_EFFECT_HIGHFIVE)
|
||||
|
||||
for(var/mob/living/carbon/C in orange(1))
|
||||
if(!C || C == src)
|
||||
visible_message("[name] was left hanging. Embarrassing.", "You are left hanging. How embarrassing!")
|
||||
else
|
||||
C.apply_status_effect(STATUS_EFFECT_HIGHFIVE)
|
||||
if(C.has_status_effect(STATUS_EFFECT_HIGHFIVE))
|
||||
if((mind.special_role == SPECIAL_ROLE_WIZARD) && (C.mind && (C.mind.special_role == SPECIAL_ROLE_WIZARD)))
|
||||
visible_message("<span class='danger'><b>[name]</b> and <b>[C.name]</b> high-five EPICALLY!</span>")
|
||||
if(has_status_effect(STATUS_EFFECT_HIGHFIVE))
|
||||
to_chat(src, "You give up on the highfive.")
|
||||
remove_status_effect(STATUS_EFFECT_HIGHFIVE)
|
||||
return
|
||||
visible_message("<b>[name]</b> requests a highfive.", "You request a high five.")
|
||||
apply_status_effect(STATUS_EFFECT_HIGHFIVE)
|
||||
for(var/mob/living/L in orange(1))
|
||||
L.apply_status_effect(STATUS_EFFECT_HIGHFIVE)
|
||||
if(L.has_status_effect(STATUS_EFFECT_HIGHFIVE))
|
||||
if((mind && mind.special_role == SPECIAL_ROLE_WIZARD) && (L.mind && L.mind.special_role == SPECIAL_ROLE_WIZARD))
|
||||
visible_message("<span class='danger'><b>[name]</b> and <b>[L.name]</b> high-five EPICALLY!</span>")
|
||||
status_flags |= GODMODE
|
||||
C.status_flags |= GODMODE
|
||||
L.status_flags |= GODMODE
|
||||
explosion(loc,5,2,1,3)
|
||||
status_flags &= ~GODMODE
|
||||
C.status_flags &= ~GODMODE
|
||||
break
|
||||
visible_message("<b>[name]</b> and <b>[C.name]</b> high-five!")
|
||||
L.status_flags &= ~GODMODE
|
||||
return
|
||||
visible_message("<b>[name]</b> and <b>[L.name]</b> high-five!")
|
||||
playsound('sound/effects/snap.ogg', 50)
|
||||
break
|
||||
remove_status_effect(STATUS_EFFECT_HIGHFIVE)
|
||||
L.remove_status_effect(STATUS_EFFECT_HIGHFIVE)
|
||||
return
|
||||
|
||||
if("help")
|
||||
var/emotelist = "aflap(s), airguitar, blink(s), blink(s)_r, blush(es), bow(s)-(none)/mob, burp(s), choke(s), chuckle(s), clap(s), collapse(s), cough(s),cry, cries, custom, dance, dap(s)(none)/mob," \
|
||||
|
||||
@@ -177,7 +177,6 @@
|
||||
#include "code\controllers\voting.dm"
|
||||
#include "code\controllers\Processes\air.dm"
|
||||
#include "code\controllers\Processes\alarm.dm"
|
||||
#include "code\controllers\Processes\effect_process.dm"
|
||||
#include "code\controllers\Processes\event.dm"
|
||||
#include "code\controllers\Processes\fast_process.dm"
|
||||
#include "code\controllers\Processes\fires.dm"
|
||||
|
||||
Reference in New Issue
Block a user