From 061ddd3a29598ace440aab9bf3f8022af7512cb7 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Wed, 11 Oct 2017 16:45:07 -0400 Subject: [PATCH 01/53] Fixes init times --- code/modules/atmospherics/gasmixtures/gas_types.dm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/code/modules/atmospherics/gasmixtures/gas_types.dm b/code/modules/atmospherics/gasmixtures/gas_types.dm index 2135b9fbd0..ba5eaba7bb 100644 --- a/code/modules/atmospherics/gasmixtures/gas_types.dm +++ b/code/modules/atmospherics/gasmixtures/gas_types.dm @@ -12,7 +12,18 @@ GLOBAL_LIST_INIT(hardcoded_gases, list("o2","n2","co2","plasma")) //the main fou if(initial(gas.moles_visible) != null) gas_info[META_GAS_OVERLAY] = new /obj/effect/overlay/gas(initial(gas.gas_overlay)) gas_info[META_GAS_DANGER] = initial(gas.dangerous) +<<<<<<< HEAD .[initial(gas.id)] = gas_info +======= + gas_info[META_GAS_ID] = initial(gas.id) + .[gas_path] = gas_info + +/proc/gas_id2path(id) + var/list/meta_gas = GLOB.meta_gas_info + for(var/path in meta_gas) + if(meta_gas[path][META_GAS_ID] == id) + return path +>>>>>>> 7da4694... Fixes init times (#31580) /*||||||||||||||/----------\||||||||||||||*\ ||||||||||||||||[GAS DATUMS]|||||||||||||||| From 9050b8c7191f7662569b389db200dfda623a360a Mon Sep 17 00:00:00 2001 From: LetterJay Date: Thu, 12 Oct 2017 02:56:56 -0500 Subject: [PATCH 02/53] Update gas_types.dm --- code/modules/atmospherics/gasmixtures/gas_types.dm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/code/modules/atmospherics/gasmixtures/gas_types.dm b/code/modules/atmospherics/gasmixtures/gas_types.dm index ba5eaba7bb..a1c3db6e12 100644 --- a/code/modules/atmospherics/gasmixtures/gas_types.dm +++ b/code/modules/atmospherics/gasmixtures/gas_types.dm @@ -12,9 +12,6 @@ GLOBAL_LIST_INIT(hardcoded_gases, list("o2","n2","co2","plasma")) //the main fou if(initial(gas.moles_visible) != null) gas_info[META_GAS_OVERLAY] = new /obj/effect/overlay/gas(initial(gas.gas_overlay)) gas_info[META_GAS_DANGER] = initial(gas.dangerous) -<<<<<<< HEAD - .[initial(gas.id)] = gas_info -======= gas_info[META_GAS_ID] = initial(gas.id) .[gas_path] = gas_info @@ -23,7 +20,6 @@ GLOBAL_LIST_INIT(hardcoded_gases, list("o2","n2","co2","plasma")) //the main fou for(var/path in meta_gas) if(meta_gas[path][META_GAS_ID] == id) return path ->>>>>>> 7da4694... Fixes init times (#31580) /*||||||||||||||/----------\||||||||||||||*\ ||||||||||||||||[GAS DATUMS]|||||||||||||||| From c4653e6f5ed3a693454250cf127eb5dcf11d759c Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 11:37:04 -0400 Subject: [PATCH 03/53] Fix world/Topic calling the wrong handler proc (#31610) --- code/game/world.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/world.dm b/code/game/world.dm index 5fe674cb7f..5cb459c2d0 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -133,7 +133,7 @@ GLOBAL_PROTECT(security_mode) return handler = new handler() - return handler.Run(input) + return handler.TryRun(input) /world/proc/AnnouncePR(announcement, list/payload) var/static/list/PRcounts = list() //PR id -> number of times announced this round From 6c27182bec35d8197f3912573ace065bc0b6f2a7 Mon Sep 17 00:00:00 2001 From: Kyle Spier-Swenson Date: Thu, 12 Oct 2017 08:37:43 -0700 Subject: [PATCH 05/53] Fixes client vv not working. (#31556) --- code/modules/client/client_procs.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index 9b694d58b7..e14c48db3a 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -663,6 +663,7 @@ GLOBAL_LIST(external_rsc_urls) return FALSE if ("key") return FALSE + . = ..() /client/proc/change_view(new_size) From 00606b9303acba8b3fc23ee0463e880723fb9728 Mon Sep 17 00:00:00 2001 From: Tad Hardesty Date: Thu, 12 Oct 2017 08:39:38 -0700 Subject: [PATCH 07/53] Fix lavaland turfs looking awkward to AIs (#31554) --- code/modules/mob/living/silicon/ai/freelook/chunk.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/mob/living/silicon/ai/freelook/chunk.dm b/code/modules/mob/living/silicon/ai/freelook/chunk.dm index 8f50599c39..2a009d4d00 100644 --- a/code/modules/mob/living/silicon/ai/freelook/chunk.dm +++ b/code/modules/mob/living/silicon/ai/freelook/chunk.dm @@ -110,6 +110,8 @@ if(obscuredTurfs[t]) if(!t.obscured) t.obscured = image('icons/effects/cameravis.dmi', t, null, LIGHTING_LAYER+1) + t.obscured.pixel_x = -t.pixel_x + t.obscured.pixel_y = -t.pixel_y t.obscured.plane = LIGHTING_PLANE+1 obscured += t.obscured for(var/eye in seenby) @@ -165,6 +167,8 @@ var/turf/t = turf if(!t.obscured) t.obscured = image('icons/effects/cameravis.dmi', t, null, LIGHTING_LAYER+1) + t.obscured.pixel_x = -t.pixel_x + t.obscured.pixel_y = -t.pixel_y t.obscured.plane = LIGHTING_PLANE+1 obscured += t.obscured From 425915615b838f5537e723b43871c5ff050b05e0 Mon Sep 17 00:00:00 2001 From: duncathan salt Date: Thu, 12 Oct 2017 10:47:19 -0600 Subject: [PATCH 09/53] makes vacuums "cold", sort of (#31542) --- code/__DEFINES/atmospherics.dm | 1 + code/modules/atmospherics/gasmixtures/gas_mixture.dm | 3 +++ code/modules/atmospherics/gasmixtures/immutable_mixtures.dm | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index d3d1445c7d..383e4c8bcc 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -50,6 +50,7 @@ #define SPACE_HEAT_TRANSFER_COEFFICIENT 0.2 //a hack to partly simulate radiative heat #define OPEN_HEAT_TRANSFER_COEFFICIENT 0.4 #define WINDOW_HEAT_TRANSFER_COEFFICIENT 0.1 //a hack for now +#define HEAT_CAPACITY_VACUUM 7000 //a hack to help make vacuums "cold", sacrificing realism for gameplay //Must be between 0 and 1. Values closer to 1 equalize temperature faster //Should not exceed 0.4 else strange heat flow occur #define FIRE_MINIMUM_TEMPERATURE_TO_SPREAD 150+T0C diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 605d9b455a..44784ecec1 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -71,6 +71,9 @@ GLOBAL_LIST_INIT(gaslist_cache, init_gaslist_cache()) for(var/id in cached_gases) var/gas_data = cached_gases[id] . += gas_data[MOLES] * gas_data[GAS_META][META_GAS_SPECIFIC_HEAT] + if(!.) //if no heat capacity, we're a vacuum - things get weird like this but this hack sorta works + . += HEAT_CAPACITY_VACUUM + /datum/gas_mixture/proc/heat_capacity_archived() //joules per kelvin var/list/cached_gases = gases diff --git a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm index 55334cc087..4097ab5c6a 100644 --- a/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm +++ b/code/modules/atmospherics/gasmixtures/immutable_mixtures.dm @@ -54,7 +54,7 @@ initial_temperature = TCMB /datum/gas_mixture/immutable/space/heat_capacity() - return 7000 + return HEAT_CAPACITY_VACUUM /datum/gas_mixture/immutable/space/remove() return copy() //we're always empty, so we can just return a copy. From 763bcc59ee9cfe277a29360e3a99b52a09b5ce93 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 12:55:24 -0400 Subject: [PATCH 11/53] Merge pull request #31605 from AnturK/cryofix Fixes cryo --- .../atmospherics/machinery/components/unary_devices/cryo.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index 69b15ef1f4..277608d845 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -217,7 +217,9 @@ if(abs(temperature_delta) > 1) var/air_heat_capacity = air1.heat_capacity() - var/heat = ((1 - cold_protection) * 0.1 + conduction_coefficient) * temperature_delta * (1 / air_heat_capacity + 1 / heat_capacity) + + var/heat = ((1 - cold_protection) * 0.1 + conduction_coefficient) * temperature_delta * (air_heat_capacity * heat_capacity / (air_heat_capacity + heat_capacity)) + air1.temperature = max(air1.temperature - heat / air_heat_capacity, TCMB) mob_occupant.bodytemperature = max(mob_occupant.bodytemperature + heat / heat_capacity, TCMB) From 8ff51df06f0cf1b93be737acf82d87d3d4b9be7e Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 12:34:42 -0400 Subject: [PATCH 13/53] Fixes topic handlers --- code/game/world.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/world.dm b/code/game/world.dm index 5fe674cb7f..a4b1d9e512 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -121,7 +121,7 @@ GLOBAL_PROTECT(security_mode) var/datum/world_topic/handler for(var/I in topic_handlers) if(input[I]) - handler = I + handler = topic_handlers[I] break if((!handler || initial(handler.log)) && config && CONFIG_GET(flag/log_world_topic)) From e595c2f2fceb6e64fa04b323d00a2e7b45d11866 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 12:47:27 -0400 Subject: [PATCH 15/53] Fixes adminwho having namecheck as a keyword --- code/datums/world_topic.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/world_topic.dm b/code/datums/world_topic.dm index 02cb4e0c31..a5fedc39a2 100644 --- a/code/datums/world_topic.dm +++ b/code/datums/world_topic.dm @@ -122,7 +122,7 @@ return NC.Run(input["sender"], input["namecheck"]) /datum/world_topic/adminwho - keyword = "namecheck" + keyword = "adminwho" /datum/world_topic/adminwho/Run(list/input) return ircadminwho() From 76654718f1d0f47b8b26bcc79f98af5d28a5a1d3 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 12:37:02 -0400 Subject: [PATCH 17/53] Fixes topic key validation --- code/datums/world_topic.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/world_topic.dm b/code/datums/world_topic.dm index 02cb4e0c31..2f0c73d541 100644 --- a/code/datums/world_topic.dm +++ b/code/datums/world_topic.dm @@ -26,7 +26,7 @@ var/require_comms_key = FALSE /datum/world_topic/proc/TryRun(list/input) - key_valid = !config || CONFIG_GET(string/comms_key) != input["key"] + key_valid = config && (CONFIG_GET(string/comms_key) == input["key"]) if(require_comms_key && !key_valid) return "Bad Key" input -= "key" From f696ada7c8760661f286742ae95c73a63e40bf53 Mon Sep 17 00:00:00 2001 From: ShizCalev Date: Thu, 12 Oct 2017 13:34:11 -0400 Subject: [PATCH 19/53] Fixes conveyor belt layering (#31569) --- code/modules/recycling/conveyor2.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index 2a194ee95c..1ab1a46723 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -7,6 +7,7 @@ name = "conveyor belt" desc = "A conveyor belt." anchored = TRUE + layer = BELOW_OPEN_DOOR_LAYER var/operating = FALSE // 1 if running forward, -1 if backwards, 0 if off var/operable = 1 // true if can operate (no broken segments in this belt run) var/forwards // this is the default (forward) direction, set by the map dir From b7128a450891fd5913f8a5f158b8034f4bbe5571 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 13:33:51 -0400 Subject: [PATCH 21/53] Fix TGUI compiler git updates --- tools/TGUICompiler.php | 198 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 198 insertions(+) create mode 100644 tools/TGUICompiler.php diff --git a/tools/TGUICompiler.php b/tools/TGUICompiler.php new file mode 100644 index 0000000000..a393e1d3c6 --- /dev/null +++ b/tools/TGUICompiler.php @@ -0,0 +1,198 @@ + 0 && strpos($name, '\\') == false && strpos($name, '/') == false){ + $ext = pathinfo($name, PATHINFO_EXTENSION); + $mime = $finfo->file($F['tmp_name']); + if($ext == 'ract' && $mime == 'text/plain') + $good_files[] = $F; + } + } + $the_count = count($good_files); + if($the_count > 0 && $the_count < $max_number_of_uploads){ + $tgtgui_path = $tgdir . $path_to_tgui_from_repo; + $requests_dir = $parent_dir . '/requests'; + if(!is_dir($requests_dir)) + mkdir($requests_dir); + $target_path = str_replace('\\', '/', tempnam($requests_dir, 'tgui')); + unlink($target_path); + recurse_copy($tgtgui_path, $target_path); + $parent_node = $parent_dir . '/node_modules'; + $target_node = $target_path . '/node_modules'; + exec('mklink /j "' . str_replace('/', '\\', $target_node) . '" "' . str_replace('/', '\\', $parent_node) . '"'); + + //now copy the uploads to the thing + $target_interfaces = $target_path . '/src/interfaces/'; + foreach($good_files as $F){ + $target_name = $target_interfaces . $F['name']; + if(file_exists($target_name)) + unlink($target_name); //remove the file + move_uploaded_file($F['tmp_name'], $target_name); + } + + //compile + $command = '"' . $full_path_to_gulp . '" --cwd "' . str_replace('/', '\\', $target_path) . '" --min 2>&1'; + $output = shell_exec($command); + + $zip = new ZipArchive(); + $zippath = $target_path . '/TGUI.zip'; + if($zip->open($zippath, ZipArchive::CREATE) == TRUE){ + $zip->addFile($target_path . '/assets/tgui.css', 'tgui.css'); + $zip->addFile($target_path . '/assets/tgui.js', 'tgui.js'); + $zip->addFromString('gulp_output.txt', $output); + $zip->close(); + download_file($zippath); + } + else + $error = 'Unable to create output zipfile!'; + exec('rmdir "' . str_replace('/', '\\', $target_node) . '"'); //improtant + rrmdir($target_path); + } + else if(!$updated_git) + throw new RuntimeException('No valid files uploaded!'); + } +} +catch(Exception $e){ + $error = $e->getMessage(); +} + +?> + + + + TGUI .ract Compiler + + + An error occured: ' . $error . '

'; ?> +

Upload up to .ract files

+

Based off revision: ' . $revision . '' : $revision; ?> +
+ Update to latest revision (don't use this unless you have to)
+
+
+
+ + +
+ + + + From 9f9f06db07c06030d532b2b8ae19bcfda6dcabd4 Mon Sep 17 00:00:00 2001 From: ShizCalev Date: Thu, 12 Oct 2017 13:34:36 -0400 Subject: [PATCH 22/53] RESTORES THE CHAIN OF COMMAND ON DELTA STATION (#31567) --- _maps/map_files/Deltastation/DeltaStation2.dmm | 1 + 1 file changed, 1 insertion(+) diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 442d34746b..7deff229f7 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -47786,6 +47786,7 @@ pixel_y = 4 }, /obj/item/hand_tele, +/obj/item/melee/chainofcommand, /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/captain) "bQC" = ( From b2bcc4a6ba2d6948cde18f2870783269cb674f08 Mon Sep 17 00:00:00 2001 From: WJohn Date: Thu, 12 Oct 2017 13:35:44 -0400 Subject: [PATCH 24/53] Fixes black carpet sprite, and gives catwalks a super transparent layer of opacity. (#31558) --- icons/obj/smooth_structures/catwalk.dmi | Bin 2299 -> 2149 bytes icons/turf/floors/carpet_black.dmi | Bin 1836 -> 1828 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/smooth_structures/catwalk.dmi b/icons/obj/smooth_structures/catwalk.dmi index 834cfbbe5edbe5d34e03c527955684527316ace3..4b71fb507316716348e933692ae426dfe6167955 100644 GIT binary patch delta 1949 zcmZWpeLT}^8#i0luo!%yyNu}i|dD{rhTZeNvNR26{EK=f}ylnf8JxCre;o-z# zMo1kThvY4+h@*qeijpj^8^dUuF^#i4&wtPT$Mw1H@BO{M*XMfqTXtvkj?hX5)`HhH6qW+PqFC*Ko`L>_y@7J`>&gM<_vsf(hsR9=-EP0hp`aGkz zJEL1%E?SVre%esPJ*1jfR8)ZCry^?4GNl{1H&5!Sh8n$Pu=Y+5VeLuA?~ga2SG!nB zImx=BcS5mwciXEW^v=GFVXq-S{N}qDBL+6yr@&&7aSdqnXuuDj1f!fxJd&#KM5Q7d zXDoAsLLqo<)ih$Sdvi2Q}n&%@iu{~cysg-MouU>cEiy_<@&^qw3D&9X*pR0 zm59wF2*1%^e>@3h+u9RyNq%@(Vi18+6tG}la7yLjQf#X|dd{&KVp?wb!CD=$cvHa7FGIdPi} zEwfQ3F-5QV0}SRd?*=(4q8MnV{7OUFNLmk%Q9M^bhcigsl*1+LuPWc@h-P4egns6odR;X-=21$Ec?I6XpsnfmIPPZ3Sb zA}&3^H-sq$$Zh<;Nqel2)<6Jm&|lF|ZX zrA(4ed+>)&UP-~6FS=N!2nosW92f+7 zcLW-z{DQwyR7q$>Uo`gMj)X|L@J=sl>JYhOsxgA9vPEb1ylDz^sJGWG2bUxGLD;SsKsA;1mnX0om>f%u*GG{U_m9Y zNNnK6-5RQ0-iUx1Xl}Zb0J^xZTqhGtwE2i?92Rom8X9Dremj|=h z$7Yjv=+`0w6G}l--wyc;G*L1zT@r-Q+-Mq2dwc{`J_-R}=*?aSJPLxgI zXUd?h)mT+)H3W;)dWJlgs*LwBL!}-l>uRBzFTotwJ^htATxKOLFHXh`11Pe}cD-oC zSx|)MP7rW=qE$;|rKII*WLl!mJO#(Nt?+yfrxD}xh$3wM7p*VF694yk%W+**(K@=M zGrx8D$_DamJw%yDt!KiPeEm zkjCbuVpMU>=ug;ibHE&y|y)Dk7U8i_-T4CQPmvA5X z4V1;%Rr$GLq%(Q&_w0|DZ?@;)<2p{owM7-$>L2zSfr8~>CFs`1(YPh)dBX#tYqYg$hYn67x#p~);M=B&*$^pf83w@b6vmhb=|-3@B6#H6Y7es=|g}T z+{xbNIQ5?N{^M|Mmu<-?wZLgw!O9kcUn{;7s@GieUO?`(jr{TU$cBPz+aBm&2ynR* zp0J5`h)_&~4mffn(R){%4el&|-+ebIam(}IQFhBG-&R`1YTOSWK7Gou^0LI^ohBD+ zZcntNpsIR@y&?G`14Bi9*O_BOJOI@PFeGzx`{NdupKq35GQl#=>FJ@-=;>&};EKCl z0Eyi(J@065e~Kr6Y)XxZtBkG-$JiA5Jg8nfQBq~)@7T_cH8L{7uCc}~P7&x~p9Y^_ zDt3C^js=TpIEZ>jH~=@gE;N?dUssn?*QO^I8gKu5di-LQM*!h|*(Vx?54feBdziYv zd$SW0v)kzctA1oRKl7)3lwayeAub~G3DARcUKONYsz2f47dII1Qj;6`gY+Zk<&hQ(}OFC5NmD=%1l18R8N=L zd6ouyiG#MjQ23%fVm+g+fL;P>B8lx;#K4}ndZXZ7n~dUDl^;P-IK&yqCh9(8B1f^Z zS4nb*>n2Fz^~{Ovj%b46ghyE!g9Rl}v!Q3)md)Uuqb>S-ohaGGCIiWy58LELSD;ZngDnVFOX6hAyKu0xB|^%AS#kZsRPMUn)ggufGY~t=GEUX_X08B}1~i3M)NJ$(w5wl1JMQWyGvJ zDdsVi@eT@sj8-3Qo-J6M6b6}Us|>O~bYvM%m;3UZ0p7&g4LBSwKj61UNYHzgdHw3! zK|`+Fri`_b;S_$ZEV!^SJM8oqijPdT@nwwPD5Ob^Ko4BwJ&L_h7BJpq_0LwV`@Ar<$b!g zk3Jl-10y75gl7p)1Lgi8>nf_Db&siRG53zAaw#6>9E3eDHY5Kw*YUe3j8Gtdi z;?bHjku#wT33=HsL|4lHfF|xeMjpP<_-Q;(J`IvAiT7hc_xU3qCgC|6l6Zox5HhNS zEGk#kKbDjxK2hw{vb)^FF(E_j1Wl|Yqxn#m1{L9WGv;^-`sdDLAOEB<-;F+#D40o* zKw2tVGyO^`8jEw%xRw_pumhw~$Tm!LLKgP?a1;(aR;^R}o7xq}L;R7&EvX1fbL%El zI|k=nw-j$gx=ccY?d#kVGd`B|HDivZd@GiY_p7E(L;ip!Lt_!)=GmPPsA>Z&A8%>t zGF+#`zN5czE&8!#R9$WfBSRu4fg(MPK;-3^IQ3)bIXfoZ$$P<{y;+AGFh+sTe3f<>@nXDG9iuj(^ z*r-^{m5HIMLu}NMd6xsWY3N!TT}?~(9<$DwuhQ_#s~Oc>aRePy>$S)Q%<)S zUdp%WFYlLLJTgh?kHVQw$;}>tU$T6gSLF@e2j&6*5*u8?TW))I7Cb_G3}#;ChMhKP;)a zoA<#q+kBo#jZQ9$Cg^zd<+$44NgI^9uSRY;6(-;|u!XgB{dvUI?%Yauuw#R2Zj^x` zxRV4vZVKa^3jWXtsDPUXu|2IX>7-deE~1V?eD+`72exa>@>`;tep&5itzkYywJyQm z1rc@g@pr6leTIHzm2Nr@Dx+;XYU=bZkXYTDXs{Zy=t-IGmRQ8IFIz2S?qVrMqutBd zjy&216S&yFp6;m(1xY!aB9ot$m00bF!s+zS0!4kOb#>e3LKD9WrbY;cDN@u7YbPq9_#0zULVhG<2a3hFN)x$o4k!PHl?{H4cmawj&{skmJ9>aG+ z5Vs3{C>)RukuGBRk6%Q33#w5IkcFfIgnM6{p1I&p(7{H#O0jBbwe4f#;#pDuWecgr z&ZT$&_A(z^;Vhg?6GNFdGO;~D+jHh;}Cy9Ts{P#r1(xi}$gAk#~UF(95vilLMu4exNA14P_`!ZX<#D4%f?haw#()8UtpJflWMnKm0t|dS04zTO z@~pt_0hz1He~$nNuY#KgL`KB}kxER!%>$Vd2=qXtk`aL32etzG^9LfJmxuQG@gBsM z(u%ozFkveet&1VR`g-Y-U$9EnlSfNw#Td8|XnV|D34omdWJ-X6&ouzadh%$E1U$p> z>IhGerU|4|UOTcx3lVf@D*MRH^z{LZg^a2?W z7|#WmfBWin2F@OHDK8xXR}W-KAk+hqN=Lx&9vUJLTHYV7fj|#L3j6cX2}TRugRz?W z5g!8S`jKc|4gtTrpfV%?%>51ymaZR(mPPAi5ANf}tf%Y1><0Al_z%alu_b;;9S0vEfwvXHPyYI&;bT?QTsClRT ze~WDPH3-}vd-cg+x(x3558_g%&fKRECI(;bUze`BZQ0%g8b-M`3YU!H(S-}>0CKfaL%Pi`Kz z5-`s+-s3arsgK_JWBq8X*J_#}FmI2ZU3N;$WlMTAJgoS5z7?9auR}nz zJ$>KR9f@AxuSYiz=Rklzi^rd}j2?b;|NC_^b1|h}tGnOW>?;sB^3$<>?mAz7e?OlK zrr-ay{fBJ!S!$|nP z`XZly1(hn`Bv@>>| z9mck+t&n5k_fyM?d7gHuczEU zXmMQ*ftTX#+(iVibsm4}u_^ZVv+8mP=)VFMNC2kQ2wCm_W0OVz)aOD7nEL|_!4iLo^^8qi`>?C)n45x~|=Kdkk|*x%2p(h2+q6h{lKO5A|Db^rhX M07*qoM6N<$g6iJMx&QzG delta 1466 zcmV;r1x5O#4y+E4BnXO7OjJbx005CJhXm57Fl&*z;eUTgL_t(|ob8;8cH1Zrh8s<2 z-5AMEnt0QC>-3UryY24#zuqEr1FS4pX~1WGa%?Muu{9rp0VCd2S9*G5k#Bz2^1$!& zVf_5-N>8=|eDk}O2Y#Oq%0qA{TE1*ArAOd=MXrCYL!D~a- z6Y$J$mC}m2doW=u7Om(yjIFUJ@9U*Ye!(hPPaZ9$6=UE=pzSepB>;8;kSPHMKGy&w z>&c@v67USivm@Z@QQ!QFOC6ng^rX)D7Z(x07Jm`I77@S}5x^D^z!nj}77@S}7)qUg zaTQO1t^sTj0c;V0SPh=Qnq7`2ICuj47n)##L?BW`fCxmYcmmPkI1z{xT?0fQQbd3V zM2ZLyfk-7I!2CRreB~|?D4qcG^FZ>IyRihomw;=lN9*ou0kN6Ns*N;T&atQd{1(hKIVD5Ktuyp-Mv@`(>u3*D?6w8tO9Em^xZRUB((yM{DpT+JC)}u_6N4();0p@1-oBfM0t1uGc2){Rw+= zGrDw2?{9j&+XTHoWi%V&we6DvmUr5eMWAlv^KM_&O;d}+3nS1p;_-Id+%?@_ zT^fPruDaqI-i&8Z8i866_^{!!{>Z=L2(;J0Js$z+1cm{Qxqp$(z9NC4FS6O!Ai$ei5@_VnN9q0Q zldMA3GC{Aqf)ORp0+w=Yki`P|l;)1z#K z+VmuwpfA-I{#Em^_O2NM^Y#@8?0>$=xZykJ{eQY+ac%6BT%gRCs{0q&?8_4n>1!Xm z^~bmJ;MvW?Rs!ak#(R7wJ@?UDf2<#k^;%6c1m^A0v&(Mj@zge+r%&C{i)=}chKCg& z&$mLe_H_t|wx{pAx+BpG{PpDK;T#C?7xDO`meIra?tec|W-g}GYjyV9RK_7w=+wgKqh;?+|d zJ@96~oy)~EpTl`i{EB^*Ye0lS^|pH1%PLg&JWLN8;j*iJomQw4*YB@dM$mFR@G+>A z*|btWFpPvBs?YNIXHY3~X@9ML;8~6$ckQcv`|3~_fotAIaNl_Q`h$!kN+TfSw{3rP z+}tPf|9S+P-#0h^j7R_8C-VP#1g@(0Z^w>YN=rllI}riwG_7?A zoS(S~jq`FU)+veqGNejeLy5a^Q6{5-b(Y_&-EW7{VJ zf%Eg&b{dgkCnA8IhyZpX0@%qKjoN*mpS{Flr=>+n*)6OO$fUUvPOec`f zopv@2t&T|`)&4Y1El=|DeUC5jg9IOCs=E zw3oZ)yqHCdSsxXh4fivA>^HL;zbe{U5N_7h``vt4b&EA5y8U U%K3d{MgRZ+07*qoM6N<$f{y6qA^-pY From 4fe003af83e2589024d3a1590deb7dbbbaf8708d Mon Sep 17 00:00:00 2001 From: ShizCalev Date: Thu, 12 Oct 2017 13:37:15 -0400 Subject: [PATCH 26/53] Fixes plastic explosive issues (#31549) --- code/game/objects/items/grenades/plastic.dm | 24 ++++++++---------- icons/mob/inhands/weapons/bombs_lefthand.dmi | Bin 733 -> 743 bytes icons/mob/inhands/weapons/bombs_righthand.dmi | Bin 749 -> 759 bytes 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/code/game/objects/items/grenades/plastic.dm b/code/game/objects/items/grenades/plastic.dm index a0e7eb1b96..6c2ddd7ee7 100644 --- a/code/game/objects/items/grenades/plastic.dm +++ b/code/game/objects/items/grenades/plastic.dm @@ -2,11 +2,15 @@ name = "plastic explosive" desc = "Used to put holes in specific areas without too much extra hole." icon_state = "plastic-explosive0" - item_state = "plasticx" + item_state = "plastic-explosive" + lefthand_file = 'icons/mob/inhands/weapons/bombs_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/bombs_righthand.dmi' flags_1 = NOBLUDGEON_1 flags_2 = NO_EMP_WIRES_2 det_time = 10 display_timer = 0 + w_class = WEIGHT_CLASS_SMALL + origin_tech = "syndicate=1" var/atom/target = null var/mutable_appearance/plastic_overlay var/obj/item/device/assembly_holder/nadeassembly = null @@ -16,7 +20,7 @@ var/boom_sizes = list(0, 0, 3) /obj/item/grenade/plastic/New() - plastic_overlay = mutable_appearance(icon, "[item_state]2") + plastic_overlay = mutable_appearance(icon, "[item_state]2", HIGH_OBJ_LAYER) ..() /obj/item/grenade/plastic/Destroy() @@ -112,7 +116,7 @@ message_admins("[ADMIN_LOOKUPFLW(user)] planted [name] on [target.name] at [ADMIN_COORDJMP(target)] with [det_time] second fuse",0,1) log_game("[key_name(user)] planted [name] on [target.name] at [COORD(src)] with [det_time] second fuse") - target.add_overlay(plastic_overlay, 1) + target.add_overlay(plastic_overlay, TRUE) if(!nadeassembly) to_chat(user, "You plant the bomb. Timer counting down from [det_time].") addtimer(CALLBACK(src, .proc/prime), det_time*10) @@ -154,21 +158,12 @@ name = "C4" desc = "Used to put holes in specific areas without too much extra hole. A saboteur's favorite." gender = PLURAL - icon = 'icons/obj/grenade.dmi' - icon_state = "plastic-explosive0" - item_state = "plasticx" - lefthand_file = 'icons/mob/inhands/weapons/bombs_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/bombs_righthand.dmi' - flags_1 = NOBLUDGEON_1 - w_class = WEIGHT_CLASS_SMALL - origin_tech = "syndicate=1" var/timer = 10 var/open_panel = 0 /obj/item/grenade/plastic/c4/New() wires = new /datum/wires/explosive/c4(src) ..() - plastic_overlay = mutable_appearance(icon, "plastic-explosive2") /obj/item/grenade/plastic/c4/Destroy() qdel(wires) @@ -234,14 +229,14 @@ if(!user.temporarilyRemoveItemFromInventory(src)) return src.target = AM - forceMove(null) + moveToNullspace() var/message = "[ADMIN_LOOKUPFLW(user)] planted [name] on [target.name] at [ADMIN_COORDJMP(target)] with [timer] second fuse" GLOB.bombers += message message_admins(message,0,1) log_game("[key_name(user)] planted [name] on [target.name] at [COORD(target)] with [timer] second fuse") - target.add_overlay(plastic_overlay, 1) + target.add_overlay(plastic_overlay, TRUE) to_chat(user, "You plant the bomb. Timer counting down from [timer].") addtimer(CALLBACK(src, .proc/explode), timer * 10) @@ -272,5 +267,6 @@ desc = "A shaped high-explosive breaching charge. Designed to ensure user safety and wall nonsafety." icon_state = "plasticx40" item_state = "plasticx4" + gender = PLURAL directional = TRUE boom_sizes = list(0, 2, 5) diff --git a/icons/mob/inhands/weapons/bombs_lefthand.dmi b/icons/mob/inhands/weapons/bombs_lefthand.dmi index df168f848ddee82f8bc872f5be89c14dd1b8b82c..4772c01a22848bce78a8b441d300c811a7e3e930 100644 GIT binary patch delta 51 zcmV-30L=g01?L5jjsb^}k8L7ZH?^W5C%-teER|Rt6(+b;Dl549xqy8I02dlRhvSS4 Jxw8}j$pIO<6ZilC delta 41 zcmV+^0M`HK1>FUZjsbm9s$V#fEf}` diff --git a/icons/mob/inhands/weapons/bombs_righthand.dmi b/icons/mob/inhands/weapons/bombs_righthand.dmi index 718441b312585880c0f7c464201be2381b934859..9046e788d297738b0b4b717cc00e4792f6629020 100644 GIT binary patch delta 51 zcmV-30L=gG1@{Gzjsb^}k8L7ZH?^W5C%-teER|Rt6(+b;Dl549xqy8I02dlRhvSS4 Jxw8}j*#RIL6es`y delta 41 zcmV+^0M`Ha1?>fpjsbm9s$__g*g&` From 46c9ddb81c94709a8429e4d0385cb77577db618b Mon Sep 17 00:00:00 2001 From: kevinz000 Date: Thu, 12 Oct 2017 10:38:56 -0700 Subject: [PATCH 28/53] Adds tick check to ore boxes (#31396) * Update satchel_ore_boxdm.dm * Update satchel_ore_boxdm.dm * Update satchel_ore_boxdm.dm * Update satchel_ore_boxdm.dm * Update satchel_ore_boxdm.dm --- code/modules/mining/satchel_ore_boxdm.dm | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/code/modules/mining/satchel_ore_boxdm.dm b/code/modules/mining/satchel_ore_boxdm.dm index 17c89b3af9..832d55a6a0 100644 --- a/code/modules/mining/satchel_ore_boxdm.dm +++ b/code/modules/mining/satchel_ore_boxdm.dm @@ -18,7 +18,7 @@ S.remove_from_storage(O, src) //This will move the item to this item's contents to_chat(user, "You empty the ore in [S] into \the [src].") else if(istype(W, /obj/item/crowbar)) - playsound(loc, W.usesound, 50, 1) + playsound(src, W.usesound, 50, 1) var/obj/item/crowbar/C = W if(do_after(user, 50*C.toolspeed, target = src)) user.visible_message("[user] pries \the [src] apart.", "You pry apart \the [src].", "You hear splitting wood.") @@ -51,8 +51,16 @@ user << browse(dat, "window=orebox") /obj/structure/ore_box/proc/dump_box_contents() - for(var/obj/item/ore/O in contents) - O.forceMove(loc) + var/drop = drop_location() + for(var/obj/item/ore/O in src) + if(QDELETED(O)) + continue + if(QDELETED(src)) + break + O.forceMove(drop) + if(TICK_CHECK) + stoplag() + drop = drop_location() /obj/structure/ore_box/Topic(href, href_list) if(..()) @@ -64,10 +72,9 @@ src.add_fingerprint(usr) if(href_list["removeall"]) dump_box_contents() - to_chat(usr, "You empty the box.") + to_chat(usr, "You open the release hatch on the box..") updateUsrDialog() - /obj/structure/ore_box/deconstruct(disassembled = TRUE, mob/user) var/obj/item/stack/sheet/mineral/wood/WD = new (loc, 4) if(user) From 5c6503c2068dbf4fcf98cd7018a7146ec6f9da6c Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 13:42:07 -0400 Subject: [PATCH 30/53] Updates out of date URL in CONTRIBUTING.md (#31573) --- .github/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 46e509cb8f..0f5e927ad7 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -18,7 +18,7 @@ If you want to contribute the first thing you'll need to do is [set up Git](http We have a [list of guides on the wiki](http://www.tgstation13.org/wiki/index.php/Guides#Development_and_Contribution_Guides) that will help you get started contributing to /tg/station with Git and Dream Maker. For beginners, it is recommended you work on small projects like bugfixes at first. If you need help learning to program in BYOND, check out this [repository of resources](http://www.byond.com/developer/articles/resources). -There is an open list of approachable issues for [your inspiration here](https://github.com/tgstation/-tg-station/issues?q=is%3Aopen+is%3Aissue+label%3A%22Easy+Fix%22). +There is an open list of approachable issues for [your inspiration here](https://github.com/tgstation/-tg-station/issues?q=is%3Aopen+is%3Aissue+label%3A%22Good+First+Issue%22). You can of course, as always, ask for help at [#coderbus](irc://irc.rizon.net/coderbus) on irc.rizon.net. We're just here to have fun and help out, so please don't expect professional support. From 6221aed70ced3d2f476df38613d37badd9f7b848 Mon Sep 17 00:00:00 2001 From: AnturK Date: Wed, 11 Oct 2017 22:18:38 +0200 Subject: [PATCH 32/53] Fixes space transition (again) --- code/__DEFINES/maps.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/maps.dm b/code/__DEFINES/maps.dm index a69dcafa75..1320250f89 100644 --- a/code/__DEFINES/maps.dm +++ b/code/__DEFINES/maps.dm @@ -42,9 +42,10 @@ Last space-z level = empty #define ZLEVEL_LAVALAND 5 #define ZLEVEL_CITYOFCOGS 6 #define ZLEVEL_EMPTY_SPACE 12 -#define ZLEVEL_TRANSIT 11 +//Unless you modify it in map config should be equal to ZLEVEL_SPACEMAX +#define ZLEVEL_TRANSIT 13 #define ZLEVEL_SPACEMIN 3 -#define ZLEVEL_SPACEMAX 12 +#define ZLEVEL_SPACEMAX 13 #define SPACERUIN_MAP_EDGE_PAD 15 \ No newline at end of file From 572f3b8905dcf71446c5379800dbb6418f9221b9 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 16:27:22 -0400 Subject: [PATCH 34/53] Merge pull request #31585 from ShizCalev/empty-light-editor-fix Fixes empty light fixtures showing as working lights in DM --- code/modules/power/lighting.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index dc4296f262..d5b23670e3 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -190,11 +190,17 @@ break_light_tube(1) return ..() +/obj/machinery/light/built + icon_state = "tube-empty" + /obj/machinery/light/built/New() status = LIGHT_EMPTY update(0) ..() +/obj/machinery/light/small/built + icon_state = "bulb-empty" + /obj/machinery/light/small/built/New() status = LIGHT_EMPTY update(0) From 12ef284e68f4a2ac539ca0b63c03ee63562df422 Mon Sep 17 00:00:00 2001 From: vuonojenmustaturska Date: Thu, 12 Oct 2017 23:45:51 +0300 Subject: [PATCH 36/53] Fixes foam darts on cardboard cutouts and shooting range targets (#31579) --- code/game/objects/items/cardboard_cutouts.dm | 2 ++ code/game/objects/items/shooting_range.dm | 6 ++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/cardboard_cutouts.dm b/code/game/objects/items/cardboard_cutouts.dm index 6e911199c2..7f58bda189 100644 --- a/code/game/objects/items/cardboard_cutouts.dm +++ b/code/game/objects/items/cardboard_cutouts.dm @@ -67,6 +67,8 @@ push_over() /obj/item/cardboard_cutout/bullet_act(obj/item/projectile/P) + if(istype(P, /obj/item/projectile/bullet/reusable)) + P.on_hit(src, 0) visible_message("[src] has been hit by [P]!") playsound(src, 'sound/weapons/slice.ogg', 50, 1) if(prob(P.damage)) diff --git a/code/game/objects/items/shooting_range.dm b/code/game/objects/items/shooting_range.dm index c8249024f8..6803d6bb7b 100644 --- a/code/game/objects/items/shooting_range.dm +++ b/code/game/objects/items/shooting_range.dm @@ -65,10 +65,12 @@ playsound(src.loc, 'sound/items/bikehorn.ogg', 50, 1) /obj/item/target/bullet_act(obj/item/projectile/P) + if(istype(P, /obj/item/projectile/bullet/reusable)) // If it's a foam dart, don't bother with any of this other shit + return P.on_hit(src, 0) var/p_x = P.p_x + pick(0,0,0,0,0,-1,1) // really ugly way of coding "sometimes offset P.p_x!" var/p_y = P.p_y + pick(0,0,0,0,0,-1,1) var/decaltype = DECALTYPE_SCORCH - if(istype(/obj/item/projectile/bullet, P)) + if(istype(P, /obj/item/projectile/bullet)) decaltype = DECALTYPE_BULLET var/icon/C = icon(icon,icon_state) if(C.GetPixel(p_x, p_y) && P.original == src && overlays.len <= 35) // if the located pixel isn't blank (null) @@ -92,4 +94,4 @@ return -1 #undef DECALTYPE_SCORCH -#undef DECALTYPE_BULLET \ No newline at end of file +#undef DECALTYPE_BULLET From 848016ab150f08c8acc930975f6249bf72545785 Mon Sep 17 00:00:00 2001 From: YPOQ <30683121+YPOQ@users.noreply.github.com> Date: Thu, 12 Oct 2017 14:47:13 -0600 Subject: [PATCH 38/53] Fixes canisters breaking multiple times (#31586) --- code/modules/atmospherics/machinery/portable/canister.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm index fa2a6fbcbf..38c96a8ec9 100644 --- a/code/modules/atmospherics/machinery/portable/canister.dm +++ b/code/modules/atmospherics/machinery/portable/canister.dm @@ -273,7 +273,7 @@ return ..() /obj/machinery/portable_atmospherics/canister/obj_break(damage_flag) - if((flags_1 & BROKEN) || (flags_1 & NODECONSTRUCT_1)) + if((stat & BROKEN) || (flags_1 & NODECONSTRUCT_1)) return canister_break() From ca4907b8817cba9483617ce8b3cf11c4d7d74bd4 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 17:03:15 -0400 Subject: [PATCH 40/53] Merge pull request #31582 from feemjmeem/smoke-log-announcing Notify admins when someone activates a smoke machine --- code/modules/reagents/chemistry/machinery/smoke_machine.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/reagents/chemistry/machinery/smoke_machine.dm b/code/modules/reagents/chemistry/machinery/smoke_machine.dm index 381487450c..1fb167662e 100644 --- a/code/modules/reagents/chemistry/machinery/smoke_machine.dm +++ b/code/modules/reagents/chemistry/machinery/smoke_machine.dm @@ -106,6 +106,7 @@ if("power") on = !on if(on) + message_admins("[key_name_admin(usr)] activated a smoke machine that contains [english_list(reagents.reagent_list)] at [ADMIN_COORDJMP(src)].") log_admin("[key_name(usr)] activated a smoke machine that contains [english_list(reagents.reagent_list)] at [COORD(src)].") add_logs(usr, src, "has activated [src] which contains [english_list(reagents.reagent_list)].") if("goScreen") From 7ef36802ff6050b272a5c8081bb215d88a744606 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Thu, 12 Oct 2017 17:06:05 -0400 Subject: [PATCH 42/53] Merge pull request #31588 from ninjanomnom/shuttle-parallax Fixes stationary mob parallax --- code/modules/shuttle/on_move.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/shuttle/on_move.dm b/code/modules/shuttle/on_move.dm index ad21c9e6ba..ad2f44f534 100644 --- a/code/modules/shuttle/on_move.dm +++ b/code/modules/shuttle/on_move.dm @@ -85,14 +85,15 @@ All ShuttleMove procs go here if(rotation) shuttleRotate(rotation) //see shuttle_rotate.dm loc = newT - if(length(client_mobs_in_contents)) - update_parallax_contents() return TRUE // Called on atoms after everything has been moved /atom/movable/proc/afterShuttleMove(list/movement_force, shuttle_dir, shuttle_preferred_direction, move_dir) if(light) update_light() + + update_parallax_contents() + return TRUE ///////////////////////////////////////////////////////////////////////////////////// From f9436e53c46f38f10fccf054a168de12d4e73bbc Mon Sep 17 00:00:00 2001 From: Ashe Higgs Date: Thu, 12 Oct 2017 19:32:08 -0400 Subject: [PATCH 44/53] Stargazers are now station-restricted, and cogged APCs are now quiet (#31565) * Clockwork power generator tweaks * Includes a blob_allowed check --- code/game/area/areas.dm | 2 +- .../gamemodes/clock_cult/clock_items/integration_cog.dm | 3 --- .../clock_cult/clock_scriptures/scripture_drivers.dm | 7 +++++++ .../gamemodes/clock_cult/clock_structures/stargazer.dm | 4 ++++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index 222ce73f92..053ff34589 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -450,7 +450,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) if(!L.client.played) SEND_SOUND(L, sound(sound, repeat = 0, wait = 0, volume = 25, channel = CHANNEL_AMBIENCE)) L.client.played = TRUE - addtimer(CALLBACK(L.client, /client/proc/ResetAmbiencePlayed), 600) + addtimer(CALLBACK(L.client, /client/proc/ResetAmbiencePlayed), 600) /client/proc/ResetAmbiencePlayed() played = FALSE diff --git a/code/game/gamemodes/clock_cult/clock_items/integration_cog.dm b/code/game/gamemodes/clock_cult/clock_items/integration_cog.dm index 214345a71f..866458b4f6 100644 --- a/code/game/gamemodes/clock_cult/clock_items/integration_cog.dm +++ b/code/game/gamemodes/clock_cult/clock_items/integration_cog.dm @@ -31,8 +31,5 @@ if(cell && (cell.charge / cell.maxcharge > COG_MAX_SIPHON_THRESHOLD)) cell.use(1) adjust_clockwork_power(1) //Power is shared, so only do it once; this runs very quickly so it's about 1W/second - if(prob(1)) - playsound(apc, 'sound/machines/clockcult/steam_whoosh.ogg', 10, TRUE) - new/obj/effect/temp_visual/steam(get_turf(apc), pick(GLOB.cardinals)) #undef COG_MAX_SIPHON_THRESHOLD diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm index 19dee4e347..a219d64666 100644 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm +++ b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm @@ -231,6 +231,13 @@ quickbind = TRUE quickbind_desc = "Creates a stargazer, which generates power when near starlight." +/datum/clockwork_scripture/create_object/stargazer/check_special_requirements() + var/area/A = get_area(invoker) + if(A.outdoors || A.map_name == "Space" || !A.blob_allowed) + to_chat(invoker, "Stargazers can't be built off-station.") + return + return TRUE + //Integration Cog: Creates an integration cog that can be inserted into APCs to passively siphon power. /datum/clockwork_scripture/create_object/integration_cog diff --git a/code/game/gamemodes/clock_cult/clock_structures/stargazer.dm b/code/game/gamemodes/clock_cult/clock_structures/stargazer.dm index bb8051356e..4f04fcb82b 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/stargazer.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/stargazer.dm @@ -50,6 +50,10 @@ if(isspaceturf(T)) has_starlight = TRUE break + if(has_starlight && anchored) + var/area/A = get_area(src) + if(A.outdoors || A.map_name == "Space" || !A.blob_allowed) + has_starlight = FALSE if(old_status != has_starlight) if(has_starlight) visible_message("[src] hums and shines brilliantly!") From 49d5d08456f6b1074e3b47cb2826d6ca7fcb6c68 Mon Sep 17 00:00:00 2001 From: Armhulen Date: Thu, 12 Oct 2017 18:37:11 -0700 Subject: [PATCH 46/53] Adds a fireball from the heavens as an admin smite (#31502) * really gamers? * yeah yeah YEAH * cucked again! * it works * I SAID IT WORKS --- code/__DEFINES/admin.dm | 1 + code/modules/admin/verbs/randomverbs.dm | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/admin.dm b/code/__DEFINES/admin.dm index 482e42dafb..2a198947dc 100644 --- a/code/__DEFINES/admin.dm +++ b/code/__DEFINES/admin.dm @@ -141,6 +141,7 @@ #define ADMIN_PUNISHMENT_BRAINDAMAGE "Brain damage" #define ADMIN_PUNISHMENT_GIB "Gib" #define ADMIN_PUNISHMENT_BSA "Bluespace Artillery Device" +#define ADMIN_PUNISHMENT_FIREBALL "Fireball" #define AHELP_ACTIVE 1 #define AHELP_CLOSED 2 diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index feac0eb7aa..2ad40e5c6c 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -1166,7 +1166,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits if(!holder) return - var/list/punishment_list = list(ADMIN_PUNISHMENT_LIGHTNING, ADMIN_PUNISHMENT_BRAINDAMAGE, ADMIN_PUNISHMENT_GIB, ADMIN_PUNISHMENT_BSA) + var/list/punishment_list = list(ADMIN_PUNISHMENT_LIGHTNING, ADMIN_PUNISHMENT_BRAINDAMAGE, ADMIN_PUNISHMENT_GIB, ADMIN_PUNISHMENT_BSA, ADMIN_PUNISHMENT_FIREBALL) var/punishment = input("Choose a punishment", "DIVINE SMITING") as null|anything in punishment_list @@ -1186,6 +1186,8 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits target.gib(FALSE) if(ADMIN_PUNISHMENT_BSA) bluespace_artillery(target) + if(ADMIN_PUNISHMENT_FIREBALL) + new /obj/effect/temp_visual/target(get_turf(target)) var/msg = "[key_name_admin(usr)] punished [key_name_admin(target)] with [punishment]." message_admins(msg) @@ -1253,4 +1255,4 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits to_chat(usr, "ERROR: Unable to update player flags. Please check logs.") else message_admins("[key_name_admin(usr)] has [newstate ? "activated" : "deactivated"] job exp exempt status on [key_name_admin(C)]") - log_admin("[key_name(usr)] has [newstate ? "activated" : "deactivated"] job exp exempt status on [key_name(C)]") \ No newline at end of file + log_admin("[key_name(usr)] has [newstate ? "activated" : "deactivated"] job exp exempt status on [key_name(C)]") From 1a59fa86916ab7e6badc5fb748f70ba9cbb5e1a2 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 12 Oct 2017 22:38:02 -0500 Subject: [PATCH 48/53] Automatic changelog generation for PR #3330 [ci skip] --- html/changelogs/AutoChangeLog-pr-3330.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3330.yml diff --git a/html/changelogs/AutoChangeLog-pr-3330.yml b/html/changelogs/AutoChangeLog-pr-3330.yml new file mode 100644 index 0000000000..6c640082d4 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3330.yml @@ -0,0 +1,4 @@ +author: "CitadelStationBot" +delete-after: True +changes: + - bugfix: "AI eye camera static is now correctly positioned on Lavaland." From 76c5cc353f3847cbd14ff094869da93f4a50802e Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 12 Oct 2017 23:03:52 -0500 Subject: [PATCH 49/53] Automatic changelog generation for PR #3340 [ci skip] --- html/changelogs/AutoChangeLog-pr-3340.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3340.yml diff --git a/html/changelogs/AutoChangeLog-pr-3340.yml b/html/changelogs/AutoChangeLog-pr-3340.yml new file mode 100644 index 0000000000..3800dc6552 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3340.yml @@ -0,0 +1,4 @@ +author: "WJohnston" +delete-after: True +changes: + - imageadd: "Black carpets no longer have an ugly periodic black line in them. Regular catwalks are now totally opaque so you won't accidentally click on space when trying to place wires or tiles on them." From 4af4323069bb5b808f2e5c57b1d700459a2ba8cd Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 12 Oct 2017 23:04:50 -0500 Subject: [PATCH 50/53] Automatic changelog generation for PR #3341 [ci skip] --- html/changelogs/AutoChangeLog-pr-3341.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3341.yml diff --git a/html/changelogs/AutoChangeLog-pr-3341.yml b/html/changelogs/AutoChangeLog-pr-3341.yml new file mode 100644 index 0000000000..cd0944e03b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3341.yml @@ -0,0 +1,5 @@ +author: "ShizCalev" +delete-after: True +changes: + - bugfix: "C4 will no longer appear underneath objects on walls." + - bugfix: "Plastic explosives will no longer be invisible after being planted." From ddc9d1b34a0b6646712ba1e6cd6ad9026bc578d3 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 12 Oct 2017 23:07:15 -0500 Subject: [PATCH 51/53] Automatic changelog generation for PR #3348 [ci skip] --- html/changelogs/AutoChangeLog-pr-3348.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3348.yml diff --git a/html/changelogs/AutoChangeLog-pr-3348.yml b/html/changelogs/AutoChangeLog-pr-3348.yml new file mode 100644 index 0000000000..608889038b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3348.yml @@ -0,0 +1,4 @@ +author: "Naksu" +delete-after: True +changes: + - bugfix: "Reusable projectiles such as foam darts no longer get deleted if they're shot at a shooting range target or a cardboard cutout." From 183eae83f1c2d06cf45b69e5917264dd6f867ea9 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 12 Oct 2017 23:20:47 -0500 Subject: [PATCH 52/53] Automatic changelog generation for PR #3353 [ci skip] --- html/changelogs/AutoChangeLog-pr-3353.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3353.yml diff --git a/html/changelogs/AutoChangeLog-pr-3353.yml b/html/changelogs/AutoChangeLog-pr-3353.yml new file mode 100644 index 0000000000..9b9bb5ccca --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3353.yml @@ -0,0 +1,4 @@ +author: "ninjanomnom" +delete-after: True +changes: + - bugfix: "Mobs that didn't move during shuttle launch would not have their parallax updated. This is fixed now." From 157cf096739db14219b12ef2e2970dadc4712f80 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 12 Oct 2017 23:20:56 -0500 Subject: [PATCH 53/53] Automatic changelog generation for PR #3356 [ci skip] --- html/changelogs/AutoChangeLog-pr-3356.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3356.yml diff --git a/html/changelogs/AutoChangeLog-pr-3356.yml b/html/changelogs/AutoChangeLog-pr-3356.yml new file mode 100644 index 0000000000..54c28665d2 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3356.yml @@ -0,0 +1,5 @@ +author: "Xhuis" +delete-after: True +changes: + - balance: "Stargazers can no longer be built off-station, even in new areas." + - balance: "Integration cogs no longer emit sounds and steam visuals when active."