From 57e35e6a290609df0b585dc5a1514011cfdb1a3e Mon Sep 17 00:00:00 2001 From: Helg2 Date: Fri, 13 Dec 2024 16:34:54 +0200 Subject: [PATCH 1/4] Update menu_text_objects.dm --- code/_onclick/hud/screen_objects/menu_text_objects.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/_onclick/hud/screen_objects/menu_text_objects.dm b/code/_onclick/hud/screen_objects/menu_text_objects.dm index fd1fcd35dcf..f334964fb8f 100644 --- a/code/_onclick/hud/screen_objects/menu_text_objects.dm +++ b/code/_onclick/hud/screen_objects/menu_text_objects.dm @@ -92,7 +92,7 @@ maptext = "ПРИСОЕДИНИТЬСЯ" icon_state = "join" return - if(!hud.mymob) + if(!hud?.mymob) return var/mob/new_player/player = hud.mymob maptext = "ВЫ: [player.ready ? "" : "НЕ "]ГОТОВЫ" From 7c5a9d14ab8aa9907c7146f2e029a3bb1d6d6e17 Mon Sep 17 00:00:00 2001 From: Helg2 Date: Fri, 13 Dec 2024 16:52:43 +0200 Subject: [PATCH 2/4] Update explosion.dm --- code/datums/autocells/explosion.dm | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/code/datums/autocells/explosion.dm b/code/datums/autocells/explosion.dm index 863dfc411d9..c4fc90b2e20 100644 --- a/code/datums/autocells/explosion.dm +++ b/code/datums/autocells/explosion.dm @@ -265,7 +265,6 @@ as having entered the turf. var/frequency = GET_RAND_FREQUENCY var/sound/explosion_sound = SFX_EXPLOSION_LARGE var/sound/far_explosion_sound = SFX_EXPLOSION_LARGE_DISTANT - var/sound/creak_sound = SFX_EXPLOSION_CREAK //no need to loop this for every mob switch(power) @@ -282,19 +281,20 @@ as having entered the turf. var/mob/our_mob = MN // Double check for client var/turf/mob_turf = get_turf(our_mob) - if(mob_turf?.z == epicenter.z) - var/dist = get_dist(mob_turf, epicenter) - if(dist <= max(round(power, 1))) - our_mob.playsound_local(epicenter, null, 75, 1, frequency, falloff = 5, sound_to_use = explosion_sound) - if(is_mainship_level(epicenter.z)) - our_mob.playsound_local(epicenter, null, 40, 1, frequency, falloff = 5, sound_to_use = creak_sound)//ship groaning under explosion effect - // You hear a far explosion if you're outside the blast radius. Small bombs shouldn't be heard all over the station. - else if(dist <= far_dist) - var/far_volume = clamp(far_dist, 30, 60) // Volume is based on explosion size and dist - far_volume += (dist <= far_dist * 0.5 ? 50 : 0) // add 50 volume if the mob is pretty close to the explosion - our_mob.playsound_local(epicenter, null, far_volume, 1, frequency, falloff = 5, sound_to_use = far_explosion_sound) - if(is_mainship_level(epicenter.z)) - our_mob.playsound_local(epicenter, null, far_volume * 3, 1, frequency, falloff = 5, sound_to_use = creak_sound)//ship groaning under explosion effect + if(mob_turf.z != epicenter.z) + continue + var/dist = get_dist(mob_turf, epicenter) + if(dist <= max(round(power, 1))) + our_mob.playsound_local(epicenter, explosion_sound, 75, 1, frequency, falloff = 5) + if(is_mainship_level(epicenter.z)) + our_mob.playsound_local(epicenter, SFX_EXPLOSION_CREAK, 40, 1, frequency, falloff = 5)//ship groaning under explosion effect + // You hear a far explosion if you're outside the blast radius. Small bombs shouldn't be heard all over the station. + else if(dist <= far_dist) + var/far_volume = clamp(far_dist, 30, 60) // Volume is based on explosion size and dist + far_volume += (dist <= far_dist * 0.5 ? 50 : 0) // add 50 volume if the mob is pretty close to the explosion + our_mob.playsound_local(epicenter, far_explosion_sound, far_volume, 1, frequency, falloff = 5) + if(is_mainship_level(epicenter.z)) + our_mob.playsound_local(epicenter, SFX_EXPLOSION_CREAK, far_volume * 3, 1, frequency, falloff = 5)//ship groaning under explosion effect if(!orig_range) orig_range = round(power / falloff) new /obj/effect/temp_visual/explosion(epicenter, orig_range, color, power) From f30d6bd3dcb392df2110e0a87e19c4ded00ac3fd Mon Sep 17 00:00:00 2001 From: Helg2 Date: Fri, 13 Dec 2024 16:54:19 +0200 Subject: [PATCH 3/4] Update abilities_warrior.dm --- .../carbon/xenomorph/castes/warrior/abilities_warrior.dm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/castes/warrior/abilities_warrior.dm b/code/modules/mob/living/carbon/xenomorph/castes/warrior/abilities_warrior.dm index 282fadf01ae..f63d4214bc4 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/warrior/abilities_warrior.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/warrior/abilities_warrior.dm @@ -638,16 +638,17 @@ /datum/action/ability/activable/xeno/warrior/punch/jab/use_ability(atom/A) var/mob/living/carbon/xenomorph/xeno_owner = owner - var/mob/living/carbon/human/target = A var/jab_damage = xeno_owner.xeno_caste.melee_damage * xeno_owner.xeno_melee_damage_modifier var/datum/action/ability/xeno_action/empower/empower_action = xeno_owner.actions_by_path[/datum/action/ability/xeno_action/empower] if(!A.punch_act(xeno_owner, jab_damage)) return fail_activate() if(empower_action?.check_empower(A)) jab_damage *= WARRIOR_PUNCH_EMPOWER_MULTIPLIER - to_chat(target, span_highdanger("The concussion from the [xeno_owner]'s blow blinds us!")) - target.apply_status_effect(STATUS_EFFECT_CONFUSED, 3 SECONDS) - target.Paralyze(0.5 SECONDS) + if(ishuman(A)) + var/mob/living/carbon/human/target = A + to_chat(target, span_highdanger("The concussion from the [xeno_owner]'s blow blinds us!")) + target.apply_status_effect(STATUS_EFFECT_CONFUSED, 3 SECONDS) + target.Paralyze(0.5 SECONDS) GLOB.round_statistics.warrior_punches++ SSblackbox.record_feedback(FEEDBACK_TALLY, "round_statistics", 1, "warrior_punches") succeed_activate() From fc5ee8546c9b69b0be36531bcfafe1e7d011f0cc Mon Sep 17 00:00:00 2001 From: Helg2 <93882977+Helg2@users.noreply.github.com> Date: Fri, 13 Dec 2024 17:08:39 +0200 Subject: [PATCH 4/4] Update explosion.dm Signed-off-by: Helg2 <93882977+Helg2@users.noreply.github.com> --- code/datums/autocells/explosion.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/autocells/explosion.dm b/code/datums/autocells/explosion.dm index c4fc90b2e20..bd930c9dcf0 100644 --- a/code/datums/autocells/explosion.dm +++ b/code/datums/autocells/explosion.dm @@ -281,7 +281,7 @@ as having entered the turf. var/mob/our_mob = MN // Double check for client var/turf/mob_turf = get_turf(our_mob) - if(mob_turf.z != epicenter.z) + if(mob_turf?.z != epicenter.z) continue var/dist = get_dist(mob_turf, epicenter) if(dist <= max(round(power, 1)))