Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.

Commit f41753a

Browse files
committed
Merge remote-tracking branch 'upstream/master' into PortsPsionics
2 parents 9e898f7 + 1766006 commit f41753a

File tree

15 files changed

+119
-75
lines changed

15 files changed

+119
-75
lines changed

_maps/RandomRuins/SpaceRuins/oldstation.dmm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6392,7 +6392,7 @@
63926392
dir = 4
63936393
},
63946394
/obj/item/clothing/suit/space/nasavoid/old{
6395-
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 90, "fire" = 40, "acid" = 70);
6395+
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 40, "acid" = 70);
63966396
name = "Radiation Response Voidsuit";
63976397
desc = "A modified version of a CentCom engineering voidsuit used to respond to radiological emergencies."
63986398
},

code/_onclick/hud/fullscreen.dm

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
if (client && screen.should_show_to(src))
1515
screen.update_for_view(client.view)
1616
client.screen += screen
17-
17+
1818
if(screen.needs_offsetting)
1919
SET_PLANE_EXPLICIT(screen, PLANE_TO_TRUE(screen.plane), src)
2020

@@ -241,3 +241,9 @@
241241
icon_state = "blue_eye"
242242
plane = FULLSCREEN_PLANE
243243
layer = CURSE_LAYER
244+
245+
/// Blindspot quirk - has 4 directions
246+
/atom/movable/screen/fullscreen/blindspot
247+
icon_state = "blindspot"
248+
plane = FULLSCREEN_PLANE
249+
layer = BLIND_LAYER

code/datums/traits/negative.dm

Lines changed: 65 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -678,7 +678,7 @@
678678
gain_text = span_danger("You remember your allergic reaction to a common medicine.")
679679
lose_text = span_notice("You no longer are allergic to medicine.")
680680

681-
var/allergy_chem_list = list(
681+
var/allergy_chem_list = list(
682682
/datum/reagent/medicine/inacusiate,
683683
/datum/reagent/medicine/silver_sulfadiazine,
684684
/datum/reagent/medicine/styptic_powder,
@@ -707,7 +707,7 @@
707707
var/reagent_id
708708
COOLDOWN_DECLARE(allergies)
709709
/// how long allergies last after getting rid of the allergen
710-
var/cooldown_duration = 10 SECONDS
710+
var/cooldown_duration = 10 SECONDS
711711
/// Wether the person is experiencing anaphylatic shock or not
712712
COOLDOWN_DECLARE(anaphylaxis)
713713
/// How long anaphylactic shock lasts
@@ -751,7 +751,7 @@
751751

752752
else if(!COOLDOWN_FINISHED(src, allergies)) //if the cooldown is going
753753
//external indicator that it's happening
754-
if(prob(50))
754+
if(prob(50))
755755
switch(rand(0, 2))
756756
if(0)
757757
H.emote("cough")
@@ -1035,3 +1035,65 @@
10351035
if(species_type == /datum/species/ipc) // IPCs cant use psionics normally
10361036
return "You have no brain!"
10371037
return FALSE
1038+
1039+
/datum/quirk/blindspot
1040+
name = "Blindspot"
1041+
desc = "You lack the sixth sense and cannot see behind yourself."
1042+
icon = "arrows-to-eye"
1043+
gain_text = span_danger("You can't see behind yourself anymore.")
1044+
lose_text = span_notice("You can see behind yourself again.")
1045+
value = -2
1046+
medical_record_text = "Patient has trouble with spatial awareness."
1047+
1048+
#define BLINDSPOT_NORTH "blindspotN"
1049+
#define BLINDSPOT_SOUTH "blindspotS"
1050+
#define BLINDSPOT_EAST "blindspotE"
1051+
#define BLINDSPOT_WEST "blindspotW"
1052+
1053+
/datum/quirk/blindspot/add()
1054+
quirk_holder.blindspot_overlay = new/list(10)
1055+
var/atom/movable/screen/fullscreen/blindspot/north_blindspot = quirk_holder.overlay_fullscreen(BLINDSPOT_NORTH, /atom/movable/screen/fullscreen/blindspot)
1056+
var/atom/movable/screen/fullscreen/blindspot/south_blindspot = quirk_holder.overlay_fullscreen(BLINDSPOT_SOUTH, /atom/movable/screen/fullscreen/blindspot)
1057+
var/atom/movable/screen/fullscreen/blindspot/east_blindspot = quirk_holder.overlay_fullscreen(BLINDSPOT_EAST, /atom/movable/screen/fullscreen/blindspot)
1058+
var/atom/movable/screen/fullscreen/blindspot/west_blindspot = quirk_holder.overlay_fullscreen(BLINDSPOT_WEST, /atom/movable/screen/fullscreen/blindspot)
1059+
quirk_holder.blindspot_overlay[NORTH] = WEAKREF(north_blindspot)
1060+
quirk_holder.blindspot_overlay[SOUTH] = WEAKREF(south_blindspot)
1061+
quirk_holder.blindspot_overlay[EAST] = WEAKREF(east_blindspot)
1062+
quirk_holder.blindspot_overlay[WEST] = WEAKREF(west_blindspot)
1063+
north_blindspot.dir = NORTH
1064+
south_blindspot.dir = SOUTH
1065+
east_blindspot.dir = EAST
1066+
west_blindspot.dir = WEST
1067+
north_blindspot.alpha = (quirk_holder.dir == NORTH) * 255
1068+
south_blindspot.alpha = (quirk_holder.dir == SOUTH) * 255
1069+
east_blindspot.alpha = (quirk_holder.dir == EAST) * 255
1070+
west_blindspot.alpha = (quirk_holder.dir == WEST) * 255
1071+
RegisterSignal(quirk_holder, COMSIG_ATOM_DIR_CHANGE, PROC_REF(change_dir))
1072+
1073+
/datum/quirk/blindspot/remove()
1074+
quirk_holder.clear_fullscreen(BLINDSPOT_NORTH)
1075+
quirk_holder.clear_fullscreen(BLINDSPOT_SOUTH)
1076+
quirk_holder.clear_fullscreen(BLINDSPOT_EAST)
1077+
quirk_holder.clear_fullscreen(BLINDSPOT_WEST)
1078+
quirk_holder.blindspot_overlay = null
1079+
UnregisterSignal(quirk_holder, COMSIG_ATOM_DIR_CHANGE)
1080+
1081+
/datum/quirk/blindspot/proc/change_dir(atom/movable/source, olddir, newdir)
1082+
SIGNAL_HANDLER
1083+
if(olddir == 0 || newdir == 0)
1084+
return
1085+
if(olddir == newdir)
1086+
return
1087+
if(!quirk_holder.blindspot_overlay)
1088+
return
1089+
var/atom/movable/screen/fullscreen/blindspot/old_spot = quirk_holder.blindspot_overlay[olddir]?.resolve()
1090+
var/atom/movable/screen/fullscreen/blindspot/new_spot = quirk_holder.blindspot_overlay[newdir]?.resolve()
1091+
if(!istype(old_spot) || !istype(new_spot))
1092+
return
1093+
animate(old_spot, 0.5 SECONDS, easing = CIRCULAR_EASING|EASE_IN, alpha = 0)
1094+
animate(new_spot, 0.5 SECONDS, easing = CIRCULAR_EASING|EASE_OUT, alpha = 255)
1095+
1096+
#undef BLINDSPOT_NORTH
1097+
#undef BLINDSPOT_SOUTH
1098+
#undef BLINDSPOT_EAST
1099+
#undef BLINDSPOT_WEST

code/game/atom/_atom.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -424,7 +424,7 @@
424424
if(uses_integrity)
425425
playsound(src, P.hitsound, 50, 1)
426426
visible_message(span_danger("[src] is hit by \a [P]!"), null, null, COMBAT_MESSAGE_RANGE)
427-
if(!QDELETED(src)) //Bullet on_hit effect might have already destroyed this object
427+
if(!QDELETED(src) && !P.nodamage) //Bullet on_hit effect might have already destroyed this object
428428
take_damage(P.damage * P.demolition_mod, P.damage_type, P.armor_flag, 0, turn(P.dir, 180), P.armour_penetration)
429429

430430
///Return true if we're inside the passed in atom

code/modules/jobs/job_types/clown.dm

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@
1212

1313
alt_titles = list("Entertainer", "Comedian", "Jester", "Improv Artist")
1414

15-
added_access = list(ACCESS_MAINT_TUNNELS)
16-
base_access = list(ACCESS_SERVICE, ACCESS_THEATRE)
15+
base_access = list(ACCESS_SERVICE, ACCESS_THEATRE, ACCESS_MAINT_TUNNELS)
1716

1817
paycheck = PAYCHECK_MINIMAL
1918
paycheck_department = ACCOUNT_SRV

code/modules/jobs/job_types/mime.dm

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@
1212

1313
alt_titles = list("Mute Entertainer", "Silent Jokester", "Pantomimist")
1414

15-
added_access = list(ACCESS_MAINT_TUNNELS)
16-
base_access = list(ACCESS_SERVICE, ACCESS_THEATRE)
15+
base_access = list(ACCESS_SERVICE, ACCESS_THEATRE, ACCESS_MAINT_TUNNELS)
1716
paycheck = PAYCHECK_MINIMAL
1817
paycheck_department = ACCOUNT_SRV
1918

code/modules/mob/dead/new_player/login.dm

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
sight |= SEE_TURFS
2424

2525
new_player_panel()
26-
client?.playtitlemusic()
26+
2727

2828
if(GLOB.admin_event)
2929
GLOB.admin_event.show_info(src)
@@ -36,3 +36,5 @@
3636
else
3737
postfix = "soon"
3838
to_chat(src, "Please set up your character and select \"Ready\". The game will start [postfix].")
39+
40+
spawn(3 SECONDS) client?.playtitlemusic()

code/modules/mob/living/carbon/human/species_types/shadowpeople.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@
206206

207207
/datum/species/shadow/darkspawn/on_species_gain(mob/living/carbon/C, datum/species/old_species)
208208
. = ..()
209-
C.fully_replace_character_name("[C.real_name]", darkspawn_name())
209+
C.fully_replace_character_name(null, darkspawn_name())
210210

211211
/datum/species/shadow/darkspawn/spec_updatehealth(mob/living/carbon/human/H)
212212
var/datum/antagonist/darkspawn/antag = isdarkspawn(H)

code/modules/mob/mob_defines.dm

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -249,6 +249,9 @@
249249
///Contains the fullscreen overlays the mob can see (from 'code/_onclick/hud/fullscreen.dm')
250250
var/list/screens = list()
251251

252+
/// Contains the blindspot overlays, if they are in use
253+
var/list/datum/weakref/blindspot_overlay
254+
252255
///The HUD type the mob will gain on Initialize. (from 'code/_onclick/hud/hud.dm')
253256
var/hud_type = /datum/hud
254257

html/changelog.html

Lines changed: 19 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,21 @@
5757
-->
5858
<div class="commit sansserif">
5959

60+
<h2 class="date">02 January 2025</h2>
61+
<h3 class="author">cowbot92 updated:</h3>
62+
<ul class="changes bgimages16">
63+
<li class="tweak">Adjusts clown/mime access</li>
64+
<li class="tweak">Tweaked charlie station rad armor values</li>
65+
</ul>
66+
<h3 class="author">warface1234455 updated:</h3>
67+
<ul class="changes bgimages16">
68+
<li class="bugfix">fix no damage projectiles from damaging stuffs with integrity</li>
69+
</ul>
70+
<h3 class="author">ynot01 updated:</h3>
71+
<ul class="changes bgimages16">
72+
<li class="rscadd">Added a new quirk - Blindspot.</li>
73+
</ul>
74+
6075
<h2 class="date">31 December 2024</h2>
6176
<h3 class="author">Oblisk234 updated:</h3>
6277
<ul class="changes bgimages16">
@@ -65,6 +80,10 @@ <h3 class="author">Oblisk234 updated:</h3>
6580
<li class="bugfix">Mentor-maintainers/issue hunters' OOC tag will no longer evaporate into [] after readminning, deadminning, and rementoring.</li>
6681
<li class="bugfix">Discord mentor messages are now recorded in mhelp database and mentor tickets.</li>
6782
</ul>
83+
<h3 class="author">ynot01 updated:</h3>
84+
<ul class="changes bgimages16">
85+
<li class="bugfix">Fixed xenos & monkeys being unable to strip</li>
86+
</ul>
6887

6988
<h2 class="date">30 December 2024</h2>
7089
<h3 class="author">SapphicOverload, UselessTheremin updated:</h3>
@@ -678,65 +697,6 @@ <h3 class="author">ToasterBiome updated:</h3>
678697
<ul class="changes bgimages16">
679698
<li class="rscadd">Adds .38 Special and .38 Rubber ammo boxes and adds them to autolathe</li>
680699
</ul>
681-
682-
<h2 class="date">02 October 2024</h2>
683-
<h3 class="author">AMyriad updated:</h3>
684-
<ul class="changes bgimages16">
685-
<li class="imageadd">Staircases are now always shaded properly (see: IceMeta)</li>
686-
<li class="mapping">Touched up on a lot of maps using ramp shadows, replaced all old stair sprites with new ones</li>
687-
<li class="mapping">Some tiles outside the underground alien lab on icemoon will no longer protect from snow storm</li>
688-
</ul>
689-
<h3 class="author">Moltijoe updated:</h3>
690-
<ul class="changes bgimages16">
691-
<li class="tweak">Now mentions divulging in the darkspawn antag info panel</li>
692-
<li class="rscadd">Lets you see through jungleland trees if you're behind them</li>
693-
<li class="tweak">shifts around some jungleland biome flora spawns to make it feel better to traverse</li>
694-
</ul>
695-
<h3 class="author">Mqiib updated:</h3>
696-
<ul class="changes bgimages16">
697-
<li class="tweak">Caltrops now only slow if the damage is below 5</li>
698-
<li class="tweak">Digitigrade legs are slightly more resistant to caltrops (75%)</li>
699-
</ul>
700-
<h3 class="author">N3D6, @ChesterTheCheesy updated:</h3>
701-
<ul class="changes bgimages16">
702-
<li class="imageadd">icy chest sprites</li>
703-
<li class="rscadd">you can now cause icemoon caves to cave in, dropping an icy necropolis chest</li>
704-
</ul>
705-
<h3 class="author">N3D6, Baiomu made the glacite ore sprite updated:</h3>
706-
<ul class="changes bgimages16">
707-
<li class="rscadd">code for hardened ice generation</li>
708-
<li class="rscadd">Plasma glacite, the icemoon equivalent of plasma magmite</li>
709-
<li class="rscadd">The moon anvil, a new subtype of the world anvil that appears on the underground level of icemoon</li>
710-
<li class="rscadd">Glacite mega crusher</li>
711-
<li class="tweak">makes icemoon mineral walls use the normal snow sprite instead of a special one</li>
712-
<li class="mapping">moon anvil ruin</li>
713-
<li class="imageadd">sprites for glacite</li>
714-
<li class="imageadd">glacite crusher sprites</li>
715-
</ul>
716-
<h3 class="author">Oblisk234 updated:</h3>
717-
<ul class="changes bgimages16">
718-
<li class="tweak">Split personalities and imaginary friends can now understand their hosts' languages.</li>
719-
</ul>
720-
<h3 class="author">SapphicOverload updated:</h3>
721-
<ul class="changes bgimages16">
722-
<li class="rscadd">Makes grabbing a keybind that can be changed to something other than ctrl.</li>
723-
<li class="rscadd">Grabbing can now be toggled on and off with a separate keybind.</li>
724-
<li class="bugfix">Fixed ctrl-click not grabbing stuff</li>
725-
</ul>
726-
<h3 class="author">Scrambledeggs00 updated:</h3>
727-
<ul class="changes bgimages16">
728-
<li class="rscadd">Added hand scooping, multiscooping, and scooping failure</li>
729-
<li class="tweak">Tweaked info_tab, scoop flavortypes, and made vat upgradable</li>
730-
<li class="imageadd">Added sprites for cone box and service hatch for vat</li>
731-
</ul>
732-
<h3 class="author">missatessatessy because people should look at the wiki page they did updated:</h3>
733-
<ul class="changes bgimages16">
734-
<li class="rscadd">readds the TEG back to engine rotation</li>
735-
</ul>
736-
<h3 class="author">tattax updated:</h3>
737-
<ul class="changes bgimages16">
738-
<li class="bugfix">fixed lizard prison jumpsuit sprite + offset</li>
739-
</ul>
740700
</div>
741701

742702
<b>GoonStation 13 Development Team</b>

0 commit comments

Comments
 (0)