From f09304c50856a681a232ad9498325180eb3bfbed Mon Sep 17 00:00:00 2001 From: Datraen Date: Thu, 21 Apr 2016 10:41:57 -0400 Subject: [PATCH 01/16] Adds the new xeno mob system, implemented with slimes. --- code/__defines/mobs.dm | 17 +- code/_helpers/global_lists.dm | 2 + .../mob/living/simple_animal/hostile/bear.dm | 26 +- .../simple_animal/hostile/giant_spider.dm | 4 +- .../living/simple_animal/hostile/hostile.dm | 227 +----------------- .../hostile/retaliate/retaliate.dm | 4 +- .../mob/living/simple_animal/simple_animal.dm | 222 +++++++++++++++++ code/modules/xenobio2/mob/_xeno_setup.dm | 110 +++++++++ code/modules/xenobio2/mob/slime/slime life.dm | 55 +++++ .../modules/xenobio2/mob/slime/slime procs.dm | 104 ++++++++ code/modules/xenobio2/mob/slime/slime.dm | 83 +++++++ code/modules/xenobio2/mob/xeno procs.dm | 155 ++++++++++++ code/modules/xenobio2/mob/xeno.dm | 87 +++++++ icons/mob/slime2.dmi | Bin 0 -> 4768 bytes polaris.dme | 6 + 15 files changed, 856 insertions(+), 246 deletions(-) create mode 100644 code/modules/xenobio2/mob/_xeno_setup.dm create mode 100644 code/modules/xenobio2/mob/slime/slime life.dm create mode 100644 code/modules/xenobio2/mob/slime/slime procs.dm create mode 100644 code/modules/xenobio2/mob/slime/slime.dm create mode 100644 code/modules/xenobio2/mob/xeno procs.dm create mode 100644 code/modules/xenobio2/mob/xeno.dm create mode 100644 icons/mob/slime2.dmi diff --git a/code/__defines/mobs.dm b/code/__defines/mobs.dm index 98ad3b28ca..8cd6632982 100644 --- a/code/__defines/mobs.dm +++ b/code/__defines/mobs.dm @@ -27,11 +27,11 @@ #define BORGXRAY 0x4 #define BORGMATERIAL 8 -#define HOSTILE_STANCE_IDLE 1 -#define HOSTILE_STANCE_ALERT 2 -#define HOSTILE_STANCE_ATTACK 3 -#define HOSTILE_STANCE_ATTACKING 4 -#define HOSTILE_STANCE_TIRED 5 +#define STANCE_IDLE 1 +#define STANCE_ALERT 2 +#define STANCE_ATTACK 3 +#define STANCE_ATTACKING 4 +#define STANCE_TIRED 5 #define LEFT 1 #define RIGHT 2 @@ -180,4 +180,9 @@ #define MOB_PULL_NONE 0 #define MOB_PULL_SMALLER 1 #define MOB_PULL_SAME 2 -#define MOB_PULL_LARGER 3 \ No newline at end of file +#define MOB_PULL_LARGER 3 + +//XENOBIO2 FLAGS +#define NOMUT 0 +#define COLORMUT 1 +#define SPECIESMUT 2 diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm index 39c3a83995..901a985e3f 100644 --- a/code/_helpers/global_lists.dm +++ b/code/_helpers/global_lists.dm @@ -222,3 +222,5 @@ var/global/list/string_slot_flags = list( . += " has: [t]\n" world << . */ +//Hexidecimal numbers +var/global/list/hexNums = list("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F") diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/hostile/bear.dm index 91f8aa958c..68a7f8cbd3 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/hostile/bear.dm @@ -57,16 +57,16 @@ switch(stance) - if(HOSTILE_STANCE_TIRED) + if(STANCE_TIRED) stop_automated_movement = 1 stance_step++ if(stance_step >= 10) //rests for 10 ticks if(target_mob && target_mob in ListTargets(10)) - stance = HOSTILE_STANCE_ATTACK //If the mob he was chasing is still nearby, resume the attack, otherwise go idle. + stance = STANCE_ATTACK //If the mob he was chasing is still nearby, resume the attack, otherwise go idle. else - stance = HOSTILE_STANCE_IDLE + stance = STANCE_IDLE - if(HOSTILE_STANCE_ALERT) + if(STANCE_ALERT) stop_automated_movement = 1 var/found_mob = 0 if(target_mob && target_mob in ListTargets(10)) @@ -84,14 +84,14 @@ stance_step-- if(stance_step <= -20) //If we have not found a mob for 20-ish ticks, revert to idle mode - stance = HOSTILE_STANCE_IDLE + stance = STANCE_IDLE if(stance_step >= 7) //If we have been staring at a mob for 7 ticks, - stance = HOSTILE_STANCE_ATTACK + stance = STANCE_ATTACK - if(HOSTILE_STANCE_ATTACKING) + if(STANCE_ATTACKING) if(stance_step >= 20) //attacks for 20 ticks, then it gets tired and needs to rest custom_emote(1, "is worn out and needs to rest." ) - stance = HOSTILE_STANCE_TIRED + stance = STANCE_TIRED stance_step = 0 walk(src, 0) //This stops the bear's walking return @@ -99,15 +99,15 @@ /mob/living/simple_animal/hostile/bear/attackby(var/obj/item/O as obj, var/mob/user as mob) - if(stance != HOSTILE_STANCE_ATTACK && stance != HOSTILE_STANCE_ATTACKING) - stance = HOSTILE_STANCE_ALERT + if(stance != STANCE_ATTACK && stance != STANCE_ATTACKING) + stance = STANCE_ALERT stance_step = 6 target_mob = user ..() /mob/living/simple_animal/hostile/bear/attack_hand(mob/living/carbon/human/M as mob) - if(stance != HOSTILE_STANCE_ATTACK && stance != HOSTILE_STANCE_ATTACKING) - stance = HOSTILE_STANCE_ALERT + if(stance != STANCE_ATTACK && stance != STANCE_ATTACKING) + stance = STANCE_ALERT stance_step = 6 target_mob = M ..() @@ -119,7 +119,7 @@ . = ..() if(.) custom_emote(1,"stares alertly at [.]") - stance = HOSTILE_STANCE_ALERT + stance = STANCE_ALERT /mob/living/simple_animal/hostile/bear/LoseTarget() ..(5) diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index bf4ea6b572..416e1061f0 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -90,7 +90,7 @@ /mob/living/simple_animal/hostile/giant_spider/Life() ..() if(!stat) - if(stance == HOSTILE_STANCE_IDLE) + if(stance == STANCE_IDLE) //1% chance to skitter madly away if(!busy && prob(1)) /*var/list/move_targets = list() @@ -113,7 +113,7 @@ /mob/living/simple_animal/hostile/giant_spider/nurse/Life() ..() if(!stat) - if(stance == HOSTILE_STANCE_IDLE) + if(stance == STANCE_IDLE) var/list/can_see = view(src, 10) //30% chance to stop wandering and do something if(!busy && prob(30)) diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 33fb8acd24..c4dcfbd3f1 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -1,234 +1,15 @@ /mob/living/simple_animal/hostile faction = "hostile" - var/stance = HOSTILE_STANCE_IDLE //Used to determine behavior - var/mob/living/target_mob - var/attack_same = 0 - var/ranged = 0 - var/rapid = 0 - var/projectiletype - var/projectilesound - var/casingtype - var/move_to_delay = 4 //delay for the automated movement. - var/list/friends = list() - var/break_stuff_probability = 10 + break_stuff_probability = 10 stop_automated_movement_when_pulled = 0 - var/destroy_surroundings = 1 + destroy_surroundings = 1 a_intent = I_HURT + hostile = 1 - var/shuttletarget = null - var/enroute = 0 - -/mob/living/simple_animal/hostile/proc/FindTarget() - - var/atom/T = null - stop_automated_movement = 0 - for(var/atom/A in ListTargets(10)) - - if(A == src) - continue - - var/atom/F = Found(A) - if(F) - T = F - break - - if(isliving(A)) - var/mob/living/L = A - if(L.faction == src.faction && !attack_same) - continue - else if(L in friends) - continue - else - if(!L.stat) - stance = HOSTILE_STANCE_ATTACK - T = L - break - - else if(istype(A, /obj/mecha)) // Our line of sight stuff was already done in ListTargets(). - var/obj/mecha/M = A - if (M.occupant) - stance = HOSTILE_STANCE_ATTACK - T = M - break - return T - - -/mob/living/simple_animal/hostile/proc/Found(var/atom/A) - return - -/mob/living/simple_animal/hostile/proc/MoveToTarget() - stop_automated_movement = 1 - if(!target_mob || SA_attackable(target_mob)) - stance = HOSTILE_STANCE_IDLE - if(target_mob in ListTargets(10)) - if(ranged) - if(get_dist(src, target_mob) <= 6) - OpenFire(target_mob) - else - walk_to(src, target_mob, 1, move_to_delay) - else - stance = HOSTILE_STANCE_ATTACKING - walk_to(src, target_mob, 1, move_to_delay) - -/mob/living/simple_animal/hostile/proc/AttackTarget() - - stop_automated_movement = 1 - if(!target_mob || SA_attackable(target_mob)) - LoseTarget() - return 0 - if(!(target_mob in ListTargets(10))) - LostTarget() - return 0 - if(get_dist(src, target_mob) <= 1) //Attacking - AttackingTarget() - return 1 - -/mob/living/simple_animal/hostile/proc/AttackingTarget() - if(!Adjacent(target_mob)) - return - if(isliving(target_mob)) - var/mob/living/L = target_mob - L.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) - return L - if(istype(target_mob,/obj/mecha)) - var/obj/mecha/M = target_mob - M.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) - return M - -/mob/living/simple_animal/hostile/proc/LoseTarget() - stance = HOSTILE_STANCE_IDLE - target_mob = null - walk(src, 0) - -/mob/living/simple_animal/hostile/proc/LostTarget() - stance = HOSTILE_STANCE_IDLE - walk(src, 0) - - -/mob/living/simple_animal/hostile/proc/ListTargets(var/dist = 7) - var/list/L = hearers(src, dist) - - for (var/obj/mecha/M in mechas_list) - if (M.z == src.z && get_dist(src, M) <= dist) - L += M - - return L - -/mob/living/simple_animal/hostile/death() - ..() - walk(src, 0) /mob/living/simple_animal/hostile/Life() . = ..() if(!.) walk(src, 0) - return 0 - if(client) - return 0 - - if(!stat) - switch(stance) - if(HOSTILE_STANCE_IDLE) - target_mob = FindTarget() - - if(HOSTILE_STANCE_ATTACK) - if(destroy_surroundings) - DestroySurroundings() - MoveToTarget() - - if(HOSTILE_STANCE_ATTACKING) - if(destroy_surroundings) - DestroySurroundings() - AttackTarget() - -/mob/living/simple_animal/hostile/proc/OpenFire(target_mob) - var/target = target_mob - visible_message("\red [src] fires at [target]!", 1) - - var/tturf = get_turf(target) - if(rapid) - spawn(1) - Shoot(tturf, src.loc, src) - if(casingtype) - new casingtype(get_turf(src)) - spawn(4) - Shoot(tturf, src.loc, src) - if(casingtype) - new casingtype(get_turf(src)) - spawn(6) - Shoot(tturf, src.loc, src) - if(casingtype) - new casingtype(get_turf(src)) - else - Shoot(tturf, src.loc, src) - if(casingtype) - new casingtype - - stance = HOSTILE_STANCE_IDLE - target_mob = null - return - - -/mob/living/simple_animal/hostile/proc/Shoot(var/target, var/start, var/user, var/bullet = 0) - if(target == start) - return - - var/obj/item/projectile/A = new projectiletype(user:loc) - playsound(user, projectilesound, 100, 1) - if(!A) return - - if (!istype(target, /turf)) - qdel(A) - return - A.launch(target) - return - -/mob/living/simple_animal/hostile/proc/DestroySurroundings() - if(prob(break_stuff_probability)) - for(var/dir in cardinal) // North, South, East, West - for(var/obj/structure/window/obstacle in get_step(src, dir)) - if(obstacle.dir == reverse_dir[dir]) // So that windows get smashed in the right order - obstacle.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) - return - var/obj/structure/obstacle = locate(/obj/structure, get_step(src, dir)) - if(istype(obstacle, /obj/structure/window) || istype(obstacle, /obj/structure/closet) || istype(obstacle, /obj/structure/table) || istype(obstacle, /obj/structure/grille)) - obstacle.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) - - -/mob/living/simple_animal/hostile/proc/check_horde() - return 0 - if(emergency_shuttle.shuttle.location) - if(!enroute && !target_mob) //The shuttle docked, all monsters rush for the escape hallway - if(!shuttletarget && escape_list.len) //Make sure we didn't already assign it a target, and that there are targets to pick - shuttletarget = pick(escape_list) //Pick a shuttle target - enroute = 1 - stop_automated_movement = 1 - spawn() - if(!src.stat) - horde() - - if(get_dist(src, shuttletarget) <= 2) //The monster reached the escape hallway - enroute = 0 - stop_automated_movement = 0 - -/mob/living/simple_animal/hostile/proc/horde() - var/turf/T = get_step_to(src, shuttletarget) - for(var/atom/A in T) - if(istype(A,/obj/machinery/door/airlock)) - var/obj/machinery/door/airlock/D = A - D.open(1) - else if(istype(A,/obj/structure/simple_door)) - var/obj/structure/simple_door/D = A - if(D.density) - D.Open() - else if(istype(A,/obj/structure/cult/pylon)) - A.attack_generic(src, rand(melee_damage_lower, melee_damage_upper)) - else if(istype(A, /obj/structure/window) || istype(A, /obj/structure/closet) || istype(A, /obj/structure/table) || istype(A, /obj/structure/grille)) - A.attack_generic(src, rand(melee_damage_lower, melee_damage_upper)) - Move(T) - FindTarget() - if(!target_mob || enroute) - spawn(10) - if(!src.stat) - horde() + return 0 \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/retaliate.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/retaliate.dm index 49a3055859..ac352edd1a 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/retaliate.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/retaliate.dm @@ -5,14 +5,14 @@ if(isliving(A)) var/mob/living/L = A if(!L.stat) - stance = HOSTILE_STANCE_ATTACK + stance = STANCE_ATTACK return L else enemies -= L else if(istype(A, /obj/mecha)) var/obj/mecha/M = A if(M.occupant) - stance = HOSTILE_STANCE_ATTACK + stance = STANCE_ATTACK return A /mob/living/simple_animal/hostile/retaliate/ListTargets() diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 2fbad9deee..69eb6de378 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -65,6 +65,24 @@ //Null rod stuff var/supernatural = 0 var/purge = 0 + + //Pulling hostile mob vars down + var/stance = STANCE_IDLE //Used to determine behavior + var/mob/living/target_mob + var/attack_same = 0 + var/ranged = 0 + var/rapid = 0 + var/projectiletype + var/projectilesound + var/casingtype + var/move_to_delay = 4 //delay for the automated movement. + var/list/friends = list() + var/break_stuff_probability = 0 + var/destroy_surroundings = 0 + var/shuttletarget = null + var/enroute = 0 + + var/hostile = 0 /mob/living/simple_animal/New() ..() @@ -205,6 +223,22 @@ if(!atmos_suitable) adjustBruteLoss(unsuitable_atoms_damage) return 1 + + //Hostility + if(!stat && !client && hostile) + switch(stance) + if(STANCE_IDLE) + target_mob = FindTarget() + + if(STANCE_ATTACK) + if(destroy_surroundings) + DestroySurroundings() + MoveToTarget() + + if(STANCE_ATTACKING) + if(destroy_surroundings) + DestroySurroundings() + AttackTarget() /mob/living/simple_animal/proc/handle_supernatural() if(purge) @@ -402,3 +436,191 @@ return /mob/living/simple_animal/ExtinguishMob() return + + //Hostile procs moved down +/mob/living/simple_animal/proc/FindTarget() + + var/atom/T = null + stop_automated_movement = 0 + for(var/atom/A in ListTargets(10)) + + if(A == src) + continue + + var/atom/F = Found(A) + if(F) + T = F + break + + if(isliving(A)) + var/mob/living/L = A + if(L.faction == src.faction && !attack_same) + continue + else if(L in friends) + continue + else + if(!L.stat) + stance = STANCE_ATTACK + T = L + break + + else if(istype(A, /obj/mecha)) // Our line of sight stuff was already done in ListTargets(). + var/obj/mecha/M = A + if (M.occupant) + stance = STANCE_ATTACK + T = M + break + return T + + +/mob/living/simple_animal/proc/Found(var/atom/A) + return + +/mob/living/simple_animal/proc/MoveToTarget() + stop_automated_movement = 1 + if(!target_mob || SA_attackable(target_mob)) + stance = STANCE_IDLE + if(target_mob in ListTargets(10)) + if(ranged) + if(get_dist(src, target_mob) <= 6) + OpenFire(target_mob) + else + walk_to(src, target_mob, 1, move_to_delay) + else + stance = STANCE_ATTACKING + walk_to(src, target_mob, 1, move_to_delay) + +/mob/living/simple_animal/proc/AttackTarget() + + stop_automated_movement = 1 + if(!target_mob || SA_attackable(target_mob)) + LoseTarget() + return 0 + if(!(target_mob in ListTargets(10))) + LostTarget() + return 0 + if(get_dist(src, target_mob) <= 1) //Attacking + AttackingTarget() + return 1 + +/mob/living/simple_animal/proc/AttackingTarget() + if(!Adjacent(target_mob)) + return + if(isliving(target_mob)) + var/mob/living/L = target_mob + L.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) + return L + if(istype(target_mob,/obj/mecha)) + var/obj/mecha/M = target_mob + M.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) + return M + +/mob/living/simple_animal/proc/LoseTarget() + stance = STANCE_IDLE + target_mob = null + walk(src, 0) + +/mob/living/simple_animal/proc/LostTarget() + stance = STANCE_IDLE + walk(src, 0) + + +/mob/living/simple_animal/proc/ListTargets(var/dist = 7) + var/list/L = hearers(src, dist) + + for (var/obj/mecha/M in mechas_list) + if (M.z == src.z && get_dist(src, M) <= dist) + L += M + + return L + +/mob/living/simple_animal/proc/OpenFire(target_mob) + var/target = target_mob + visible_message("\red [src] fires at [target]!", 1) + + var/tturf = get_turf(target) + if(rapid) + spawn(1) + Shoot(tturf, src.loc, src) + if(casingtype) + new casingtype(get_turf(src)) + spawn(4) + Shoot(tturf, src.loc, src) + if(casingtype) + new casingtype(get_turf(src)) + spawn(6) + Shoot(tturf, src.loc, src) + if(casingtype) + new casingtype(get_turf(src)) + else + Shoot(tturf, src.loc, src) + if(casingtype) + new casingtype + + stance = STANCE_IDLE + target_mob = null + return + + +/mob/living/simple_animal/proc/Shoot(var/target, var/start, var/user, var/bullet = 0) + if(target == start) + return + + var/obj/item/projectile/A = new projectiletype(user:loc) + playsound(user, projectilesound, 100, 1) + if(!A) return + + if (!istype(target, /turf)) + qdel(A) + return + A.launch(target) + return + +/mob/living/simple_animal/proc/DestroySurroundings() + if(prob(break_stuff_probability)) + for(var/dir in cardinal) // North, South, East, West + for(var/obj/structure/window/obstacle in get_step(src, dir)) + if(obstacle.dir == reverse_dir[dir]) // So that windows get smashed in the right order + obstacle.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) + return + var/obj/structure/obstacle = locate(/obj/structure, get_step(src, dir)) + if(istype(obstacle, /obj/structure/window) || istype(obstacle, /obj/structure/closet) || istype(obstacle, /obj/structure/table) || istype(obstacle, /obj/structure/grille)) + obstacle.attack_generic(src,rand(melee_damage_lower,melee_damage_upper),attacktext) + + +/mob/living/simple_animal/proc/check_horde() + return 0 + if(emergency_shuttle.shuttle.location) + if(!enroute && !target_mob) //The shuttle docked, all monsters rush for the escape hallway + if(!shuttletarget && escape_list.len) //Make sure we didn't already assign it a target, and that there are targets to pick + shuttletarget = pick(escape_list) //Pick a shuttle target + enroute = 1 + stop_automated_movement = 1 + spawn() + if(!src.stat) + horde() + + if(get_dist(src, shuttletarget) <= 2) //The monster reached the escape hallway + enroute = 0 + stop_automated_movement = 0 + +/mob/living/simple_animal/proc/horde() + var/turf/T = get_step_to(src, shuttletarget) + for(var/atom/A in T) + if(istype(A,/obj/machinery/door/airlock)) + var/obj/machinery/door/airlock/D = A + D.open(1) + else if(istype(A,/obj/structure/simple_door)) + var/obj/structure/simple_door/D = A + if(D.density) + D.Open() + else if(istype(A,/obj/structure/cult/pylon)) + A.attack_generic(src, rand(melee_damage_lower, melee_damage_upper)) + else if(istype(A, /obj/structure/window) || istype(A, /obj/structure/closet) || istype(A, /obj/structure/table) || istype(A, /obj/structure/grille)) + A.attack_generic(src, rand(melee_damage_lower, melee_damage_upper)) + Move(T) + FindTarget() + if(!target_mob || enroute) + spawn(10) + if(!src.stat) + horde() \ No newline at end of file diff --git a/code/modules/xenobio2/mob/_xeno_setup.dm b/code/modules/xenobio2/mob/_xeno_setup.dm new file mode 100644 index 0000000000..e5f841611c --- /dev/null +++ b/code/modules/xenobio2/mob/_xeno_setup.dm @@ -0,0 +1,110 @@ +//Important definitions for xenos, traits datum. + +//Definitions for gene grouping. +#define GENE_XENO_BIOCHEMISTRY "biochemistry" +#define GENE_XENO_HEALTH "health" +#define GENE_XENO_RESISTANCES "resistances" +#define GENE_XENO_INTERNAL "internal" +#define GENE_XENO_COLOR "color" +#define GENE_XENO_LEARN "learn" +#define GENE_XENO_SPEAK "speak" +#define GENE_XENO_SPEED "speed" +#define GENE_XENO_SPECIAL "special" + +//Definitions for traits. + +#define TRAIT_XENO_COLOR "color" +#define TRAIT_XENO_CHEMISTRY "chems" +#define TRAIT_XENO_CHEMVOL "chem_vol" +#define TRAIT_XENO_HEALTH "health" +#define TRAIT_XENO_HUNGER "hunger" +#define TRAIT_XENO_STARVEDAMAGE "starvedamage" +#define TRAIT_XENO_EATS "eats" +#define TRAIT_XENO_CHROMATIC "chrom" +#define TRAIT_XENO_HOSTILE "hostile" +#define TRAIT_XENO_BIOLUMESCENT "biolum" +#define TRAIT_XENO_BIO_COLOR "biocolor" +#define TRAIT_XENO_GLOW_STRENGTH "biostrength" +#define TRAIT_XENO_GLOW_RANGE "biorange" +#define TRAIT_XENO_TOXIC_CHEMS "tox_chems" +#define TRAIT_XENO_NUTRITIONAL_CHEMS "nutr_chems" +#define TRAIT_XENO_HEALING_CHEMS "heal_chems" +#define TRAIT_XENO_MUTATING_CHEMS "mut_chems" +#define TRAIT_XENO_SPEED "speed" +#define TRAIT_XENO_COLDRES "cold_resistance" +#define TRAIT_XENO_HEATRES "heat_resistance" +#define TRAIT_XENO_LEARNCHANCE "learn_chance" +#define TRAIT_XENO_CANLEARN "can_learn" +#define TRAIT_XENO_SPEAKCHANCE "speak_chance" +#define TRAIT_XENO_CANSPEAK "can_speak" +#define TRAIT_XENO_STRENGTH "melee_strength" +#define TRAIT_XENO_STR_RANGE "melee_range" + + +var/global/list/xenoChemList = list("mutationtoxin", + "psilocybin", + "mindbreaker", + "impedrezene", + "cryptobiolin", + "serotronium", + "space_drugs", + "chloralhydrate", + "stoxin", + "mutagen", + "lexorin", + "pacid", + "cyanide", + "phoron", + "plasticide", + "amatoxin", + "carbon", + "radium", + "sacid", + "sugar", + "kelotane", + "dermaline", + "anti_toxin", + "dexalin", + "synaptizine", + "alkysine", + "imidazoline", + "peridaxon", + "rezadone") + +/datum/xeno/traits + var/list/traits = list() + var/list/tox_chems + var/list/nutr_chems + var/list/heal_chems + var/list/mut_chems + var/obj/chems + +/datum/xeno/traits/proc/set_trait(var/trait, var/newval) + traits["[trait]"] = newval + return + +/datum/xeno/traits/New() + ..() + set_trait(TRAIT_XENO_COLOR, "#CACACA") + set_trait(TRAIT_XENO_CHEMVOL, 10) + set_trait(TRAIT_XENO_HEALTH, 20) + set_trait(TRAIT_XENO_HUNGER, 2) + set_trait(TRAIT_XENO_STARVEDAMAGE, 0) + set_trait(TRAIT_XENO_EATS, 1) + set_trait(TRAIT_XENO_CHROMATIC, 0) + set_trait(TRAIT_XENO_HOSTILE, 0) + set_trait(TRAIT_XENO_BIOLUMESCENT, 0) + set_trait(TRAIT_XENO_BIO_COLOR, "#CACACA") + set_trait(TRAIT_XENO_GLOW_STRENGTH, 0) + set_trait(TRAIT_XENO_GLOW_RANGE, 0) + set_trait(TRAIT_XENO_SPEED, 4) + set_trait(TRAIT_XENO_COLDRES, 20) + set_trait(TRAIT_XENO_HEATRES, 20) + set_trait(TRAIT_XENO_LEARNCHANCE, 100) + set_trait(TRAIT_XENO_CANLEARN, 1) + set_trait(TRAIT_XENO_SPEAKCHANCE, 10) + set_trait(TRAIT_XENO_CANSPEAK, 1) + set_trait(TRAIT_XENO_STRENGTH, 0) + set_trait(TRAIT_XENO_STR_RANGE, 0) + chems = new() + chems.create_reagents(traits[TRAIT_XENO_CHEMVOL]) \ No newline at end of file diff --git a/code/modules/xenobio2/mob/slime/slime life.dm b/code/modules/xenobio2/mob/slime/slime life.dm new file mode 100644 index 0000000000..9638931f3c --- /dev/null +++ b/code/modules/xenobio2/mob/slime/slime life.dm @@ -0,0 +1,55 @@ +/* +Slime specific life events go here. +*/ +#define HAPPYLEVEL 200 +#define ANGRYLEVEL 10 +/mob/living/simple_animal/xeno/slime/Life() + . = ..() + if(..()) + if(health) + if(is_child) + if(nutrition >= 275) + growthcounter++ + nutrition -= hunger_factor + if(nutrition <= 75) + growthcounter-- + if(growthcounter >= growthpoint) + src.GrowUp() + + else + if(nutrition < 0) + nutrition = 0 + if((prob(10) && !emote_on)) //Slimes might display their food-based emotions over time. + var/image/I = new(src.icon) + I.color = "#FFFFFF" + I.layer = src.layer + 0.2 + if((nutrition >= HAPPYLEVEL)) + if((nutrition >= 1.5 * HAPPYLEVEL)) + I.icon_state = "aslime-:33" + else + I.icon_state = "aslime-:3" + + else if((nutrition > ANGRYLEVEL)) + if((nutrition >= 10 * ANGRYLEVEL)) + I.icon_state = "aslime-pout" + else if((nutrition >= 5 * ANGRYLEVEL)) + I.icon_state = "aslime-sad" + else + I.icon_state = "aslime-angry" + overlays += I + emote_on = 1 + spawn(30) + GenerateAdultIcon() + emote_on = null + + else + if(is_child) + icon_state = "slime baby dead" + else + overlays.Cut() + icon_state = "slime adult dead" + color = traitdat.traits[TRAIT_XENO_COLOR] + + return 1 //Everything worked okay + + return 0 //xeno/Life() returned 0. \ No newline at end of file diff --git a/code/modules/xenobio2/mob/slime/slime procs.dm b/code/modules/xenobio2/mob/slime/slime procs.dm new file mode 100644 index 0000000000..7008537c56 --- /dev/null +++ b/code/modules/xenobio2/mob/slime/slime procs.dm @@ -0,0 +1,104 @@ +/* +Slime specific procs go here. +*/ +#define SHINYOVERLAY 0 +#define LIGHTOVERLAY 1 +#define MAXOVERLAY 2 //Should be 1 + last overlay, to give the chance for matte slimes + +/mob/living/simple_animal/xeno/slime/RandomizeTraits() + traitdat.traits[TRAIT_XENO_COLDRES] = rand(30,270) + traitdat.traits[TRAIT_XENO_HEATRES] = rand(30,270) + traitdat.traits[TRAIT_XENO_CHEMVOL] = round(rand(0,40)) //Wow, a slime core with the capacity to hold 2/3rd's a beaker's worth of chemicals. + traitdat.traits[TRAIT_XENO_HEALTH] = round(rand(50, 75)) + traitdat.traits[TRAIT_XENO_HUNGER] = rand(1, 20) + traitdat.traits[TRAIT_XENO_STARVEDAMAGE] = rand(1, 4) + traitdat.traits[TRAIT_XENO_EATS] = prob(95) //Odds are, that thing'll need to eat. + traitdat.traits[TRAIT_XENO_CHROMATIC] = prob(5) + if(traitdat.traits[TRAIT_XENO_CHROMATIC]) + traitdat.traits[TRAIT_XENO_HOSTILE] = 0 + else + traitdat.traits[TRAIT_XENO_HOSTILE] = prob(30) + traitdat.traits[TRAIT_XENO_GLOW_STRENGTH] = round(rand(1,6)) + traitdat.traits[TRAIT_XENO_GLOW_RANGE] = round(rand(1,6)) + traitdat.traits[TRAIT_XENO_STRENGTH] = round(rand(4,9)) + traitdat.traits[TRAIT_XENO_STR_RANGE] =round(rand(0,2)) + traitdat.traits[TRAIT_XENO_CANLEARN] = prob(68) + traitdat.traits[TRAIT_XENO_SPEED] = round(rand(-10,10)) + +/mob/living/simple_animal/xeno/slime/proc/GrowUp() + GenerateAdult() + + maxHealth = traitdat.traits[TRAIT_XENO_HEALTH] + health = maxHealth + is_child = 0 + + return 1 + +/mob/living/simple_animal/xeno/slime/Mutate() + ..() + cores = round(rand(1,9)) + if(is_child) + RandomizeTraits() + GenerateChild() + else + GenerateAdult() + +/mob/living/simple_animal/xeno/slime/proc/GenerateChild() + overlays.Cut() + name = "[nameVar] baby slime" + real_name = "[nameVar] baby slime" + desc = "A shifting blob of [nameVar] goo." + icon_state = "slime baby" + icon_living = "slime baby" + icon_dead = "slime baby dead" + color = traitdat.traits[TRAIT_XENO_COLOR] + maxHealth = traitdat.traits[TRAIT_XENO_HEALTH]/2 + health = maxHealth + + return 1 + +/mob/living/simple_animal/xeno/slime/proc/GenerateAdult() + overlays.Cut() + name = "[nameVar] slime" + real_name = "[nameVar] slime" + desc = "A shifting mass of [nameVar] goo." + color = "" + icon_state = "" + overlay = round(rand(0, MAXOVERLAY)) + GenerateAdultIcon() + +/mob/living/simple_animal/xeno/slime/proc/GenerateAdultIcon() //Hack and slash adventure game to make slimes have no color on light effects later + overlays.Cut() + var/image/Img = new(src.icon) + Img.icon_state = "slime adult" + Img.color = traitdat.traits[TRAIT_XENO_COLOR] + Img.layer = src.layer + overlays += Img + + switch(overlay) + if(SHINYOVERLAY) + var/image/I = new(src.icon) + I.icon = src.icon + I.icon_state = "slime shiny" + I.layer = src.layer + 0.1 + I.color = "#FFFFFF" + overlays += I + if(LIGHTOVERLAY) + var/image/I = new(src.icon) + I.icon = src.icon + I.icon_state = "" + I.icon_state = "slime light" + I.layer = src.layer + 0.1 + I.color = "#FFFFFF" + overlays += I + +/mob/living/simple_animal/xeno/slime/handle_reagents() + if(!stasis) + if(!reagents) + return + if(reagents.total_volume <= 0) + return + if(reagents["docilitytoxin"]) //Toxin that makes them docile? Good for quelling angry mobs. + hostile = 0 + traitdat.traits[TRAIT_XENO_HOSTILE] = 0 + ..() \ No newline at end of file diff --git a/code/modules/xenobio2/mob/slime/slime.dm b/code/modules/xenobio2/mob/slime/slime.dm new file mode 100644 index 0000000000..8b144a9384 --- /dev/null +++ b/code/modules/xenobio2/mob/slime/slime.dm @@ -0,0 +1,83 @@ +/* +Slime definitions, Life and New live here. +*/ +/mob/living/simple_animal/xeno/slime //Adult values are found here + nameVar = "grey" //When mutated, nameVar might change. + desc = "A shifting, mass of goo." + speak_emote = list("garbles", "chirps", "blurbles") + colored = 1 + color = "#CACACA" + icon = 'icons/mob/slime2.dmi' + icon_state = "slime adult" + icon_living = "slime adult" + icon_dead = "slime adult dead" + internal_vol = 200 + mut_max = 200 + mutable = COLORMUT + var/is_child = 1 + var/cores = 3 + var/growthcounter = 0 + var/growthpoint = 150 //At what point they grow up. + var/shiny = 0 + move_to_delay = 17 //Slimes shouldn't be able to go faster than humans. + default_chems = list("slimejelly" = 5) + + var/emote_on = null + + maleable = 2 + + //Slimes can speak all of the languages, oh no! + universal_speak = 1 + speak_chance = 10 + speak = list( + "Northern Star?", + "Hello?", + "Where's this going?", + "What's that?", + "What's in the box?", + "The?", + "Transport?", + "Special?", + "Slime?" + ) + + //Overlay information + var/overlay = 1 // 1 = normal lighting, 0 = shiny, 2 = too shiny, -1 = no overlay + + chemreact = list( "nutriment" = list("nutr" = 5), + "radium" = list("toxic" = 3, "mut" = 10), + "mutagen" = list("nutr" = 4, "mut" = 20), + "water" = list("nutr" = -1), + "milk" = list("nutr" = 3), + "sacid" = list("toxic" = 10), + "pacid" = list("toxic" = 20), + "chlorine" = list("toxic" = 5), + "ammonia" = list("toxic" = 5), + "sodawater" = list("toxic" = 1, "nutr" = -1), + "beer" = list("nutr" = 6), + "diethylamine" = list("nutr" = 9), + "sugar" = list("toxic" = 4, "nutr" = 2), + "eznutrient" = list("nutr" = 8), + "cryoxadone" = list("toxic" = 4), + "flourine" = list("toxic" = 1), + "robustharvest" = list("nutr" = 15), + "glucose" = list("nutr" = 5), + "blood" = list("nutr" = 7.5, "toxic" = 0.5, "mut" = 4.5), + "fuel" = list("toxic" = 4), + "toxin" = list("toxic" = 5), + "carpotoxin" = list("toxic" = 10, "mut" = 15), + "phoron" = list("toxic" = 15, "mut" = 0.3), + "cyanide" = list("toxic" = 35), + "slimejelly" = list("nutr" = 5), + "amutationtoxin" = list("toxic" = 1, "heal" = 15, "mut" = 30), + "mutationtoxin" = list("toxic" = 1, "heal" = 10, "mut" = 15), + "gold" = list("heal" = 3, "nutr" = 7, "mut" = 3), + "uranium" = list("heal" = 3, "toxic" = 7, "mut" = 12), + "glycerol" = list("nutr" = 6), + "woodpulp" = list("heal" = 1, "nutr" = 7), + "docilitytoxin" = list("nutr" = 3) ) + +/mob/living/simple_animal/xeno/slime/New() + ..() + GenerateChild() + return 1 \ No newline at end of file diff --git a/code/modules/xenobio2/mob/xeno procs.dm b/code/modules/xenobio2/mob/xeno procs.dm new file mode 100644 index 0000000000..1cbd963011 --- /dev/null +++ b/code/modules/xenobio2/mob/xeno procs.dm @@ -0,0 +1,155 @@ +/* +Basic definition of creatures for Xenobiology + +Includes: +Proc for metabolism +Proc for mutating +Procs for copying speech, if applicable +Procs for targeting +*/ +/mob/living/simple_animal/xeno/proc/ProcessTraits() + if(maleable >= 2) + maxHealth = traitdat.traits[TRAIT_XENO_HEALTH] + health = maxHealth + chemlist = traitdat.chemreact + chromatic = traitdat.traits[TRAIT_XENO_CHROMATIC] + if(maleable >= 1) + if(colored) + color = traitdat.traits[TRAIT_XENO_COLOR] + speed = traitdat.traits[TRAIT_XENO_SPEED] + hunger_factor = traitdat.traits[TRAIT_XENO_HUNGER] + starve_damage = traitdat.traits[TRAIT_XENO_STARVEDAMAGE] + minbodytemp = T20C - traitdat.traits[TRAIT_XENO_COLDRES] + maxbodytemp = T20C + traitdat.traits[TRAIT_XENO_HEATRES] + + if(traitdat.traits[TRAIT_XENO_BIOLUMESCENT]) + set_light(traitdat.traits[TRAIT_XENO_GLOW_RANGE], traitdat.traits[TRAIT_XENO_GLOW_STRENGTH], traitdat.traits[TRAIT_XENO_BIO_COLOR]) + else + set_light(0, 0, "#000000") //Should kill any light that shouldn't be there. + if(chromatic) + hostile = 0 //No. No laser-reflecting hostile creatures. Bad. + else + hostile = traitdat.traits[TRAIT_XENO_HOSTILE] + + speed = traitdat.traits[TRAIT_XENO_SPEED] + + if(traitdat.traits[TRAIT_XENO_CANSPEAK]) + speak_chance = traitdat.traits[TRAIT_XENO_SPEAKCHANCE] + else + speak_chance = 0 + + melee_damage_lower = traitdat.traits[TRAIT_XENO_STRENGTH] - traitdat.traits[TRAIT_XENO_STR_RANGE] + melee_damage_upper = traitdat.traits[TRAIT_XENO_STRENGTH] + traitdat.traits[TRAIT_XENO_STR_RANGE] + + + +//Metabolism proc, simplified for xenos. Heavily based on botanical metabolism. +/mob/living/simple_animal/xeno/proc/handle_reagents() + if(!stasis) + if(!reagents) + return + if(reagents.total_volume <= 0) + return + + //Let's handle some chemical smoke, for scientific smoke bomb purposes. + for(var/obj/effect/effect/smoke/chem/smoke in view(1, src)) + if(smoke.reagents.total_volume) + smoke.reagents.trans_to_mob(src, 10, CHEM_BLOOD, copy = 1) + + reagents.trans_to(temp_chem_holder, min(reagents.total_volume,rand(1,4))) + var/reagent_total + var/list/reagent_response = list() + for(var/datum/reagent/R in temp_chem_holder.reagents.reagent_list) + + reagent_total = temp_chem_holder.reagents.get_reagent_amount(R.id) + + reagent_response = chemreact[R] + + if(reagent_response["toxic"]) + adjustToxLoss(reagent_response["toxic"] * reagent_total) + + if(reagent_response["heal"]) + heal_overall_damage(reagent_response["heal"] * reagent_total) + + if(reagent_response["nutr"]) + nutrition += reagent_response["nutr"] * reagent_total + + if(reagent_response["mut"]) + mut_level += reagent_response["mut"] * reagent_total + + temp_chem_holder.reagents.clear_reagents() + + return 1 //Everything worked out okay. + + return 0 + +/mob/living/simple_animal/xeno/proc/Mutate() + nameVar = "mutated" + if((COLORMUT & mutable)) + traitdat.traits[TRAIT_XENO_COLOR] = "#" + for(var/i=0, i<6, i++) + traitdat.traits[TRAIT_XENO_COLOR] += pick(hexNums) + + traitdat.chems.reagents.clear_reagents() + for(var/R in default_chems) + traitdat.chems.reagents.add_reagent("[R]", default_chems[R]) + var/amount_of_chems = rand(1,6) + for(var/i = 0,i <= amount_of_chems, i++) + var/datum/reagent/R = pick(xenoChemList) + traitdat.chems.reagents.add_reagent(R, round(rand(1,10))) + //if(SPECIESMUT & mutable) + //Placeholder, currently no xenos that have species mutations. + RandomizeTraits() + ProcessTraits() + return 1 + +/mob/living/simple_animal/xeno/proc/RandomizeTraits() + return + +// I'm not positive if this even works, but + +/mob/living/simple_animal/xeno/hear_say(var/message, var/verb = "says", var/datum/language/language = null, var/alt_name = "",var/italics = 0, var/mob/speaker = null) + log_debug("[src] heard a message.") + if(traitdat.traits[TRAIT_XENO_CANLEARN]) + var/learned_message = parse_language(message) + if(!message) + return + if(learned_message) //Is it understood? + var/language_key = language.key + " " + var/complete_message = language_key + learned_message + speech_buffer.Add(complete_message) + log_debug("Adding [learned_message] to speech_buffer.") + else + speech_buffer.Add(message) + log_debug("Adding [message] to speech_buffer.") + ..(message,verb,language,alt_name,italics,speaker) + +/mob/living/simple_animal/xeno/proc/ProcessSpeechBuffer() + if(speech_buffer.len) + if(prob(traitdat.traits[TRAIT_XENO_LEARNCHANCE]) && traitdat.traits[TRAIT_XENO_CANLEARN]) + var/chosen = pick(speech_buffer) + speak.Add(chosen) + log_debug("Added [chosen] to speak list.") + log_debug("Speechlist cut.") + speech_buffer.Cut() +// +/mob/living/simple_animal/xeno/proc/BuildReagentLists() + return + +/mob/living/simple_animal/xeno/attacked_with_item(var/obj/item/O, var/mob/user) + //Shamelessly stolen from ablative armor. + if((traitdat.traits[TRAIT_XENO_CHROMATIC]) && istype(O, /obj/item/projectile/beam)) + var/obj/item/projectile/P = O + visible_message("") + // Find a turf near or on the original location to bounce to + var/new_x = P.starting.x + pick(0, -1, 1, -2, 2) + var/new_y = P.starting.y + pick(0, -1, 1, -2, 2) + var/turf/curloc = get_turf(user) + + // redirect the projectile + P.redirect(new_x, new_y, curloc, user) + return + else + ..() + + diff --git a/code/modules/xenobio2/mob/xeno.dm b/code/modules/xenobio2/mob/xeno.dm new file mode 100644 index 0000000000..70d1642372 --- /dev/null +++ b/code/modules/xenobio2/mob/xeno.dm @@ -0,0 +1,87 @@ +//First we define certain flags, can be expanded upon later. + +/* +Basic definition of creatures for Xenobiology +Also includes Life and New +*/ + +/mob/living/simple_animal/xeno + name = "Xeno" + real_name = "Xeno" + desc = "Something's broken, yell at someone." + melee_damage_lower = 0 + melee_damage_upper = 0 + attacktext = "hit" + attack_sound = null + friendly = "touches" + environment_smash = 0 + + var/datum/xeno/traits/traitdat //Trait datum. + + var/internal_vol = 1000 //Internal volume for ingesting/injected reagents + + var/obj/temp_chem_holder //Used in handle_reagents() + + var/mutable = NOMUT //Flag for mutation. + var/nameVar = "Blah" + var/instability = 0 + var/stasis = 0 + var/mut_level = 0 //How mutated a specimen is. Irrelevant while mutable = NOMUT. + var/mut_max = 100000 + var/colored = 1 + var/maleable = 0 //How easy is it to manipulate traitdat.traits after it's alive? + + //Traits that might not be maleable. + var/list/chemreact = list() + var/hunger_factor = 10 + var/chromatic = 0 + var/starve_damage = 0 + + //Used for speech learning + var/list/speech_buffer = list() + + var/list/default_chems = list() + + +//Life additions +/mob/living/simple_animal/xeno/Life() + ..() + if(src.stat == 2) + return 0 + + if(src.stasis) + stasis-- + return 0 + + handle_reagents() + if(mut_level == mut_max && !(mutable & NOMUT)) + Mutate() + + ProcessSpeechBuffer() + + //Have to feed the xenos somehow. + if(nutrition < 0) + nutrition = 0 + if((nutrition > 0 ) && traitdat.traits[TRAIT_XENO_EATS]) + if(nutrition >= 300) + nutrition -= hunger_factor + else + if(traitdat.traits[TRAIT_XENO_EATS]) + health = starve_damage + + return 1 //Everything worked okay. + +/mob/living/simple_animal/xeno/New() + traitdat = new() + ProcessTraits() + ..() + if(colored) + color = traitdat.traits[TRAIT_XENO_COLOR] + create_reagents(internal_vol) + temp_chem_holder = new() + temp_chem_holder.create_reagents(20) + nutrition = 350 + for(var/R in default_chems) + traitdat.chems.reagents.add_reagent("[R]", default_chems[R]) + if(!health) + stat = DEAD \ No newline at end of file diff --git a/icons/mob/slime2.dmi b/icons/mob/slime2.dmi new file mode 100644 index 0000000000000000000000000000000000000000..50d7ca9443bcc76a34890830954b18a03de54a86 GIT binary patch literal 4768 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 NeeFB9K59OU_%~>2^soQ` literal 0 HcmV?d00001 diff --git a/polaris.dme b/polaris.dme index 82459576ff..5d2a2d2c50 100644 --- a/polaris.dme +++ b/polaris.dme @@ -1868,6 +1868,12 @@ #include "code\modules\virus2\helpers.dm" #include "code\modules\virus2\isolator.dm" #include "code\modules\virus2\items_devices.dm" +#include "code\modules\xenobio2\mob\_xeno_setup.dm" +#include "code\modules\xenobio2\mob\xeno procs.dm" +#include "code\modules\xenobio2\mob\xeno.dm" +#include "code\modules\xenobio2\mob\slime\slime life.dm" +#include "code\modules\xenobio2\mob\slime\slime procs.dm" +#include "code\modules\xenobio2\mob\slime\slime.dm" #include "code\modules\xgm\xgm_gas_data.dm" #include "code\modules\xgm\xgm_gas_mixture.dm" #include "code\unit_tests\loadout_tests.dm" From 11a6e74ea9d597a3b7896342d27c005f69f2bb23 Mon Sep 17 00:00:00 2001 From: Datraen Date: Thu, 21 Apr 2016 13:29:00 -0400 Subject: [PATCH 02/16] Fix reagent handling, magic numbers, other errors. --- code/_macros.dm | 2 + code/modules/reagents/Chemistry-Holder.dm | 4 ++ code/modules/xenobio2/mob/_xeno_setup.dm | 65 +++++++++--------- .../modules/xenobio2/mob/slime/slime procs.dm | 8 +-- code/modules/xenobio2/mob/slime/slime.dm | 66 +++++++++---------- code/modules/xenobio2/mob/xeno procs.dm | 19 +++--- code/modules/xenobio2/mob/xeno.dm | 13 ++-- 7 files changed, 94 insertions(+), 83 deletions(-) diff --git a/code/_macros.dm b/code/_macros.dm index 7e8d581b90..ed54f8d4a6 100644 --- a/code/_macros.dm +++ b/code/_macros.dm @@ -34,3 +34,5 @@ #define issilicon(A) istype(A, /mob/living/silicon) #define isslime(A) istype(A, /mob/living/carbon/slime) + +#define isxeno(A) istype(A, /mob/living/simple_animal/xeno) diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index 89aa9b76f3..b2d04233f2 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -383,6 +383,10 @@ if(type == CHEM_TOUCH) var/datum/reagents/R = C.touching return trans_to_holder(R, amount, multiplier, copy) + else if(isxeno(target)) + var/mob/living/simple_animal/xeno/X = target + var/datum/reagents/R = X.reagents + return trans_to_holder(R, amount, multiplier, copy) else var/datum/reagents/R = new /datum/reagents(amount) . = trans_to_holder(R, amount, multiplier, copy) diff --git a/code/modules/xenobio2/mob/_xeno_setup.dm b/code/modules/xenobio2/mob/_xeno_setup.dm index e5f841611c..dc3f52246a 100644 --- a/code/modules/xenobio2/mob/_xeno_setup.dm +++ b/code/modules/xenobio2/mob/_xeno_setup.dm @@ -13,33 +13,37 @@ //Definitions for traits. -#define TRAIT_XENO_COLOR "color" -#define TRAIT_XENO_CHEMISTRY "chems" -#define TRAIT_XENO_CHEMVOL "chem_vol" -#define TRAIT_XENO_HEALTH "health" -#define TRAIT_XENO_HUNGER "hunger" -#define TRAIT_XENO_STARVEDAMAGE "starvedamage" -#define TRAIT_XENO_EATS "eats" -#define TRAIT_XENO_CHROMATIC "chrom" -#define TRAIT_XENO_HOSTILE "hostile" -#define TRAIT_XENO_BIOLUMESCENT "biolum" -#define TRAIT_XENO_BIO_COLOR "biocolor" -#define TRAIT_XENO_GLOW_STRENGTH "biostrength" -#define TRAIT_XENO_GLOW_RANGE "biorange" -#define TRAIT_XENO_TOXIC_CHEMS "tox_chems" -#define TRAIT_XENO_NUTRITIONAL_CHEMS "nutr_chems" -#define TRAIT_XENO_HEALING_CHEMS "heal_chems" -#define TRAIT_XENO_MUTATING_CHEMS "mut_chems" -#define TRAIT_XENO_SPEED "speed" -#define TRAIT_XENO_COLDRES "cold_resistance" -#define TRAIT_XENO_HEATRES "heat_resistance" -#define TRAIT_XENO_LEARNCHANCE "learn_chance" -#define TRAIT_XENO_CANLEARN "can_learn" -#define TRAIT_XENO_SPEAKCHANCE "speak_chance" -#define TRAIT_XENO_CANSPEAK "can_speak" -#define TRAIT_XENO_STRENGTH "melee_strength" -#define TRAIT_XENO_STR_RANGE "melee_range" +#define TRAIT_XENO_COLOR "color" +#define TRAIT_XENO_CHEMISTRY "chems" +#define TRAIT_XENO_CHEMVOL "chem_vol" +#define TRAIT_XENO_HEALTH "health" +#define TRAIT_XENO_HUNGER "hunger" +#define TRAIT_XENO_STARVEDAMAGE "starvedamage" +#define TRAIT_XENO_EATS "eats" +#define TRAIT_XENO_CHROMATIC "chrom" +#define TRAIT_XENO_HOSTILE "hostile" +#define TRAIT_XENO_BIOLUMESCENT "biolum" +#define TRAIT_XENO_BIO_COLOR "biocolor" +#define TRAIT_XENO_GLOW_STRENGTH "biostrength" +#define TRAIT_XENO_GLOW_RANGE "biorange" +#define TRAIT_XENO_TOXIC_CHEMS "tox_chems" +#define TRAIT_XENO_NUTRITIONAL_CHEMS "nutr_chems" +#define TRAIT_XENO_HEALING_CHEMS "heal_chems" +#define TRAIT_XENO_MUTATING_CHEMS "mut_chems" +#define TRAIT_XENO_SPEED "speed" +#define TRAIT_XENO_COLDRES "cold_resistance" +#define TRAIT_XENO_HEATRES "heat_resistance" +#define TRAIT_XENO_LEARNCHANCE "learn_chance" +#define TRAIT_XENO_CANLEARN "can_learn" +#define TRAIT_XENO_SPEAKCHANCE "speak_chance" +#define TRAIT_XENO_CANSPEAK "can_speak" +#define TRAIT_XENO_STRENGTH "melee_strength" +#define TRAIT_XENO_STR_RANGE "melee_range" +//Maleability defines. +#define MAX_MALEABLE 2 +#define MINOR_MALEABLE 1 +#define MIN_MALEABLE 0 var/global/list/xenoChemList = list("mutationtoxin", "psilocybin", @@ -73,10 +77,7 @@ var/global/list/xenoChemList = list("mutationtoxin", /datum/xeno/traits var/list/traits = list() - var/list/tox_chems - var/list/nutr_chems - var/list/heal_chems - var/list/mut_chems + var/list/chemlist = list() var/obj/chems /datum/xeno/traits/proc/set_trait(var/trait, var/newval) @@ -86,7 +87,7 @@ var/global/list/xenoChemList = list("mutationtoxin", /datum/xeno/traits/New() ..() set_trait(TRAIT_XENO_COLOR, "#CACACA") - set_trait(TRAIT_XENO_CHEMVOL, 10) + set_trait(TRAIT_XENO_CHEMVOL, 100) set_trait(TRAIT_XENO_HEALTH, 20) set_trait(TRAIT_XENO_HUNGER, 2) set_trait(TRAIT_XENO_STARVEDAMAGE, 0) @@ -102,7 +103,7 @@ var/global/list/xenoChemList = list("mutationtoxin", set_trait(TRAIT_XENO_HEATRES, 20) set_trait(TRAIT_XENO_LEARNCHANCE, 100) set_trait(TRAIT_XENO_CANLEARN, 1) - set_trait(TRAIT_XENO_SPEAKCHANCE, 10) + set_trait(TRAIT_XENO_SPEAKCHANCE, 1) set_trait(TRAIT_XENO_CANSPEAK, 1) set_trait(TRAIT_XENO_STRENGTH, 0) set_trait(TRAIT_XENO_STR_RANGE, 0) diff --git a/code/modules/xenobio2/mob/slime/slime procs.dm b/code/modules/xenobio2/mob/slime/slime procs.dm index 7008537c56..7d2849ce6f 100644 --- a/code/modules/xenobio2/mob/slime/slime procs.dm +++ b/code/modules/xenobio2/mob/slime/slime procs.dm @@ -8,7 +8,7 @@ Slime specific procs go here. /mob/living/simple_animal/xeno/slime/RandomizeTraits() traitdat.traits[TRAIT_XENO_COLDRES] = rand(30,270) traitdat.traits[TRAIT_XENO_HEATRES] = rand(30,270) - traitdat.traits[TRAIT_XENO_CHEMVOL] = round(rand(0,40)) //Wow, a slime core with the capacity to hold 2/3rd's a beaker's worth of chemicals. + traitdat.traits[TRAIT_XENO_CHEMVOL] = round(rand(20,40)) //Wow, a slime core with the capacity to hold 2/3rd's a beaker's worth of chemicals. traitdat.traits[TRAIT_XENO_HEALTH] = round(rand(50, 75)) traitdat.traits[TRAIT_XENO_HUNGER] = rand(1, 20) traitdat.traits[TRAIT_XENO_STARVEDAMAGE] = rand(1, 4) @@ -98,7 +98,7 @@ Slime specific procs go here. return if(reagents.total_volume <= 0) return - if(reagents["docilitytoxin"]) //Toxin that makes them docile? Good for quelling angry mobs. + /*if(reagents.has_reagent("docilitytoxin")) //Toxin that makes them docile? Good for quelling angry mobs. hostile = 0 - traitdat.traits[TRAIT_XENO_HOSTILE] = 0 - ..() \ No newline at end of file + traitdat.traits[TRAIT_XENO_HOSTILE] = 0*/ + ..() \ No newline at end of file diff --git a/code/modules/xenobio2/mob/slime/slime.dm b/code/modules/xenobio2/mob/slime/slime.dm index 8b144a9384..2060f4a268 100644 --- a/code/modules/xenobio2/mob/slime/slime.dm +++ b/code/modules/xenobio2/mob/slime/slime.dm @@ -24,7 +24,7 @@ Slime definitions, Life and New live here. var/emote_on = null - maleable = 2 + maleable = MAX_MALEABLE //Slimes can speak all of the languages, oh no! universal_speak = 1 @@ -44,38 +44,38 @@ Slime definitions, Life and New live here. //Overlay information var/overlay = 1 // 1 = normal lighting, 0 = shiny, 2 = too shiny, -1 = no overlay - chemreact = list( "nutriment" = list("nutr" = 5), - "radium" = list("toxic" = 3, "mut" = 10), - "mutagen" = list("nutr" = 4, "mut" = 20), - "water" = list("nutr" = -1), - "milk" = list("nutr" = 3), - "sacid" = list("toxic" = 10), - "pacid" = list("toxic" = 20), - "chlorine" = list("toxic" = 5), - "ammonia" = list("toxic" = 5), - "sodawater" = list("toxic" = 1, "nutr" = -1), - "beer" = list("nutr" = 6), - "diethylamine" = list("nutr" = 9), - "sugar" = list("toxic" = 4, "nutr" = 2), - "eznutrient" = list("nutr" = 8), - "cryoxadone" = list("toxic" = 4), - "flourine" = list("toxic" = 1), - "robustharvest" = list("nutr" = 15), - "glucose" = list("nutr" = 5), - "blood" = list("nutr" = 7.5, "toxic" = 0.5, "mut" = 4.5), - "fuel" = list("toxic" = 4), - "toxin" = list("toxic" = 5), - "carpotoxin" = list("toxic" = 10, "mut" = 15), - "phoron" = list("toxic" = 15, "mut" = 0.3), - "cyanide" = list("toxic" = 35), - "slimejelly" = list("nutr" = 5), - "amutationtoxin" = list("toxic" = 1, "heal" = 15, "mut" = 30), - "mutationtoxin" = list("toxic" = 1, "heal" = 10, "mut" = 15), - "gold" = list("heal" = 3, "nutr" = 7, "mut" = 3), - "uranium" = list("heal" = 3, "toxic" = 7, "mut" = 12), - "glycerol" = list("nutr" = 6), - "woodpulp" = list("heal" = 1, "nutr" = 7), - "docilitytoxin" = list("nutr" = 3) ) + chemreact = list( "nutriment" = list("nutr" = 0.5), + "radium" = list("toxic" = 0.3, "mut" = 1), + "mutagen" = list("nutr" = 0.4, "mut" = 2), + "water" = list("nutr" = -0.1), + "milk" = list("nutr" = 0.3), + "sacid" = list("toxic" = 1), + "pacid" = list("toxic" = 2), + "chlorine" = list("toxic" = 0.5), + "ammonia" = list("toxic" = 0.5), + "sodawater" = list("toxic" = 0.1, "nutr" = -0.1), + "beer" = list("nutr" = 0.6), + "diethylamine" = list("nutr" = 0.9), + "sugar" = list("toxic" = 0.4, "nutr" = 0.2), + "eznutrient" = list("nutr" = 0.8), + "cryoxadone" = list("toxic" = 0.4), + "flourine" = list("toxic" = 0.1), + "robustharvest" = list("nutr" = 1.5), + "glucose" = list("nutr" = 0.5), + "blood" = list("nutr" = 0.75, "toxic" = 0.05, "mut" = 0.45), + "fuel" = list("toxic" = 0.4), + "toxin" = list("toxic" = 0.5), + "carpotoxin" = list("toxic" = 1, "mut" = 1.5), + "phoron" = list("toxic" = 1.5, "mut" = 0.03), + "cyanide" = list("toxic" = 3.5), + "slimejelly" = list("nutr" = 0.5), + "amutationtoxin" = list("toxic" = 0.1, "heal" = 1.5, "mut" = 3), + "mutationtoxin" = list("toxic" = 0.1, "heal" = 1, "mut" = 1.5), + "gold" = list("heal" = 0.3, "nutr" = 0.7, "mut" = 0.3), + "uranium" = list("heal" = 0.3, "toxic" = 0.7, "mut" = 1.2), + "glycerol" = list("nutr" = 0.6), + "woodpulp" = list("heal" = 0.1, "nutr" = 0.7), + "docilitytoxin" = list("nutr" = 0.3) ) /mob/living/simple_animal/xeno/slime/New() ..() diff --git a/code/modules/xenobio2/mob/xeno procs.dm b/code/modules/xenobio2/mob/xeno procs.dm index 1cbd963011..b39210e611 100644 --- a/code/modules/xenobio2/mob/xeno procs.dm +++ b/code/modules/xenobio2/mob/xeno procs.dm @@ -8,12 +8,15 @@ Procs for copying speech, if applicable Procs for targeting */ /mob/living/simple_animal/xeno/proc/ProcessTraits() - if(maleable >= 2) + if(maleable >= MAX_MALEABLE) maxHealth = traitdat.traits[TRAIT_XENO_HEALTH] health = maxHealth - chemlist = traitdat.chemreact + if(traitdat.chemlist.len) //Let's make sure that this has a length. + chemreact = traitdat.chemlist + else + traitdat.chemlist = chemreact chromatic = traitdat.traits[TRAIT_XENO_CHROMATIC] - if(maleable >= 1) + if(maleable >= MINOR_MALEABLE) if(colored) color = traitdat.traits[TRAIT_XENO_COLOR] speed = traitdat.traits[TRAIT_XENO_SPEED] @@ -26,7 +29,7 @@ Procs for targeting set_light(traitdat.traits[TRAIT_XENO_GLOW_RANGE], traitdat.traits[TRAIT_XENO_GLOW_STRENGTH], traitdat.traits[TRAIT_XENO_BIO_COLOR]) else set_light(0, 0, "#000000") //Should kill any light that shouldn't be there. - if(chromatic) + if(!(chromatic)) hostile = 0 //No. No laser-reflecting hostile creatures. Bad. else hostile = traitdat.traits[TRAIT_XENO_HOSTILE] @@ -53,17 +56,17 @@ Procs for targeting //Let's handle some chemical smoke, for scientific smoke bomb purposes. for(var/obj/effect/effect/smoke/chem/smoke in view(1, src)) - if(smoke.reagents.total_volume) - smoke.reagents.trans_to_mob(src, 10, CHEM_BLOOD, copy = 1) + if(smoke.reagents.total_volume) + smoke.reagents.trans_to_mob(src, 10, CHEM_BLOOD, copy = 1) - reagents.trans_to(temp_chem_holder, min(reagents.total_volume,rand(1,4))) + reagents.trans_to_obj(temp_chem_holder, min(reagents.total_volume,rand(1,4))) var/reagent_total var/list/reagent_response = list() for(var/datum/reagent/R in temp_chem_holder.reagents.reagent_list) reagent_total = temp_chem_holder.reagents.get_reagent_amount(R.id) - reagent_response = chemreact[R] + reagent_response = chemreact[R.id] if(reagent_response["toxic"]) adjustToxLoss(reagent_response["toxic"] * reagent_total) diff --git a/code/modules/xenobio2/mob/xeno.dm b/code/modules/xenobio2/mob/xeno.dm index 70d1642372..f89b801db3 100644 --- a/code/modules/xenobio2/mob/xeno.dm +++ b/code/modules/xenobio2/mob/xeno.dm @@ -29,7 +29,7 @@ Also includes Life and New var/mut_level = 0 //How mutated a specimen is. Irrelevant while mutable = NOMUT. var/mut_max = 100000 var/colored = 1 - var/maleable = 0 //How easy is it to manipulate traitdat.traits after it's alive? + var/maleable = MIN_MALEABLE //How easy is it to manipulate traitdat.traits after it's alive. //Traits that might not be maleable. var/list/chemreact = list() @@ -45,16 +45,17 @@ Also includes Life and New //Life additions /mob/living/simple_animal/xeno/Life() - ..() - if(src.stat == 2) + if(src.stat == DEAD) return 0 - if(src.stasis) + if(stasis) stasis-- + if(stasis < 0) + stasis = 0 return 0 - + ..() handle_reagents() - if(mut_level == mut_max && !(mutable & NOMUT)) + if((mut_level >= mut_max) && !(mutable & NOMUT)) Mutate() ProcessSpeechBuffer() From 574b08d70391a436aa3c3781d441817aab94d9ad Mon Sep 17 00:00:00 2001 From: Ccomp5950 Date: Fri, 12 Feb 2016 00:04:32 -0500 Subject: [PATCH 03/16] Slimes and Parrots now hear_say Removes the recursive bullshit that was put in living/say() that isn't needed. Fixes #12063 http://i.imgur.com/lsb983N.png --- code/modules/mob/living/say.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 54af2697ec..a0b8347d2d 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -233,7 +233,8 @@ proc/get_radio_key_from_channel(var/channel) italics = 1 sound_vol *= 0.5 //muffle the sound a bit, so it's like we're actually talking through contact - var/list/hear = get_mobs_or_objects_in_view(message_range,src) + //DO NOT FUCKING CHANGE THIS TO GET_OBJ_OR_MOB_AND_BULLSHIT() -- Hugs and Kisses ~Ccomp + var/list/hear = hear(message_range,T) var/list/hearturfs = list() for(var/I in hear) From 4212acdc580ac70caac3d81f6f3edb380bf9f825 Mon Sep 17 00:00:00 2001 From: Datraen Date: Thu, 21 Apr 2016 16:40:59 -0400 Subject: [PATCH 04/16] Makes slimes less annoying, xenos now translate messages. Translation is as a result of say code being extra fun. --- code/modules/xenobio2/mob/slime/slime.dm | 14 +++++++------- code/modules/xenobio2/mob/xeno procs.dm | 20 +++++++++----------- 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/code/modules/xenobio2/mob/slime/slime.dm b/code/modules/xenobio2/mob/slime/slime.dm index 2060f4a268..b32fd7df70 100644 --- a/code/modules/xenobio2/mob/slime/slime.dm +++ b/code/modules/xenobio2/mob/slime/slime.dm @@ -28,18 +28,15 @@ Slime definitions, Life and New live here. //Slimes can speak all of the languages, oh no! universal_speak = 1 - speak_chance = 10 - speak = list( - "Northern Star?", - "Hello?", + speak_chance = 1 + speak = list("Hello?", "Where's this going?", "What's that?", "What's in the box?", - "The?", + "Cargo.", "Transport?", "Special?", - "Slime?" - ) + "Slime?") //Overlay information var/overlay = 1 // 1 = normal lighting, 0 = shiny, 2 = too shiny, -1 = no overlay @@ -79,5 +76,8 @@ Slime definitions, Life and New live here. /mob/living/simple_animal/xeno/slime/New() ..() + for(var/datum/language/L in (typesof(/datum/language) - /datum/language)) + languages += L + speak += "[station_name()]?" GenerateChild() return 1 \ No newline at end of file diff --git a/code/modules/xenobio2/mob/xeno procs.dm b/code/modules/xenobio2/mob/xeno procs.dm index b39210e611..18b70ebb11 100644 --- a/code/modules/xenobio2/mob/xeno procs.dm +++ b/code/modules/xenobio2/mob/xeno procs.dm @@ -108,23 +108,21 @@ Procs for targeting /mob/living/simple_animal/xeno/proc/RandomizeTraits() return - -// I'm not positive if this even works, but -/mob/living/simple_animal/xeno/hear_say(var/message, var/verb = "says", var/datum/language/language = null, var/alt_name = "",var/italics = 0, var/mob/speaker = null) - log_debug("[src] heard a message.") +/mob/living/simple_animal/xeno/hear_say(var/message, var/verb = "says", var/datum/language/language, var/alt_name = "",var/italics = 0, var/mob/speaker = null) if(traitdat.traits[TRAIT_XENO_CANLEARN]) - var/learned_message = parse_language(message) - if(!message) + /* + Until this gets sorted out to a functioning point, or waiting on Psi's saycode update. + var/learned_message = say_understands(speaker, language) + if(!message || isxeno(speaker)) return if(learned_message) //Is it understood? - var/language_key = language.key + " " - var/complete_message = language_key + learned_message + var/complete_message = ",[language.key] [message]" speech_buffer.Add(complete_message) - log_debug("Adding [learned_message] to speech_buffer.") + log_debug("Added '[complete_message]'.") else - speech_buffer.Add(message) - log_debug("Adding [message] to speech_buffer.") + */ + speech_buffer.Add(message) ..(message,verb,language,alt_name,italics,speaker) /mob/living/simple_animal/xeno/proc/ProcessSpeechBuffer() From b6a4d7ff4cd8dc3156d66c1e87623a6d4601c8ea Mon Sep 17 00:00:00 2001 From: Datraen Date: Thu, 21 Apr 2016 16:42:34 -0400 Subject: [PATCH 05/16] Adds slimebaton, xeno taser. Slime attack text changed. --- code/modules/xenobio2/mob/slime/slime.dm | 1 + .../xenobio2/tools/slime_handling_tools.dm | 55 ++++++++++++++++++ icons/mob/items/lefthand.dmi | Bin 120683 -> 121482 bytes icons/mob/items/righthand.dmi | Bin 121968 -> 122433 bytes icons/obj/weapons.dmi | Bin 29901 -> 32809 bytes polaris.dme | 1 + 6 files changed, 57 insertions(+) create mode 100644 code/modules/xenobio2/tools/slime_handling_tools.dm diff --git a/code/modules/xenobio2/mob/slime/slime.dm b/code/modules/xenobio2/mob/slime/slime.dm index b32fd7df70..28276d034f 100644 --- a/code/modules/xenobio2/mob/slime/slime.dm +++ b/code/modules/xenobio2/mob/slime/slime.dm @@ -21,6 +21,7 @@ Slime definitions, Life and New live here. var/shiny = 0 move_to_delay = 17 //Slimes shouldn't be able to go faster than humans. default_chems = list("slimejelly" = 5) + attacktext = "absorbed some of" var/emote_on = null diff --git a/code/modules/xenobio2/tools/slime_handling_tools.dm b/code/modules/xenobio2/tools/slime_handling_tools.dm new file mode 100644 index 0000000000..dcd8740e44 --- /dev/null +++ b/code/modules/xenobio2/tools/slime_handling_tools.dm @@ -0,0 +1,55 @@ +/* What this file contains: + + * A specialized stun prod, for handling fiesty slimes + + * A specialized stun gun, for handling many fiesty slimes + + * A stun projectile for handling xenomorphs. + +*/ +/obj/item/weapon/melee/baton/slime + name = "stunbaton (s)" + desc = "A modified stun baton designed to stun slimes for handling." + icon_state = "slimebaton" + item_state = "slimebaton" + slot_flags = SLOT_BELT + force = 9 + origin_tech = list(TECH_COMBAT = 2, TECH_BIO = 4) + agonyforce = 10 //It's not supposed to be great at stunning human beings. + var/stunforce = 60 //How much stasis it does to slimes, and 1/3rd to non-slimes. + +/obj/item/weapon/melee/baton/slime/attack(mob/M, mob/user) + if(istype(M, /mob/living/simple_animal/xeno)) + var/mob/living/simple_animal/xeno/X = M + if(istype(M, /mob/living/simple_animal/xeno/slime)) + X.stasis += stunforce + else + X.stasis += (stunforce / 6) + ..() + + +// Xeno stun gun + projectile +/obj/item/weapon/gun/energy/taser/xeno + name = "xeno taser gun" + desc = "Straight out of NT's testing laboratories, this small gun is used to subdue non-humanoid xeno life forms. While marketed towards handling slimes, it may be useful for other creatures." + icon_state = taserold + fire_sound = 'sound/weapons/taser2.ogg' + max_shots = 10 + projectile_type = /obj/item/projectile/beam/stun/xeno + +/obj/item/projectile/beam/stun/xeno + icon_state = "omni" + agony = 4 + var/stunforce = 40 + + muzzle_type = /obj/effect/projectile/laser_omni/muzzle + tracer_type = /obj/effect/projectile/laser_omni/tracer + impact_type = /obj/effect/projectile/laser_omni/impact + +/obj/item/projectile/beam/stun/xeno/on_hit(var/atom/target, var/blocked = 0) + if(istype(M, /mob/living/simple_animal/xeno)) + var/mob/living/simple_animal/xeno/X = M + if(istype(M, /mob/living/simple_animal/xeno/slime)) + X.stasis += stunforce + else + X.stasis += (stunforce / 8) \ No newline at end of file diff --git a/icons/mob/items/lefthand.dmi b/icons/mob/items/lefthand.dmi index f8d3c1c23fb171cc02c57d9a3643b953777c9dd8..e43b3a0d872db11a7a61b369a5fe7496b0722f72 100644 GIT binary patch delta 100729 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