Merge branch 'master' of https://github.com/Citadel-Station-13/Citadel-Station-13 into proc-define-shit

This commit is contained in:
SandPoot
2024-03-08 19:10:22 -03:00
810 changed files with 140372 additions and 5523 deletions
+2 -2
View File
@@ -36,7 +36,7 @@
. = 1
if(!target)
qdel(src)
return 0
return FALSE
if(prob(5))
playsound(loc, 'sound/items/welder.ogg', 100, 1)
@@ -51,7 +51,7 @@
acid_level = max(acid_level - (5 + 2*round(sqrt(acid_level))), 0)
if(acid_level <= 0)
qdel(src)
return 0
return FALSE
/obj/effect/acid/Crossed(AM as mob|obj)
. = ..()
+17 -4
View File
@@ -9,6 +9,8 @@
anchored = TRUE
layer = GHOST_LAYER
color = "#ff0000" // text color
appearance_flags = APPEARANCE_UI_IGNORE_ALPHA
vis_flags = VIS_INHERIT_ID
var/text_size = 3 // larger values clip when the displayed text is larger than 2 digits.
var/started = FALSE
var/displayed_text
@@ -17,6 +19,10 @@
/obj/effect/countdown/Initialize(mapload)
. = ..()
attach(loc)
RegisterSignal(loc, COMSIG_PARENT_QDELETING, .proc/on_parent_deleting)
/obj/effect/countdown/proc/on_parent_deleting(atom/being_deleted, force)
qdel(src)
/obj/effect/countdown/examine(mob/user)
. = ..()
@@ -24,7 +30,12 @@
/obj/effect/countdown/proc/attach(atom/A)
attached_to = A
forceMove(get_turf(A))
if(ismovable(A))
var/atom/movable/M = A
moveToNullspace()
M.vis_contents |= src
else
forceMove(get_turf(A))
/obj/effect/countdown/proc/start()
if(!started)
@@ -44,20 +55,22 @@
/obj/effect/countdown/process()
if(!attached_to || QDELETED(attached_to))
qdel(src)
forceMove(get_turf(attached_to))
if(!ismovable(attached_to))
forceMove(get_turf(attached_to))
var/new_val = get_value()
if(new_val == displayed_text)
return
displayed_text = new_val
if(displayed_text)
maptext = "<font size = [text_size]>[displayed_text]</font>"
maptext = MAPTEXT("[displayed_text]")
else
maptext = null
/obj/effect/countdown/Destroy()
attached_to = null
STOP_PROCESSING(SSfastprocess, src)
UnregisterSignal(attached_to, COMSIG_PARENT_QDELETING)
attached_to = null
. = ..()
/obj/effect/countdown/ex_act(severity, target, origin) //immune to explosions
-15
View File
@@ -1,18 +1,3 @@
/obj/effect/temp_visual/point
name = "pointer"
icon = 'icons/mob/screen_gen.dmi'
icon_state = "arrow"
layer = POINT_LAYER
duration = 25
/obj/effect/temp_visual/point/Initialize(mapload, set_invis = 0)
. = ..()
var/atom/old_loc = loc
loc = get_turf(src) // We don't want to actualy trigger anything when it moves
pixel_x = old_loc.pixel_x
pixel_y = old_loc.pixel_y
invisibility = set_invis
//Used by spraybottles.
/obj/effect/decal/chempuff
name = "chemicals"
@@ -4,6 +4,25 @@
layer = TURF_PLATING_DECAL_LAYER
alpha = 110
#define LGBT_ALPHA 60
/obj/effect/turf_decal/tile/Initialize()
if(SSevents.holidays)
if (SSevents.holidays[APRIL_FOOLS])
color = "#[random_short_color()]"
else
for(var/H in SSevents.holidays)
if(istype(H,/datum/holiday/lgbt))
var/datum/holiday/lgbt/L = H
color = L.get_floor_tile_color(src)
// It looks garish at different alphas, and it's not possible to get a
// consistent color palette without this.
alpha = LGBT_ALPHA
return ..()
#undef LGBT_ALPHA
/obj/effect/turf_decal/tile/blue
name = "blue corner"
color = "#52B4E9"
@@ -169,14 +169,14 @@
/obj/effect/particle_effect/foam/proc/foam_mob(mob/living/L)
if(lifetime<1)
return 0
return FALSE
if(!istype(L))
return 0
return FALSE
var/fraction = 1/initial(reagent_divisor)
if(lifetime % reagent_divisor)
reagents.reaction(L, VAPOR, fraction)
lifetime--
return 1
return TRUE
/obj/effect/particle_effect/foam/proc/spread_foam()
var/turf/t_loc = get_turf(src)
@@ -49,23 +49,23 @@
lifetime--
if(lifetime < 1)
kill_smoke()
return 0
return FALSE
for(var/mob/living/L in range(0,src))
smoke_mob(L)
return 1
return TRUE
/obj/effect/particle_effect/smoke/proc/smoke_mob(mob/living/carbon/C)
if(!istype(C))
return 0
return FALSE
if(lifetime<1)
return 0
return FALSE
if(C.internal != null || C.has_smoke_protection())
return 0
return FALSE
if(C.smoke_delay)
return 0
return FALSE
C.smoke_delay++
addtimer(CALLBACK(src, PROC_REF(remove_smoke_delay), C), 10)
return 1
return TRUE
/obj/effect/particle_effect/smoke/proc/remove_smoke_delay(mob/living/carbon/C)
if(C)
@@ -131,7 +131,7 @@
M.drop_all_held_items()
M.adjustOxyLoss(1)
M.emote("cough")
return 1
return TRUE
/obj/effect/particle_effect/smoke/bad/Crossed(atom/movable/AM, oldloc)
. = ..()
@@ -210,7 +210,7 @@
if(..())
M.Sleeping(200)
M.emote("cough")
return 1
return TRUE
/datum/effect_system/smoke_spread/sleeping
effect_type = /obj/effect/particle_effect/smoke/sleeping
@@ -235,20 +235,20 @@
reagents.reaction(AM, TOUCH, fraction)
reagents.reaction(T, TOUCH, fraction)
return 1
return TRUE
/obj/effect/particle_effect/smoke/chem/smoke_mob(mob/living/carbon/M)
if(lifetime<1)
return 0
return FALSE
if(!istype(M))
return 0
return FALSE
var/mob/living/carbon/C = M
if(C.internal != null || C.has_smoke_protection())
return 0
return FALSE
var/fraction = 1/initial(lifetime)
reagents.copy_to(C, fraction*reagents.total_volume)
reagents.reaction(M, INGEST, fraction)
return 1
return TRUE
@@ -14,9 +14,9 @@
/obj/effect/particle_effect/water/Move(turf/newloc)
if (--src.life < 1)
qdel(src)
return 0
return FALSE
if(newloc.density)
return 0
return FALSE
.=..()
/obj/effect/particle_effect/water/Bump(atom/A)
+2 -2
View File
@@ -22,7 +22,7 @@
return
/obj/effect/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0)
return 0
return FALSE
/obj/effect/experience_pressure_difference()
return
@@ -43,7 +43,7 @@
/obj/effect/singularity_act()
qdel(src)
return 0
return FALSE
/obj/effect/ConveyorMove()
return
+1 -1
View File
@@ -183,7 +183,7 @@
return newDir
floor = 1
return 1
return TRUE
/**
* Causes the glowshroom to decay by decreasing its endurance.
+1 -1
View File
@@ -205,7 +205,7 @@ INITIALIZE_IMMEDIATE(/obj/effect/landmark)
/obj/effect/landmark/start/ai/after_round_start()
if(latejoin_active && !used)
new /obj/structure/AIcore/latejoin_inactive(loc)
new /obj/structure/ai_core/latejoin_inactive(loc)
return ..()
/obj/effect/landmark/start/ai/secondary
+18 -18
View File
@@ -281,34 +281,34 @@
/obj/effect/spawner/lootdrop/aimodule_harmless // These shouldn't allow the AI to start butchering people
name = "harmless AI module spawner"
loot = list(
/obj/item/aiModule/core/full/asimov,
/obj/item/aiModule/core/full/asimovpp,
/obj/item/aiModule/core/full/hippocratic,
/obj/item/aiModule/core/full/paladin_devotion,
/obj/item/aiModule/core/full/paladin
/obj/item/ai_module/core/full/asimov,
/obj/item/ai_module/core/full/asimovpp,
/obj/item/ai_module/core/full/hippocratic,
/obj/item/ai_module/core/full/paladin_devotion,
/obj/item/ai_module/core/full/paladin
)
/obj/effect/spawner/lootdrop/aimodule_neutral // These shouldn't allow the AI to start butchering people without reason
name = "neutral AI module spawner"
loot = list(
/obj/item/aiModule/core/full/corp,
/obj/item/aiModule/core/full/maintain,
/obj/item/aiModule/core/full/drone,
/obj/item/aiModule/core/full/peacekeeper,
/obj/item/aiModule/core/full/reporter,
/obj/item/aiModule/core/full/robocop,
/obj/item/aiModule/core/full/liveandletlive,
/obj/item/aiModule/core/full/hulkamania
/obj/item/ai_module/core/full/corp,
/obj/item/ai_module/core/full/maintain,
/obj/item/ai_module/core/full/drone,
/obj/item/ai_module/core/full/peacekeeper,
/obj/item/ai_module/core/full/reporter,
/obj/item/ai_module/core/full/robocop,
/obj/item/ai_module/core/full/liveandletlive,
/obj/item/ai_module/core/full/hulkamania
)
/obj/effect/spawner/lootdrop/aimodule_harmful // These will get the shuttle called
name = "harmful AI module spawner"
loot = list(
/obj/item/aiModule/core/full/antimov,
/obj/item/aiModule/core/full/balance,
/obj/item/aiModule/core/full/tyrant,
/obj/item/aiModule/core/full/thermurderdynamic,
/obj/item/aiModule/core/full/damaged
/obj/item/ai_module/core/full/antimov,
/obj/item/ai_module/core/full/balance,
/obj/item/ai_module/core/full/tyrant,
/obj/item/ai_module/core/full/thermurderdynamic,
/obj/item/ai_module/core/full/damaged
)
/obj/effect/spawner/lootdrop/mre
+1 -1
View File
@@ -8,7 +8,7 @@
anchored = TRUE
/obj/effect/step_trigger/proc/Trigger(atom/movable/A)
return 0
return FALSE
/obj/effect/step_trigger/Crossed(H as mob|obj)
..()