From d362cf31a6f6b8e5c9e526d5ba56d3ab482b95a3 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Fri, 7 Jun 2024 22:58:06 -0400 Subject: [PATCH 01/18] adds evo screech audability to groundside mobs --- .../living/carbon/xenomorph/hive_status.dm | 23 ++++++++++++++++++ sound/voice/alien_echoroar_1.ogg | Bin 0 -> 100091 bytes sound/voice/alien_echoroar_2.ogg | Bin 0 -> 85472 bytes sound/voice/alien_echoroar_3.ogg | Bin 0 -> 90740 bytes 4 files changed, 23 insertions(+) create mode 100644 sound/voice/alien_echoroar_1.ogg create mode 100644 sound/voice/alien_echoroar_2.ogg create mode 100644 sound/voice/alien_echoroar_3.ogg diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index 5b932550edc8..4c339cfbdfb4 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -71,6 +71,9 @@ var/see_humans_on_tacmap = FALSE + /// Used to track the initial screech for groundside mobs + var/initial_screech = TRUE + var/list/hive_inherant_traits // Cultist Info @@ -191,6 +194,26 @@ xeno_message(SPAN_XENOANNOUNCE("The Hive is now strong enough to support: [castes]")) xeno_maptext("The Hive can now support: [castes]", "Hive Strengthening") + if(SSticker.mode.flags_round_type & MODE_INFESTATION) //checks if gamemode is a xeno gamemode before calling, will roar with no queen cause of implied queen existence + zlevel_evo_echo() + +/datum/hive_status/proc/zlevel_evo_echo() + for(var/mob/groundmob as anything in GLOB.player_list) + if(is_ground_level(groundmob.z) && !isxeno(groundmob)) + if(initial_screech) + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_1.ogg', groundmob.loc, 70, FALSE) //boosted a lot cause quiet audio + if(ishuman(groundmob)) + to_chat(groundmob, SPAN_HIGHDANGER("You hear a distant screech and feel your insides freeze up... something new is with you in this colony.")) + if(issynth(groundmob)) + to_chat(groundmob, SPAN_HIGHDANGER("You hear the distant call of an unknown bioform, it sounds like they're informing others to change form. You begin to analyze and decrypt the strange vocalization.")) + initial_screech = FALSE + return + var/area/queen_area = get_area(living_xeno_queen) + if(!initial_screech) + if(CEILING_IS_PROTECTED(queen_area?.ceiling, CEILING_PROTECTION_TIER_3) || !queen_area) + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_2.ogg', groundmob.loc, 70, FALSE) //if queen is underground or there is no queen + else + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_3.ogg', groundmob.loc, 80, FALSE) //if queen is outside // Adds a xeno to this hive /datum/hive_status/proc/add_xeno(mob/living/carbon/xenomorph/X) diff --git a/sound/voice/alien_echoroar_1.ogg b/sound/voice/alien_echoroar_1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e46ac612b6e922c80b14c3719148ba06a57d5f95 GIT binary patch literal 100091 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 literal 0 HcmV?d00001 diff --git a/sound/voice/alien_echoroar_3.ogg b/sound/voice/alien_echoroar_3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..506ed83a9442833bcb841fa48b424892a627c42a GIT binary patch literal 90740 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

liTAZ=n88kAa2^C)w>zC}Q6eP0!$@?r@7_aJ% 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 Date: Fri, 7 Jun 2024 22:58:53 -0400 Subject: [PATCH 02/18] adds (partially broken) sunsets --- code/__DEFINES/mode.dm | 4 + code/_globalvars/bitfields.dm | 1 + code/_onclick/hud/fullscreen.dm | 222 ++++++++++++++++++ code/_onclick/hud/hud.dm | 1 + .../colonialmarines/colonialmarines.dm | 10 +- 5 files changed, 237 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/mode.dm b/code/__DEFINES/mode.dm index fea9ebeebb2c..1df1905c5b39 100644 --- a/code/__DEFINES/mode.dm +++ b/code/__DEFINES/mode.dm @@ -58,6 +58,7 @@ #define MODE_RANDOM_HIVE (1<<12)// Makes Join-as-Xeno choose a hive to join as burrowed larva at random rather than at user's input.. #define MODE_THUNDERSTORM (1<<13)// Enables thunderstorm effects on maps that are compatible with it. (Lit exterior tiles, rain effects) #define MODE_FACTION_CLASH (1<<14)// Disables scopes, sniper sentries, OBs, shooting corpses, dragging enemy corpses, stripping enemy corpses +#define MODE_SUNSET (1<<15) // Has a sunset on the ground Z at the start of the round // Gamemode Toggleable Flags #define MODE_NO_SNIPER_SENTRY (1<<0) /// Upgrade kits will no longer allow you to select long-range upgrades @@ -315,3 +316,6 @@ DEFINE_BITFIELD(whitelist_status, list( GLOBAL_VAR(last_ares_callout) GLOBAL_VAR(last_qm_callout) + +/// Registered a single time, used to determine sunrise stuff +GLOBAL_VAR(sunrise_starting_time) diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm index 616c88c47a9d..cf14b3ac74d6 100644 --- a/code/_globalvars/bitfields.dm +++ b/code/_globalvars/bitfields.dm @@ -416,6 +416,7 @@ DEFINE_BITFIELD(flags_round_type, list( "MODE_RANDOM_HIVE" = MODE_RANDOM_HIVE, "MODE_THUNDERSTORM" = MODE_THUNDERSTORM, "MODE_FACTION_CLASH" = MODE_FACTION_CLASH, + "MODE_SUNSET" = MODE_SUNSET, )) DEFINE_BITFIELD(toggleable_flags, list( diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 505b1876e3af..9d1ba27a5457 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -3,6 +3,9 @@ /mob var/list/fullscreens = list() + ///If a type of special lighting such as a sunset or lightning is currently active, dont have more than one of these without a special fullscreen framework + var/special_lighting = null + /mob/proc/overlay_fullscreen(category, type, severity) var/atom/movable/screen/fullscreen/screen = fullscreens[category] if (!screen || screen.type != type) @@ -61,6 +64,21 @@ else client.remove_from_screen(screen) +/mob/proc/initialize_special_lighting() //initialized on hud.dm when a new mob is spawned so you can't dodge this unless you dont have a client somehow + if(!SSticker.mode) + if(special_lighting) + return + SSticker.OnRoundstart(CALLBACK(src, PROC_REF(initialize_special_lighting))) + debug_msg("sunset call has been called on [src] but delayed to roundstart") + special_lighting = "sunset" // technically setting it early, but it shouldnt effect anything + return + if(SSticker.mode.flags_round_type & MODE_SUNSET) + if(fullscreens.len == 0) + return + addtimer(CALLBACK(src, PROC_REF(sunset)), 3 SECONDS) // 3 seconds for them to spawn in and other lighting stuff to load + special_lighting = "sunset" + debug_msg("sunset proc will be called on [src] in 3 seconds") + /atom/movable/screen/fullscreen icon = 'icons/mob/hud/screen1_full.dmi' @@ -227,6 +245,210 @@ color = "#000" blend_mode = BLEND_ADD + +/mob/proc/sunset(special_stage_time = null, special_call = FALSE) + + var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] + var/mob/lighting_mob = src + var/area/lighting_mob_area = get_area(lighting_mob) + + if(!lighting_mob.client) + return + + var/sun_color = "#000" /// used in the animation, set by sun stage and maptype + var/stage_time = 30 SECONDS /// how long each stage lasts, don't edit this if you want smooth movement, use special_stage_time instead + var/max_stages = 9 /// how many stages of sunset there are, starts at 0 + + var/startup_delay = 10 SECONDS /// how long the initial stage lasts for, doesn't factor in round start stuff + + var/sun_stage = clamp((floor((ROUND_TIME + stage_time - startup_delay)/stage_time)), 0, max_stages) /// the current stage of the sun, ticks up by 1 every stagetime after startup_delay + //uses formula (x + y - z)/(y) with x = round_time, y = stage_time, and z being startup_delay + + var/time_til_next_suncall = (sun_stage * stage_time) + startup_delay - ROUND_TIME /// how long until the next sunstage occurs + + if(special_call) + sun_stage = clamp((sun_stage + 1), 0, max_stages) //you gotta start at the next stage if you come in during the duration of one in order to prevent advantages, more stages make this look better + + if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD || ZTRAIT_IN_SPACE] || SSmapping.configs[GROUND_MAP].map_name == MAP_LV522_CHANCES_CLAIM) //if its cold or in space (or chances claim) + switch(sun_stage) //for sun stages, the more you have the better it looks when special called, I recommend choosing cinematic 4 colors then using a gradient tool to pick out the rest + if(0) + sun_color = "#a8c3cf" + special_stage_time = 0.5 SECONDS + time_til_next_suncall = startup_delay + if(1) + sun_color = "#718faf" + if(2) + sun_color = "#5e71a0" + if(3) + sun_color = "#414b70" + if(4) + sun_color = "#303e61" + if(5) + sun_color = "#292b48" + if(6) + sun_color = "#211b36" + if(7) + sun_color = "#1f1b33" + if(8) + sun_color = "#0c0a1b" + if(9) + sun_color = "#000" + else //a warm sunset for anywhere else + switch(sun_stage) + if(0) + sun_color = "#e3a979" + special_stage_time = 0.5 SECONDS + time_til_next_suncall = startup_delay + if(1) + sun_color = "#e29658" + if(2) + sun_color = "#da8b4a" + if(3) + sun_color = "#a9633c" + if(4) + sun_color = "#90422d" + if(5) + sun_color = "#68333a" + if(6) + sun_color = "#4d2b35" + if(7) + sun_color = "#231935" + if(8) + sun_color = "#050c27" + if(9) + sun_color = "#000" + + debug_msg("sunset has been called") + + + debug_msg("(sun_stage * stage_time) + startup_delay - ROUND_TIME = ([(sun_stage * stage_time)/10]) + [startup_delay/10] - [ROUND_TIME/10]") + debug_msg("*------*") + + debug_msg("roundtime = [ROUND_TIME/10] seconds, sun_stage = [sun_stage], ") + + if(sun_stage < max_stages) // calls for the next sunset + debug_msg("next suncall in [time_til_next_suncall/10] seconds") + addtimer(CALLBACK(lighting_mob, PROC_REF(sunset)), time_til_next_suncall, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + if(sun_stage == max_stages) // deactives special lighting when the sun hits #000 + addtimer(VARSET_CALLBACK(lighting_mob, special_lighting, null), time_til_next_suncall) + + if(CEILING_IS_PROTECTED(lighting_mob_area.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate + return + if(!is_ground_level(lighting_mob.z)) // dont animate if not groundlevel + return + + if(special_stage_time) + stage_time = special_stage_time + + animate(screen, color = sun_color, time = stage_time) + + +/mob/proc/sunrise(special_stage_time = null, special_call = FALSE) + + var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] + var/mob/lighting_mob = src + var/area/lighting_mob_area = get_area(lighting_mob) + + if(!lighting_mob.client || lighting_mob.special_lighting == "sunset") + return //failsafes + + if(!GLOB.sunrise_starting_time) //failsafe incase sunrise gets called without a sunrise time set + (GLOB.sunrise_starting_time = ROUND_TIME) + + var/sun_color = "#000" //saftey + var/stage_time = 60 SECONDS + var/max_stages = 3 + + var/current_time = ROUND_TIME + + var/sun_stage = clamp((floor((GLOB.sunrise_starting_time - current_time)/stage_time)), 0, max_stages) + + if(special_call) + sun_stage = clamp((sun_stage - 1), 0, max_stages) //you gotta start at the next stage if you come in during the duration of one in order to prevent advantages + + switch(sun_stage) + if(0) + special_stage_time = 0.5 SECONDS //DONT FORGET TO ADD MORE STAGES, 4 IS NOT ENOUGH + sun_color = "#000" //a special confirmation to make sure that sunrise starts on full black + if(1) + sun_color = "#111322" + if(2) + sun_color = "#4e333d" + if(3) + sun_color = "#bb542b" //it ends on very orange for cinematics + + lighting_mob.special_lighting = "sunrise" //sunrise is called a few different places instead of a single place so its easier to set it internally + + if(sun_stage == 0) //get ddone with the first one fast then instantly call back + addtimer(CALLBACK(lighting_mob, PROC_REF(sunset)), special_stage_time, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + else if(sun_stage < max_stages) + addtimer(CALLBACK(lighting_mob, PROC_REF(sunrise)), (((stage_time * sun_stage)) - GLOB.sunrise_starting_time), TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + if(sun_stage == max_stages) // deactives special lighting when the sun hits #bb542b + addtimer(VARSET_CALLBACK(lighting_mob, special_lighting, null), stage_time) + + if(CEILING_IS_PROTECTED(lighting_mob_area?.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate + return + if(!is_ground_level(lighting_mob.z)) // dont animate if not groundlevel + return + + if(special_stage_time) + stage_time = special_stage_time + + animate(screen, color = sun_color, time = stage_time) + + +/mob/proc/special_lighting_listeners() + SIGNAL_HANDLER + + var/mob/signaling_mob = src + if(signaling_mob.special_lighting && signaling_mob.client) + RegisterSignal(signaling_mob, COMSIG_MOVABLE_MOVED, PROC_REF(special_lighting_change)) + + + + +/mob/proc/special_lighting_change() + + var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] + var/mob/lighting_mob = src + + var/oldloc_z = oldloc.z + var/newloc_z = lighting_mob.z + + if(!oldloc_z == newloc_z) + if(!is_ground_level(newloc_z)) + animate(screen, color = "#000", time = 0.2 SECONDS, easing = QUAD_EASING | EASE_OUT) //its gotta be fast but not sudden + else if(is_ground_level(newloc_z)) + switch(lighting_mob.special_lighting) + if("sunset") + lighting_mob.sunset(0.2 SECONDS, TRUE) + if("sunrise") + lighting_mob.sunrise(0.2 SECONDS, TRUE) + + var/oldloc_area = get_area(oldloc) + var/newloc_area = get_area(lighting_mob) + + if(!oldloc_area == newloc_area) //dont gotta continue if its the same area + + var/oldloc_incave + var/newloc_incave + + if(CEILING_IS_PROTECTED(oldloc_area?.ceiling, CEILING_PROTECTION_TIER_2)) + oldloc_incave = TRUE + if(CEILING_IS_PROTECTED(newloc_area?.ceiling, CEILING_PROTECTION_TIER_2)) + newloc_incave = TRUE + + if(newloc_incave && !oldloc_incave) + animate(screen, color = "#000", time = 5 SECONDS, easing = QUAD_EASING | EASE_OUT) // 6 seconds no matter sunrise or sunset + else if(oldloc_incave && !newloc_incave) + switch(lighting_mob.special_lighting) + if("sunset") + lighting_mob.sunset(6 SECONDS, TRUE) + if("sunrise") + lighting_mob.sunrise(6 SECONDS, TRUE) + + + /atom/movable/screen/fullscreen/see_through_darkness icon_state = "nightvision" plane = LIGHTING_PLANE diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index 7277c74b2fd3..06a2434c2e96 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -83,6 +83,7 @@ plane_masters["[instance.plane]"] = instance if(owner.client) instance.backdrop(mymob) + mymob.initialize_special_lighting() for(var/mytype in subtypesof(/atom/movable/plane_master_controller)) var/atom/movable/plane_master_controller/controller_instance = new mytype(null,src) diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index a66403fc00f5..b18081a57d38 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -8,7 +8,7 @@ xeno_required_num = 1 //Need at least one xeno. monkey_amount = 5 corpses_to_spawn = 0 - flags_round_type = MODE_INFESTATION|MODE_FOG_ACTIVATED|MODE_NEW_SPAWN + flags_round_type = MODE_INFESTATION|MODE_FOG_ACTIVATED|MODE_NEW_SPAWN|MODE_SUNSET static_comms_amount = 1 var/round_status_flags @@ -312,6 +312,10 @@ else SSticker.roundend_check_paused = TRUE round_finished = MODE_INFESTATION_M_MAJOR //Humans destroyed the xenomorphs. + if(!GLOB.sunrise_starting_time) + (GLOB.sunrise_starting_time = ROUND_TIME) + for(var/mob/lighting_mob as anything in GLOB.player_list) + lighting_mob.sunrise() ares_conclude() addtimer(VARSET_CALLBACK(SSticker, roundend_check_paused, FALSE), MARINE_MAJOR_ROUND_END_DELAY) else if(!num_humans && !num_xenos) @@ -336,6 +340,10 @@ round_finished = MODE_INFESTATION_M_MAJOR else round_finished = MODE_INFESTATION_M_MINOR + if(!GLOB.sunrise_starting_time) + (GLOB.sunrise_starting_time = ROUND_TIME) + for(var/mob/lighting_mob as anything in GLOB.player_list) + lighting_mob.sunrise() /////////////////////////////// //Checks if the round is over// From 54a11703bc3a3383f4e6ac2f32ef8a0c4f4a5ef1 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sat, 8 Jun 2024 12:00:43 -0400 Subject: [PATCH 03/18] adds anti mob/new_player check --- code/_onclick/hud/hud.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index 06a2434c2e96..ec5379a5ea4e 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -83,7 +83,8 @@ plane_masters["[instance.plane]"] = instance if(owner.client) instance.backdrop(mymob) - mymob.initialize_special_lighting() + if(!istype(mymob, /mob/new_player)) //if they have a client but arent on the title screen + mymob.initialize_special_lighting() for(var/mytype in subtypesof(/atom/movable/plane_master_controller)) var/atom/movable/plane_master_controller/controller_instance = new mytype(null,src) From 8ed042855bea79429c9609af294648b8f36f3144 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sat, 8 Jun 2024 12:01:10 -0400 Subject: [PATCH 04/18] adjustment to the evo screech, gives following screeches minor variation --- code/__DEFINES/__game.dm | 1 + code/game/sound.dm | 5 ++++- code/modules/mob/living/carbon/xenomorph/hive_status.dm | 6 +++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/code/__DEFINES/__game.dm b/code/__DEFINES/__game.dm index 6617c5aafcee..c91115051122 100644 --- a/code/__DEFINES/__game.dm +++ b/code/__DEFINES/__game.dm @@ -244,6 +244,7 @@ /// Frequency stuff only works with 45kbps oggs. #define GET_RANDOM_FREQ rand(32000, 55000) +#define GET_RANDOM_FREQ_MINOR rand(40000, 50000) // Ceilings diff --git a/code/game/sound.dm b/code/game/sound.dm index f2b71d9a64c7..79c929823689 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -118,7 +118,10 @@ S.file = get_sfx(soundin) if(random_freq) - S.frequency = GET_RANDOM_FREQ + if(random_freq == GET_RANDOM_FREQ_MINOR) + S.frequency = GET_RANDOM_FREQ_MINOR + else + S.frequency = GET_RANDOM_FREQ S.volume = vol S.volume_cat = vol_cat S.channel = channel diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index 4c339cfbdfb4..a7d626d64d53 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -201,7 +201,7 @@ for(var/mob/groundmob as anything in GLOB.player_list) if(is_ground_level(groundmob.z) && !isxeno(groundmob)) if(initial_screech) - playsound_client(groundmob.client, 'sound/voice/alien_echoroar_1.ogg', groundmob.loc, 70, FALSE) //boosted a lot cause quiet audio + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_1.ogg', groundmob.loc, 65, FALSE) //boosted a lot cause quiet audio if(ishuman(groundmob)) to_chat(groundmob, SPAN_HIGHDANGER("You hear a distant screech and feel your insides freeze up... something new is with you in this colony.")) if(issynth(groundmob)) @@ -211,9 +211,9 @@ var/area/queen_area = get_area(living_xeno_queen) if(!initial_screech) if(CEILING_IS_PROTECTED(queen_area?.ceiling, CEILING_PROTECTION_TIER_3) || !queen_area) - playsound_client(groundmob.client, 'sound/voice/alien_echoroar_2.ogg', groundmob.loc, 70, FALSE) //if queen is underground or there is no queen + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_2.ogg', groundmob.loc, 70, GET_RANDOM_FREQ_MINOR) //if queen is underground or there is no queen else - playsound_client(groundmob.client, 'sound/voice/alien_echoroar_3.ogg', groundmob.loc, 80, FALSE) //if queen is outside + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_3.ogg', groundmob.loc, 75, FALSE) //if queen is outside // Adds a xeno to this hive /datum/hive_status/proc/add_xeno(mob/living/carbon/xenomorph/X) From 2057bae7368d871e889fd6caf4651689c349f057 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sat, 8 Jun 2024 16:00:06 -0400 Subject: [PATCH 05/18] tones minor variation --- code/__DEFINES/__game.dm | 2 +- code/game/sound.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/__game.dm b/code/__DEFINES/__game.dm index c91115051122..138c18d6587a 100644 --- a/code/__DEFINES/__game.dm +++ b/code/__DEFINES/__game.dm @@ -244,7 +244,7 @@ /// Frequency stuff only works with 45kbps oggs. #define GET_RANDOM_FREQ rand(32000, 55000) -#define GET_RANDOM_FREQ_MINOR rand(40000, 50000) +#define GET_RANDOM_FREQ_MINOR rand(42000, 48000) // Ceilings diff --git a/code/game/sound.dm b/code/game/sound.dm index 79c929823689..1c43e22ad26b 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -118,7 +118,7 @@ S.file = get_sfx(soundin) if(random_freq) - if(random_freq == GET_RANDOM_FREQ_MINOR) + if(random_freq == "minor") S.frequency = GET_RANDOM_FREQ_MINOR else S.frequency = GET_RANDOM_FREQ From 9e73215db79a421922c38b418ecfb16625d2c093 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 02:05:12 -0400 Subject: [PATCH 06/18] another minor audio adjustment --- code/modules/mob/living/carbon/xenomorph/hive_status.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index a7d626d64d53..5fc2b9f42219 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -211,7 +211,7 @@ var/area/queen_area = get_area(living_xeno_queen) if(!initial_screech) if(CEILING_IS_PROTECTED(queen_area?.ceiling, CEILING_PROTECTION_TIER_3) || !queen_area) - playsound_client(groundmob.client, 'sound/voice/alien_echoroar_2.ogg', groundmob.loc, 70, GET_RANDOM_FREQ_MINOR) //if queen is underground or there is no queen + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_2.ogg', groundmob.loc, 70, "minor") //if queen is underground or there is no queen else playsound_client(groundmob.client, 'sound/voice/alien_echoroar_3.ogg', groundmob.loc, 75, FALSE) //if queen is outside From 83d2be8374039636b07b027e16e3deb8a2e34727 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 02:05:34 -0400 Subject: [PATCH 07/18] new comsig for area changes --- .../dcs/signals/atom/signals_movable.dm | 3 +++ code/game/area/areas.dm | 21 +++++++++++++------ 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/code/__DEFINES/dcs/signals/atom/signals_movable.dm b/code/__DEFINES/dcs/signals/atom/signals_movable.dm index ba889d0b5212..910f3844d546 100644 --- a/code/__DEFINES/dcs/signals/atom/signals_movable.dm +++ b/code/__DEFINES/dcs/signals/atom/signals_movable.dm @@ -1,6 +1,9 @@ //from base of atom/movable/onTransitZ(): (old_z, new_z) #define COMSIG_MOVABLE_Z_CHANGED "movable_ztransit" +//from base of /area/Entered(): (/atom, old_area, new_area) +#define COMSIG_MOVABLE_ENTERED_AREA "movable_entered_area" + /// From /atom/movable/proc/launch_towards #define COMSIG_MOVABLE_PRE_THROW "movable_pre_throw" #define COMPONENT_CANCEL_THROW (1<<0) diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index be7037295497..b7a1d8eba5cd 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -351,15 +351,24 @@ if(POWER_CHANNEL_ONEOFF) used_oneoff += amount -/area/Entered(A,atom/OldLoc) - if(ismob(A)) +/area/Entered(A, atom/OldLoc) + if(ismob(A) && !isnewplayer(A)) if(!OldLoc) return - var/mob/M = A - var/area/old_area = get_area(OldLoc) - if(old_area == src) + var/mob/area_entered_mod = A + + var/area/new_area = get_area(area_entered_mod) + var/area/old_area = null + if(!isarea(OldLoc)) + old_area = get_area(OldLoc) + else + old_area = OldLoc + + if(old_area == src || !old_area) return - M?.client?.soundOutput?.update_ambience(src, null, TRUE) + + SEND_SIGNAL(area_entered_mod, COMSIG_MOVABLE_ENTERED_AREA, old_area, new_area) + area_entered_mod?.client?.soundOutput?.update_ambience(src, null, TRUE) else if(istype(A, /obj/structure/machinery)) add_machine(A) From 6a39424d7c2007bdb837a7df46e63500deea4ab4 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 02:06:51 -0400 Subject: [PATCH 08/18] major updates to sunset, sunrise is almost done --- code/_onclick/hud/fullscreen.dm | 232 ++++++++++++--------- code/_onclick/hud/hud.dm | 2 +- code/modules/mob/dead/observer/observer.dm | 4 +- 3 files changed, 139 insertions(+), 99 deletions(-) diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 9d1ba27a5457..1bbe38adc7d6 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -3,8 +3,10 @@ /mob var/list/fullscreens = list() - ///If a type of special lighting such as a sunset or lightning is currently active, dont have more than one of these without a special fullscreen framework + ///The type of special lighting such as a sunset or lightning is currently active, dont have more than one of these without a special fullscreen framework var/special_lighting = null + ///A var to check if there is currently an active special lighting timer already set in order to prevent dupes + var/special_lighting_active_timer = FALSE /mob/proc/overlay_fullscreen(category, type, severity) var/atom/movable/screen/fullscreen/screen = fullscreens[category] @@ -69,15 +71,23 @@ if(special_lighting) return SSticker.OnRoundstart(CALLBACK(src, PROC_REF(initialize_special_lighting))) - debug_msg("sunset call has been called on [src] but delayed to roundstart") - special_lighting = "sunset" // technically setting it early, but it shouldnt effect anything + special_lighting = "pre_round" // do not let a special_lighting get called before roundstart return if(SSticker.mode.flags_round_type & MODE_SUNSET) - if(fullscreens.len == 0) + if(!fullscreens["lighting_backdrop"] || special_lighting == "sunset") return - addtimer(CALLBACK(src, PROC_REF(sunset)), 3 SECONDS) // 3 seconds for them to spawn in and other lighting stuff to load special_lighting = "sunset" - debug_msg("sunset proc will be called on [src] in 3 seconds") + if(ROUND_TIME < 4 SECONDS) //if you're in before full setup, dont let special lightings get called prior, it gets messy + addtimer(CALLBACK(src, PROC_REF(sunset)), 3 SECONDS) + addtimer(CALLBACK(src, PROC_REF(special_lighting_register_signals)), 3 SECONDS) + else if(ROUND_TIME < 280 SECONDS) + sunset(0.1, TRUE) //if you're in otherwise + special_lighting_register_signals() + return + if(GLOB.sunrise_starting_time) + sunrise(0.1, TRUE) + debug_msg("sunrise proc got called be called on [src] instantly cause sunrise_starting_time was set") + special_lighting_register_signals() //sunrise is permanent, you wont need to unregister /atom/movable/screen/fullscreen @@ -246,15 +256,12 @@ blend_mode = BLEND_ADD -/mob/proc/sunset(special_stage_time = null, special_call = FALSE) +/mob/proc/sunset(special_stage_time = null, special_call = FALSE, deactivate_special_lighting_timer = FALSE) var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] var/mob/lighting_mob = src var/area/lighting_mob_area = get_area(lighting_mob) - if(!lighting_mob.client) - return - var/sun_color = "#000" /// used in the animation, set by sun stage and maptype var/stage_time = 30 SECONDS /// how long each stage lasts, don't edit this if you want smooth movement, use special_stage_time instead var/max_stages = 9 /// how many stages of sunset there are, starts at 0 @@ -266,8 +273,13 @@ var/time_til_next_suncall = (sun_stage * stage_time) + startup_delay - ROUND_TIME /// how long until the next sunstage occurs - if(special_call) + if(deactivate_special_lighting_timer) + lighting_mob.special_lighting_active_timer = FALSE + + if(special_call && sun_stage != 0) sun_stage = clamp((sun_stage + 1), 0, max_stages) //you gotta start at the next stage if you come in during the duration of one in order to prevent advantages, more stages make this look better + if(time_til_next_suncall < special_stage_time) + time_til_next_suncall = special_stage_time + special_stage_time //delays main anims until the special call is done if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD || ZTRAIT_IN_SPACE] || SSmapping.configs[GROUND_MAP].map_name == MAP_LV522_CHANCES_CLAIM) //if its cold or in space (or chances claim) switch(sun_stage) //for sun stages, the more you have the better it looks when special called, I recommend choosing cinematic 4 colors then using a gradient tool to pick out the rest @@ -276,15 +288,15 @@ special_stage_time = 0.5 SECONDS time_til_next_suncall = startup_delay if(1) - sun_color = "#718faf" + sun_color = "#7a9abb" if(2) - sun_color = "#5e71a0" + sun_color = "#6679a8" if(3) - sun_color = "#414b70" + sun_color = "#516a8b" if(4) - sun_color = "#303e61" + sun_color = "#38486e" if(5) - sun_color = "#292b48" + sun_color = "#2c2f4d" if(6) sun_color = "#211b36" if(7) @@ -318,23 +330,16 @@ if(9) sun_color = "#000" - debug_msg("sunset has been called") - + if(!lighting_mob.special_lighting_active_timer) + if(sun_stage < max_stages) // calls for the next sunset + addtimer(CALLBACK(lighting_mob, PROC_REF(sunset), null, FALSE, TRUE), time_til_next_suncall, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + if(sun_stage == max_stages) // deactives special lighting when the sun hits #000 + addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_unregister_signals)), time_til_next_suncall, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + lighting_mob.special_lighting_active_timer = TRUE - debug_msg("(sun_stage * stage_time) + startup_delay - ROUND_TIME = ([(sun_stage * stage_time)/10]) + [startup_delay/10] - [ROUND_TIME/10]") - debug_msg("*------*") - - debug_msg("roundtime = [ROUND_TIME/10] seconds, sun_stage = [sun_stage], ") - - if(sun_stage < max_stages) // calls for the next sunset - debug_msg("next suncall in [time_til_next_suncall/10] seconds") - addtimer(CALLBACK(lighting_mob, PROC_REF(sunset)), time_til_next_suncall, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) - if(sun_stage == max_stages) // deactives special lighting when the sun hits #000 - addtimer(VARSET_CALLBACK(lighting_mob, special_lighting, null), time_til_next_suncall) - - if(CEILING_IS_PROTECTED(lighting_mob_area.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate + if(CEILING_IS_PROTECTED(lighting_mob_area?.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate, this is needed in combo with the area check return - if(!is_ground_level(lighting_mob.z)) // dont animate if not groundlevel + if(!is_ground_level(lighting_mob.z) && special_call != "z_change") // dont animate if not groundlevel return if(special_stage_time) @@ -343,110 +348,145 @@ animate(screen, color = sun_color, time = stage_time) -/mob/proc/sunrise(special_stage_time = null, special_call = FALSE) +/mob/proc/sunrise(special_stage_time = null, special_call = FALSE, deactivate_special_lighting_timer = FALSE) var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] var/mob/lighting_mob = src var/area/lighting_mob_area = get_area(lighting_mob) - if(!lighting_mob.client || lighting_mob.special_lighting == "sunset") - return //failsafes + if(lighting_mob.special_lighting == "sunset") + return //failsafe if(!GLOB.sunrise_starting_time) //failsafe incase sunrise gets called without a sunrise time set (GLOB.sunrise_starting_time = ROUND_TIME) - var/sun_color = "#000" //saftey - var/stage_time = 60 SECONDS - var/max_stages = 3 + debug_msg("GLOB.sunrise_starting_time = [GLOB.sunrise_starting_time]") + + var/sun_color = "#000" /// used in the animation + var/stage_time = 30 SECONDS /// how long each stage lasts + var/max_stages = 6 /// how many stages of sunset there are, starts at 0 - var/current_time = ROUND_TIME + var/sun_stage = clamp((floor((ROUND_TIME - GLOB.sunrise_starting_time)/stage_time)), 0, max_stages) - var/sun_stage = clamp((floor((GLOB.sunrise_starting_time - current_time)/stage_time)), 0, max_stages) + var/time_til_next_suncall = ((1 + sun_stage) * stage_time) + GLOB.sunrise_starting_time - ROUND_TIME - if(special_call) +//80 seconds, sunset at 13, next stage at 103 | (80 - 13 = 67/30 = 2) | 3 * 30 = 90 + 13 = 103 + + if(deactivate_special_lighting_timer) + lighting_mob.special_lighting_active_timer = FALSE + + if(special_call && sun_stage != 0) sun_stage = clamp((sun_stage - 1), 0, max_stages) //you gotta start at the next stage if you come in during the duration of one in order to prevent advantages + if(time_til_next_suncall < special_stage_time) + time_til_next_suncall = special_stage_time + special_stage_time //delays main anims until the special call is done switch(sun_stage) if(0) - special_stage_time = 0.5 SECONDS //DONT FORGET TO ADD MORE STAGES, 4 IS NOT ENOUGH - sun_color = "#000" //a special confirmation to make sure that sunrise starts on full black + sun_color = "#000" + special_stage_time = 0.5 SECONDS + time_til_next_suncall = 1 SECONDS if(1) - sun_color = "#111322" + sun_color = "#040712" if(2) - sun_color = "#4e333d" + sun_color = "#111322" if(3) - sun_color = "#bb542b" //it ends on very orange for cinematics - - lighting_mob.special_lighting = "sunrise" //sunrise is called a few different places instead of a single place so its easier to set it internally - - if(sun_stage == 0) //get ddone with the first one fast then instantly call back - addtimer(CALLBACK(lighting_mob, PROC_REF(sunset)), special_stage_time, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) - else if(sun_stage < max_stages) - addtimer(CALLBACK(lighting_mob, PROC_REF(sunrise)), (((stage_time * sun_stage)) - GLOB.sunrise_starting_time), TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) - if(sun_stage == max_stages) // deactives special lighting when the sun hits #bb542b - addtimer(VARSET_CALLBACK(lighting_mob, special_lighting, null), stage_time) - - if(CEILING_IS_PROTECTED(lighting_mob_area?.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate + sun_color = "#422535" + if(4) + sun_color = "#6a2e37" + if(5) + sun_color = "#a73d3b" + if(6) + sun_color = "#bd502a" //it ends on very orange for cinematics + + lighting_mob.special_lighting = "sunrise" + + if(!lighting_mob.special_lighting_active_timer) + if(sun_stage < max_stages) + addtimer(CALLBACK(lighting_mob, PROC_REF(sunrise), null, FALSE, TRUE), time_til_next_suncall, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + lighting_mob.special_lighting_active_timer = TRUE + if(sun_stage == max_stages) // deactives special lighting when the sun hits #bb542b + addtimer(VARSET_CALLBACK(lighting_mob, special_lighting_active_timer, FALSE), time_til_next_suncall) + + if(CEILING_IS_PROTECTED(lighting_mob_area?.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate, this is needed in combo with the area check return - if(!is_ground_level(lighting_mob.z)) // dont animate if not groundlevel + if(!is_ground_level(lighting_mob.z) && special_call != "z_change") // dont animate if not groundlevel return if(special_stage_time) stage_time = special_stage_time + debug_msg("sunrise animating for [src] to sunstage = [sun_stage], next call in [time_til_next_suncall/10] seconds.") + animate(screen, color = sun_color, time = stage_time) -/mob/proc/special_lighting_listeners() - SIGNAL_HANDLER +/mob/proc/special_lighting_register_signals() var/mob/signaling_mob = src - if(signaling_mob.special_lighting && signaling_mob.client) - RegisterSignal(signaling_mob, COMSIG_MOVABLE_MOVED, PROC_REF(special_lighting_change)) + RegisterSignal(signaling_mob, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(special_lighting_z_change), TRUE) + RegisterSignal(signaling_mob, COMSIG_MOVABLE_ENTERED_AREA, PROC_REF(special_lighting_area_change), TRUE) + + +/mob/proc/special_lighting_unregister_signals() + + var/mob/signaling_mob = src + signaling_mob.special_lighting = null //clears special lighting + UnregisterSignal(signaling_mob, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(special_lighting_z_change)) + UnregisterSignal(signaling_mob, COMSIG_MOVABLE_ENTERED_AREA, PROC_REF(special_lighting_area_change)) -/mob/proc/special_lighting_change() + +/mob/proc/special_lighting_z_change(atom/source, old_z, new_z) + SIGNAL_HANDLER var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] var/mob/lighting_mob = src + var/special_call = "z_change" + + if(!lighting_mob.special_lighting || lighting_mob.special_lighting == "pre_round") + return - var/oldloc_z = oldloc.z - var/newloc_z = lighting_mob.z - - if(!oldloc_z == newloc_z) - if(!is_ground_level(newloc_z)) - animate(screen, color = "#000", time = 0.2 SECONDS, easing = QUAD_EASING | EASE_OUT) //its gotta be fast but not sudden - else if(is_ground_level(newloc_z)) - switch(lighting_mob.special_lighting) - if("sunset") - lighting_mob.sunset(0.2 SECONDS, TRUE) - if("sunrise") - lighting_mob.sunrise(0.2 SECONDS, TRUE) - - var/oldloc_area = get_area(oldloc) - var/newloc_area = get_area(lighting_mob) - - if(!oldloc_area == newloc_area) //dont gotta continue if its the same area - - var/oldloc_incave - var/newloc_incave - - if(CEILING_IS_PROTECTED(oldloc_area?.ceiling, CEILING_PROTECTION_TIER_2)) - oldloc_incave = TRUE - if(CEILING_IS_PROTECTED(newloc_area?.ceiling, CEILING_PROTECTION_TIER_2)) - newloc_incave = TRUE - - if(newloc_incave && !oldloc_incave) - animate(screen, color = "#000", time = 5 SECONDS, easing = QUAD_EASING | EASE_OUT) // 6 seconds no matter sunrise or sunset - else if(oldloc_incave && !newloc_incave) - switch(lighting_mob.special_lighting) - if("sunset") - lighting_mob.sunset(6 SECONDS, TRUE) - if("sunrise") - lighting_mob.sunrise(6 SECONDS, TRUE) + if(is_ground_level(new_z)) + switch(lighting_mob.special_lighting) + if("sunset") + lighting_mob.sunset(0.1 SECONDS, special_call) + if("sunrise") + lighting_mob.sunrise(0.1 SECONDS, special_call) + if(!is_ground_level(new_z)) + animate(screen, color = "#000", time = 0.1 SECONDS) //its gotta be fast but not sudden + + +/mob/proc/special_lighting_area_change(atom/source, old_area, new_area) + SIGNAL_HANDLER + + var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] + var/mob/lighting_mob = src + var/special_call = "area_change" + + if(!lighting_mob.special_lighting || lighting_mob.special_lighting == "pre_sunset") + return + var/area/mob_old_area = old_area + var/area/mob_new_area = new_area + + var/oldloc_incave = null + var/newloc_incave = null + + if(CEILING_IS_PROTECTED(mob_old_area?.ceiling, CEILING_PROTECTION_TIER_2)) + oldloc_incave = TRUE + if(CEILING_IS_PROTECTED(mob_new_area?.ceiling, CEILING_PROTECTION_TIER_2)) + newloc_incave = TRUE + + if(newloc_incave && !oldloc_incave) //handles both null old loc and false oldloc + animate(screen, color = "#000", time = 4 SECONDS, easing = QUAD_EASING | EASE_OUT) + else if(oldloc_incave && !newloc_incave) + switch(lighting_mob.special_lighting) + if("sunset") + lighting_mob.sunset(4 SECONDS, special_call) + if("sunrise") + lighting_mob.sunrise(4 SECONDS, special_call) /atom/movable/screen/fullscreen/see_through_darkness diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index ec5379a5ea4e..67cdf68d1c92 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -83,7 +83,7 @@ plane_masters["[instance.plane]"] = instance if(owner.client) instance.backdrop(mymob) - if(!istype(mymob, /mob/new_player)) //if they have a client but arent on the title screen + if(!isnewplayer(mymob) && !mymob.special_lighting) //if they have a client but arent on the title screen mymob.initialize_special_lighting() for(var/mytype in subtypesof(/atom/movable/plane_master_controller)) diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index d13d5aa94053..47630a3948a4 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -571,10 +571,10 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(!new_turf) return - var/area/new_area = new_turf.loc + var/area/new_area = get_area(new_turf) if((new_area != last_area) && new_area) - new_area.Entered(src) + new_area.Entered(src, last_area) if(last_area) last_area.Exited(src) From 03672811e58e3a560161d84d604b2b1f237f6a9d Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 02:12:41 -0400 Subject: [PATCH 09/18] fixing typo before sleep --- code/_onclick/hud/fullscreen.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 1bbe38adc7d6..ef6e3e8b356c 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -465,7 +465,7 @@ var/mob/lighting_mob = src var/special_call = "area_change" - if(!lighting_mob.special_lighting || lighting_mob.special_lighting == "pre_sunset") + if(!lighting_mob.special_lighting || lighting_mob.special_lighting == "pre_round") return var/area/mob_old_area = old_area From 93344a512251c572e0ed64cdedb8aeeecc5c2dbc Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 16:32:18 -0400 Subject: [PATCH 10/18] Swiftly significantly simplifies special_lighting system --- code/_onclick/hud/fullscreen.dm | 280 +++++++++--------- .../colonialmarines/colonialmarines.dm | 6 +- 2 files changed, 152 insertions(+), 134 deletions(-) diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index ef6e3e8b356c..c4190f936842 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -78,14 +78,17 @@ return special_lighting = "sunset" if(ROUND_TIME < 4 SECONDS) //if you're in before full setup, dont let special lightings get called prior, it gets messy - addtimer(CALLBACK(src, PROC_REF(sunset)), 3 SECONDS) + addtimer(CALLBACK(src, PROC_REF(special_lighting_animate), "sunset", 30 SECONDS, 9, 10 SECONDS, 0, null, 1, FALSE, TRUE, TRUE), 3 SECONDS) addtimer(CALLBACK(src, PROC_REF(special_lighting_register_signals)), 3 SECONDS) else if(ROUND_TIME < 280 SECONDS) - sunset(0.1, TRUE) //if you're in otherwise + special_lighting_animate("sunset", 30 SECONDS, 9, 10 SECONDS, 0, 0.1 SECONDS, 1, TRUE, TRUE, TRUE) special_lighting_register_signals() return if(GLOB.sunrise_starting_time) - sunrise(0.1, TRUE) + if(!fullscreens["lighting_backdrop"] || special_lighting == "sunrise") + return + special_lighting = "sunrise" + special_lighting_animate("sunrise", 30 SECONDS, 6, 0, 0.1 SECONDS, -1, TRUE, TRUE, FALSE) debug_msg("sunrise proc got called be called on [src] instantly cause sunrise_starting_time was set") special_lighting_register_signals() //sunrise is permanent, you wont need to unregister @@ -256,168 +259,148 @@ blend_mode = BLEND_ADD -/mob/proc/sunset(special_stage_time = null, special_call = FALSE, deactivate_special_lighting_timer = FALSE) +/mob/proc/special_lighting_animate(p_special_lighting_type = null, p_stage_time, p_max_stages, p_startup_delay, p_special_start_time, p_special_stage_time = null, p_special_tick_dir, p_special_call = FALSE, p_create_new_lighting_timer = FALSE, p_lighting_deactivates = TRUE) var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] var/mob/lighting_mob = src var/area/lighting_mob_area = get_area(lighting_mob) - var/sun_color = "#000" /// used in the animation, set by sun stage and maptype - var/stage_time = 30 SECONDS /// how long each stage lasts, don't edit this if you want smooth movement, use special_stage_time instead - var/max_stages = 9 /// how many stages of sunset there are, starts at 0 + if(p_special_lighting_type != lighting_mob.special_lighting) + return + + var/lighting_color = "#000" /// used in the animation, set by the special_lighting_type + + var/stage_time = p_stage_time /// how long each stage lasts, don't edit this if you want smooth movement, use special_stage_time instead + var/max_stages = p_max_stages /// how many stages of special lighting there are, starts at 0 + + var/startup_delay = p_startup_delay /// how long the initial stage lasts for, doesn't factor in round start stuff + var/special_start_time = p_special_start_time /// when the special_lighting starts (use 0 if roundstart) - var/startup_delay = 10 SECONDS /// how long the initial stage lasts for, doesn't factor in round start stuff + var/special_stage_time = p_special_stage_time /// changes animation time without changing stage time, used by special calls and init stages + var/special_call = p_special_call /// the type of special call + var/special_tick_dir = p_special_tick_dir /// If it gets a special call, if it ticks up or down in order to prevent advantages - var/sun_stage = clamp((floor((ROUND_TIME + stage_time - startup_delay)/stage_time)), 0, max_stages) /// the current stage of the sun, ticks up by 1 every stagetime after startup_delay - //uses formula (x + y - z)/(y) with x = round_time, y = stage_time, and z being startup_delay + var/create_new_lighting_timer = p_create_new_lighting_timer /// used to prevent timer dupes, keep this as + var/lighting_deactivates = p_lighting_deactivates /// If the lighting deactivates - var/time_til_next_suncall = (sun_stage * stage_time) + startup_delay - ROUND_TIME /// how long until the next sunstage occurs - if(deactivate_special_lighting_timer) + var/lighting_stage = clamp((floor((ROUND_TIME + stage_time - special_start_time - startup_delay)/stage_time)), 0, max_stages) /// the current stage of the lighting, ticks up by 1 every stagetime after startup_delay + start_time + //uses formula (x + y - w - z)/(y) with x = round_time, y = stage_time, w = special_start_time, and z being startup_delay + + var/time_til_next_lighting_call = (lighting_stage * stage_time) + startup_delay - special_start_time - ROUND_TIME /// how long until the next sunstage occurs + + if(special_call && lighting_stage != 0) // controls stuff related to special calls, prevents people from getting unfair advantages by getting stages reset, unnecessary for short anims + lighting_stage = clamp((lighting_stage + special_tick_dir), 0, max_stages) + if(time_til_next_lighting_call < special_stage_time) + time_til_next_lighting_call = time_til_next_lighting_call + special_stage_time //delays main anims until the special call anim is done + + if(lighting_mob.special_lighting == "sunset") + lighting_color = lighting_mob.special_lighting_sunset(lighting_stage) + if(lighting_mob.special_lighting == "sunrise") + lighting_color = lighting_mob.special_lighting_sunrise(lighting_stage) + + if(lighting_stage == 0) //there aren't any cases you won't want these coming up fast + special_stage_time = 0.5 SECONDS + time_til_next_lighting_call = startup_delay + + if(create_new_lighting_timer) // if create_new_lighting_timer = TRUE, a new timer gets set lighting_mob.special_lighting_active_timer = FALSE - if(special_call && sun_stage != 0) - sun_stage = clamp((sun_stage + 1), 0, max_stages) //you gotta start at the next stage if you come in during the duration of one in order to prevent advantages, more stages make this look better - if(time_til_next_suncall < special_stage_time) - time_til_next_suncall = special_stage_time + special_stage_time //delays main anims until the special call is done + if(!lighting_mob.special_lighting_active_timer) + if(lighting_stage < max_stages) + addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_animate), special_lighting, stage_time, max_stages, startup_delay, special_start_time, null, special_tick_dir, FALSE, TRUE, TRUE), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + lighting_mob.special_lighting_active_timer = TRUE + if(lighting_stage == max_stages && lighting_deactivates) // deactives special lighting when the sun hits #000 + addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_unregister_signals)), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + + if(CEILING_IS_PROTECTED(lighting_mob_area?.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate, this is needed in combo with the special area check + return + if(!is_ground_level(lighting_mob.z) && special_call != "z_change") // dont animate if not groundlevel + return + + if(special_stage_time) + stage_time = special_stage_time + + animate(screen, color = lighting_color, time = stage_time) + - if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD || ZTRAIT_IN_SPACE] || SSmapping.configs[GROUND_MAP].map_name == MAP_LV522_CHANCES_CLAIM) //if its cold or in space (or chances claim) - switch(sun_stage) //for sun stages, the more you have the better it looks when special called, I recommend choosing cinematic 4 colors then using a gradient tool to pick out the rest +/mob/proc/special_lighting_sunset(lighting_stage) + + var/lighting_color = "#000" /// used in the animation, set by the special_lighting_type + + //if its cold or in space (or chances claim) + if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD || ZTRAIT_IN_SPACE] || SSmapping.configs[GROUND_MAP].map_name == MAP_LV522_CHANCES_CLAIM) + switch(lighting_stage) //for sun stages, the more you have the better it looks when special called, I recommend choosing cinematic 4 colors then using a gradient tool to pick out the rest if(0) - sun_color = "#a8c3cf" - special_stage_time = 0.5 SECONDS - time_til_next_suncall = startup_delay + lighting_color = "#a8c3cf" if(1) - sun_color = "#7a9abb" + lighting_color = "#7a9abb" if(2) - sun_color = "#6679a8" + lighting_color = "#6679a8" if(3) - sun_color = "#516a8b" + lighting_color = "#516a8b" if(4) - sun_color = "#38486e" + lighting_color = "#38486e" if(5) - sun_color = "#2c2f4d" + lighting_color = "#2c2f4d" if(6) - sun_color = "#211b36" + lighting_color = "#211b36" if(7) - sun_color = "#1f1b33" + lighting_color = "#1f1b33" if(8) - sun_color = "#0c0a1b" + lighting_color = "#0c0a1b" if(9) - sun_color = "#000" - else //a warm sunset for anywhere else - switch(sun_stage) + lighting_color = "#000" + else //the default, a very warm sunset + switch(lighting_stage) if(0) - sun_color = "#e3a979" - special_stage_time = 0.5 SECONDS - time_til_next_suncall = startup_delay + lighting_color = "#e3a979" if(1) - sun_color = "#e29658" + lighting_color = "#e29658" if(2) - sun_color = "#da8b4a" + lighting_color = "#da8b4a" if(3) - sun_color = "#a9633c" + lighting_color = "#a9633c" if(4) - sun_color = "#90422d" + lighting_color = "#90422d" if(5) - sun_color = "#68333a" + lighting_color = "#68333a" if(6) - sun_color = "#4d2b35" + lighting_color = "#4d2b35" if(7) - sun_color = "#231935" + lighting_color = "#231935" if(8) - sun_color = "#050c27" + lighting_color = "#050c27" if(9) - sun_color = "#000" + lighting_color = "#000" - if(!lighting_mob.special_lighting_active_timer) - if(sun_stage < max_stages) // calls for the next sunset - addtimer(CALLBACK(lighting_mob, PROC_REF(sunset), null, FALSE, TRUE), time_til_next_suncall, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) - if(sun_stage == max_stages) // deactives special lighting when the sun hits #000 - addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_unregister_signals)), time_til_next_suncall, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) - lighting_mob.special_lighting_active_timer = TRUE + return lighting_color - if(CEILING_IS_PROTECTED(lighting_mob_area?.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate, this is needed in combo with the area check - return - if(!is_ground_level(lighting_mob.z) && special_call != "z_change") // dont animate if not groundlevel - return - - if(special_stage_time) - stage_time = special_stage_time - - animate(screen, color = sun_color, time = stage_time) +/mob/proc/special_lighting_sunrise(lighting_stage) -/mob/proc/sunrise(special_stage_time = null, special_call = FALSE, deactivate_special_lighting_timer = FALSE) - - var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] - var/mob/lighting_mob = src - var/area/lighting_mob_area = get_area(lighting_mob) - - if(lighting_mob.special_lighting == "sunset") - return //failsafe + var/lighting_color = "#000" /// used in the animation, set by the special_lighting_type if(!GLOB.sunrise_starting_time) //failsafe incase sunrise gets called without a sunrise time set (GLOB.sunrise_starting_time = ROUND_TIME) - debug_msg("GLOB.sunrise_starting_time = [GLOB.sunrise_starting_time]") - - var/sun_color = "#000" /// used in the animation - var/stage_time = 30 SECONDS /// how long each stage lasts - var/max_stages = 6 /// how many stages of sunset there are, starts at 0 - - var/sun_stage = clamp((floor((ROUND_TIME - GLOB.sunrise_starting_time)/stage_time)), 0, max_stages) - - var/time_til_next_suncall = ((1 + sun_stage) * stage_time) + GLOB.sunrise_starting_time - ROUND_TIME - -//80 seconds, sunset at 13, next stage at 103 | (80 - 13 = 67/30 = 2) | 3 * 30 = 90 + 13 = 103 - - if(deactivate_special_lighting_timer) - lighting_mob.special_lighting_active_timer = FALSE - - if(special_call && sun_stage != 0) - sun_stage = clamp((sun_stage - 1), 0, max_stages) //you gotta start at the next stage if you come in during the duration of one in order to prevent advantages - if(time_til_next_suncall < special_stage_time) - time_til_next_suncall = special_stage_time + special_stage_time //delays main anims until the special call is done - - switch(sun_stage) + switch(lighting_stage) if(0) - sun_color = "#000" - special_stage_time = 0.5 SECONDS - time_til_next_suncall = 1 SECONDS + lighting_color = "#000" if(1) - sun_color = "#040712" + lighting_color = "#040712" if(2) - sun_color = "#111322" + lighting_color = "#111322" if(3) - sun_color = "#422535" + lighting_color = "#422535" if(4) - sun_color = "#6a2e37" + lighting_color = "#6a2e37" if(5) - sun_color = "#a73d3b" + lighting_color = "#a73d3b" if(6) - sun_color = "#bd502a" //it ends on very orange for cinematics + lighting_color = "#bd502a" //it ends on very orange for cinematics - lighting_mob.special_lighting = "sunrise" - - if(!lighting_mob.special_lighting_active_timer) - if(sun_stage < max_stages) - addtimer(CALLBACK(lighting_mob, PROC_REF(sunrise), null, FALSE, TRUE), time_til_next_suncall, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) - lighting_mob.special_lighting_active_timer = TRUE - if(sun_stage == max_stages) // deactives special lighting when the sun hits #bb542b - addtimer(VARSET_CALLBACK(lighting_mob, special_lighting_active_timer, FALSE), time_til_next_suncall) - - if(CEILING_IS_PROTECTED(lighting_mob_area?.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate, this is needed in combo with the area check - return - if(!is_ground_level(lighting_mob.z) && special_call != "z_change") // dont animate if not groundlevel - return - - if(special_stage_time) - stage_time = special_stage_time - - debug_msg("sunrise animating for [src] to sunstage = [sun_stage], next call in [time_til_next_suncall/10] seconds.") - - animate(screen, color = sun_color, time = stage_time) + return lighting_color /mob/proc/special_lighting_register_signals() @@ -442,32 +425,69 @@ SIGNAL_HANDLER var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] - var/mob/lighting_mob = src + + var/stage_time = 30 SECONDS + var/max_stages = null + var/startup_delay = 0 + var/special_start_time = 0 + var/special_stage_time = 0.1 SECONDS + var/special_tick_dir = 0 var/special_call = "z_change" + var/create_new_lighting_timer = FALSE + var/lighting_deactivates = TRUE - if(!lighting_mob.special_lighting || lighting_mob.special_lighting == "pre_round") + if(!special_lighting || special_lighting == "pre_round") return + switch(special_lighting) //figure out a way of handling this better if possible + if("sunset") + max_stages = 9 + startup_delay = 10 SECONDS + special_tick_dir = 1 + if("sunrise") + max_stages = 6 + special_start_time = GLOB.sunrise_starting_time + lighting_deactivates = FALSE + special_tick_dir = -1 + if(is_ground_level(new_z)) - switch(lighting_mob.special_lighting) - if("sunset") - lighting_mob.sunset(0.1 SECONDS, special_call) - if("sunrise") - lighting_mob.sunrise(0.1 SECONDS, special_call) + special_lighting_animate(special_lighting, stage_time, max_stages, startup_delay, special_start_time, special_stage_time, special_tick_dir, special_call, create_new_lighting_timer, lighting_deactivates) + if(!is_ground_level(new_z)) - animate(screen, color = "#000", time = 0.1 SECONDS) //its gotta be fast but not sudden + animate(screen, color = "#000", time = 0.1 SECONDS) /mob/proc/special_lighting_area_change(atom/source, old_area, new_area) SIGNAL_HANDLER var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] - var/mob/lighting_mob = src + + var/stage_time = 30 SECONDS + var/max_stages = null + var/startup_delay = 0 + var/special_start_time = 0 + var/special_stage_time = 4 SECONDS + var/special_tick_dir = 0 var/special_call = "area_change" + var/create_new_lighting_timer = FALSE + var/lighting_deactivates = TRUE + - if(!lighting_mob.special_lighting || lighting_mob.special_lighting == "pre_round") + if(!special_lighting || special_lighting == "pre_round") return + switch(special_lighting) + if("sunset") + max_stages = 9 + startup_delay = 10 SECONDS + special_tick_dir = 1 + if("sunrise") + max_stages = 6 + special_start_time = GLOB.sunrise_starting_time + lighting_deactivates = FALSE + special_tick_dir = -1 + + var/area/mob_old_area = old_area var/area/mob_new_area = new_area @@ -482,11 +502,7 @@ if(newloc_incave && !oldloc_incave) //handles both null old loc and false oldloc animate(screen, color = "#000", time = 4 SECONDS, easing = QUAD_EASING | EASE_OUT) else if(oldloc_incave && !newloc_incave) - switch(lighting_mob.special_lighting) - if("sunset") - lighting_mob.sunset(4 SECONDS, special_call) - if("sunrise") - lighting_mob.sunrise(4 SECONDS, special_call) + special_lighting_animate(special_lighting, stage_time, max_stages, startup_delay, special_start_time, special_stage_time, special_tick_dir, special_call, create_new_lighting_timer, lighting_deactivates) /atom/movable/screen/fullscreen/see_through_darkness diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index b18081a57d38..0cbe5bd7d31e 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -315,7 +315,8 @@ if(!GLOB.sunrise_starting_time) (GLOB.sunrise_starting_time = ROUND_TIME) for(var/mob/lighting_mob as anything in GLOB.player_list) - lighting_mob.sunrise() + lighting_mob.special_lighting = "sunrise" + lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 0, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) ares_conclude() addtimer(VARSET_CALLBACK(SSticker, roundend_check_paused, FALSE), MARINE_MAJOR_ROUND_END_DELAY) else if(!num_humans && !num_xenos) @@ -343,7 +344,8 @@ if(!GLOB.sunrise_starting_time) (GLOB.sunrise_starting_time = ROUND_TIME) for(var/mob/lighting_mob as anything in GLOB.player_list) - lighting_mob.sunrise() + lighting_mob.special_lighting = "sunrise" + lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 0, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) /////////////////////////////// //Checks if the round is over// From 068ca7cb387ea837de5272a8899fc22a04e00e6a Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 16:37:20 -0400 Subject: [PATCH 11/18] minor stuff --- code/_onclick/hud/fullscreen.dm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index c4190f936842..7b9fd0cc0e08 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -283,7 +283,6 @@ var/create_new_lighting_timer = p_create_new_lighting_timer /// used to prevent timer dupes, keep this as var/lighting_deactivates = p_lighting_deactivates /// If the lighting deactivates - var/lighting_stage = clamp((floor((ROUND_TIME + stage_time - special_start_time - startup_delay)/stage_time)), 0, max_stages) /// the current stage of the lighting, ticks up by 1 every stagetime after startup_delay + start_time //uses formula (x + y - w - z)/(y) with x = round_time, y = stage_time, w = special_start_time, and z being startup_delay @@ -381,9 +380,6 @@ var/lighting_color = "#000" /// used in the animation, set by the special_lighting_type - if(!GLOB.sunrise_starting_time) //failsafe incase sunrise gets called without a sunrise time set - (GLOB.sunrise_starting_time = ROUND_TIME) - switch(lighting_stage) if(0) lighting_color = "#000" From d14756db620917a2d7255525269ed355b0f0c081 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 21:48:11 -0400 Subject: [PATCH 12/18] final touches --- code/_onclick/hud/fullscreen.dm | 44 ++++++++++--------- .../colonialmarines/colonialmarines.dm | 11 ++--- 2 files changed, 27 insertions(+), 28 deletions(-) diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 7b9fd0cc0e08..b029e2830612 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -74,22 +74,25 @@ special_lighting = "pre_round" // do not let a special_lighting get called before roundstart return if(SSticker.mode.flags_round_type & MODE_SUNSET) - if(!fullscreens["lighting_backdrop"] || special_lighting == "sunset") + if(!fullscreens["lighting_backdrop"] || special_lighting == "sunset" || special_lighting_active_timer) return special_lighting = "sunset" + special_lighting_active_timer = TRUE if(ROUND_TIME < 4 SECONDS) //if you're in before full setup, dont let special lightings get called prior, it gets messy addtimer(CALLBACK(src, PROC_REF(special_lighting_animate), "sunset", 30 SECONDS, 9, 10 SECONDS, 0, null, 1, FALSE, TRUE, TRUE), 3 SECONDS) addtimer(CALLBACK(src, PROC_REF(special_lighting_register_signals)), 3 SECONDS) else if(ROUND_TIME < 280 SECONDS) + special_lighting = "sunset" + special_lighting_active_timer = TRUE special_lighting_animate("sunset", 30 SECONDS, 9, 10 SECONDS, 0, 0.1 SECONDS, 1, TRUE, TRUE, TRUE) special_lighting_register_signals() return if(GLOB.sunrise_starting_time) - if(!fullscreens["lighting_backdrop"] || special_lighting == "sunrise") + if(!fullscreens["lighting_backdrop"] || special_lighting == "sunrise" || special_lighting == "sunset" || special_lighting_active_timer) return special_lighting = "sunrise" - special_lighting_animate("sunrise", 30 SECONDS, 6, 0, 0.1 SECONDS, -1, TRUE, TRUE, FALSE) - debug_msg("sunrise proc got called be called on [src] instantly cause sunrise_starting_time was set") + special_lighting_active_timer = TRUE + special_lighting_animate("sunrise", 30 SECONDS, 6, 1 SECONDS, 0.1 SECONDS, -1, TRUE, TRUE, FALSE) special_lighting_register_signals() //sunrise is permanent, you wont need to unregister @@ -259,7 +262,7 @@ blend_mode = BLEND_ADD -/mob/proc/special_lighting_animate(p_special_lighting_type = null, p_stage_time, p_max_stages, p_startup_delay, p_special_start_time, p_special_stage_time = null, p_special_tick_dir, p_special_call = FALSE, p_create_new_lighting_timer = FALSE, p_lighting_deactivates = TRUE) +/mob/proc/special_lighting_animate(p_special_lighting_type = null, p_stage_time, p_max_stages, p_startup_delay = 1 SECONDS, p_special_start_time = 0, p_special_stage_time = null, p_special_tick_dir, p_special_call = FALSE, p_create_new_lighting_timer = FALSE, p_lighting_deactivates = TRUE) var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] var/mob/lighting_mob = src @@ -280,16 +283,17 @@ var/special_call = p_special_call /// the type of special call var/special_tick_dir = p_special_tick_dir /// If it gets a special call, if it ticks up or down in order to prevent advantages - var/create_new_lighting_timer = p_create_new_lighting_timer /// used to prevent timer dupes, keep this as + var/create_new_lighting_timer = p_create_new_lighting_timer /// used to prevent timer dupes, keep this as False unless its supposed to be the first call var/lighting_deactivates = p_lighting_deactivates /// If the lighting deactivates var/lighting_stage = clamp((floor((ROUND_TIME + stage_time - special_start_time - startup_delay)/stage_time)), 0, max_stages) /// the current stage of the lighting, ticks up by 1 every stagetime after startup_delay + start_time //uses formula (x + y - w - z)/(y) with x = round_time, y = stage_time, w = special_start_time, and z being startup_delay - var/time_til_next_lighting_call = (lighting_stage * stage_time) + startup_delay - special_start_time - ROUND_TIME /// how long until the next sunstage occurs + var/time_til_next_lighting_call = max(((lighting_stage * stage_time) + startup_delay + special_start_time - ROUND_TIME), 0.5 SECONDS) /// how long until the next sunstage occurs (minimum of 0.5 seconds) if(special_call && lighting_stage != 0) // controls stuff related to special calls, prevents people from getting unfair advantages by getting stages reset, unnecessary for short anims - lighting_stage = clamp((lighting_stage + special_tick_dir), 0, max_stages) + if(lighting_deactivates && ROUND_TIME < (stage_time * max_stages) + special_start_time + startup_delay) //if its finished max stage anim and doesn't deactivate, make special calls animate to full + lighting_stage = clamp((lighting_stage + special_tick_dir), 0, max_stages) if(time_til_next_lighting_call < special_stage_time) time_til_next_lighting_call = time_til_next_lighting_call + special_stage_time //delays main anims until the special call anim is done @@ -300,14 +304,14 @@ if(lighting_stage == 0) //there aren't any cases you won't want these coming up fast special_stage_time = 0.5 SECONDS - time_til_next_lighting_call = startup_delay + time_til_next_lighting_call = startup_delay + special_start_time - ROUND_TIME if(create_new_lighting_timer) // if create_new_lighting_timer = TRUE, a new timer gets set lighting_mob.special_lighting_active_timer = FALSE if(!lighting_mob.special_lighting_active_timer) if(lighting_stage < max_stages) - addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_animate), special_lighting, stage_time, max_stages, startup_delay, special_start_time, null, special_tick_dir, FALSE, TRUE, TRUE), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_animate), special_lighting, stage_time, max_stages, startup_delay, special_start_time, null, special_tick_dir, FALSE, TRUE, lighting_deactivates), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) lighting_mob.special_lighting_active_timer = TRUE if(lighting_stage == max_stages && lighting_deactivates) // deactives special lighting when the sun hits #000 addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_unregister_signals)), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) @@ -380,7 +384,7 @@ var/lighting_color = "#000" /// used in the animation, set by the special_lighting_type - switch(lighting_stage) + switch(lighting_stage) //only one type of sunrise cause it just looks more cinematic to have a warm sunset on cold maps if(0) lighting_color = "#000" if(1) @@ -388,13 +392,13 @@ if(2) lighting_color = "#111322" if(3) - lighting_color = "#422535" + lighting_color = "#291642" if(4) - lighting_color = "#6a2e37" + lighting_color = "#3f2239" if(5) - lighting_color = "#a73d3b" + lighting_color = "#632c3d" if(6) - lighting_color = "#bd502a" //it ends on very orange for cinematics + lighting_color = "#b97034" //it ends on very orange for cinematics return lighting_color @@ -424,7 +428,7 @@ var/stage_time = 30 SECONDS var/max_stages = null - var/startup_delay = 0 + var/startup_delay = 10 SECONDS var/special_start_time = 0 var/special_stage_time = 0.1 SECONDS var/special_tick_dir = 0 @@ -438,13 +442,12 @@ switch(special_lighting) //figure out a way of handling this better if possible if("sunset") max_stages = 9 - startup_delay = 10 SECONDS special_tick_dir = 1 if("sunrise") max_stages = 6 special_start_time = GLOB.sunrise_starting_time - lighting_deactivates = FALSE special_tick_dir = -1 + lighting_deactivates = FALSE if(is_ground_level(new_z)) special_lighting_animate(special_lighting, stage_time, max_stages, startup_delay, special_start_time, special_stage_time, special_tick_dir, special_call, create_new_lighting_timer, lighting_deactivates) @@ -460,7 +463,7 @@ var/stage_time = 30 SECONDS var/max_stages = null - var/startup_delay = 0 + var/startup_delay = 10 SECONDS var/special_start_time = 0 var/special_stage_time = 4 SECONDS var/special_tick_dir = 0 @@ -475,13 +478,12 @@ switch(special_lighting) if("sunset") max_stages = 9 - startup_delay = 10 SECONDS special_tick_dir = 1 if("sunrise") max_stages = 6 special_start_time = GLOB.sunrise_starting_time - lighting_deactivates = FALSE special_tick_dir = -1 + lighting_deactivates = FALSE var/area/mob_old_area = old_area diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index 0cbe5bd7d31e..e6824f89b8a1 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -315,8 +315,10 @@ if(!GLOB.sunrise_starting_time) (GLOB.sunrise_starting_time = ROUND_TIME) for(var/mob/lighting_mob as anything in GLOB.player_list) - lighting_mob.special_lighting = "sunrise" - lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 0, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) + if(!lighting_mob.special_lighting || lighting_mob.fullscreens["lighting_backdrop"]) + lighting_mob.special_lighting = "sunrise" + lighting_mob.special_lighting_active_timer = TRUE + lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) ares_conclude() addtimer(VARSET_CALLBACK(SSticker, roundend_check_paused, FALSE), MARINE_MAJOR_ROUND_END_DELAY) else if(!num_humans && !num_xenos) @@ -341,11 +343,6 @@ round_finished = MODE_INFESTATION_M_MAJOR else round_finished = MODE_INFESTATION_M_MINOR - if(!GLOB.sunrise_starting_time) - (GLOB.sunrise_starting_time = ROUND_TIME) - for(var/mob/lighting_mob as anything in GLOB.player_list) - lighting_mob.special_lighting = "sunrise" - lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 0, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) /////////////////////////////// //Checks if the round is over// From f51f39a147f7ff217f56fd36bd97c4f2a6efe8b9 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 22:24:30 -0400 Subject: [PATCH 13/18] adds another sunset check --- code/game/gamemodes/colonialmarines/colonialmarines.dm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index e6824f89b8a1..4fe099740421 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -343,6 +343,13 @@ round_finished = MODE_INFESTATION_M_MAJOR else round_finished = MODE_INFESTATION_M_MINOR + if(!GLOB.sunrise_starting_time) //putting a sunset call here too + (GLOB.sunrise_starting_time = ROUND_TIME) + for(var/mob/lighting_mob as anything in GLOB.player_list) + if(!lighting_mob.special_lighting || lighting_mob.fullscreens["lighting_backdrop"]) + lighting_mob.special_lighting = "sunrise" + lighting_mob.special_lighting_active_timer = TRUE + lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) /////////////////////////////// //Checks if the round is over// From ccffbd21aa7a0b9fad42cbf2c952cae6f571a9c3 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sun, 9 Jun 2024 22:30:10 -0400 Subject: [PATCH 14/18] whoopsies, missing tab --- code/game/gamemodes/colonialmarines/colonialmarines.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index 4fe099740421..08d08f4488f9 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -314,11 +314,11 @@ round_finished = MODE_INFESTATION_M_MAJOR //Humans destroyed the xenomorphs. if(!GLOB.sunrise_starting_time) (GLOB.sunrise_starting_time = ROUND_TIME) - for(var/mob/lighting_mob as anything in GLOB.player_list) - if(!lighting_mob.special_lighting || lighting_mob.fullscreens["lighting_backdrop"]) - lighting_mob.special_lighting = "sunrise" - lighting_mob.special_lighting_active_timer = TRUE - lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) + for(var/mob/lighting_mob as anything in GLOB.player_list) + if(!lighting_mob.special_lighting || lighting_mob.fullscreens["lighting_backdrop"]) + lighting_mob.special_lighting = "sunrise" + lighting_mob.special_lighting_active_timer = TRUE + lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) ares_conclude() addtimer(VARSET_CALLBACK(SSticker, roundend_check_paused, FALSE), MARINE_MAJOR_ROUND_END_DELAY) else if(!num_humans && !num_xenos) From 293f98939f97ec0eedf9697f31e27afe6bfbc8f6 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Mon, 10 Jun 2024 16:11:03 -0400 Subject: [PATCH 15/18] minor fixes --- code/game/gamemodes/colonialmarines/colonialmarines.dm | 4 ++-- code/modules/mob/living/carbon/xenomorph/hive_status.dm | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index 08d08f4488f9..4ebe9788ba91 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -315,7 +315,7 @@ if(!GLOB.sunrise_starting_time) (GLOB.sunrise_starting_time = ROUND_TIME) for(var/mob/lighting_mob as anything in GLOB.player_list) - if(!lighting_mob.special_lighting || lighting_mob.fullscreens["lighting_backdrop"]) + if(!lighting_mob.special_lighting && lighting_mob.fullscreens["lighting_backdrop"]) lighting_mob.special_lighting = "sunrise" lighting_mob.special_lighting_active_timer = TRUE lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) @@ -346,7 +346,7 @@ if(!GLOB.sunrise_starting_time) //putting a sunset call here too (GLOB.sunrise_starting_time = ROUND_TIME) for(var/mob/lighting_mob as anything in GLOB.player_list) - if(!lighting_mob.special_lighting || lighting_mob.fullscreens["lighting_backdrop"]) + if(!lighting_mob.special_lighting && lighting_mob.fullscreens["lighting_backdrop"]) lighting_mob.special_lighting = "sunrise" lighting_mob.special_lighting_active_timer = TRUE lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index 5fc2b9f42219..3e507d7cb079 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -196,6 +196,8 @@ if(SSticker.mode.flags_round_type & MODE_INFESTATION) //checks if gamemode is a xeno gamemode before calling, will roar with no queen cause of implied queen existence zlevel_evo_echo() + if(initial_screech) + initial_screech = FALSE /datum/hive_status/proc/zlevel_evo_echo() for(var/mob/groundmob as anything in GLOB.player_list) @@ -206,7 +208,6 @@ to_chat(groundmob, SPAN_HIGHDANGER("You hear a distant screech and feel your insides freeze up... something new is with you in this colony.")) if(issynth(groundmob)) to_chat(groundmob, SPAN_HIGHDANGER("You hear the distant call of an unknown bioform, it sounds like they're informing others to change form. You begin to analyze and decrypt the strange vocalization.")) - initial_screech = FALSE return var/area/queen_area = get_area(living_xeno_queen) if(!initial_screech) From 9abfb208adf793719a39c9157e4823bb27639e79 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Sat, 15 Jun 2024 11:34:10 -0400 Subject: [PATCH 16/18] Commits reviews per feedback, thanks Vero and Harry! --- code/__DEFINES/mobs.dm | 8 ++ code/_onclick/hud/fullscreen.dm | 78 +++++++++---------- .../colonialmarines/colonialmarines.dm | 12 +-- .../living/carbon/xenomorph/hive_status.dm | 11 ++- 4 files changed, 58 insertions(+), 51 deletions(-) diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index dbd8dbe7ce41..d35c31abebf4 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -171,6 +171,14 @@ //================================================= +/* SPECIAL LIGHTING DEFINES */ + +#define SPECIAL_LIGHTING_PREROUND "preround" +#define SPECIAL_LIGHTING_SUNSET "sunset" +#define SPECIAL_LIGHTING_SUNRISE "sunrise" + +//================================================= + //Languages! #define LANGUAGE_HUMAN 1 #define LANGUAGE_ALIEN 2 diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index b029e2830612..2f4b44707153 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -1,4 +1,6 @@ +#define Z_CHANGE_CALL "z_change" +#define AREA_CHANGE_CALL "area_change" /mob var/list/fullscreens = list() @@ -71,28 +73,28 @@ if(special_lighting) return SSticker.OnRoundstart(CALLBACK(src, PROC_REF(initialize_special_lighting))) - special_lighting = "pre_round" // do not let a special_lighting get called before roundstart + special_lighting = SPECIAL_LIGHTING_PREROUND // do not let a special_lighting get called before roundstart return if(SSticker.mode.flags_round_type & MODE_SUNSET) - if(!fullscreens["lighting_backdrop"] || special_lighting == "sunset" || special_lighting_active_timer) + if(!fullscreens["lighting_backdrop"] || special_lighting == SPECIAL_LIGHTING_SUNSET || special_lighting_active_timer) return - special_lighting = "sunset" + special_lighting = SPECIAL_LIGHTING_SUNSET special_lighting_active_timer = TRUE if(ROUND_TIME < 4 SECONDS) //if you're in before full setup, dont let special lightings get called prior, it gets messy - addtimer(CALLBACK(src, PROC_REF(special_lighting_animate), "sunset", 30 SECONDS, 9, 10 SECONDS, 0, null, 1, FALSE, TRUE, TRUE), 3 SECONDS) + addtimer(CALLBACK(src, PROC_REF(special_lighting_animate), SPECIAL_LIGHTING_SUNSET, 30 SECONDS, 9, 10 SECONDS, 0, null, 1, FALSE, TRUE, TRUE), 3 SECONDS) addtimer(CALLBACK(src, PROC_REF(special_lighting_register_signals)), 3 SECONDS) else if(ROUND_TIME < 280 SECONDS) - special_lighting = "sunset" + special_lighting = SPECIAL_LIGHTING_SUNSET special_lighting_active_timer = TRUE - special_lighting_animate("sunset", 30 SECONDS, 9, 10 SECONDS, 0, 0.1 SECONDS, 1, TRUE, TRUE, TRUE) + special_lighting_animate(SPECIAL_LIGHTING_SUNSET, 30 SECONDS, 9, 10 SECONDS, 0, 0.1 SECONDS, 1, TRUE, TRUE, TRUE) special_lighting_register_signals() return if(GLOB.sunrise_starting_time) - if(!fullscreens["lighting_backdrop"] || special_lighting == "sunrise" || special_lighting == "sunset" || special_lighting_active_timer) + if(!fullscreens["lighting_backdrop"] || special_lighting == SPECIAL_LIGHTING_SUNRISE || special_lighting == SPECIAL_LIGHTING_SUNSET || special_lighting_active_timer) return - special_lighting = "sunrise" + special_lighting = SPECIAL_LIGHTING_SUNRISE special_lighting_active_timer = TRUE - special_lighting_animate("sunrise", 30 SECONDS, 6, 1 SECONDS, 0.1 SECONDS, -1, TRUE, TRUE, FALSE) + special_lighting_animate(SPECIAL_LIGHTING_SUNRISE, 30 SECONDS, 6, 1 SECONDS, 0.1 SECONDS, -1, TRUE, TRUE, FALSE) special_lighting_register_signals() //sunrise is permanent, you wont need to unregister @@ -265,10 +267,9 @@ /mob/proc/special_lighting_animate(p_special_lighting_type = null, p_stage_time, p_max_stages, p_startup_delay = 1 SECONDS, p_special_start_time = 0, p_special_stage_time = null, p_special_tick_dir, p_special_call = FALSE, p_create_new_lighting_timer = FALSE, p_lighting_deactivates = TRUE) var/atom/movable/screen/fullscreen/screen = fullscreens["lighting_backdrop"] - var/mob/lighting_mob = src - var/area/lighting_mob_area = get_area(lighting_mob) + var/area/lighting_mob_area = get_area(src) - if(p_special_lighting_type != lighting_mob.special_lighting) + if(p_special_lighting_type != special_lighting) return var/lighting_color = "#000" /// used in the animation, set by the special_lighting_type @@ -297,28 +298,28 @@ if(time_til_next_lighting_call < special_stage_time) time_til_next_lighting_call = time_til_next_lighting_call + special_stage_time //delays main anims until the special call anim is done - if(lighting_mob.special_lighting == "sunset") - lighting_color = lighting_mob.special_lighting_sunset(lighting_stage) - if(lighting_mob.special_lighting == "sunrise") - lighting_color = lighting_mob.special_lighting_sunrise(lighting_stage) + if(special_lighting == SPECIAL_LIGHTING_SUNSET) + lighting_color = special_lighting_sunset(lighting_stage) + if(special_lighting == SPECIAL_LIGHTING_SUNRISE) + lighting_color = special_lighting_sunrise(lighting_stage) if(lighting_stage == 0) //there aren't any cases you won't want these coming up fast special_stage_time = 0.5 SECONDS time_til_next_lighting_call = startup_delay + special_start_time - ROUND_TIME if(create_new_lighting_timer) // if create_new_lighting_timer = TRUE, a new timer gets set - lighting_mob.special_lighting_active_timer = FALSE + special_lighting_active_timer = FALSE - if(!lighting_mob.special_lighting_active_timer) + if(!special_lighting_active_timer) if(lighting_stage < max_stages) - addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_animate), special_lighting, stage_time, max_stages, startup_delay, special_start_time, null, special_tick_dir, FALSE, TRUE, lighting_deactivates), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) - lighting_mob.special_lighting_active_timer = TRUE + addtimer(CALLBACK(src, PROC_REF(special_lighting_animate), special_lighting, stage_time, max_stages, startup_delay, special_start_time, null, special_tick_dir, FALSE, TRUE, lighting_deactivates), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + special_lighting_active_timer = TRUE if(lighting_stage == max_stages && lighting_deactivates) // deactives special lighting when the sun hits #000 - addtimer(CALLBACK(lighting_mob, PROC_REF(special_lighting_unregister_signals)), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) + addtimer(CALLBACK(src, PROC_REF(special_lighting_unregister_signals)), time_til_next_lighting_call, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_DELETE_ME) if(CEILING_IS_PROTECTED(lighting_mob_area?.ceiling, CEILING_PROTECTION_TIER_2)) //if underground, don't animate, this is needed in combo with the special area check return - if(!is_ground_level(lighting_mob.z) && special_call != "z_change") // dont animate if not groundlevel + if(!is_ground_level(z) && special_call != Z_CHANGE_CALL) // dont animate if not groundlevel return if(special_stage_time) @@ -405,20 +406,16 @@ /mob/proc/special_lighting_register_signals() - var/mob/signaling_mob = src - - RegisterSignal(signaling_mob, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(special_lighting_z_change), TRUE) - RegisterSignal(signaling_mob, COMSIG_MOVABLE_ENTERED_AREA, PROC_REF(special_lighting_area_change), TRUE) + RegisterSignal(src, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(special_lighting_z_change), TRUE) + RegisterSignal(src, COMSIG_MOVABLE_ENTERED_AREA, PROC_REF(special_lighting_area_change), TRUE) /mob/proc/special_lighting_unregister_signals() - var/mob/signaling_mob = src + special_lighting = null //clears special lighting - signaling_mob.special_lighting = null //clears special lighting - - UnregisterSignal(signaling_mob, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(special_lighting_z_change)) - UnregisterSignal(signaling_mob, COMSIG_MOVABLE_ENTERED_AREA, PROC_REF(special_lighting_area_change)) + UnregisterSignal(src, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(special_lighting_z_change)) + UnregisterSignal(src, COMSIG_MOVABLE_ENTERED_AREA, PROC_REF(special_lighting_area_change)) /mob/proc/special_lighting_z_change(atom/source, old_z, new_z) @@ -432,18 +429,18 @@ var/special_start_time = 0 var/special_stage_time = 0.1 SECONDS var/special_tick_dir = 0 - var/special_call = "z_change" + var/special_call = Z_CHANGE_CALL var/create_new_lighting_timer = FALSE var/lighting_deactivates = TRUE - if(!special_lighting || special_lighting == "pre_round") + if(!special_lighting || special_lighting == SPECIAL_LIGHTING_PREROUND) return switch(special_lighting) //figure out a way of handling this better if possible - if("sunset") + if(SPECIAL_LIGHTING_SUNSET) max_stages = 9 special_tick_dir = 1 - if("sunrise") + if(SPECIAL_LIGHTING_SUNRISE) max_stages = 6 special_start_time = GLOB.sunrise_starting_time special_tick_dir = -1 @@ -467,19 +464,19 @@ var/special_start_time = 0 var/special_stage_time = 4 SECONDS var/special_tick_dir = 0 - var/special_call = "area_change" + var/special_call = AREA_CHANGE_CALL var/create_new_lighting_timer = FALSE var/lighting_deactivates = TRUE - if(!special_lighting || special_lighting == "pre_round") + if(!special_lighting || special_lighting == SPECIAL_LIGHTING_PREROUND) return switch(special_lighting) - if("sunset") + if(SPECIAL_LIGHTING_SUNSET) max_stages = 9 special_tick_dir = 1 - if("sunrise") + if(SPECIAL_LIGHTING_SUNRISE) max_stages = 6 special_start_time = GLOB.sunrise_starting_time special_tick_dir = -1 @@ -509,3 +506,6 @@ layer = LIGHTING_PRIMARY_LAYER blend_mode = BLEND_ADD show_when_dead = TRUE + +#undef Z_CHANGE_CALL +#undef AREA_CHANGE_CALL diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index 4ebe9788ba91..84b446cbc5d0 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -313,12 +313,12 @@ SSticker.roundend_check_paused = TRUE round_finished = MODE_INFESTATION_M_MAJOR //Humans destroyed the xenomorphs. if(!GLOB.sunrise_starting_time) - (GLOB.sunrise_starting_time = ROUND_TIME) + GLOB.sunrise_starting_time = ROUND_TIME for(var/mob/lighting_mob as anything in GLOB.player_list) if(!lighting_mob.special_lighting && lighting_mob.fullscreens["lighting_backdrop"]) - lighting_mob.special_lighting = "sunrise" + lighting_mob.special_lighting = SPECIAL_LIGHTING_SUNRISE lighting_mob.special_lighting_active_timer = TRUE - lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) + lighting_mob.special_lighting_animate(SPECIAL_LIGHTING_SUNRISE, 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) ares_conclude() addtimer(VARSET_CALLBACK(SSticker, roundend_check_paused, FALSE), MARINE_MAJOR_ROUND_END_DELAY) else if(!num_humans && !num_xenos) @@ -344,12 +344,12 @@ else round_finished = MODE_INFESTATION_M_MINOR if(!GLOB.sunrise_starting_time) //putting a sunset call here too - (GLOB.sunrise_starting_time = ROUND_TIME) + GLOB.sunrise_starting_time = ROUND_TIME for(var/mob/lighting_mob as anything in GLOB.player_list) if(!lighting_mob.special_lighting && lighting_mob.fullscreens["lighting_backdrop"]) - lighting_mob.special_lighting = "sunrise" + lighting_mob.special_lighting = SPECIAL_LIGHTING_SUNRISE lighting_mob.special_lighting_active_timer = TRUE - lighting_mob.special_lighting_animate("sunrise", 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) + lighting_mob.special_lighting_animate(SPECIAL_LIGHTING_SUNRISE, 30 SECONDS, 6, 10 SECONDS, GLOB.sunrise_starting_time, null, -1, FALSE, TRUE, FALSE) /////////////////////////////// //Checks if the round is over// diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index 3e507d7cb079..1b11dcc4d398 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -196,7 +196,7 @@ if(SSticker.mode.flags_round_type & MODE_INFESTATION) //checks if gamemode is a xeno gamemode before calling, will roar with no queen cause of implied queen existence zlevel_evo_echo() - if(initial_screech) + if(initial_screech) //set to false after the first screech is called initial_screech = FALSE /datum/hive_status/proc/zlevel_evo_echo() @@ -210,11 +210,10 @@ to_chat(groundmob, SPAN_HIGHDANGER("You hear the distant call of an unknown bioform, it sounds like they're informing others to change form. You begin to analyze and decrypt the strange vocalization.")) return var/area/queen_area = get_area(living_xeno_queen) - if(!initial_screech) - if(CEILING_IS_PROTECTED(queen_area?.ceiling, CEILING_PROTECTION_TIER_3) || !queen_area) - playsound_client(groundmob.client, 'sound/voice/alien_echoroar_2.ogg', groundmob.loc, 70, "minor") //if queen is underground or there is no queen - else - playsound_client(groundmob.client, 'sound/voice/alien_echoroar_3.ogg', groundmob.loc, 75, FALSE) //if queen is outside + if(CEILING_IS_PROTECTED(queen_area?.ceiling, CEILING_PROTECTION_TIER_3) || !queen_area) + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_2.ogg', groundmob.loc, 70, "minor") //if queen is underground or there is no queen + else + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_3.ogg', groundmob.loc, 75, FALSE) //if queen is outside // Adds a xeno to this hive /datum/hive_status/proc/add_xeno(mob/living/carbon/xenomorph/X) From 98497988a8613aeb2d06672425ffbe1a78531d02 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Fri, 21 Jun 2024 18:23:28 -0400 Subject: [PATCH 17/18] makes outside screeches have variation --- code/modules/mob/living/carbon/xenomorph/hive_status.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index 1b11dcc4d398..da07d93c90af 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -213,7 +213,7 @@ if(CEILING_IS_PROTECTED(queen_area?.ceiling, CEILING_PROTECTION_TIER_3) || !queen_area) playsound_client(groundmob.client, 'sound/voice/alien_echoroar_2.ogg', groundmob.loc, 70, "minor") //if queen is underground or there is no queen else - playsound_client(groundmob.client, 'sound/voice/alien_echoroar_3.ogg', groundmob.loc, 75, FALSE) //if queen is outside + playsound_client(groundmob.client, 'sound/voice/alien_echoroar_3.ogg', groundmob.loc, 80, "minor") //if queen is outside // Adds a xeno to this hive /datum/hive_status/proc/add_xeno(mob/living/carbon/xenomorph/X) From 29273457203763947a1c365695107ba5e92c80e1 Mon Sep 17 00:00:00 2001 From: GrrrKitten Date: Fri, 21 Jun 2024 18:25:00 -0400 Subject: [PATCH 18/18] fixes fiorina having the wrong sunset --- code/_onclick/hud/fullscreen.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 2f4b44707153..6998f49b3b39 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -333,7 +333,7 @@ var/lighting_color = "#000" /// used in the animation, set by the special_lighting_type //if its cold or in space (or chances claim) - if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD || ZTRAIT_IN_SPACE] || SSmapping.configs[GROUND_MAP].map_name == MAP_LV522_CHANCES_CLAIM) + if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD] || SSmapping.configs[GROUND_MAP].map_name == MAP_LV522_CHANCES_CLAIM || MAP_PRISON_STATION_V3) switch(lighting_stage) //for sun stages, the more you have the better it looks when special called, I recommend choosing cinematic 4 colors then using a gradient tool to pick out the rest if(0) lighting_color = "#a8c3cf"