diff --git a/code/modules/antagonists/clockcult/clock_items/clockwork_weaponry.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_weaponry.dm index f2174030a651..d4a3ffedceb0 100644 --- a/code/modules/antagonists/clockcult/clock_items/clockwork_weaponry.dm +++ b/code/modules/antagonists/clockcult/clock_items/clockwork_weaponry.dm @@ -13,3 +13,31 @@ if(new_action) action = new_action action.weapon = src + +/obj/item/clockwork/weapon/attack_self(mob/user) + if(!iscyborg(user)) + return ..() + var/mob/living/silicon/robot/robot_user = user + for(var/i in 1 to 3) ///shitcode + if(robot_user.held_items[i] && robot_user.held_items[i] == src) + var/choice = input(user,"What weapon do you want to activate?", "Weapon") as anything in (list("ratvarian spear","brass battle-hammer","brass longsword") - initial(name)) + if(!choice || QDELETED(src)) + return + var/obj/item/weapon_type + switch(choice) + if("ratvarian spear") + weapon_type = /obj/item/clockwork/weapon/ratvarian_spear + if("brass battle-hammer") + weapon_type = /obj/item/clockwork/weapon/brass_battlehammer + if("brass longsword") + weapon_type = /obj/item/clockwork/weapon/brass_sword + robot_user.unequip_module_from_slot(src, i) + + if(!weapon_type) + return + + var/obj/item/weapon = new weapon_type (robot_user.module) + robot_user.module.ratvar_modules += weapon + robot_user.module.add_module(weapon, FALSE, TRUE) + robot_user.activate_module(weapon) + qdel(src) \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 887c0dcf0b84..332762bc5bf5 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -586,6 +586,7 @@ ratvar_modules = list( /obj/item/clockwork/slab/cyborg/miner, /obj/item/clockwork/weapon/ratvarian_spear, + /datum/action/innate/call_weapon/brass_bow, /obj/item/borg/sight/xray/truesight_lens) cyborg_base_icon = "miner" moduleselect_icon = "miner"