From bce4c6e34b8fd403e9f8bea3f16afd3925c3fa69 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sat, 20 Oct 2018 04:48:29 -0500 Subject: [PATCH] Fixes cuff teleporting and jaw issues --- .../living/silicon/robot/dogborg_equipment.dm | 109 +++++++++--------- 1 file changed, 54 insertions(+), 55 deletions(-) diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm index 6fe3994d20..555b0d17b3 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm @@ -3,31 +3,31 @@ DOG BORG EQUIPMENT HERE SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! */ +/obj/item/dogborg/jaws + name = "Dogborg jaws" + desc = "The jaws of the debug errors oh god." + icon = 'icons/mob/dogborg.dmi' + flags_1 = CONDUCT_1 + force = 1 + throwforce = 0 + w_class = 3 + hitsound = 'sound/weapons/bite.ogg' + sharpness = IS_SHARP + /obj/item/dogborg/jaws/big name = "combat jaws" - icon = 'icons/mob/dogborg.dmi' - icon_state = "jaws" desc = "The jaws of the law." - flags_1 = CONDUCT_1 + icon_state = "jaws" force = 12 - throwforce = 0 - hitsound = 'sound/weapons/bite.ogg' attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") - w_class = 3 - sharpness = IS_SHARP /obj/item/dogborg/jaws/small name = "puppy jaws" - icon = 'icons/mob/dogborg.dmi' + desc = "Rubberized teeth ." icon_state = "smalljaws" - desc = "The jaws of a small dog." - flags_1 = CONDUCT_1 force = 6 - throwforce = 0 - hitsound = 'sound/weapons/bite.ogg' attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") - w_class = 3 - sharpness = IS_SHARP + var/status = 0 /obj/item/dogborg/jaws/attack(atom/A, mob/living/silicon/robot/user) ..() @@ -36,49 +36,45 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! /obj/item/dogborg/jaws/small/attack_self(mob/user) var/mob/living/silicon/robot.R = user - if(R.emagged) - name = "combat jaws" - icon = 'icons/mob/dogborg.dmi' - icon_state = "jaws" - desc = "The jaws of the law." - flags_1 = CONDUCT_1 - force = 12 - throwforce = 0 - hitsound = 'sound/weapons/bite.ogg' - attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") - w_class = 3 - sharpness = IS_SHARP - else - name = "puppy jaws" - icon = 'icons/mob/dogborg.dmi' - icon_state = "smalljaws" - desc = "The jaws of a small dog." - flags_1 = CONDUCT_1 - force = 5 - throwforce = 0 - hitsound = 'sound/weapons/bite.ogg' - attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") - w_class = 3 - sharpness = IS_SHARP + if(R.cell && R.cell.charge > 100) + if(R.emagged && status == 0) + name = "combat jaws" + icon_state = "jaws" + desc = "The jaws of the law." + force = 12 + attack_verb = list("chomped", "bit", "ripped", "mauled", "enforced") + to_chat(user, "Your jaws are now [status ? "Combat" : "Pup'd"].") + else + name = "puppy jaws" + icon_state = "smalljaws" + desc = "The jaws of a small dog." + force = 5 + attack_verb = list("nibbled", "bit", "gnawed", "chomped", "nommed") + if(R.emagged) + to_chat(user, "Your jaws are now [status ? "Combat" : "Pup'd"].") update_icon() //Cuffs -/obj/item/restraints/handcuffs/cable/zipties/cyborg/dog/attack(mob/living/carbon/C, mob/user) +/obj/item/restraints/handcuffs/cable/zipties/cyborg/dog/attack(mob/living/carbon/C, mob/user, proximity) + if(!proximity) + return + if(!C.handcuffed) playsound(loc, 'sound/weapons/cablecuff.ogg', 60, 1, -2) C.visible_message("[user] is trying to put zipties on [C]!", \ "[user] is trying to put zipties on [C]!") - if(do_mob(user, C, 60)) - if(!C.handcuffed) - C.handcuffed = new /obj/item/restraints/handcuffs/cable/zipties/used(C) - C.update_inv_handcuffed(0) - to_chat(user,"You handcuff [C].") - playsound(loc, pick('sound/voice/beepsky/criminal.ogg', 'sound/voice/beepsky/justice.ogg', 'sound/voice/beepsky/freeze.ogg'), 50, FALSE) - log_combat(user, C, "handcuffed") - else + if(!do_mob(user, C, 60)) to_chat(user,"You fail to handcuff [C]!") + return + + if(!C.handcuffed) + C.handcuffed = new /obj/item/restraints/handcuffs/cable/zipties/used(C) + C.update_inv_handcuffed(0) + to_chat(user,"You handcuff [C].") + playsound(loc, pick('sound/voice/beepsky/criminal.ogg', 'sound/voice/beepsky/justice.ogg', 'sound/voice/beepsky/freeze.ogg'), 50, FALSE) + log_combat(user, C, "handcuffed") //Boop @@ -152,8 +148,10 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! /obj/item/analyzer/nose/AltClick(mob/user) //Barometer output for measuring when the next storm happens . = ..() -/obj/item/analyzer/nose/afterattack(atom/target, mob/user) +/obj/item/analyzer/nose/afterattack(atom/target, mob/user, proximity) . = ..() + if(!proximity) + return do_attack_animation(target, null, src) user.visible_message("[user] [pick(attack_verb)] \the [target.name] with their nose!") @@ -172,8 +170,8 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! STR.max_combined_w_class = 5 STR.max_items = 1 STR.cant_hold = typecacheof(list(/obj/item/disk/nuclear, /obj/item/radio/intercom)) -//Tongue stuff +//Tongue stuff /obj/item/soap/tongue name = "synthetic tongue" desc = "Useful for slurping mess off the floor before affectionally licking the crew members in the face." @@ -190,12 +188,6 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! ..() item_flags |= NOBLUDGEON //No more attack messages -/obj/item/trash/rkibble - name = "robo kibble" - desc = "A novelty bowl of assorted mech fabricator byproducts. Mockingly feed this to the sec-dog to help it recharge." - icon = 'icons/mob/dogborg.dmi' - icon_state= "kibble" - /obj/item/soap/tongue/attack_self(mob/user) var/mob/living/silicon/robot.R = user if(R.cell && R.cell.charge > 100) @@ -303,6 +295,13 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm ! target.wash_cream() return +//Dogfood + +/obj/item/trash/rkibble + name = "robo kibble" + desc = "A novelty bowl of assorted mech fabricator byproducts. Mockingly feed this to the sec-dog to help it recharge." + icon = 'icons/mob/dogborg.dmi' + icon_state= "kibble" //Defibs