diff --git a/monkestation/code/modules/slash_commands/world_topics.dm b/monkestation/code/modules/slash_commands/world_topics.dm index daa3a2a530c0..514b25ee4444 100644 --- a/monkestation/code/modules/slash_commands/world_topics.dm +++ b/monkestation/code/modules/slash_commands/world_topics.dm @@ -65,7 +65,14 @@ if(!id) logger.Log(LOG_CATEGORY_DEBUG, "NO MENTOR REPLY ID", input) return - var/datum/request/retrieved = GLOB.mentor_requests.requests_by_id[id] + + var/datum/request/retrieved + for(var/datum/request/request in GLOB.mentor_requests.requests_by_id) + if(num2text(request.id) != id) + continue + retrieved = request + break + if(!retrieved) logger.Log(LOG_CATEGORY_DEBUG, "NO MENTOR DATUM FOUND", input) return diff --git a/monkestation/code/modules/smithing/anvil/smithed_parts/rapier_blade.dm b/monkestation/code/modules/smithing/anvil/smithed_parts/rapier_blade.dm index c6373fccf17a..9e01cdd29ab4 100644 --- a/monkestation/code/modules/smithing/anvil/smithed_parts/rapier_blade.dm +++ b/monkestation/code/modules/smithing/anvil/smithed_parts/rapier_blade.dm @@ -17,6 +17,6 @@ attack_speed = CLICK_CD_LIGHT_WEAPON stamina_cost = round(20 * (100 / smithed_quality)) - force = round(((material_stats.density + material_stats.hardness) / 6.25) * (smithed_quality * 0.01)) + force = round(((material_stats.density + material_stats.hardness) / 11) * (smithed_quality * 0.01)) throwforce = force * 1.5 w_class = WEIGHT_CLASS_NORMAL diff --git a/monkestation/code/modules/smithing/anvil/smithed_parts/sword_blade.dm b/monkestation/code/modules/smithing/anvil/smithed_parts/sword_blade.dm index 8016a2d99c3e..4075b9571c21 100644 --- a/monkestation/code/modules/smithing/anvil/smithed_parts/sword_blade.dm +++ b/monkestation/code/modules/smithing/anvil/smithed_parts/sword_blade.dm @@ -17,6 +17,6 @@ attack_speed = CLICK_CD_BULKY_WEAPON stamina_cost = round(40 * (100 / smithed_quality)) - force = round(((material_stats.density + material_stats.hardness) / 7) * (smithed_quality * 0.01)) + force = round(((material_stats.density + material_stats.hardness) / 10) * (smithed_quality * 0.01)) throwforce = force * 0.75 w_class = WEIGHT_CLASS_BULKY diff --git a/monkestation/code/modules/smithing/machines/arc_forge.dm b/monkestation/code/modules/smithing/machines/arc_forge.dm index 5ef3fb24f51e..4a6b2c860304 100644 --- a/monkestation/code/modules/smithing/machines/arc_forge.dm +++ b/monkestation/code/modules/smithing/machines/arc_forge.dm @@ -29,6 +29,8 @@ /obj/machinery/arc_forge/add_context(atom/source, list/context, obj/item/held_item, mob/user) . = ..() + if((!slot_one_item || !slot_two_item) && (isstack(held_item) || istype(held_item, /obj/item/merged_material))) + context[SCREENTIP_CONTEXT_LMB] = "Add material to alloy." if(slot_one_item && slot_two_item) context[SCREENTIP_CONTEXT_ALT_LMB] = "Alloy Materials." return CONTEXTUAL_SCREENTIP_SET @@ -42,9 +44,11 @@ attacking_item = stack.split_stack(user, 1) if(try_add_to_buffer(attacking_item)) + visible_message(span_notice("[user] adds [attacking_item] into the arc forge.")) return TRUE if(istype(attacking_item, /obj/item/merged_material)) if(try_add_to_buffer(attacking_item)) + visible_message(span_notice("[user] adds [attacking_item] into the arc forge.")) return TRUE . = ..() diff --git a/monkestation/code/modules/smithing/machines/electroplater.dm b/monkestation/code/modules/smithing/machines/electroplater.dm index 044eb2751b17..4618101637a7 100644 --- a/monkestation/code/modules/smithing/machines/electroplater.dm +++ b/monkestation/code/modules/smithing/machines/electroplater.dm @@ -28,6 +28,18 @@ ///are we plating right now? var/plating = FALSE +/obj/machinery/electroplater/Initialize(mapload) + . = ..() + register_context() + +/obj/machinery/electroplater/add_context(atom/source, list/context, obj/item/held_item, mob/user) + . = ..() + if((isstack(held_item) || istype(held_item, /obj/item/merged_material)) && !stored_material) + context[SCREENTIP_CONTEXT_LMB] = "Add Material Plate." + if(stored_material && held_item) + context[SCREENTIP_CONTEXT_LMB] = "Try to plate item." + return CONTEXTUAL_SCREENTIP_SET + /obj/machinery/electroplater/attacked_by(obj/item/attacking_item, mob/living/user) if(isstack(attacking_item)) if(stored_material) @@ -38,11 +50,13 @@ if(stack.amount == 1) attacking_item.forceMove(src) stored_material = attacking_item + visible_message(span_notice("[user] puts the [attacking_item] into the electoplater.")) return FALSE else var/obj/item/stack/new_stack = stack.split_stack(user, 1) new_stack.forceMove(src) stored_material = new_stack + visible_message(span_notice("[user] puts the [attacking_item] into the electoplater.")) return FALSE else if(istype(attacking_item, /obj/item/merged_material)) @@ -50,6 +64,7 @@ return TRUE attacking_item.forceMove(src) stored_material = attacking_item + visible_message(span_notice("[user] puts the [attacking_item] into the electoplater.")) return FALSE if(!stored_material || plating_item || plating)