From e4ff1a3088772b1a9b7ea0d553b102494db43073 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 21 Oct 2014 09:10:23 +1030 Subject: [PATCH 1/8] Hydro tweaks, fixes #6808 --- code/modules/hydroponics/hydro_tray.dm | 28 ++++++++++++++++++----- code/modules/hydroponics/seed_machines.dm | 4 ++-- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/code/modules/hydroponics/hydro_tray.dm b/code/modules/hydroponics/hydro_tray.dm index f51420a11b..ba5f4dbc31 100644 --- a/code/modules/hydroponics/hydro_tray.dm +++ b/code/modules/hydroponics/hydro_tray.dm @@ -21,6 +21,7 @@ var/dead = 0 // Is it dead? var/harvest = 0 // Is it ready to harvest? var/age = 0 // Current plant age + var/sampled = 0 // Have wa taken a sample? // Harvest/mutation mods. var/yield_mod = 0 // Modifier to yield @@ -117,8 +118,8 @@ // Mutagen list specifies minimum value for the mutation to take place, rather // than a bound as the lists above specify. var/global/list/mutagenic_reagents = list( - "radium" = 3, - "mutagen" = 8 + "radium" = 8, + "mutagen" = 15 ) /obj/machinery/portable_atmospherics/hydroponics/New() @@ -172,7 +173,7 @@ // Weeds like water and nutrients, there's a chance the weed population will increase. // Bonus chance if the tray is unoccupied. - if(waterlevel > 10 && nutrilevel > 2 && prob(isnull(seed) ? 5 : 2)) + if(waterlevel > 10 && nutrilevel > 2 && prob(isnull(seed) ? 5 : 1)) weedlevel += 1 * HYDRO_SPEED_MULTIPLIER // There's a chance for a weed explosion to happen if the weeds take over. @@ -345,7 +346,7 @@ if(weedkiller_reagents[R.id]) weedlevel -= weedkiller_reagents[R.id] * reagent_total if(pestkiller_reagents[R.id]) - pestlevel -= pestkiller_reagents[R.id] * reagent_total + pestlevel += pestkiller_reagents[R.id] * reagent_total // Beneficial reagents have a few impacts along with health buffs. if(beneficial_reagents[R.id]) @@ -398,6 +399,8 @@ seed = null dead = 0 age = 0 + sampled = 0 + mutation_mod = 0 check_level_sanity() update_icon() @@ -413,6 +416,11 @@ seed = null dead = 0 + sampled = 0 + age = 0 + yield_mod = 0 + mutation_mod = 0 + user << "You remove the dead plant from the [src]." check_level_sanity() update_icon() @@ -489,6 +497,7 @@ harvest = 0 weedlevel = 0 pestlevel = 0 + sampled = 0 update_icon() visible_message("\blue [src] has been overtaken by [seed.display_name].") @@ -562,14 +571,21 @@ user << "There is nothing to take a sample from in \the [src]." return + if(sampled) + user << "You have already sampled from this plant." + return + if(dead) - user << "\The plant is dead." + user << "The plant is dead." return // Create a sample. seed.harvest(user,yield_mod,1) health -= (rand(3,5)*10) + if(prob(30)) + sampled = 1 + // Bookkeeping. check_level_sanity() force_update = 1 @@ -789,4 +805,4 @@ ..() verbs -= /obj/machinery/portable_atmospherics/hydroponics/verb/close_lid -#undef HYDRO_SPEED_MULTIPLIER \ No newline at end of file +#undef HYDRO_SPEED_MULTIPLIER diff --git a/code/modules/hydroponics/seed_machines.dm b/code/modules/hydroponics/seed_machines.dm index 5ab37d0ccf..0ca5fe74b6 100644 --- a/code/modules/hydroponics/seed_machines.dm +++ b/code/modules/hydroponics/seed_machines.dm @@ -44,7 +44,7 @@ var/open = 0 var/active = 0 - var/action_time = 100 + var/action_time = 50 var/last_action = 0 var/eject_disk = 0 var/failed_task = 0 @@ -335,4 +335,4 @@ seed.modified += rand(5,10) usr.set_machine(src) - src.add_fingerprint(usr) \ No newline at end of file + src.add_fingerprint(usr) From 5b7cb1f1172e8e7ff147d5e30758fa554aeef2e7 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Tue, 21 Oct 2014 16:46:48 +0100 Subject: [PATCH 2/8] Fix AI PDA showing tap messages --- code/game/objects/items/devices/PDA/PDA.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 69f4922bb9..987483cdd5 100755 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -260,9 +260,9 @@ var/global/list/obj/item/device/pda/PDAs = list() var/HTML = "AI PDA Message Log" for(var/index in tnote) if(index["sent"]) - HTML += addtext("→ To ", index["owner"],":
", index["message"], "
") + HTML += addtext("→ To ", index["owner"],":
", index["message"], "
") else - HTML += addtext("← From ", index["owner"],":
", index["message"], "
") + HTML += addtext("← From ", index["owner"],":
", index["message"], "
") HTML +="" usr << browse(HTML, "window=log;size=400x444;border=1;can_resize=1;can_close=1;can_minimize=0") @@ -656,7 +656,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if("Message") var/obj/item/device/pda/P = locate(href_list["target"]) - src.create_message(U, P) + src.create_message(U, P, !("notap" in href_list)) if(mode == 2) if(href_list["target"] in conversations) // Need to make sure the message went through, if not welp. active_conversation = href_list["target"] From 782e9f520dbbe55ad0de0f5f8beee160336c7ad8 Mon Sep 17 00:00:00 2001 From: RavingManiac Date: Wed, 22 Oct 2014 02:19:38 +0800 Subject: [PATCH 3/8] Changed the wording of the sniper rifle/binoculars zoom messages. Updated changelog. --- code/game/objects/items.dm | 4 ++-- code/modules/projectiles/guns/energy/special.dm | 2 +- html/changelog.html | 12 ++++++++++++ 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 5b41ba88b7..81603a9440 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -684,7 +684,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. usr.client.pixel_x = -viewoffset usr.client.pixel_y = 0 - usr.visible_message("[usr] peers through the [devicename].") + usr.visible_message("[usr] peers through the [zoomdevicename ? "[zoomdevicename] of the [src.name]" : "[src.name]"].") /* if(istype(usr,/mob/living/carbon/human/)) @@ -704,6 +704,6 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. usr.client.pixel_y = 0 if(!cannotzoom) - usr.visible_message("[usr] lowers the [devicename].") + usr.visible_message("[zoomdevicename ? "[usr] looks up from the [zoomdevicename] of the [src.name]" : "[usr] lowers the [src.name]"].") return \ No newline at end of file diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index cfb5e2cf3d..44941eb532 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -225,7 +225,7 @@ obj/item/weapon/gun/energy/staff/focus charge_cost = 250 fire_delay = 35 w_class = 4.0 - zoomdevicename = "sniper scope" + zoomdevicename = "scope" /obj/item/weapon/gun/energy/sniperrifle/verb/scope() set category = "Object" diff --git a/html/changelog.html b/html/changelog.html index fecd3052c1..a091338d90 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,18 @@ should be listed in the changelog upon commit though. Thanks. --> +
+

1 October 2014

+

RavingManiac updated:

+
    +
  • Zooming with the sniper rifle now adds a view offset in the direction you are facing.
  • +
  • Added binoculars - functionally similar to sniper scope. Adminspawn-only for now.
  • +
  • Bottles from chemistry now, like beakers, use chemical overlays instead of fixed sprites.
  • +
  • Being in space while not magbooted to something will cause your sprite to bob up and down.
  • +
+
+ +

1 October 2014

Zuhayr updated:

From 3e611029086857adc4c4a499d6845ca2b99c96a7 Mon Sep 17 00:00:00 2001 From: RavingManiac Date: Wed, 22 Oct 2014 02:28:23 +0800 Subject: [PATCH 4/8] another minor change to the sniper rifle zoom message --- code/game/objects/items.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 81603a9440..5ef7686e42 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -704,6 +704,6 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. usr.client.pixel_y = 0 if(!cannotzoom) - usr.visible_message("[zoomdevicename ? "[usr] looks up from the [zoomdevicename] of the [src.name]" : "[usr] lowers the [src.name]"].") + usr.visible_message("[zoomdevicename ? "[usr] looks up from the [src.name]" : "[usr] lowers the [src.name]"].") return \ No newline at end of file From f4893bed33f1b5dede8680c9931f9e46e102f3b1 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Wed, 22 Oct 2014 00:11:41 +0100 Subject: [PATCH 5/8] Ghost following double-click fix --- code/_onclick/observer.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/_onclick/observer.dm b/code/_onclick/observer.dm index 869b10c3a1..2b941562b0 100644 --- a/code/_onclick/observer.dm +++ b/code/_onclick/observer.dm @@ -25,6 +25,7 @@ // Otherwise jump else + following = null loc = get_turf(A) /mob/dead/observer/ClickOn(var/atom/A, var/params) From 5f1f3529f0a6500ea25c1ff5fac2a643d136c83a Mon Sep 17 00:00:00 2001 From: Graham Lloyd Date: Wed, 22 Oct 2014 15:44:40 -0400 Subject: [PATCH 6/8] Fixes extinguisher blasts (and effect/effects in general, like smoke) not being able to pass over tables and through grilles. --- code/game/objects/effects/effect_system.dm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm index 0da251e1ee..0a94205934 100644 --- a/code/game/objects/effects/effect_system.dm +++ b/code/game/objects/effects/effect_system.dm @@ -11,14 +11,13 @@ would spawn and follow the beaker, even if it is carried or thrown. icon = 'icons/effects/effects.dmi' mouse_opacity = 0 unacidable = 1//So effect are not targeted by alien acid. - flags = TABLEPASS + flags = PASSTABLE | PASSGRILLE /obj/effect/effect/water name = "water" icon = 'icons/effects/effects.dmi' icon_state = "extinguish" var/life = 15.0 - flags = TABLEPASS mouse_opacity = 0 /obj/effect/proc/delete() From c764a940737ec77f41b211708e738f9d06dc1b17 Mon Sep 17 00:00:00 2001 From: Graham Lloyd Date: Wed, 22 Oct 2014 15:58:27 -0400 Subject: [PATCH 7/8] fixes some annoying punctuation errors. --- code/game/gamemodes/cult/runes.dm | 2 +- code/game/gamemodes/malfunction/malfunction.dm | 2 +- code/game/machinery/computer/HolodeckControl.dm | 2 +- code/game/objects/structures/stool_bed_chair_nest/stools.dm | 2 +- code/modules/power/solar.dm | 2 +- code/modules/reagents/Chemistry-Reagents.dm | 2 +- code/modules/reagents/Chemistry-Recipes.dm | 2 +- code/modules/recycling/disposal.dm | 2 +- .../research/xenoarchaeology/tools/tools_depthscanner.dm | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 53ac2ee2d5..aae0870d8c 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -105,7 +105,7 @@ var/list/sacrificed = list() continue usr.say("Mah[pick("'","`")]weyh pleggh at e'ntrath!") M.visible_message("\red [M] writhes in pain as the markings below \him glow a bloody red.", \ - "\red AAAAAAHHHH!.", \ + "\red AAAAAAHHHH!", \ "\red You hear an anguished scream.") if(is_convertable_to_cult(M.mind) && !jobban_isbanned(M, "cultist"))//putting jobban check here because is_convertable uses mind as argument diff --git a/code/game/gamemodes/malfunction/malfunction.dm b/code/game/gamemodes/malfunction/malfunction.dm index 238fe6b12d..1c8f8b9b40 100644 --- a/code/game/gamemodes/malfunction/malfunction.dm +++ b/code/game/gamemodes/malfunction/malfunction.dm @@ -153,7 +153,7 @@ set name = "System Override" set desc = "Start the victory timer" if (!istype(ticker.mode,/datum/game_mode/malfunction)) - usr << "You cannot begin a takeover in this round type!." + usr << "You cannot begin a takeover in this round type!" return if (ticker.mode:malf_mode_declared) usr << "You've already begun your takeover." diff --git a/code/game/machinery/computer/HolodeckControl.dm b/code/game/machinery/computer/HolodeckControl.dm index 65871a67b3..3c153b58d1 100644 --- a/code/game/machinery/computer/HolodeckControl.dm +++ b/code/game/machinery/computer/HolodeckControl.dm @@ -472,7 +472,7 @@ var/global/list/holodeck_programs = list( /obj/structure/holohoop name = "basketball hoop" - desc = "Boom, Shakalaka!." + desc = "Boom, Shakalaka!" icon = 'icons/obj/basketball.dmi' icon_state = "hoop" anchored = 1 diff --git a/code/game/objects/structures/stool_bed_chair_nest/stools.dm b/code/game/objects/structures/stool_bed_chair_nest/stools.dm index ba27d070d7..f412467c65 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/stools.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/stools.dm @@ -78,7 +78,7 @@ /obj/item/weapon/stool/attack(mob/M as mob, mob/user as mob) if (prob(5) && istype(M,/mob/living)) - user.visible_message("\red [user] breaks [src] over [M]'s back!.") + user.visible_message("\red [user] breaks [src] over [M]'s back!") user.u_equip(src) var/obj/item/stack/sheet/metal/m = new/obj/item/stack/sheet/metal m.loc = get_turf(src) diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 768cdfc205..afad2591b8 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -534,4 +534,4 @@ var/list/solars_list = list() /obj/item/weapon/paper/solar name = "paper- 'Going green! Setup your own solar array instructions.'" - info = "

Welcome

At greencorps we love the environment, and space. With this package you are able to help mother nature and produce energy without any usage of fossil fuel or phoron! Singularity energy is dangerous while solar energy is safe, which is why it's better. Now here is how you setup your own solar array.

You can make a solar panel by wrenching the solar assembly onto a cable node. Adding a glass panel, reinforced or regular glass will do, will finish the construction of your solar panel. It is that easy!.

Now after setting up 19 more of these solar panels you will want to create a solar tracker to keep track of our mother nature's gift, the sun. These are the same steps as before except you insert the tracker equipment circuit into the assembly before performing the final step of adding the glass. You now have a tracker! Now the last step is to add a computer to calculate the sun's movements and to send commands to the solar panels to change direction with the sun. Setting up the solar computer is the same as setting up any computer, so you should have no trouble in doing that. You do need to put a wire node under the computer, and the wire needs to be connected to the tracker.

Congratulations, you should have a working solar array. If you are having trouble, here are some tips. Make sure all solar equipment are on a cable node, even the computer. You can always deconstruct your creations if you make a mistake.

That's all to it, be safe, be green!

" + info = "

Welcome

At greencorps we love the environment, and space. With this package you are able to help mother nature and produce energy without any usage of fossil fuel or phoron! Singularity energy is dangerous while solar energy is safe, which is why it's better. Now here is how you setup your own solar array.

You can make a solar panel by wrenching the solar assembly onto a cable node. Adding a glass panel, reinforced or regular glass will do, will finish the construction of your solar panel. It is that easy!

Now after setting up 19 more of these solar panels you will want to create a solar tracker to keep track of our mother nature's gift, the sun. These are the same steps as before except you insert the tracker equipment circuit into the assembly before performing the final step of adding the glass. You now have a tracker! Now the last step is to add a computer to calculate the sun's movements and to send commands to the solar panels to change direction with the sun. Setting up the solar computer is the same as setting up any computer, so you should have no trouble in doing that. You do need to put a wire node under the computer, and the wire needs to be connected to the tracker.

Congratulations, you should have a working solar array. If you are having trouble, here are some tips. Make sure all solar equipment are on a cable node, even the computer. You can always deconstruct your creations if you make a mistake.

That's all to it, be safe, be green!

" diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index a19c1d6a9c..885301fa4d 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -3363,7 +3363,7 @@ datum ethanol/brave_bull name = "Brave Bull" id = "bravebull" - description = "It's just as effective as Dutch-Courage!." + description = "It's just as effective as Dutch-Courage!" color = "#664300" // rgb: 102, 67, 0 boozepwr = 3 diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index e8af24aecc..df9c8a219a 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -1279,7 +1279,7 @@ datum for(var/mob/living/carbon/slime/slime in viewers(get_turf(holder.my_atom), null)) slime.rabid = 1 for(var/mob/O in viewers(get_turf(holder.my_atom), null)) - O.show_message(text("\red The [slime] is driven into a frenzy!."), 1) + O.show_message(text("\red The [slime] is driven into a frenzy!"), 1) //Pink slimeppotion diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index 68f502dad2..48c16a2977 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -474,7 +474,7 @@ M.show_message("\the [I] lands in \the [src].", 3) else for(var/mob/M in viewers(src)) - M.show_message("\the [I] bounces off of \the [src]'s rim!.", 3) + M.show_message("\the [I] bounces off of \the [src]'s rim!", 3) return 0 else return ..(mover, target, height, air_group) diff --git a/code/modules/research/xenoarchaeology/tools/tools_depthscanner.dm b/code/modules/research/xenoarchaeology/tools/tools_depthscanner.dm index 9f48c7d6a7..111e465e48 100644 --- a/code/modules/research/xenoarchaeology/tools/tools_depthscanner.dm +++ b/code/modules/research/xenoarchaeology/tools/tools_depthscanner.dm @@ -66,7 +66,7 @@ positive_locations.Add(D) for(var/mob/L in range(src, 1)) - L << "\blue \icon[src] [src] pings [pick("madly","wildly","excitedly","crazily")]!." + L << "\blue \icon[src] [src] pings [pick("madly","wildly","excitedly","crazily")]!" /obj/item/device/depth_scanner/attack_self(var/mob/user as mob) return src.interact(user) From 1401877e01f66e88788170ea17ef4c9fe9364b06 Mon Sep 17 00:00:00 2001 From: Graham Lloyd Date: Wed, 22 Oct 2014 17:11:11 -0400 Subject: [PATCH 8/8] silly me --- code/game/objects/effects/effect_system.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm index 0a94205934..ee82396788 100644 --- a/code/game/objects/effects/effect_system.dm +++ b/code/game/objects/effects/effect_system.dm @@ -11,7 +11,7 @@ would spawn and follow the beaker, even if it is carried or thrown. icon = 'icons/effects/effects.dmi' mouse_opacity = 0 unacidable = 1//So effect are not targeted by alien acid. - flags = PASSTABLE | PASSGRILLE + pass_flags = PASSTABLE | PASSGRILLE /obj/effect/effect/water name = "water"