mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 20:16:55 +01:00
Adds teleportation sickness to bluespace gene plants and bluespace crystals (#18218)
* Adds teleportsick to bluespace genes and bluespace crystals * Update code/datums/status_effects/debuffs.dm Co-authored-by: Charlie <69320440+hal9000PR@users.noreply.github.com> * named stuff * changes order * Update code/datums/status_effects/debuffs.dm Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com> Co-authored-by: Charlie <69320440+hal9000PR@users.noreply.github.com> Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
This commit is contained in:
co-authored by
Charlie
SteelSlayer
parent
1d0e3dde0f
commit
c0802f2b90
@@ -66,6 +66,8 @@
|
||||
|
||||
#define STATUS_EFFECT_SAWBLEED /datum/status_effect/saw_bleed //if the bleed builds up enough, takes a ton of damage
|
||||
|
||||
#define STATUS_EFFECT_TELEPORTSICK /datum/status_effect/teleport_sickness //increasing debuffs as you rapidly teleport.
|
||||
|
||||
#define STATUS_EFFECT_PACIFIED /datum/status_effect/pacifism //forces the pacifism trait
|
||||
//#define STATUS_EFFECT_NECROPOLIS_CURSE /datum/status_effect/necropolis_curse
|
||||
//#define CURSE_BLINDING 1 //makes the edges of the target's screen obscured
|
||||
|
||||
@@ -137,6 +137,35 @@
|
||||
else
|
||||
new /obj/effect/temp_visual/bleed(get_turf(owner))
|
||||
|
||||
/datum/status_effect/teleport_sickness
|
||||
id = "teleportation sickness"
|
||||
duration = 30 SECONDS
|
||||
status_type = STATUS_EFFECT_REFRESH
|
||||
alert_type = /obj/screen/alert/status_effect/teleport_sickness
|
||||
var/teleports = 1
|
||||
|
||||
/obj/screen/alert/status_effect/teleport_sickness
|
||||
name = "Teleportation sickness"
|
||||
desc = "You feel like you are going to throw up with all this teleporting."
|
||||
icon_state = "bluespace"
|
||||
|
||||
/datum/status_effect/teleport_sickness/refresh()
|
||||
. = ..()
|
||||
if(ishuman(owner))
|
||||
var/mob/living/carbon/human/M = owner
|
||||
teleports++
|
||||
if(teleports < 3)
|
||||
return
|
||||
if(teleports < 6)
|
||||
to_chat(M, "<span class='warning'>You feel a bit sick!</span>")
|
||||
M.vomit(lost_nutrition = 15, blood = 0, stun = 0, distance = 0, message = 1)
|
||||
M.Weaken(2 SECONDS)
|
||||
else
|
||||
to_chat(M, "<span class='danger'>You feel really sick!</span>")
|
||||
M.adjustBruteLoss(rand(0, teleports * 2))
|
||||
M.vomit(lost_nutrition = 30, blood = 0, stun = 0, distance = 0, message = 1)
|
||||
M.Weaken(6 SECONDS)
|
||||
|
||||
/datum/status_effect/pacifism
|
||||
id = "pacifism_debuff"
|
||||
alert_type = null
|
||||
|
||||
@@ -307,10 +307,12 @@
|
||||
|
||||
/datum/plant_gene/trait/teleport/on_squash(obj/item/reagent_containers/food/snacks/grown/G, atom/target)
|
||||
if(isliving(target))
|
||||
var/mob/living/L = target
|
||||
var/teleport_radius = max(round(G.seed.potency / 10), 1)
|
||||
var/turf/T = get_turf(target)
|
||||
var/turf/T = get_turf(L)
|
||||
new /obj/effect/decal/cleanable/molten_object(T) //Leave a pile of goo behind for dramatic effect...
|
||||
do_teleport(target, T, teleport_radius)
|
||||
do_teleport(L, T, teleport_radius)
|
||||
L.apply_status_effect(STATUS_EFFECT_TELEPORTSICK)
|
||||
|
||||
/datum/plant_gene/trait/teleport/on_slip(obj/item/reagent_containers/food/snacks/grown/G, mob/living/carbon/C)
|
||||
var/teleport_radius = max(round(G.seed.potency / 10), 1)
|
||||
@@ -319,6 +321,7 @@
|
||||
to_chat(C, "<span class='warning'>You slip through spacetime!</span>")
|
||||
if(prob(50))
|
||||
do_teleport(G, T, teleport_radius)
|
||||
C.apply_status_effect(STATUS_EFFECT_TELEPORTSICK)
|
||||
else
|
||||
new /obj/effect/decal/cleanable/molten_object(T) //Leave a pile of goo behind for dramatic effect...
|
||||
qdel(G)
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
qdel(src)
|
||||
return
|
||||
do_teleport(L, get_turf(L), blink_range, asoundin = 'sound/effects/phasein.ogg')
|
||||
L.apply_status_effect(STATUS_EFFECT_TELEPORTSICK)
|
||||
|
||||
/obj/item/stack/ore/bluespace_crystal/throw_impact(atom/hit_atom)
|
||||
..()
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 60 KiB |
Reference in New Issue
Block a user