diff --git a/code/global.dm b/code/global.dm index d3eea92449..9077df8d9c 100644 --- a/code/global.dm +++ b/code/global.dm @@ -144,7 +144,7 @@ var/list/robot_module_types = list( "Miner", "Janitor", "Service", "Clerical", "Security", "Research", "Medihound", "K9", "Janihound", "Sci-borg", "Pupdozer", "Service-Hound", "BoozeHound", "KMine" - , "UnityHound" // CHOMPEdit -- Adds the UnityHound drone to the list. + , "UnityHound", "Honk-Hound" // CHOMPEdit -- Adds the UnityHound drone to the list. ) // List of modules added during code red var/list/emergency_module_types = list( 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 91e5a9db43..7c56df6e93 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 @@ -741,6 +741,14 @@ drain(100) //-100 charge per injection var/units = round(patient.reagents.get_reagent_amount(chem)) to_chat(hound, "Injecting [units] unit\s into occupant.") //If they were immersed, the reagents wouldn't leave with them. + +/obj/item/device/dogborg/sleeper/compactor/honkborg + name = "Jiggles Von Hungertron" + desc = "You've heard of Giggles Von Honkerton for the back, now get ready for Jiggles Von Hungertron for the front." + icon = 'icons/mob/dogborg_ch.dmi' + icon_state = "clowngut" + recycles = FALSE + //CHOMP Addition end /obj/item/device/dogborg/sleeper/K9/ert diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station_ch.dm b/code/modules/mob/living/silicon/robot/robot_modules/station_ch.dm index bc26c9bfa6..c506e6856c 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station_ch.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station_ch.dm @@ -22,4 +22,73 @@ src.modules += new /obj/item/weapon/surgical/surgicaldrill/cyborg(src) src.modules += new /obj/item/weapon/surgical/bioregen(src) src.modules += new /obj/item/weapon/gripper/no_use/organ(src) - src.modules += new /obj/item/weapon/reagent_containers/dropper(src) \ No newline at end of file + src.modules += new /obj/item/weapon/reagent_containers/dropper(src) + + +/obj/item/weapon/robot_module/robot/clerical/honkborg + name = "honk-hound module" + sprites = list( + "Honkborg" = "honkborg" + ) + channels = list("Service" = 1, + "Entertainment" = 1) + pto_type = PTO_CIVILIAN + can_be_pushed = 0 + +/obj/item/weapon/robot_module/robot/clerical/honkborg/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/dogborg(src) + src.modules += new /obj/item/weapon/robot_harvester(src) + src.modules += new /obj/item/device/multitool(src) + src.modules += new /obj/item/weapon/dogborg/jaws/small(src) + src.modules += new /obj/item/device/dogborg/boop_module(src) + src.modules += new /obj/item/weapon/dogborg/pounce(src) + src.modules += new /obj/item/weapon/bikehorn(src) + src.modules += new /obj/item/weapon/gun/launcher/confetti_cannon/honkborg(src) + + var/datum/matter_synth/water = new /datum/matter_synth(500) + water.name = "Water reserves" + water.recharge_rate = 10 + water.max_energy = 1000 + R.water_res = water + synths += water + + var/obj/item/device/dogborg/tongue/T = new /obj/item/device/dogborg/tongue(src) + T.water = water + src.modules += T + + 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) + + var/obj/item/device/dogborg/sleeper/compactor/honkborg/B = new /obj/item/device/dogborg/sleeper/compactor/honkborg(src) + B.water = water + src.modules += B + + R.icon = 'icons/mob/widerobot_ch.dmi' + R.wideborg_dept = 'icons/mob/widerobot_ch.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 + R.verbs |= /mob/living/silicon/robot/proc/robot_mount + R.verbs |= /mob/living/proc/toggle_rider_reins + R.verbs |= /mob/living/proc/shred_limb + R.verbs |= /mob/living/silicon/robot/proc/rest_style + ..() \ 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 867199cde7..4e03f8abbe 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 @@ -73,6 +73,7 @@ robot_modules["BoozeHound"] = /obj/item/weapon/robot_module/robot/booze robot_modules["KMine"] = /obj/item/weapon/robot_module/robot/kmine robot_modules["UnityHound"] = /obj/item/weapon/robot_module/robot/chound //CHOMP Addition Unity + robot_modules["Honk-Hound"] = /obj/item/weapon/robot_module/robot/clerical/honkborg //CHOMP Addition Honk robot_modules["Stray"] = /obj/item/weapon/robot_module/robot/stray return 1 diff --git a/code/modules/projectiles/guns/launcher/confetti_ch.dm b/code/modules/projectiles/guns/launcher/confetti_ch.dm index caeba1874c..e66067a85a 100644 --- a/code/modules/projectiles/guns/launcher/confetti_ch.dm +++ b/code/modules/projectiles/guns/launcher/confetti_ch.dm @@ -7,6 +7,8 @@ item_state = "confetti_cannon" w_class = ITEMSIZE_NORMAL origin_tech = list(TECH_COMBAT = 1, TECH_MATERIAL = 2) + throw_distance = 7 + release_force = 5 var/obj/item/weapon/grenade/confetti/party_ball/chambered = null var/confetti_charge = 0 @@ -54,4 +56,42 @@ name = "overdrive confetti cannon" desc = "For those times when you absolutely need colored paper everywhere, EVERYWHERE." confetti_charge = 100 - max_confetti = 100 \ No newline at end of file + max_confetti = 100 + +/obj/item/weapon/gun/launcher/confetti_cannon/honkborg + name = "Party Cannon" + desc = "Confetti, pies, banana peels, chaos!" + +/obj/item/weapon/gun/launcher/confetti_cannon/honkborg/pump(mob/M as mob) + playsound(M, 'sound/weapons/shotgunpump.ogg', 60, 1) + if(!chambered) + var/choice = tgui_alert(usr, "Load the Party Canon with?", "Change What?", list("Confetti","Banana Peel","Cream Pie")) + if(!choice) + return + playsound(src, 'sound/effects/pop.ogg', 50, 0) + switch(choice) + if("Confetti") + chambered = new /obj/item/weapon/grenade/confetti/party_ball + to_chat(usr, "Confetti loaded.") + if(istype(usr,/mob/living/silicon/robot)) + var/mob/living/silicon/robot/R = usr + R.cell.charge -= 200 + if("Banana Peel") + chambered = new /obj/item/weapon/bananapeel + to_chat(usr, "Banana peel loaded.") + if(istype(usr,/mob/living/silicon/robot)) + var/mob/living/silicon/robot/R = usr + R.cell.charge -= 200 + if("Cream Pie") + chambered = new /obj/item/weapon/reagent_containers/food/snacks/pie + to_chat(usr, "Banana cream pie loaded.") + if(istype(usr,/mob/living/silicon/robot)) + var/mob/living/silicon/robot/R = usr + R.cell.charge -= 200 + else + to_chat(usr, "The [src] is already loaded!") + +/obj/item/weapon/gun/launcher/confetti_cannon/honkborg/consume_next_projectile() + if(istype(chambered,/obj/item/weapon/grenade/confetti/party_ball)) + chambered.activate(null) + return chambered \ No newline at end of file diff --git a/icons/mob/dogborg_ch.dmi b/icons/mob/dogborg_ch.dmi index 25dbff645f..d26acf669e 100644 Binary files a/icons/mob/dogborg_ch.dmi and b/icons/mob/dogborg_ch.dmi differ diff --git a/icons/mob/widerobot_ch.dmi b/icons/mob/widerobot_ch.dmi index 617f248fc4..48e9872039 100644 Binary files a/icons/mob/widerobot_ch.dmi and b/icons/mob/widerobot_ch.dmi differ