diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index c77ea003196..c75fd9212ee 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -131,6 +131,13 @@ var/list/uplink_items = list() cost = 15 job = list("Mime") +/datum/uplink_item/dangerous/cat_grenade + name = "Feral Cat Delivery Grenade" + desc = "The feral cat delivery grenade contains 8 dehydrated feral cats in a similar manner to dehydrated monkeys, which, upon detonation, will be rehydrated by a small reservoir of water contained within the grenade. These cats will then attack anything in sight." + item = /obj/item/weapon/grenade/spawnergrenade/feral_cats + cost = 5 + job = list("Psychiatrist")//why? Becuase its funny that a person in charge of your mental wellbeing has a cat granade.. + //Chef /datum/uplink_item/jobspecific/specialsauce name = "Chef Excellence's Special Sauce" @@ -267,16 +274,6 @@ var/list/uplink_items = list() job = list("Botanist") -//Chemist - -/datum/uplink_item/jobspecific/antisocial - name = "Explosive Hug Chemical" - desc = "30 units of Bicarodyne, a chemical that causes a devastating explosion when exposed to endorphins released in the body by a hug. Metabolizes quite slowly." - reference = "HUG" - item = /obj/item/weapon/storage/box/syndie_kit/explosive_hug //Had to be put in a box because it didn't play well with reagent creation - cost = 4 - job = list("Chemist", "Chief Medical Officer") - //Atmos Tech /datum/uplink_item/jobspecific/contortionist name = "Contortionist's Jumpsuit" diff --git a/code/game/objects/items/weapons/dice.dm b/code/game/objects/items/weapons/dice.dm index 24fe5ebd97c..0b090581595 100644 --- a/code/game/objects/items/weapons/dice.dm +++ b/code/game/objects/items/weapons/dice.dm @@ -90,7 +90,8 @@ /obj/item/weapon/dice/d20/e20/diceroll(mob/user as mob, thrown) - if(triggered) return + if(triggered) + return ..() if(result == 1) to_chat(user, "Rocks fall, you die.") diff --git a/code/game/objects/items/weapons/grenades/spawnergrenade.dm b/code/game/objects/items/weapons/grenades/spawnergrenade.dm index 074617d4d10..eb492df234f 100644 --- a/code/game/objects/items/weapons/grenades/spawnergrenade.dm +++ b/code/game/objects/items/weapons/grenades/spawnergrenade.dm @@ -40,4 +40,28 @@ name = "carp delivery grenade" spawner_type = /mob/living/simple_animal/hostile/carp deliveryamt = 5 - origin_tech = "materials=3;magnets=4;syndicate=4" \ No newline at end of file + origin_tech = "materials=3;magnets=4;syndicate=4" + +/obj/item/weapon/grenade/spawnergrenade/feral_cats + name = "feral cat delivery grenade" + desc = "This grenade contains 8 dehydrated feral cats in a similar manner to dehydrated monkeys, which, upon detonation, will be rehydrated by a small reservoir of water contained within the grenade. These cats will then attack anything in sight." + spawner_type = /mob/living/simple_animal/hostile/feral_cat + deliveryamt = 8 + origin_tech = "materials=3;magnets=4;syndicate=4" + +/obj/item/weapon/grenade/spawnergrenade/feral_cats/prime() //Own proc for this because the regular one would flash people which was dumb. + update_mob() + if(spawner_type && deliveryamt) + var/turf/T = get_turf(src) + playsound(T, 'sound/effects/phasein.ogg', 100, 1) + + for(var/i=1, i<=deliveryamt, i++) + var/atom/movable/x = new spawner_type + x.loc = T + if(prob(50)) + for(var/j = 1, j <= rand(1, 3), j++) + step(x, pick(NORTH,SOUTH,EAST,WEST)) + + + qdel(src) + return \ No newline at end of file diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index 8c20759786b..e5ebf843c6e 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -186,13 +186,4 @@ new /obj/item/ammo_casing/shotgun/dart/assassination(src) new /obj/item/ammo_casing/shotgun/dart/assassination(src) new /obj/item/ammo_casing/shotgun/dart/assassination(src) - new /obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised/cane(src) - -/obj/item/weapon/storage/box/syndie_kit/explosive_hug - name = "box" - -/obj/item/weapon/storage/box/syndie_kit/explosive_hug/New() - ..() - new /obj/item/weapon/reagent_containers/glass/bottle/antisocial(src) - new /obj/item/weapon/reagent_containers/syringe(src) - return \ No newline at end of file + new /obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised/cane(src) \ No newline at end of file diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm index 0e4f49de46a..3ab237084e6 100644 --- a/code/game/objects/items/weapons/twohanded.dm +++ b/code/game/objects/items/weapons/twohanded.dm @@ -299,7 +299,7 @@ return ..() //Putting heads on spears -/obj/item/weapon/organ/head/attackby(var/obj/item/weapon/W, var/mob/living/user, params) +/obj/item/organ/external/head/attackby(var/obj/item/weapon/W, var/mob/living/user, params) if(istype(W, /obj/item/weapon/twohanded/spear)) to_chat(user, "You stick the head onto the spear and stand it upright on the ground.") var/obj/structure/headspear/HS = new /obj/structure/headspear(user.loc) @@ -315,7 +315,7 @@ return ..() /obj/item/weapon/twohanded/spear/attackby(var/obj/item/I, var/mob/living/user) - if(istype(I, /obj/item/weapon/organ/head)) + if(istype(I, /obj/item/organ/external/head)) to_chat(user, "You stick the head onto the spear and stand it upright on the ground.") var/obj/structure/headspear/HS = new /obj/structure/headspear(user.loc) var/matrix/M = matrix() @@ -339,7 +339,7 @@ /obj/structure/headspear/attack_hand(mob/living/user) user.visible_message("[user] kicks over \the [src]!", "You kick down \the [src]!") new /obj/item/weapon/twohanded/spear(user.loc) - for(var/obj/item/weapon/organ/head/H in src) + for(var/obj/item/organ/external/head/H in src) H.loc = user.loc qdel(src) diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index cb947519818..f7af2ddc549 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -696,6 +696,6 @@ var/list/slot_must_be_empty = list(slot_back,slot_handcuffed,slot_legcuffed,slot_l_hand,slot_r_hand,slot_belt,slot_head,slot_wear_suit) for(var/slot_id in slot_must_be_empty) if(user.get_item_by_slot(slot_id)) - user << "You can't fit inside while wearing that \the [user.get_item_by_slot(slot_id)]." + to_chat(user,"You can't fit inside while wearing that \the [user.get_item_by_slot(slot_id)].") return 0 return 1 diff --git a/code/modules/mob/living/simple_animal/hostile/feral_cat.dm b/code/modules/mob/living/simple_animal/hostile/feral_cat.dm new file mode 100644 index 00000000000..f1f99244c80 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/feral_cat.dm @@ -0,0 +1,28 @@ +/mob/living/simple_animal/hostile/feral_cat + name = "feral cat" + desc = "Kitty!! Wait..." + icon = 'icons/mob/pets.dmi' + icon_state = "cat2" + icon_living = "cat2" + icon_dead = "cat2_dead" + gender = MALE + maxHealth = 30 + health = 30 + melee_damage_lower = 10 + melee_damage_upper = 5 + attacktext = "claws" + speak = list("Meow!", "Esp!", "Purr!", "HSSSSS") + speak_emote = list("purrs", "meows") + emote_hear = list("meows", "mews") + speak_chance = 1 + turns_per_move = 5 + see_in_dark = 6 + butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab = 2) + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "kicks" + gold_core_spawnable = 1 + faction = list("cat") + atmos_requirements = list("min_oxy" = 5, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 1, "min_co2" = 0, "max_co2" = 5, "min_n2" = 0, "max_n2" = 0) + unsuitable_atmos_damage = 5 + pass_flags = PASSTABLE \ No newline at end of file diff --git a/code/modules/projectiles/ammunition/ammo_casings.dm b/code/modules/projectiles/ammunition/ammo_casings.dm index ea8d3f586d0..44189411515 100644 --- a/code/modules/projectiles/ammunition/ammo_casings.dm +++ b/code/modules/projectiles/ammunition/ammo_casings.dm @@ -301,4 +301,3 @@ /obj/item/ammo_casing/shotgun/dart/assassination/New() ..() reagents.add_reagent("neurotoxin", 6) - reagents.add_reagent("lexorin", 6) diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index e1590c47db4..d4af171ac50 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -87,7 +87,7 @@ proj.silenced = silenced return -/obj/item/weapon/gun/energy/New() +/obj/item/weapon/gun/New() build_zooming() /obj/item/weapon/gun/pickup(mob/user) diff --git a/code/modules/projectiles/guns/projectile/sniper.dm b/code/modules/projectiles/guns/projectile/sniper.dm index 180862441f1..8f5b20a9baa 100644 --- a/code/modules/projectiles/guns/projectile/sniper.dm +++ b/code/modules/projectiles/guns/projectile/sniper.dm @@ -119,7 +119,7 @@ /obj/item/projectile/bullet/sniper/haemorrhage/on_hit(atom/target, blocked = 0, hit_zone) if((blocked != 100) && istype(target, /mob/living/carbon/human)) var/mob/living/carbon/human/H = target - H.drip(100) + H.drip(1000) return ..() diff --git a/code/modules/reagents/oldchem/chemical_reaction/chemical_reaction_harm.dm b/code/modules/reagents/oldchem/chemical_reaction/chemical_reaction_harm.dm index 5b75f6aabf7..3a5cf0e73dd 100644 --- a/code/modules/reagents/oldchem/chemical_reaction/chemical_reaction_harm.dm +++ b/code/modules/reagents/oldchem/chemical_reaction/chemical_reaction_harm.dm @@ -72,17 +72,4 @@ result = "condensedcapsaicin" required_reagents = list("capsaicin" = 2) required_catalysts = list("plasma" = 5) - result_amount = 1 - -/datum/chemical_reaction/explosion_bicarodyne - name = "Explosion" - id = "explosion_bicarodyne" - result = null - required_reagents = list("bicarodyne" = 1, "sal_acid" = 1) - result_amount = 1 - -/datum/chemical_reaction/explosion_bicarodyne/on_reaction(var/datum/reagents/holder, var/created_volume) - var/datum/effect/system/reagents_explosion/e = new() - e.set_up(created_volume, holder.my_atom, 0, 0) - e.start() - return \ No newline at end of file + result_amount = 1 \ No newline at end of file diff --git a/code/modules/reagents/oldchem/reagents/reagents_toxin.dm b/code/modules/reagents/oldchem/reagents/reagents_toxin.dm index 6eb3c144e03..8dcb1a77d6e 100644 --- a/code/modules/reagents/oldchem/reagents/reagents_toxin.dm +++ b/code/modules/reagents/oldchem/reagents/reagents_toxin.dm @@ -394,14 +394,6 @@ ..() return -/datum/reagent/bicarodyne - name = "Bicarodyne" - id = "bicarodyne" - description = "Not to be confused with the old chemical Bicaridine, Bicarodyne is a volatile chemical that reacts violently in the presence of most human endorphins." - reagent_state = LIQUID - color = "#C8A5DC" // rgb: 200, 165, 220 - metabolization_rate = 0.01 - /////////////////////////////////////////////////////////////////////////////////////////////////////////////// /datum/reagent/condensedcapsaicin name = "Condensed Capsaicin" diff --git a/code/modules/reagents/reagent_containers/glass/bottle.dm b/code/modules/reagents/reagent_containers/glass/bottle.dm index 57d5c8807ff..3079a5286ec 100644 --- a/code/modules/reagents/reagent_containers/glass/bottle.dm +++ b/code/modules/reagents/reagent_containers/glass/bottle.dm @@ -301,15 +301,6 @@ ..() reagents.add_reagent(pick("polonium","initropidril","concentrated_initro","pancuronium","sodium_thiopental","ketamine","sulfonal","amanitin","coniine","curare","sarin","histamine","venom","cyanide","spidereggs","nanomachines"), 40) -/obj/item/weapon/reagent_containers/glass/bottle/antisocial - desc = "It has a skull and heart on the bottle..what?" - possible_transfer_amounts = list(5,10,15,25,30) - volume = 30 - - New() - ..() - reagents.add_reagent("bicarodyne", 30) - /obj/item/weapon/reagent_containers/glass/bottle/plasma name = "plasma dust bottle" desc = "A small bottle of plasma in dust form. Extremely toxic and reacts with micro-organisms inside blood." diff --git a/paradise.dme b/paradise.dme index db70b0e6819..d0592b530ea 100644 --- a/paradise.dme +++ b/paradise.dme @@ -1602,6 +1602,7 @@ #include "code\modules\mob\living\simple_animal\hostile\carp.dm" #include "code\modules\mob\living\simple_animal\hostile\creature.dm" #include "code\modules\mob\living\simple_animal\hostile\faithless.dm" +#include "code\modules\mob\living\simple_animal\hostile\feral_cat.dm" #include "code\modules\mob\living\simple_animal\hostile\giant_spider.dm" #include "code\modules\mob\living\simple_animal\hostile\headcrab.dm" #include "code\modules\mob\living\simple_animal\hostile\hivebot.dm"