diff --git a/code/game/objects/items/weapons/RSF.dm b/code/game/objects/items/weapons/RSF.dm index 260a01b04d..8684a9c058 100644 --- a/code/game/objects/items/weapons/RSF.dm +++ b/code/game/objects/items/weapons/RSF.dm @@ -64,25 +64,29 @@ RSF /obj/item/weapon/rsf/attack_self(mob/user as mob) playsound(src.loc, 'sound/effects/pop.ogg', 50, 0) - if (mode == 1) + if(mode == 1) mode = 2 to_chat(user,"Changed dispensing mode to 'Container'.") return - if (mode == 2) + if(mode == 2) mode = 3 - to_chat(user,"Changed dispensing mode to 'Paper'") + to_chat(user,"Changed dispensing mode to 'Metamorphic Glass: Pint'") //YW Changes begin return - if (mode == 3) + if(mode == 3) mode = 4 - to_chat(user,"Changed dispensing mode to 'Pen'") + to_chat(user,"Changed dispensing mode to 'Paper'") return - if (mode == 4) + if(mode == 4) mode = 5 - to_chat(user,"Changed dispensing mode to 'Dice Pack'") + to_chat(user,"Changed dispensing mode to 'Pen'") return - if (mode == 5) + if(mode == 5) + mode = 6 + to_chat(user,"Changed dispensing mode to 'Dice Pack'") + return + if(mode == 6) mode = 1 - to_chat(user,"Changed dispensing mode to 'Cigarette'") + to_chat(user,"Changed dispensing mode to 'Cigarette'") // YW Changes end return /obj/item/weapon/rsf/afterattack(atom/A, mob/user as mob, proximity) @@ -112,12 +116,15 @@ RSF product = new glasstype() used_energy = 50 if(3) + product = new /obj/item/weapon/reagent_containers/food/drinks/metaglass() //YW Changes begin + used_energy = 50 + if(4) product = new /obj/item/weapon/paper() used_energy = 10 - if(4) + if(5) product = new /obj/item/weapon/pen() used_energy = 50 - if(5) + if(6) //YW Changes end product = new /obj/item/weapon/storage/pill_bottle/dice() used_energy = 200 diff --git a/code/global_vr.dm b/code/global_vr.dm index b271f245da..2bdcc387ef 100644 --- a/code/global_vr.dm +++ b/code/global_vr.dm @@ -5,6 +5,7 @@ robot_module_types += "Sci-borg" robot_module_types += "Pupdozer" robot_module_types += "Servicehound" //YW changes + robot_module_types += "BoozeHound" //YW changes return 1 var/list/shell_module_types = list( diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_yw.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_yw.dm index a4468bde3a..1a7903f637 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_yw.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_yw.dm @@ -23,4 +23,28 @@ L.Weaken(10) user.loc = target.loc return - return \ No newline at end of file + return + +/mob/living/silicon/robot/proc/reskin_booze() + set name = "Change Drink Color" + set category = "Robot Commands" + set desc = "Choose the color of drink displayed inside you." + + var/mob/M = usr + var/list/options = list() + options["Beer"] = "Beer Buddy" + options["Curacao"] = "Brilliant Blue" + options["Coffee"] = "Caffine Dispenser" + options["Space Mountain Wind"] = "Gamer Juice Maker" + options["Whiskey Soda"] = "Liqour Licker" + options["Grape Soda"] = "The Grapist" + options["Demon's Blood"] = "Vampire's Aid" + options["Slav Vodka"] = "Vodka Komrade" + var/choice = input(M,"Choose your drink!") in options + if(src && choice && !M.stat && in_range(M,src)) + icontype = options[choice] + var/active_sound = 'sound/effects/bubbles.ogg' + playsound(src.loc, "[active_sound]", 100, 0, 4) + M << "Your Tank now displays [choice]. Drink up and enjoy!" + updateicon() + return 1 diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm index 07f130fda1..68b1b10592 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm @@ -682,3 +682,10 @@ icon_state = "decompiler" max_item_count = 20 delivery = TRUE + +/obj/item/device/dogborg/sleeper/compactor/brewer //Boozehound gut. //YW Changes + name = "Brew Belly" + desc = "A mounted drunk tank unit with fuel processor." + icon_state = "brewer" + injection_chems = null + max_item_count = 1 \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm index cd83e86028..6998c1c601 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm @@ -44,6 +44,7 @@ robot_modules["Sci-borg"] = /obj/item/weapon/robot_module/robot/science robot_modules["Pupdozer"] = /obj/item/weapon/robot_module/robot/engiedog robot_modules["Servicehound"] = /obj/item/weapon/robot_module/robot/servicehound //YW changes + robot_modules["BoozeHound"] = /obj/item/weapon/robot_module/robot/booze return 1 //Just add a new proc with the robot_module type if you wish to run some other vore code @@ -695,3 +696,94 @@ // R.verbs -= /mob/living/proc/shred_limb - YW Edit R.verbs -= /mob/living/silicon/robot/proc/rest_style ..() + +//YW Changes - BoozeBorg Begin + +/obj/item/weapon/robot_module/robot/booze + name = "BoozeHound robot module" + channels = list("Service" = 1) + languages = list( + LANGUAGE_SOL_COMMON = 1, + LANGUAGE_UNATHI = 1, + LANGUAGE_SIIK = 1, + LANGUAGE_AKHANI = 1, + LANGUAGE_SKRELLIAN = 1, + LANGUAGE_SKRELLIANFAR = 0, + LANGUAGE_ROOTLOCAL = 0, + LANGUAGE_TRADEBAND = 1, + LANGUAGE_GUTTER = 0, + LANGUAGE_SCHECHI = 1, + LANGUAGE_EAL = 1, + LANGUAGE_TERMINUS = 1, + LANGUAGE_SIGN = 0 + ) + +/obj/item/weapon/robot_module/robot/booze + sprites = list( + "Beer Buddy" = "boozeborg", + "Brilliant Blue" = "boozeborg(blue)", + "Caffine Dispenser" = "boozeborg(coffee)", + "Gamer Juice Maker" = "boozeborg(green)", + "Liqour Licker" = "boozeborg(orange)", + "The Grapist" = "boozeborg(purple)", + "Vampire's Aid" = "boozeborg(red)", + "Vodka Komrade" = "boozeborg(vodka)" + ) + +/obj/item/weapon/robot_module/robot/booze/New(var/mob/living/silicon/robot/R) + ..() + src.modules += new /obj/item/weapon/gripper/service(src) + //src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src) + //src.modules += new /obj/item/weapon/material/minihoe(src) + //src.modules += new /obj/item/device/analyzer/plant_analyzer(src) + //src.modules += new /obj/item/weapon/storage/bag/plants(src) + //src.modules += new /obj/item/weapon/robot_harvester(src) + src.modules += new /obj/item/weapon/material/knife(src) + src.modules += new /obj/item/weapon/material/kitchen/rollingpin(src) + src.modules += new /obj/item/device/multitool(src) //to freeze trays + src.modules += new /obj/item/weapon/dogborg/jaws/small(src) + src.modules += new /obj/item/weapon/tray/robotray + src.modules += new /obj/item/device/dogborg/boop_module(src) + src.modules += new /obj/item/device/dogborg/sleeper/compactor/brewer(src) + src.emag = new /obj/item/weapon/dogborg/pounce(src) + R.verbs += /mob/living/silicon/robot/proc/reskin_booze + + var/obj/item/weapon/rsf/M = new /obj/item/weapon/rsf(src) + M.stored_matter = 30 + src.modules += M + + src.modules += new /obj/item/weapon/reagent_containers/dropper/industrial(src) + + var/obj/item/weapon/flame/lighter/zippo/L = new /obj/item/weapon/flame/lighter/zippo(src) + L.lit = 1 + src.modules += L + + src.modules += new /obj/item/weapon/tray/robotray(src) + src.modules += new /obj/item/weapon/reagent_containers/borghypo/service(src) + src.emag = new /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer(src) + + var/datum/reagents/N = new/datum/reagents(50) + src.emag.reagents = N + N.my_atom = src.emag + N.add_reagent("beer2", 50) + src.emag.name = "Mickey Finn's Special Brew" + + R.icon = 'icons/mob/widerobot_colors_vr.dmi' + R.hands.icon = 'icons/mob/screen1_robot_vr.dmi' + R.ui_style_vr = TRUE + R.pixel_x = -16 + R.old_x = -16 + R.default_pixel_x = -16 + R.dogborg = TRUE + R.wideborg = TRUE + R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill + ..() + +/obj/item/weapon/robot_module/robot/booze/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) + var/obj/item/weapon/reagent_containers/food/condiment/enzyme/E = locate() in src.modules + E.reagents.add_reagent("enzyme", 2 * amount) + if(src.emag) + var/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer/B = src.emag + B.reagents.add_reagent("beer2", 2 * amount) + +// YW Changes - Boozeborg end \ No newline at end of file diff --git a/icons/mob/dogborg_vr.dmi b/icons/mob/dogborg_vr.dmi index 78d646c6aa..6b77c5a222 100644 Binary files a/icons/mob/dogborg_vr.dmi and b/icons/mob/dogborg_vr.dmi differ diff --git a/icons/mob/screen1_robot_vr.dmi b/icons/mob/screen1_robot_vr.dmi index 3c8a67154e..08a3fa8f05 100644 Binary files a/icons/mob/screen1_robot_vr.dmi and b/icons/mob/screen1_robot_vr.dmi differ diff --git a/icons/mob/widerobot_colors_vr.dmi b/icons/mob/widerobot_colors_vr.dmi new file mode 100644 index 0000000000..b7d10b0064 Binary files /dev/null and b/icons/mob/widerobot_colors_vr.dmi differ