From f2d48983c482ac83a93da0e0279d6336fa481bcd Mon Sep 17 00:00:00 2001 From: Alberyk Date: Tue, 17 Jul 2018 16:55:01 -0300 Subject: [PATCH] Bug fixes: trial by fire (#4990) -fixes #4697 -fixes #3913 -fixes #3216 -fixes #1854 -fixes #901 -fixes #1597 -fixes #4469 -fixes #1215 -fixes #3681 -fixes #3567 --- code/game/mecha/mecha.dm | 2 ++ code/game/objects/items/weapons/material/shards.dm | 2 +- code/game/objects/items/weapons/material/twohanded.dm | 6 +++++- code/game/objects/items/weapons/trays.dm | 2 +- code/modules/admin/admin.dm | 2 +- code/modules/mining/mine_items.dm | 4 ++++ code/modules/mob/living/carbon/alien/diona/life.dm | 9 +++++---- .../modular_computers/computers/subtypes/dev_laptop.dm | 1 + code/modules/projectiles/guns/projectile/automatic.dm | 3 +++ code/modules/projectiles/projectile/change.dm | 2 +- html/changelogs/alberyk-moremorefixes.yml | 6 ++++++ 11 files changed, 30 insertions(+), 9 deletions(-) create mode 100644 html/changelogs/alberyk-moremorefixes.yml diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index dfcf2fc796c..a8372feb28f 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -1184,6 +1184,8 @@ if(C.handcuffed) usr << "Kinda hard to climb in while handcuffed don't you think?" return + if(!C.IsAdvancedToolUser()) + return if (src.occupant) usr << "The [src.name] is already occupied!" src.log_append_to_last("Permission denied.") diff --git a/code/game/objects/items/weapons/material/shards.dm b/code/game/objects/items/weapons/material/shards.dm index b9e47e2c721..25297683f1a 100644 --- a/code/game/objects/items/weapons/material/shards.dm +++ b/code/game/objects/items/weapons/material/shards.dm @@ -50,7 +50,7 @@ if(iswelder(W) && material.shard_can_repair) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0, user)) - material.place_sheet(loc) + material.place_sheet(user.loc) qdel(src) return return ..() diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index d4f83e4a7e7..cef365a7f96 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -100,6 +100,10 @@ else return + if(!istype(user.get_active_hand(), src)) + user << "You need to be holding the [name] in your active hand." + return + if(wielded) //Trying to unwield it unwield() user << "You are now carrying the [name] with one hand." @@ -113,7 +117,7 @@ else //Trying to wield it if(user.get_inactive_hand()) - user << "You need your other hand to be empty" + user << "You need your other hand to be empty." return wield() user << "You grab the [base_name] with both hands." diff --git a/code/game/objects/items/weapons/trays.dm b/code/game/objects/items/weapons/trays.dm index dbed0ddd5a7..146da1364e9 100644 --- a/code/game/objects/items/weapons/trays.dm +++ b/code/game/objects/items/weapons/trays.dm @@ -214,9 +214,9 @@ return 1 /obj/item/weapon/tray/AltClick(var/mob/user) + if (!use_check(user, show_messages = FALSE)) return unload(user) - /obj/item/weapon/tray/proc/attempt_load_item(var/obj/item/I, var/mob/user, var/messages = 1) if( I != src && !I.anchored && !istype(I, /obj/item/projectile) ) var/match = 0 diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index fbc97b184c3..af5a439fa82 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -1334,9 +1334,9 @@ proc/admin_notice(var/message, var/rights) if(check_rights(R_ADMIN|R_MOD)) if (H.paralysis == 0) - H.paralysis = 8000 msg = "has paralyzed [key_name_admin(H)]." H.visible_message("OOC Information: [H] has been winded by a member of staff! Please freeze all roleplay involving their character until the matter is resolved! Adminhelp if you have further questions.", "You have been winded by a member of staff! Please stand by until they contact you!") + H.paralysis = 8000 else if (alert("The player is currently winded. Do you want to unwind him?", "Unwind player?", "Yes", "No") == "No") return diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index b3d13c22aae..2da5bf340a7 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -123,6 +123,10 @@ else return + if(!istype(user.get_active_hand(), src)) + user << "You need to be holding the [name] in your active hand." + return + if(wielded) //Trying to unwield it unwield() user << "You are now carrying the [initial(name)] with one hand." diff --git a/code/modules/mob/living/carbon/alien/diona/life.dm b/code/modules/mob/living/carbon/alien/diona/life.dm index 28c55d75fb1..09b95ea3ddf 100644 --- a/code/modules/mob/living/carbon/alien/diona/life.dm +++ b/code/modules/mob/living/carbon/alien/diona/life.dm @@ -40,7 +40,8 @@ /mob/living/carbon/alien/diona/think() ..() if (!gestalt) - if(master_nymph && !client && master_nymph != src) - walk_to(src,master_nymph,1,movement_delay()) - else - walk_to(src,0) + if(stat != DEAD) + if(master_nymph && !client && master_nymph != src) + walk_to(src,master_nymph,1,movement_delay()) + else + walk_to(src,0) diff --git a/code/modules/modular_computers/computers/subtypes/dev_laptop.dm b/code/modules/modular_computers/computers/subtypes/dev_laptop.dm index 3bf90b564ac..fa23637dc16 100644 --- a/code/modules/modular_computers/computers/subtypes/dev_laptop.dm +++ b/code/modules/modular_computers/computers/subtypes/dev_laptop.dm @@ -16,6 +16,7 @@ var/icon_state_closed = "laptop-closed" /obj/item/modular_computer/laptop/AltClick() + if (!use_check(usr, show_messages = FALSE)) return // Prevents carrying of open laptops inhand. // While they work inhand, i feel it'd make tablets lose some of their high-mobility advantage they have over laptops now. if(!istype(loc, /turf/)) diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index e3dd1760ebb..9334d96897b 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -396,6 +396,9 @@ set category = "Object" set src in usr + toggle_wield(usr) + usr.update_icon() + /obj/item/weapon/gun/projectile/automatic/rifle/shotgun name = "assault shotgun" desc = "A experimental, semi-automatic combat shotgun, designed for boarding operations and law enforcement agencies." diff --git a/code/modules/projectiles/projectile/change.dm b/code/modules/projectiles/projectile/change.dm index d310bb7b23c..6600b826b8a 100644 --- a/code/modules/projectiles/projectile/change.dm +++ b/code/modules/projectiles/projectile/change.dm @@ -77,7 +77,7 @@ H.name += " [pick(last_names)]" H.real_name = H.name - H.set_species(randomize) + addtimer(CALLBACK(H, /mob/living/carbon/human.proc/set_species, randomize), 0) H.universal_speak = 1 var/datum/preferences/A = new() //Randomize appearance for the human A.randomize_appearance_for(H) diff --git a/html/changelogs/alberyk-moremorefixes.yml b/html/changelogs/alberyk-moremorefixes.yml new file mode 100644 index 00000000000..f0fb743a8ac --- /dev/null +++ b/html/changelogs/alberyk-moremorefixes.yml @@ -0,0 +1,6 @@ +author: Alberyk + +delete-after: True + +changes: + - bugfix: "The staff of change should work properly now."