From 2904743d2ce3be9502833d7692f797c3ff2924db Mon Sep 17 00:00:00 2001 From: mikomyazaki <47489928+mikomyazaki@users.noreply.github.com> Date: Mon, 17 Feb 2020 17:49:22 +0000 Subject: [PATCH] Fixes scanning slimes with only two mutation possibilities. (#8284) --- code/game/objects/items/devices/scanners.dm | 18 +++------ html/changelogs/slimemutationposs.yml | 41 +++++++++++++++++++++ 2 files changed, 47 insertions(+), 12 deletions(-) create mode 100644 html/changelogs/slimemutationposs.yml diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index f64755c064e..b1e0ee081fa 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -488,18 +488,12 @@ BREATH ANALYZER if(T.slime_mutation[4] == T.colour) to_chat(user, span("warning", "This slime cannot evolve any further.")) else - if(T.slime_mutation[3] == T.slime_mutation[4]) - if(T.slime_mutation[2] == T.slime_mutation[1]) - to_chat(user, span("notice", "Possible mutation: [T.slime_mutation[3]]")) - to_chat(user, span("notice", "Instability: [T.mutation_chance/2]% chance of mutation upon reproduction.")) - else - to_chat(user, span("notice", "Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]] (x2)")) - to_chat(user, span("notice", "Instability: [T.mutation_chance]% chance of mutation upon reproduction.")) - else - to_chat(user, span("notice", "Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]], [T.slime_mutation[4]]")) - to_chat(user, span("notice", "Instability: [T.mutation_chance]% chance of mutation upon reproduction.")) - to_chat(user, span("notice", "**************************")) - + var/list/poss_mutations = uniquelist(T.slime_mutation) + var/mutation_message = capitalize(english_list(poss_mutations)) + to_chat(user, SPAN_NOTICE(mutation_message)) + var/mut_chance = T.mutation_chance / (poss_mutations.len > 2 ? 1 : 2) + to_chat(user, SPAN_NOTICE("Instability: [mut_chance]% chance of mutation upon reproduction.")) + to_chat(user, SPAN_NOTICE("**************************")) /obj/item/device/price_scanner name = "price scanner" diff --git a/html/changelogs/slimemutationposs.yml b/html/changelogs/slimemutationposs.yml new file mode 100644 index 00000000000..10f43d38ae4 --- /dev/null +++ b/html/changelogs/slimemutationposs.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: mikomyazaki + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - bugfix: "Scanning slimes with only two mutation possibilities will now display the two possibilities instead of just the second one." \ No newline at end of file