diff --git a/code/game/machinery/bots/medbot.dm b/code/game/machinery/bots/medbot.dm index a11424fd7cd..95dcf14267f 100644 --- a/code/game/machinery/bots/medbot.dm +++ b/code/game/machinery/bots/medbot.dm @@ -43,6 +43,24 @@ bot_type_name = "Medbot" bot_filter = RADIO_MEDBOT +/obj/machinery/bot/medbot/tox + skin = "tox" + +/obj/machinery/bot/medbot/o2 + skin = "o2" + +/obj/machinery/bot/medbot/brute + skin = "brute" + +/obj/machinery/bot/medbot/fire + skin = "ointment" + +/obj/machinery/bot/medbot/adv + skin = "adv" + +/obj/machinery/bot/medbot/fish + skin = "fish" + /obj/machinery/bot/medbot/syndicate name = "Suspicious Medibot" desc = "You'd better have insurance!" @@ -71,6 +89,12 @@ var/created_name = "Medibot" //To preserve the name if it's a unique medbot I guess var/skin = null //Same as medbot, set to tox or ointment for the respective kits. w_class = 3.0 + var/treatment_brute = "salglu_solution" + var/treatment_oxy = "salbutamol" + var/treatment_fire = "salglu_solution" + var/treatment_tox = "charcoal" + var/treatment_virus = "spaceacillin" + req_one_access = list(access_medical, access_robotics) /obj/item/weapon/firstaid_arm_assembly/New() ..() @@ -507,7 +531,23 @@ visible_message("[src] blows apart!") var/turf/Tsec = get_turf(src) - new /obj/item/weapon/storage/firstaid(Tsec) + switch(skin) + if("ointment") + new /obj/item/weapon/storage/firstaid/fire/empty(Tsec) + if("tox") + new /obj/item/weapon/storage/firstaid/toxin/empty(Tsec) + if("o2") + new /obj/item/weapon/storage/firstaid/o2/empty(Tsec) + if("brute") + new /obj/item/weapon/storage/firstaid/brute/empty(Tsec) + if("adv") + new /obj/item/weapon/storage/firstaid/adv/empty(Tsec) + if("bezerk") + new /obj/item/weapon/storage/firstaid/tactical/empty(Tsec) + if("fish") + new /obj/item/weapon/storage/firstaid/aquatic_kit(Tsec) + else + new /obj/item/weapon/storage/firstaid(Tsec) new /obj/item/device/assembly/prox_sensor(Tsec) @@ -559,7 +599,20 @@ A.skin = "tox" else if(istype(src,/obj/item/weapon/storage/firstaid/o2)) A.skin = "o2" - + else if(istype(src,/obj/item/weapon/storage/firstaid/brute)) + A.skin = "brute" + else if(istype(src,/obj/item/weapon/storage/firstaid/adv)) + A.skin = "adv" + else if(istype(src,/obj/item/weapon/storage/firstaid/tactical)) + A.skin = "bezerk" + else if(istype(src,/obj/item/weapon/storage/firstaid/aquatic_kit)) + A.skin = "fish" + A.req_one_access = req_one_access + A.treatment_oxy = treatment_oxy + A.treatment_brute = treatment_brute + A.treatment_fire = treatment_fire + A.treatment_tox = treatment_tox + A.treatment_virus = treatment_virus qdel(S) user.put_in_hands(A) user << "You add the robot arm to the first aid kit." @@ -596,5 +649,11 @@ var/obj/machinery/bot/medbot/S = new /obj/machinery/bot/medbot(T) S.skin = skin S.name = created_name + S.treatment_oxy = treatment_oxy + S.treatment_brute = treatment_brute + S.treatment_fire = treatment_fire + S.treatment_tox = treatment_tox + S.treatment_virus = treatment_virus + S.req_one_access = req_one_access user.unEquip(src, 1) qdel(src) \ No newline at end of file diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 49dd158adf3..01443ade04e 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -1260,12 +1260,12 @@ product_ads = "House-training costs extra!;Now with 1000% more cat hair!;Allergies are a sign of weakness!;Dogs are man's best friend. Remember that Vulpkanin!; Heat lamps for Unathi!; Vox-y want a cracker?" vend_delay = 15 icon_state = "crittercare" - products = list(/obj/item/clothing/accessory/petcollar = 5, /obj/item/weapon/storage/aquatic_kit/full =5, /obj/item/fish_eggs/goldfish = 5, + products = list(/obj/item/clothing/accessory/petcollar = 5, /obj/item/weapon/storage/firstaid/aquatic_kit/full =5, /obj/item/fish_eggs/goldfish = 5, /obj/item/fish_eggs/clownfish = 5, /obj/item/fish_eggs/shark = 5, /obj/item/fish_eggs/feederfish = 10, /obj/item/fish_eggs/salmon = 5, /obj/item/fish_eggs/catfish = 5, /obj/item/fish_eggs/glofish = 5, /obj/item/fish_eggs/electric_eel = 5, /obj/item/fish_eggs/shrimp = 10, /obj/item/toy/pet_rock = 5, ) - prices = list(/obj/item/clothing/accessory/petcollar = 50, /obj/item/weapon/storage/aquatic_kit/full = 60, /obj/item/fish_eggs/goldfish = 10, + prices = list(/obj/item/clothing/accessory/petcollar = 50, /obj/item/weapon/storage/firstaid/aquatic_kit/full = 60, /obj/item/fish_eggs/goldfish = 10, /obj/item/fish_eggs/clownfish = 10, /obj/item/fish_eggs/shark = 10, /obj/item/fish_eggs/feederfish = 5, /obj/item/fish_eggs/salmon = 10, /obj/item/fish_eggs/catfish = 10, /obj/item/fish_eggs/glofish = 10, /obj/item/fish_eggs/electric_eel = 10, /obj/item/fish_eggs/shrimp = 5, /obj/item/toy/pet_rock = 100, diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index f6690ac0a1d..975a77eeca1 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -344,17 +344,17 @@ ///Aquatic Starter Kit -/obj/item/weapon/storage/aquatic_kit +/obj/item/weapon/storage/firstaid/aquatic_kit name = "aquatic starter kit" - desc = "It's a starter kit box for an acquarium." + desc = "It's a starter kit box for an aquarium." icon_state = "AquaticKit" throw_speed = 2 throw_range = 8 -/obj/item/weapon/storage/aquatic_kit/full +/obj/item/weapon/storage/firstaid/aquatic_kit/full desc = "It's a starter kit for an acquarium; includes 1 tank brush, 1 egg scoop, 1 fish net, and 1 container of fish food." -/obj/item/weapon/storage/aquatic_kit/full/New() +/obj/item/weapon/storage/firstaid/aquatic_kit/full/New() ..() new /obj/item/weapon/egg_scoop(src) new /obj/item/weapon/fish_net(src) diff --git a/code/game/objects/items/weapons/storage/firstaid.dm b/code/game/objects/items/weapons/storage/firstaid.dm index c4da0fe3a19..cbbc22c9b36 100644 --- a/code/game/objects/items/weapons/storage/firstaid.dm +++ b/code/game/objects/items/weapons/storage/firstaid.dm @@ -15,6 +15,12 @@ throw_speed = 2 throw_range = 8 var/empty = 0 + req_one_access =list(access_medical, access_robotics) //Access and treatment are utilized for medbots. + var/treatment_brute = "salglu_solution" + var/treatment_oxy = "salbutamol" + var/treatment_fire = "salglu_solution" + var/treatment_tox = "charcoal" + var/treatment_virus = "spaceacillin" /obj/item/weapon/storage/firstaid/fire @@ -38,6 +44,8 @@ new /obj/item/weapon/reagent_containers/pill/salicylic( src ) return +/obj/item/weapon/storage/firstaid/fire/empty + empty = 1 /obj/item/weapon/storage/firstaid/regular desc = "A general medical kit that contains medical patches for both brute damage and burn damage. Also contains an epinephrine syringe for emergency use and a health analyzer" @@ -76,6 +84,9 @@ new /obj/item/device/healthanalyzer( src ) return +/obj/item/weapon/storage/firstaid/toxin/empty + empty = 1 + /obj/item/weapon/storage/firstaid/o2 name = "oxygen deprivation first aid kit" desc = "A first aid kit that contains four pills of salbutamol, which is able to counter injuries caused by suffocation. Also contains a health analyzer to determine the health of the patient." @@ -92,6 +103,9 @@ new /obj/item/device/healthanalyzer( src ) return +/obj/item/weapon/storage/firstaid/o2/empty + empty = 1 + /obj/item/weapon/storage/firstaid/brute name = "brute trauma treatment kit" desc = "A medical kit that contains several medical patches and pills for treating brute injuries. Contains one epinephrine syringe for emergency use and a health analyzer." @@ -113,6 +127,9 @@ new /obj/item/stack/medical/bruise_pack(src) return +/obj/item/weapon/storage/firstaid/brute/empty + empty = 1 + /obj/item/weapon/storage/firstaid/adv name = "advanced first-aid kit" desc = "Contains advanced medical treatments." @@ -131,11 +148,19 @@ new /obj/item/stack/medical/splint(src) return +/obj/item/weapon/storage/firstaid/adv/empty + empty = 1 + /obj/item/weapon/storage/firstaid/tactical name = "first-aid kit" icon_state = "bezerk" desc = "I hope you've got insurance." max_w_class = 3 + treatment_oxy = "perfluorodecalin" + treatment_brute = "styptic_powder" + treatment_fire = "silver_sulfadiazine" + treatment_tox = "charcoal" + req_one_access =list(access_syndicate) /obj/item/weapon/storage/firstaid/tactical/New() ..() @@ -149,6 +174,9 @@ new /obj/item/clothing/glasses/hud/health/night(src) return +/obj/item/weapon/storage/firstaid/tactical/empty + empty =1 + /obj/item/weapon/storage/firstaid/surgery name = "field surgery kit" icon_state = "duffel-med" diff --git a/icons/obj/aibots.dmi b/icons/obj/aibots.dmi index 1a0d4960abe..b6e60dab2dc 100644 Binary files a/icons/obj/aibots.dmi and b/icons/obj/aibots.dmi differ