From f2b04be5611c8d0d961a0719299a9067c2f6936d Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Sat, 25 Jan 2020 02:16:45 +0100 Subject: [PATCH 1/2] More Runtimenator fixes. --- .../objects/items/robot/robot_upgrades.dm | 39 +++++++------------ code/game/objects/items/toys.dm | 1 + code/modules/games/cards.dm | 0 code/modules/hydroponics/plant_genes.dm | 2 +- code/modules/mob/living/living.dm | 2 +- 5 files changed, 18 insertions(+), 26 deletions(-) delete mode 100644 code/modules/games/cards.dm diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 62f36c60c0..09c2d442e8 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -203,7 +203,7 @@ var/obj/item/gun/energy/kinetic_accelerator/cyborg/KA = new (R.module) R.module.basic_modules += KA R.module.add_module(KA, FALSE, TRUE) - + /obj/item/borg/upgrade/advcutter name = "mining cyborg advanced plasma cutter" @@ -335,7 +335,6 @@ var/msg_cooldown = 0 var/on = FALSE var/powercost = 10 - var/mob/living/silicon/robot/cyborg var/datum/action/toggle_action /obj/item/borg/upgrade/selfrepair/action(mob/living/silicon/robot/R, user = usr) @@ -346,7 +345,6 @@ to_chat(user, "This unit is already equipped with a self-repair module.") return FALSE - cyborg = R icon_state = "selfrepair_off" toggle_action = new /datum/action/item_action/toggle(src) toggle_action.Grant(R) @@ -354,34 +352,20 @@ /obj/item/borg/upgrade/selfrepair/deactivate(mob/living/silicon/robot/R, user = usr) . = ..() if (.) - toggle_action.Remove(cyborg) + toggle_action.Remove(R) QDEL_NULL(toggle_action) - cyborg = null - deactivate_sr() - -/obj/item/borg/upgrade/selfrepair/dropped() - . = ..() - addtimer(CALLBACK(src, .proc/check_dropped), 1) - -/obj/item/borg/upgrade/selfrepair/proc/check_dropped() - if(loc != cyborg) - toggle_action.Remove(cyborg) - QDEL_NULL(toggle_action) - cyborg = null deactivate_sr() /obj/item/borg/upgrade/selfrepair/ui_action_click() - on = !on if(on) - to_chat(cyborg, "You activate the self-repair module.") - START_PROCESSING(SSobj, src) + to_chat(toggle_action.owner, "You deactivate the self-repair module.") + deactivate_sr() else - to_chat(cyborg, "You deactivate the self-repair module.") - STOP_PROCESSING(SSobj, src) - update_icon() + to_chat(toggle_action.owner, "You activate the self-repair module.") + activate_sr() /obj/item/borg/upgrade/selfrepair/update_icon() - if(cyborg) + if(toggle_action) icon_state = "selfrepair_[on ? "on" : "off"]" for(var/X in actions) var/datum/action/A = X @@ -389,6 +373,11 @@ else icon_state = "cyborg_upgrade5" +/obj/item/borg/upgrade/selfrepair/proc/activate_sr() + START_PROCESSING(SSobj, src) + on = TRUE + update_icon() + /obj/item/borg/upgrade/selfrepair/proc/deactivate_sr() STOP_PROCESSING(SSobj, src) on = FALSE @@ -399,7 +388,9 @@ repair_tick = 1 return - if(cyborg && (cyborg.stat != DEAD) && on) + var/mob/living/silicon/robot/cyborg = toggle_action.owner + + if(istype(cyborg) && (cyborg.stat != DEAD) && on) if(!cyborg.cell) to_chat(cyborg, "Self-repair module deactivated. Please, insert the power cell.") deactivate_sr() diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 92798528ae..60ab7ffbdf 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -1012,6 +1012,7 @@ /obj/item/toy/cards/singlecard/examine(mob/user) + . = ..() if(ishuman(user)) var/mob/living/carbon/human/cardUser = user if(cardUser.is_holding(src)) diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index 99fd873995..358d017caf 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -107,7 +107,7 @@ // Reagent genes store reagent ID and reagent ratio. Amount of reagent in the plant = 1 + (potency * rate) /datum/plant_gene/reagent name = "Nutriment" - var/reagent_id = "nutriment" + var/reagent_id = /datum/reagent/nutriment var/rate = 0.04 /datum/plant_gene/reagent/get_name() diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index a2689f0b5f..0d87edbb0e 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1073,7 +1073,7 @@ stop_pulling() //CIT CHANGE - Ditto... else if(has_legs || ignore_legs) lying = 0 - if (pulledby) + if (pulledby && isliving(pulledby)) var/mob/living/L = pulledby L.update_pull_movespeed() if(buckled) From 5cf7c259fa0c7d43e4b8c2f0bcf167a771ab98a2 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Sat, 25 Jan 2020 02:39:58 +0100 Subject: [PATCH 2/2] Runtimenator 2: Compile-net --- code/modules/hydroponics/plant_genes.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index 358d017caf..087cc6dca5 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -107,7 +107,7 @@ // Reagent genes store reagent ID and reagent ratio. Amount of reagent in the plant = 1 + (potency * rate) /datum/plant_gene/reagent name = "Nutriment" - var/reagent_id = /datum/reagent/nutriment + var/reagent_id = /datum/reagent/consumable/nutriment var/rate = 0.04 /datum/plant_gene/reagent/get_name()