diff --git a/modular_chomp/code/game/objects/structures/tyr_project_props.dm b/modular_chomp/code/game/objects/structures/tyr_project_props.dm index 2575191763..5fe1097ba7 100644 --- a/modular_chomp/code/game/objects/structures/tyr_project_props.dm +++ b/modular_chomp/code/game/objects/structures/tyr_project_props.dm @@ -805,3 +805,28 @@ darkness, 86hils82 o82hers repor82 horrific 84isions of flames, and flesh. Fur82her
\ in84es82iga82ion is required." +/obj/item/paper/tyr_notes/astral_a + name = "The Bright Future" + info = "We have come back from the brink of defeat! By some act of divinity, fate, or pure will we discovered devices far past the brink of civilization and begun to harvest secrets.
\ + We have begun to pave the road for the bright future, but our road ahead is a long and rocky one. We shall prevail like we always have.
\ + Those harness resources for their own comfort and gains shall be cut down, and those that remain shall flourish." + +/obj/item/paper/tyr_notes/astral_b + name = "Natural Resources of Tyr" + info = "So this is draft 12 of this report, and I am giving up with being professional. This is just orange phoron. Discrediting it a bit, but it's a weird thing used for fuel, energy, and maybe other things.
\ + They made bioweapons that act as a farm. This has to be important for this fallen society. The building has also shifted and keeps on slowly shifting. Which is concerning but I am here for the natural bits.
\ + Which is nothing. There is some ore, but most of it seems manufactured. The ants are man made too. Super advanced slimes perhaps? Did NT make a time machine and go back to make orange phoron but blow themselves up?
\ + Anyway rambling aside, the energized agate as the crew has been calling it seems useful to make batteries. Scanned some guns from the nearby structures and was easy enough to make. Exporting it enmass" + +/obj/item/paper/tyr_notes/astral_c + name = "Encoded Siginals" + info = "Signals have been constantly emitting from the tyrian superstructure. Our scanners have a guestimate of at least 5000 meters deep but uncertain if signals from deeper within are not reaching.
\ + The base itself is falling apart slowly but surely. Unsure how wise it is to enter it, with how hostile the repair drones are it has a high lethality rate thus far. To the signals themselves, it seems to be composed of data.
\ + I belive the base recognizes it's collapsing and trying to send out the information it has. We have seen mentions of an Astral Sea, Eon War, and End Times. The data is quite corrupted but from what we've scavanged, they
\ + seem to be aware of the rift, or bluespace. There are high doubts that the Astral Sea is anything new. We've seen countless wars, but the End Times is quite concerning. Speaking of a mass disappearance of stars. needs further study." + +/obj/item/paper/tyr_notes/astral_d + name = "Requesting Backup" + info = "We need serious back up if we are to stay here long term. Random folks keep stumbling upon the sivian side and blasting, unsure if they are bounty hunters, or maniacs but no SOL attention yet.
\ + The other day we had reports of masked and hooded men hovering over lava, although that may be disregarded. We found mold and mushrooms in some of our rations, and there was no physical sign of them.
\ + Although Rift Watchers may be stalking this location. The ants are also adapting to us and our gear. We need something, a simple mecha will do." diff --git a/modular_chomp/code/modules/food/food/snacks/meat.dm b/modular_chomp/code/modules/food/food/snacks/meat.dm index e05d319794..5b4106e855 100644 --- a/modular_chomp/code/modules/food/food/snacks/meat.dm +++ b/modular_chomp/code/modules/food/food/snacks/meat.dm @@ -90,94 +90,79 @@ //ant meats -/obj/item/reagent_containers/food/snacks/tyrant - name = "Bronze Ant Slice" +/obj/item/reagent_containers/food/snacks/tyrant_shock + name = "Shocking Ant Slice" desc = "A slice from a ant" icon_state = "meat" center_of_mass_x = 17 //CHOMPEdit center_of_mass_y= 16 //CHOMPEdit nutriment_amt = 3 - nutriment_desc = list(REAGENT_ID_PROTEIN = 3, REAGENT_ID_SHOCKCHEM = 3) + nutriment_desc = list(REAGENT_ID_PROTEIN = 5, REAGENT_ID_SHOCKCHEM = 5) bitesize = 1 /obj/item/reagent_containers/food/snacks/copperant/Initialize(mapload) . = ..() - reagents.add_reagent(REAGENT_ID_PROTEIN, 3) - reagents.add_reagent(REAGENT_ID_SHOCKCHEM, 3) + reagents.add_reagent(REAGENT_ID_PROTEIN, 5) + reagents.add_reagent(REAGENT_ID_SHOCKCHEM, 5) -/obj/item/reagent_containers/food/snacks/copperant - name = "Copper Ant Slice" - desc = "A slice from a ant" - icon_state = "meat" - center_of_mass_x = 17 //CHOMPEdit - center_of_mass_y= 16 //CHOMPEdit - nutriment_amt = 3 - nutriment_desc = list(REAGENT_ID_PROTEIN = 3, REAGENT_ID_SHOCKCHEM = 3) - bitesize = 1 - -/obj/item/reagent_containers/food/snacks/copperant/Initialize(mapload) - . = ..() - reagents.add_reagent(REAGENT_ID_PROTEIN, 3) - reagents.add_reagent(REAGENT_ID_SHOCKCHEM, 3) - -/obj/item/reagent_containers/food/snacks/painiteant +/obj/item/reagent_containers/food/snacks/tyrant_neoburn name = "Painite Ant Slice" desc = "A slice from a ant" icon_state = "meat" center_of_mass_x = 17 //CHOMPEdit center_of_mass_y= 16 //CHOMPEdit nutriment_amt = 3 - nutriment_desc = list(REAGENT_ID_PROTEIN = 3, REAGENT_ID_NEOLIQUIDFIRE = 3) + nutriment_desc = list(REAGENT_ID_PROTEIN = 5, REAGENT_ID_NEOLIQUIDFIRE = 5) bitesize = 1 /obj/item/reagent_containers/food/snacks/painiteant/Initialize(mapload) . = ..() - reagents.add_reagent(REAGENT_ID_PROTEIN, 3) - reagents.add_reagent(REAGENT_ID_NEOLIQUIDFIRE, 3) + reagents.add_reagent(REAGENT_ID_PROTEIN, 5) + reagents.add_reagent(REAGENT_ID_NEOLIQUIDFIRE, 5) -/obj/item/reagent_containers/food/snacks/bronzeant +/obj/item/reagent_containers/food/snacks/tyrant_burn name = "Bronze Ant Slice" desc = "A slice from a ant" icon_state = "meat" center_of_mass_x = 17 //CHOMPEdit center_of_mass_y= 16 //CHOMPEdit nutriment_amt = 3 - nutriment_desc = list(REAGENT_ID_PROTEIN = 3, REAGENT_ID_LIQUIDFIRE = 3) + nutriment_desc = list(REAGENT_ID_PROTEIN = 5, REAGENT_ID_LIQUIDFIRE = 5) bitesize = 1 -/obj/item/reagent_containers/food/snacks/bronzeant/Initialize(mapload) +/obj/item/reagent_containers/food/snacks/tyrant_burn/Initialize(mapload) . = ..() - reagents.add_reagent(REAGENT_ID_PROTEIN, 3) - reagents.add_reagent(REAGENT_ID_LIQUIDFIRE, 3) + reagents.add_reagent(REAGENT_ID_PROTEIN, 5) + reagents.add_reagent(REAGENT_ID_LIQUIDFIRE, 5) -/obj/item/reagent_containers/food/snacks/quartzant +/obj/item/reagent_containers/food/snacks/tyrant_radiation name = "Quartz Ant Slice" desc = "A slice from a ant" icon_state = "meat" center_of_mass_x = 17 //CHOMPEdit center_of_mass_y= 16 //CHOMPEdit nutriment_amt = 3 - nutriment_desc = list(REAGENT_ID_PROTEIN = 3, REAGENT_ID_DEATHBLOOD = 3) + nutriment_desc = list(REAGENT_ID_PROTEIN = 5, REAGENT_ID_DEATHBLOOD = 5) bitesize = 1 -/obj/item/reagent_containers/food/snacks/quartzant/Initialize(mapload) +/obj/item/reagent_containers/food/snacks/tyrant_radiation/Initialize(mapload) . = ..() - reagents.add_reagent(REAGENT_ID_PROTEIN, 3) - reagents.add_reagent(REAGENT_ID_DEATHBLOOD, 3) + reagents.add_reagent(REAGENT_ID_PROTEIN, 5) + reagents.add_reagent(REAGENT_ID_DEATHBLOOD, 5) -/obj/item/reagent_containers/food/snacks/agateant +/obj/item/reagent_containers/food/snacks/tyrant_bonus name = "Agate Ant Slice" desc = "A slice from a ant" icon_state = "meat" center_of_mass_x = 17 //CHOMPEdit center_of_mass_y= 16 //CHOMPEdit nutriment_amt = 3 - nutriment_desc = list(REAGENT_ID_PROTEIN = 3, REAGENT_ID_LIQUIDLIFE = 3) + nutriment_desc = list(REAGENT_ID_PROTEIN = 5, REAGENT_ID_LIQUIDLIFE = 5) bitesize = 1 -/obj/item/reagent_containers/food/snacks/agateant/Initialize(mapload) +/obj/item/reagent_containers/food/snacks/tyrant_bonus/Initialize(mapload) . = ..() - reagents.add_reagent(REAGENT_ID_PROTEIN, 3) - reagents.add_reagent(REAGENT_ID_LIQUIDLIFE, 3) + reagents.add_reagent(REAGENT_ID_PROTEIN, 5) + reagents.add_reagent(REAGENT_ID_LIQUIDLIFE, 5) diff --git a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/animal/tyr/ants.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/animal/tyr/ants.dm index 076a20517e..2038908388 100644 --- a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/animal/tyr/ants.dm +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/animal/tyr/ants.dm @@ -19,9 +19,7 @@ attack_edge = 1 meat_amount = 7 - meat_type = /obj/item/reagent_containers/food/snacks/tyrant - - tame_items = list(/obj/item/reagent_containers/food/snacks/crabmeat = 20) + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_shock faction = FACTION_TYR_ANT @@ -33,6 +31,10 @@ /obj/item/reagent_containers/food/snacks/jellyfishcore = 70 ) + harvest_tool = /obj/item/weldingtool + harvest_cooldown = 10 MINUTES + harvest_delay = 30 SECONDS + //I know very little of this swallowTime = 3 SECONDS vore_active = 1 @@ -82,8 +84,11 @@ butchery_loot = list(\ /obj/item/stack/material/copper = 18\ ) + harvest_results = list( + /obj/item/stack/material/copper = 10 + ) meat_amount = 3 - meat_type = /obj/item/reagent_containers/food/snacks/copperant + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_burn /mob/living/simple_mob/animal/tyr/mineral_ants/copper/bullet_act(obj/item/projectile/P) if(istype(P, /obj/item/projectile/energy) || istype(P, /obj/item/projectile/beam)) @@ -99,8 +104,11 @@ butchery_loot = list(\ /obj/item/stack/material/weathered_agate = 18\ ) + harvest_results = list( + /obj/item/stack/material/weathered_agate = 10 + ) meat_amount = 3 - meat_type = /obj/item/reagent_containers/food/snacks/agateant + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_bonus special_attack_min_range = 0 special_attack_max_range = 2 @@ -122,8 +130,11 @@ butchery_loot = list(\ /obj/item/stack/material/quartz = 18\ ) + harvest_results = list( + /obj/item/stack/material/quartz = 10 + ) meat_amount = 3 - meat_type = /obj/item/reagent_containers/food/snacks/quartzant + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_radiation /mob/living/simple_mob/animal/tyr/mineral_ants/diamond //slower, tankier, more damage name = "diamond metal ant" @@ -134,27 +145,38 @@ melee_damage_lower = 24 melee_damage_upper = 24 movement_cooldown = 3 + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_neoburn butchery_loot = list(\ /obj/item/stack/material/diamond = 18\ ) + harvest_results = list( + /obj/item/stack/material/diamond = 10 + ) /mob/living/simple_mob/animal/tyr/mineral_ants/verdantium name = "green metal ant" evasion = 50 icon_state = "verdantium_ant" icon_living = "verdantium_ant" + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_radiation butchery_loot = list(\ /obj/item/stack/material/verdantium = 18\ ) + harvest_results = list( + /obj/item/stack/material/verdantium = 10 + ) /mob/living/simple_mob/animal/tyr/mineral_ants/uranium //if it melees, it unleashes rads name = "glowing metal ant" icon_state = "rad_ant" icon_living = "rad_ant" + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_radiation butchery_loot = list(\ /obj/item/stack/material/uranium = 18\ ) - + harvest_results = list( + /obj/item/stack/material/uranium = 10 + ) special_attack_min_range = 1 special_attack_max_range = 2 special_attack_cooldown = 5 SECONDS @@ -172,9 +194,13 @@ name = "mhydro ant" icon_state = "mhydro_ant" icon_living = "mhydro_ant" + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_radiation butchery_loot = list(\ /obj/item/stack/material/mhydrogen = 12\ ) + harvest_results = list( + /obj/item/stack/material/mhydrogen = 4 + ) size_multiplier = 0.5 movement_cooldown = -1 @@ -186,8 +212,11 @@ butchery_loot = list(\ /obj/item/stack/material/painite = 18\ ) + harvest_results = list( + /obj/item/stack/material/painite = 10 + ) meat_amount = 3 - meat_type = /obj/item/reagent_containers/food/snacks/painiteant + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_neoburn /mob/living/simple_mob/animal/tyr/mineral_ants/painite/apply_melee_effects(atom/A) ..() @@ -203,8 +232,10 @@ butchery_loot = list(\ /obj/item/stack/material/bronze = 18\ ) + harvest_results = list( + /obj/item/stack/material/bronze = 10 + ) meat_amount = 3 - meat_type = /obj/item/reagent_containers/food/snacks/bronzeant /mob/living/simple_mob/animal/tyr/mineral_ants/bronze/death() visible_message(span_warning("\The [src]'s abdomen splits as it rolls over, spiderlings crawling from the wound.") ) @@ -216,9 +247,13 @@ name = "graphite ant" icon_state = "graphite_ant" icon_living = "graphite_ant" + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_neoburn butchery_loot = list(\ /obj/item/stack/material/graphite = 18\ ) + harvest_results = list( + /obj/item/stack/material/graphite = 10 + ) /mob/living/simple_mob/animal/tyr/mineral_ants/builder name = "tritium ant" @@ -227,6 +262,9 @@ butchery_loot = list(\ /obj/item/stack/material/tritium = 18\ ) + harvest_results = list( + /obj/item/stack/material/tritium = 10 + ) nutrition = 150 var/build_type = /obj/random/ant_building @@ -263,6 +301,62 @@ new build_type(T) return TRUE +/mob/living/simple_mob/animal/tyr/mineral_ants/silver + name = "silver ant" + icon_state = "silver_ant" + icon_living = "silver_ant" + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_neoburn + butchery_loot = list(\ + /obj/item/stack/material/silver = 18\ + ) + harvest_results = list( + /obj/item/stack/material/silver = 10 + ) + +/mob/living/simple_mob/animal/tyr/mineral_ants/silver/bullet_act(obj/item/projectile/P) + if(prob(45)) + visible_message(span_danger("The [P.name] gets reflected by [src]'s armor!"), \ + span_userdanger("The [P.name] gets reflected by [src]'s armor!")) + + // Find a turf near or on the original location to bounce to + if(P.starting) + var/new_x = P.starting.x + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3) + var/new_y = P.starting.y + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3) + var/turf/curloc = get_turf(src) + + // redirect the projectile + P.redirect(new_x, new_y, curloc, src) + P.reflected = 1 + + return -1 // complete projectile permutation + + return (..(P)) + +/mob/living/simple_mob/animal/tyr/mineral_ants/gold + name = "gold ant" + icon_state = "gold_ant" + icon_living = "gold_ant" + meat_type = /obj/item/reagent_containers/food/snacks/tyrant_burn + butchery_loot = list(\ + /obj/item/stack/material/gold = 18\ + ) + harvest_results = list( + /obj/item/stack/material/gold = 10 + ) + +/mob/living/simple_mob/animal/tyr/mineral_ants/gold/apply_melee_effects(var/atom/A) + if(isliving(A)) + var/mob/living/L = A + if(prob(33)) + A.emp_act(4) //The weakest strength of EMP + playsound(src, 'sound/weapons/egloves.ogg', 75, 1) + L.Weaken(4) + L.Stun(4) + L.stuttering = max(L.stuttering, 4) + var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread + s.set_up(5, 1, L) + s.start() + visible_message(span_danger("The grub releases a powerful shock!")) /mob/living/simple_mob/animal/tyr/mineral_ants/queen //the nurses of the ants name = "queen ant" @@ -334,6 +428,8 @@ ANT STRUCTURES /mob/living/simple_mob/animal/tyr/mineral_ants/uranium = 1, /mob/living/simple_mob/animal/tyr/mineral_ants/mhydro = 1, /mob/living/simple_mob/animal/tyr/mineral_ants/graphite = 1, + /mob/living/simple_mob/animal/tyr/mineral_ants/silver = 1, + /mob/living/simple_mob/animal/tyr/mineral_ants/gold = 1, ) simultaneous_spawns = 5 @@ -341,6 +437,8 @@ ANT STRUCTURES destructible = 1 health = 50 //Unsure why you would want to break it but you can +/obj/structure/mob_spawner/ant_hill/creatable + simultaneous_spawns = 2 /obj/effect/ant_structure name = "organic structure" @@ -419,6 +517,29 @@ ANT STRUCTURES icon_state = "slow_trap" modifiertype = /datum/modifier/chilled +/obj/effect/ant_structure/trap/confusion + icon_state = "confusion_trap" + //No modifier. + +/obj/effect/ant_structure/trap/confusion/attack_mob(mob/living/L) + playsound(src, 'sound/effects/ghost2.ogg', 20, 1) + if(L.get_ear_protection() == 0) + L.Confuse(10) + +/obj/effect/ant_structure/trap/poison + icon_state = "knock_trap" + +/obj/effect/ant_structure/trap/poison/attack_mob(mob/living/L) + to_chat(L, span_warning("You feel a sharp stabbing in your foot.")) + L.reagents.add_reagent(REAGENT_ID_STOXIN, 12) + + +/obj/effect/ant_structure/trap/trip + icon_state = "trip_trap" + +/obj/effect/ant_structure/trap/poison/attack_mob(mob/living/L) + L.Weaken(3) + /obj/effect/ant_structure/wall name = "Metant wall" icon_state = "wall" @@ -431,9 +552,12 @@ ANT STRUCTURES icon_state = "tool" /obj/random/ant_building/item_to_spawn() - return pick(/obj/effect/ant_structure/wall, + return pick(/obj/effect/ant_structure/trap/poison, /obj/effect/ant_structure/trap/burn, - /obj/effect/ant_structure/trap/slowdown) + /obj/effect/ant_structure/trap/slowdown, + /obj/effect/ant_structure/trap/confusion, + /obj/effect/ant_structure/trap/trip, + /obj/structure/mob_spawner/ant_hill/creatable) /obj/effect/spider/spiderling/antling @@ -454,20 +578,7 @@ ANT STRUCTURES /mob/living/simple_mob/animal/tyr/mineral_ants/verdantium, /mob/living/simple_mob/animal/tyr/mineral_ants/uranium, /mob/living/simple_mob/animal/tyr/mineral_ants/mhydro, - /mob/living/simple_mob/animal/tyr/mineral_ants/graphite) + /mob/living/simple_mob/animal/tyr/mineral_ants/graphite, + /mob/living/simple_mob/animal/tyr/mineral_ants/silver, + /mob/living/simple_mob/animal/tyr/mineral_ants/gold) faction = FACTION_TYR_ANT - -/obj/effect/ant_structure/webbarrier - name = "weblike barrier" - icon_state = "web" - -/obj/effect/ant_structure/webbarrier/CanPass(atom/movable/mover, turf/target) - if(istype(mover, /mob/living/simple_mob/animal/tyr/mineral_ants)) - return TRUE - else if(istype(mover, /mob/living)) - if(prob(80)) - to_chat(mover, span_warning("You get stuck in \the [src] for a moment.")) - return FALSE - else if(istype(mover, /obj/item/projectile)) - return prob(30) - return TRUE diff --git a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/bullet_heck/tyrian.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/bullet_heck/tyrian.dm index 1c73c0d5f9..b76090cbaf 100644 --- a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/bullet_heck/tyrian.dm +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/bullet_heck/tyrian.dm @@ -92,45 +92,6 @@ addtimer(CALLBACK(src, PROC_REF(bullet_blossom), A, rng_cycle, 10), 0.5 SECONDS, TIMER_DELETE_ME) attackcycle = 0 -/mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/sonic_boss - name = "experiment 10" - desc = "A strange furball, the air vibrating around it." - specialattackprojectile = /obj/item/projectile/energy/eclipse_boss/tyrjavelin - icon_state = "sonic_boss" - icon_living = "sonic_boss" - projectiletype = /obj/item/projectile/knockback/slow - wreckage = /obj/item/prop/tyrlore/sonic_boss - -/mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/sonic_boss/load_default_bellies() - . = ..() - var/obj/belly/B = vore_selected - B.name = "alien gut" - B.desc = "Your ears ring as the stomach groans to life around you. The constant ringing mixing with acidic gurgling, and gutteral groans. Silver flesh kneading at your figure, whilst the beast ignores you stewing in it's gut." - B.digest_brute = 1.5 - B.digest_burn = 0.5 - B.digestchance = 0 - B.absorbchance = 0 - B.escapechance = 15 - -/obj/item/projectile/knockback/slow - speed = 10 - -/mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/sonic_boss/do_special_attack(atom/A) - rng_cycle = rand(1,4) - switch(attackcycle) - if(1) - addtimer(CALLBACK(src, PROC_REF(quad_random_firing), A, 20, rng_cycle, 10), 0.5 SECONDS, TIMER_DELETE_ME) - attackcycle = 0 - if(2) - addtimer(CALLBACK(src, PROC_REF(dual_spin), A, rng_cycle, 5), 0.5 SECONDS, TIMER_DELETE_ME) - attackcycle = 0 - if(3) - addtimer(CALLBACK(src, PROC_REF(rising_star), A, rng_cycle, 10), 0.5 SECONDS, TIMER_DELETE_ME) - attackcycle = 0 - if(4) - addtimer(CALLBACK(src, PROC_REF(hole_in_wall), A, rng_cycle, 10), 0.5 SECONDS, TIMER_DELETE_ME) - attackcycle = 0 - /mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/shield_boss name = "experiment 15" desc = "A strange furball gaurded by a transparent barrier." @@ -229,26 +190,6 @@ /mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/crystal_boss/do_special_attack(atom/A) addtimer(CALLBACK(src, PROC_REF(bomb_chaos), A, 4), 1.5 SECONDS, TIMER_DELETE_ME) -/mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/naga_boss - name = "experiment 25" - icon_state = "naga_boss" - icon_living = "naga_boss" - wreckage = /obj/item/prop/tyrlore/gravity_boss - specialattackprojectile = /obj/item/projectile/energy/eclipse_boss/tyrjavelin - -/mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/naga_boss/do_special_attack(atom/A) - rng_cycle = rand(1,3) - switch(attackcycle) - if(1) - addtimer(CALLBACK(src, PROC_REF(dual_spin), A, rng_cycle, 5), 0.5 SECONDS, TIMER_DELETE_ME) - attackcycle = 0 - if(2) - addtimer(CALLBACK(src, PROC_REF(gravity_surge), A, rng_cycle, 7, 1), 0.5 SECONDS, TIMER_DELETE_ME) - attackcycle = 0 - if(3) - addtimer(CALLBACK(src, PROC_REF(rising_star), A, rng_cycle, 15), 0.5 SECONDS, TIMER_DELETE_ME) - attackcycle = 0 - //The Ai control units of Tyr /mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/defense_ai name = "defense automaton" diff --git a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/humanoid/eclipse/astral_collective.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/humanoid/eclipse/astral_collective.dm index a6deb818d4..8e4b068fb7 100644 --- a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/humanoid/eclipse/astral_collective.dm +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/humanoid/eclipse/astral_collective.dm @@ -86,7 +86,9 @@ /obj/random/material/refined = 50, /obj/random/material/precious = 40, /obj/random/janusmodule = 3, - /obj/item/dnainjector/random_verybad = 10, + /obj/item/slime_extract/bluespace = 10, + /obj/item/slime_extract/ruby = 10, + /obj/item/slime_extract/sapphire = 10, /obj/item/stock_parts/scanning_module/omni = 10, /obj/item/stock_parts/micro_laser/omni = 10, /obj/item/stock_parts/capacitor/omni = 10, @@ -120,7 +122,7 @@ evasion = 20 /datum/modifier/astralcollect_regen - mob_overlay_state = "poisoned" + mob_overlay_state = "pink_sparkles" /datum/modifier/astralcollect_regen/tick() holder.adjustBruteLoss(-8) @@ -226,16 +228,16 @@ health = 200 maxHealth = 200 - special_attack_cooldown = 3 SECONDS + special_attack_cooldown = 7 SECONDS special_attack_min_range = 0 - special_attack_max_range = 14 + special_attack_max_range = 4 /mob/living/simple_mob/humanoid/astral_collective/purity/do_special_attack(atom/A) - adjustBruteLoss(-3) - adjustFireLoss(-3) - adjustToxLoss(-3) - adjustOxyLoss(-3) - adjustCloneLoss(-3) + playsound(src, 'sound/effects/ghost2.ogg', 20, 1) + for(var/mob/living/M in orange(src, 4)) + if(M.get_ear_protection() == 0) + M.Confuse(10) + //the ranged mobs /mob/living/simple_mob/humanoid/astral_collective/ranged @@ -255,7 +257,7 @@ projectiletype = /obj/item/projectile/energy/astral_collective/anti_mecha /mob/living/simple_mob/humanoid/astral_collective/ranged/noodle/do_special_attack(atom/A) - if((health / maxHealth) <= 0.5) + if((health / maxHealth) <= 0.3) alpha = 180 teleport_self(A) @@ -304,8 +306,9 @@ movement_cooldown = -1 /mob/living/simple_mob/humanoid/astral_collective/ranged/tesh/do_special_attack(atom/A) - if((health / maxHealth) <= 0.5) - selfexplode_attack(A) + if((health / maxHealth) <= 0.3) + visible_message(span_boldwarning(span_orange("The teshari holds up a grenade."))) + addtimer(CALLBACK(src, PROC_REF(selfexplode_attack), A), 1.5 SECONDS, TIMER_DELETE_ME) else teleport_attack(A) @@ -338,7 +341,7 @@ movement_cooldown = 3 /mob/living/simple_mob/humanoid/astral_collective/ranged/lizard/do_special_attack(atom/A) - if((health / maxHealth) <= 0.5) + if((health / maxHealth) <= 0.3) repair_self(A) air_strike(A) @@ -358,7 +361,7 @@ if(!Proj) return if(prob(60)) - visible_message(span_bolddanger("[Proj] is blocked by the shield.")) + visible_message(span_boldwarning(span_orange("[Proj] is blocked by the shield."))) if(Proj.firer) ai_holder.react_to_attack(Proj.firer) return @@ -396,7 +399,7 @@ /mob/living/simple_mob/humanoid/astral_collective/proc/selfexplode_attack(atom/target) if(!target) return FALSE - explosion(src.loc, 2, 3, 4, 5) + explosion(src.loc, 1, 1, 1, 1) /mob/living/simple_mob/humanoid/astral_collective/proc/gravity_surge(atom/target) if(!target) @@ -410,7 +413,7 @@ return FALSE for(var/mob/living/L in orange(src, 14)) if(IIsAlly(L)) - Beam(L, icon_state = "purple_lightning", time = 2.5 SECONDS, maxdistance = INFINITY) + Beam(L, icon_state = "g_beam", time = 2.5 SECONDS, maxdistance = INFINITY) L.adjustBruteLoss(-30) L.adjustFireLoss(-30) diff --git a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/orginalAlts.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/orginalAlts.dm index bc974feada..04c203734f 100644 --- a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/orginalAlts.dm +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/orginalAlts.dm @@ -15,10 +15,7 @@ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege projectiletype = /obj/item/projectile/arc //Polaris, don't make the same mob twice. -/mob/living/simple_mob/mechanical/hivebot/tyr - name = "tyrian hivebot" - maxHealth = 0.5 LASERS_TO_KILL // 20 hp - health = 0.5 LASERS_TO_KILL +/mob/living/simple_mob/mechanical/hivebot/tyr //not a hivebot but stealing the 'oil puddle on death' thing icon = 'modular_chomp/icons/mob/hivebot.dmi' pass_flags = PASSTABLE hovering = TRUE @@ -30,17 +27,28 @@ icon_living = "orange" /mob/living/simple_mob/mechanical/hivebot/tyr/swarm + name = "replicating swarmer" maxHealth = 3 health = 3 icon_state = "bright_green" icon_living = "bright_green" /mob/living/simple_mob/mechanical/hivebot/tyr/meteor - maxHealth = 2 LASERS_TO_KILL // 80 hp - health = 2 LASERS_TO_KILL + name = "repair drone" + icon = 'modular_chomp/icons/mob/tyr.dmi' + maxHealth = 6 LASERS_TO_KILL // 240 hp + health = 6 LASERS_TO_KILL // 240 hp + icon_state = "guardian" + icon_living = "guardian" ai_holder_type = /datum/ai_holder/simple_mob/ranged/kiting/dodge projectiletype = /obj/item/projectile/energy/agate_lighting/fast +/mob/living/simple_mob/mechanical/hivebot/tyr/meteor/bullet_act(var/obj/item/projectile/Proj) + if(!Proj) + return + projectiletype = Proj + ..() + /datum/ai_holder/simple_mob/ranged/kiting/dodge /datum/ai_holder/simple_mob/ranged/kiting/dodge/post_ranged_attack(atom/A) diff --git a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/weather.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/weather.dm index f7d1772582..622bf4bf4b 100644 --- a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/weather.dm +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/weather.dm @@ -1,14 +1,14 @@ /mob/living/simple_mob/vore/fossiltank //slow but endless hunter name = "rolling crematorium" desc = "A large metal tank." - health = 500 - maxHealth = 500 - armor = list(melee = 40, bullet = 40, laser = 40, energy = 40, bomb = 50, bio = 100, rad = 100) //No thematics but I like boss critters to take a bit + health = 200 + maxHealth = 200 + armor = list(melee = 60, bullet = 60, laser = 60, energy = 60, bomb = 80, bio = 100, rad = 100) //High armor, relativly low HP icon_state = "rex" - melee_attack_delay = 2 SECONDS - melee_damage_lower = 40 - melee_damage_upper = 40 - attack_armor_pen = 40 + melee_attack_delay = 2.5 SECONDS + melee_damage_lower = 50 + melee_damage_upper = 50 + attack_armor_pen = 50 damage_fatigue_mult = 1 //Does slowly pick up speed. injury_enrages = TRUE movement_cooldown = 7 //Kind of slow. @@ -20,7 +20,7 @@ icon = 'modular_chomp/icons/mob/tyr.dmi' special_attack_min_range = 1 special_attack_max_range = 20 //The special attacks are more meant to pin you down or provide a healing to this tank. - special_attack_cooldown = 10 SECONDS + special_attack_cooldown = 8 SECONDS //1 fire ticks a second swallowTime = 1.5 SECONDS vore_active = 1 vore_capacity = 1 @@ -36,11 +36,24 @@ devourable = FALSE faction = FACTION_ECLIPSE size_multiplier = 2 + var/regenration_rate = -15 loot_list = list(/obj/item/personal_shield_generator/belt/fossiltank = 100, /obj/item/prop/tyrlore/fossiltank = 100, ) +/mob/living/simple_mob/vore/fossiltank/emp_act + regenration_rate = 0 + +/mob/living/simple_mob/vore/fossiltank/handle_special() + if(stat != DEAD) + regenration() + ..() + +/mob/living/simple_mob/vore/fossiltank/proc/regenration() + adjustBruteLoss(regenration_rate) + adjustFireLoss(regenration_rate) + /mob/living/simple_mob/vore/fossiltank/load_default_bellies() . = ..() var/obj/belly/B = vore_selected @@ -79,31 +92,10 @@ icon_living = "rex" /mob/living/simple_mob/vore/fossiltank/do_special_attack(atom/A) - Beam(A, icon_state = "sat_beam", time = 3.5 SECONDS, maxdistance = INFINITY) - addtimer(CALLBACK(src, PROC_REF(sniper_shot), A), 4 SECONDS, TIMER_DELETE_ME) - -/mob/living/simple_mob/vore/fossiltank/proc/sniper_shot(atom/target) - if(!target) - return - var/obj/item/projectile/P = new /obj/item/projectile/bullet/srmrocket(get_turf(src)) - P.launch_projectile(target, BP_TORSO, src) - -/obj/item/projectile/bullet/fossilrockect - name ="Fossil Rocket" - desc = "Boom" - icon = 'icons/obj/grenade.dmi' - icon_state = "missile" - damage = 5 //damage is focused on the explosion - does_spin = 0 - -/obj/item/projectile/bullet/fossilrockect/on_hit(atom/target, blocked=0) - explosion(target, 2, 3, 4, 5) - return 1 - -/obj/item/projectile/bullet/fossilrockect/throw_impact(atom/target) - explosion(target, 2, 3, 4, 5) - qdel(src) - + for(var/mob/living/L in orange(src, 14)) + if(L.stat != DEAD && !IIsAlly(L)) + L.adjust_fire_stacks(9) + L.ignite_mob() /mob/living/simple_mob/vore/boss_jellyfish name = "expirmental jellyfish" diff --git a/modular_chomp/icons/mob/tyr.dmi b/modular_chomp/icons/mob/tyr.dmi index 77991b254d..19cebd6201 100644 Binary files a/modular_chomp/icons/mob/tyr.dmi and b/modular_chomp/icons/mob/tyr.dmi differ diff --git a/modular_chomp/icons/obj/tribal_gear.dmi b/modular_chomp/icons/obj/tribal_gear.dmi index 7366a9c81f..3513d688f4 100644 Binary files a/modular_chomp/icons/obj/tribal_gear.dmi and b/modular_chomp/icons/obj/tribal_gear.dmi differ diff --git a/modular_chomp/maps/common_submaps/overmap/planets/tyr/tyr.dm b/modular_chomp/maps/common_submaps/overmap/planets/tyr/tyr.dm index 64914e6337..5409c24035 100644 --- a/modular_chomp/maps/common_submaps/overmap/planets/tyr/tyr.dm +++ b/modular_chomp/maps/common_submaps/overmap/planets/tyr/tyr.dm @@ -105,11 +105,17 @@ /area/planet/tyr/shuttles/rock_two -/area/planet/tyr/eclipse_refinery - name = "Eclipse Refinery" +/area/planet/tyr/ac_mainbase + name = "Astral Collective - Warp Point" icon_state = "green" outdoors = OUTDOORS_NO + requires_power = FALSE +/area/planet/tyr/ac_secondary + name = "Astral Collective - Watchtower" + icon_state = "green" + outdoors = OUTDOORS_NO + requires_power = FALSE /area/planet/tyr/caverns name = "Tyr Caverns" diff --git a/modular_chomp/maps/common_submaps/overmap/planets/tyr/tyr.dmm b/modular_chomp/maps/common_submaps/overmap/planets/tyr/tyr.dmm index f284fdbd80..410ccb7b8f 100644 --- a/modular_chomp/maps/common_submaps/overmap/planets/tyr/tyr.dmm +++ b/modular_chomp/maps/common_submaps/overmap/planets/tyr/tyr.dmm @@ -123,14 +123,6 @@ /obj/structure/flora/tyr/flowers, /turf/simulated/floor/outdoors/desert_planet/deep_grass/tyr, /area/planet/tyr/caverns) -"az" = ( -/mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/naga_boss, -/turf/simulated/shuttle/floor/alien, -/area/planet/tyr/precursorruins/science_b) -"aA" = ( -/mob/living/simple_mob/mechanical/mecha/eclipse/tankyboss/sonic_boss, -/turf/simulated/shuttle/floor/alien, -/area/planet/tyr/precursorruins/science_c) "aB" = ( /turf/simulated/shuttle/floor/alien, /area/planet/tyr/ancient_ruins/one) @@ -164,7 +156,7 @@ /area/planet/tyr/precursorruins/swarm_boss) "aH" = ( /turf/simulated/floor/tiled/red, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aI" = ( /obj/structure/grille, /obj/structure/window/plastitanium{ @@ -186,37 +178,37 @@ /area/planet/tyr/shuttles/three) "aL" = ( /turf/simulated/wall/rshull, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aM" = ( /obj/machinery/hyperpad/centre{ map_pad_id = "tyr_1_station"; map_pad_link_id = "tyr_1_away" }, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aN" = ( /obj/machinery/light, /turf/simulated/floor/tiled/red, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aO" = ( /turf/simulated/floor/tiled/neutral, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aP" = ( /mob/living/simple_mob/humanoid/astral_collective/purity, /turf/simulated/floor/tiled/neutral, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aQ" = ( /obj/machinery/light{ dir = 8 }, /turf/simulated/floor/tiled/red, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aR" = ( /obj/machinery/light{ dir = 4 }, /turf/simulated/floor/tiled/red, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aS" = ( /obj/effect/anomaly/hallucination{ immortal = 1; @@ -224,10 +216,16 @@ }, /turf/simulated/shuttle/floor/voidcraft/tyr, /area/planet/tyr/shuttles/nine) +"aT" = ( +/turf/simulated/wall/rshull, +/area/planet/tyr/ac_secondary) +"aU" = ( +/turf/simulated/floor/tiled/neutral, +/area/planet/tyr/ac_secondary) "aV" = ( /obj/machinery/suspension_gen, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "aW" = ( /obj/structure/flora/tyr/flowers, /obj/random/tyroutcrop, @@ -338,7 +336,7 @@ /obj/item/rig/ch/clockwork, /obj/item/gun/energy/clockwork, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "bt" = ( /turf/simulated/shuttle/floor/voidcraft/tyr, /area/planet/tyr/shuttles/three) @@ -370,6 +368,12 @@ /obj/item/stack/medical/splint, /turf/simulated/shuttle/floor/voidcraft/tyr, /area/planet/tyr/shuttles/eight) +"bA" = ( +/obj/structure/fans/hardlight/colorable/abductor{ + color = "#b6d9f3" + }, +/turf/simulated/floor/tiled/neutral, +/area/planet/tyr/ac_secondary) "bB" = ( /obj/structure/sink/kitchen{ dir = 1 @@ -481,7 +485,7 @@ /area/planet/tyr/shuttles/one) "bV" = ( /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "bW" = ( /obj/structure/frame, /turf/simulated/shuttle/floor/voidcraft/tyr, @@ -510,6 +514,11 @@ /obj/structure/frame, /turf/simulated/shuttle/floor/voidcraft/tyr, /area/planet/tyr/shuttles/eleven) +"cc" = ( +/obj/structure/table/standard, +/obj/item/paper/tyr_notes/astral_d, +/turf/simulated/floor/tiled/red, +/area/planet/tyr/ac_mainbase) "cd" = ( /obj/item/circuitboard/teleporter_station, /obj/structure/frame, @@ -711,7 +720,7 @@ "cM" = ( /obj/machinery/reagent_refinery/pump, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "cN" = ( /obj/structure/prop/tyr_elevator{ descendx = 132; @@ -814,6 +823,14 @@ /mob/living/simple_mob/mechanical/hivebot/tyr/swarm, /turf/simulated/shuttle/floor/voidcraft/tyr, /area/planet/tyr/shuttles/three) +"db" = ( +/obj/structure/table/standard, +/obj/machinery/light{ + dir = 1 + }, +/obj/item/paper/tyr_notes/astral_c, +/turf/simulated/floor/tiled/red, +/area/planet/tyr/ac_mainbase) "dc" = ( /obj/machinery/power/rtg/fake_reactor, /obj/structure/cable{ @@ -846,12 +863,19 @@ "dh" = ( /turf/simulated/shuttle/floor/voidcraft/tyr, /area/planet/tyr/ship_graveyard) +"di" = ( +/turf/simulated/tyracid, +/area/planet/tyr/precursorruins/science_c) "dj" = ( /obj/structure/cable{ icon_state = "2-8" }, /turf/simulated/floor, /area/planet/tyr/shuttles/one) +"dk" = ( +/mob/living/simple_mob/mechanical/hivebot/tyr/meteor, +/turf/simulated/shuttle/floor/alienplating, +/area/planet/tyr/precursorruins/entryway) "dl" = ( /obj/structure/table/woodentable, /obj/random/contraband, @@ -868,7 +892,7 @@ "dn" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/zaddat, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "do" = ( /obj/structure/prop/tyr_elevator{ descendx = 26; @@ -928,8 +952,9 @@ /obj/random/material, /obj/random/material, /obj/random/material/refined, +/obj/item/paper/tyr_notes/astral_b, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "dB" = ( /obj/effect/floor_decal/stairs/dark_stairs{ dir = 4 @@ -1020,11 +1045,6 @@ }, /turf/simulated/shuttle/floor/alienplating, /area/planet/tyr/precursorruins/entryway) -"dP" = ( -/obj/effect/floor_decal/stairs/dark_stairs, -/mob/living/simple_mob/mechanical/hivebot/tyr/meteor, -/turf/simulated/shuttle/floor/alien, -/area/planet/tyr/precursorruins) "dQ" = ( /obj/structure/prop/tyr_elevator{ descendx = 181; @@ -1319,20 +1339,20 @@ dir = 8 }, /turf/simulated/floor/tiled/neutral, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "eN" = ( /obj/machinery/light{ dir = 4 }, /turf/simulated/floor/tiled/neutral, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "eO" = ( /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "eP" = ( /obj/machinery/light, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "eQ" = ( /obj/structure/prop/tyr_elevator{ descendx = 119; @@ -1353,7 +1373,7 @@ "eT" = ( /mob/living/simple_mob/humanoid/astral_collective/purity, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "eU" = ( /obj/structure/prop/tyr_elevator{ descendx = 80; @@ -1382,7 +1402,7 @@ "eX" = ( /obj/machinery/door/airlock, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "eY" = ( /obj/structure/prop/tyr_elevator{ descendx = 69; @@ -1428,7 +1448,7 @@ /obj/random/contraband/nofail, /obj/random/contraband/nofail, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ff" = ( /turf/simulated/shuttle/wall/alien/orange, /area/planet/tyr/precursorruins/swarm_boss) @@ -1669,13 +1689,6 @@ }, /turf/simulated/shuttle/floor/black, /area/planet/tyr/precursorruins) -"fT" = ( -/obj/effect/floor_decal/stairs/dark_stairs{ - dir = 4 - }, -/mob/living/simple_mob/mechanical/hivebot/tyr/meteor, -/turf/simulated/shuttle/floor/alien, -/area/planet/tyr/precursorruins/entryway) "fU" = ( /obj/structure/prop/tyr_elevator{ descendx = 149; @@ -1792,7 +1805,7 @@ "gp" = ( /obj/structure/table/standard, /turf/simulated/floor/tiled/red, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "gq" = ( /turf/simulated/floor/grass, /area/planet/tyr/shuttles/rock_two) @@ -1803,7 +1816,7 @@ "gs" = ( /obj/structure/table/standard, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "gt" = ( /mob/living/simple_mob/mechanical/hivebot/tyr/swarm, /turf/simulated/shuttle/floor/voidcraft/tyr, @@ -1837,7 +1850,7 @@ dir = 1 }, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "gB" = ( /obj/structure/flora/tyr/lilly, /turf/simulated/floor/outdoors/desert_planet/deep_grass/tyr, @@ -1971,10 +1984,6 @@ }, /turf/simulated/tyracid/quantum, /area/planet/tyr/ancient_ruins/one) -"hd" = ( -/mob/living/simple_mob/mechanical/hivebot/tyr/meteor, -/turf/simulated/shuttle/floor/alien, -/area/planet/tyr/ancient_ruins/one) "he" = ( /obj/structure/fans/hardlight/colorable/abductor{ color = "#FF3300" @@ -2008,7 +2017,7 @@ "hl" = ( /obj/machinery/door/airlock, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "hm" = ( /obj/structure/table/rack, /obj/item/tool/crowbar/hybrid/alien, @@ -2113,7 +2122,7 @@ "hF" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/lizard, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "hG" = ( /obj/machinery/button/remote/blast_door{ dir = 8; @@ -2225,14 +2234,14 @@ "hY" = ( /obj/machinery/door/airlock, /turf/simulated/floor/tiled/neutral, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "hZ" = ( /obj/structure/table/standard, /obj/machinery/light{ dir = 1 }, /turf/simulated/floor/tiled/red, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ia" = ( /obj/item/material/shard{ pixel_x = 5; @@ -2260,11 +2269,11 @@ /area/planet/tyr/ancient_ruins/one) "if" = ( /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ig" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/wolf, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ih" = ( /turf/simulated/shuttle/wall/alien/orange, /area/planet/tyr/precursorruins/checkpoint) @@ -2436,7 +2445,7 @@ "iV" = ( /obj/random/multiple/corp_crate, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "iW" = ( /obj/structure/prop/tyr_elevator{ descendx = 149; @@ -2488,10 +2497,6 @@ }, /turf/simulated/shuttle/floor/alienplating, /area/planet/tyr/precursorruins/stairwell) -"jj" = ( -/mob/living/simple_mob/mechanical/hivebot/tyr/meteor, -/turf/simulated/shuttle/floor/alien, -/area/planet/tyr/precursorruins/stairwell) "jk" = ( /obj/item/melee/energy/tyr_katar, /obj/structure/table/rack, @@ -2562,7 +2567,7 @@ /obj/random/multiple/corp_crate, /obj/machinery/light, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "jz" = ( /obj/effect/floor_decal/stairs/dark_stairs{ dir = 4 @@ -2578,7 +2583,7 @@ "jB" = ( /obj/machinery/reagent_refinery/waste_processor, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "jC" = ( /obj/structure/closet, /obj/random/material, @@ -2586,7 +2591,7 @@ /obj/random/mainttoyloot, /obj/random/handgun, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "jD" = ( /obj/structure/closet, /obj/random/material/precious, @@ -2594,11 +2599,11 @@ /obj/random/material, /obj/random/mainttoyloot, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "jE" = ( /obj/machinery/light, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "jF" = ( /obj/structure/closet, /obj/item/borg/upgrade/modkit/damage, @@ -2622,11 +2627,11 @@ dir = 1 }, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "jJ" = ( /obj/machinery/reagent_refinery/vat, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "jK" = ( /turf/simulated/shuttle/wall/alien/orange, /area/planet/tyr/ancient_ruins/six) @@ -2711,33 +2716,33 @@ "ke" = ( /mob/living/simple_mob/humanoid/astral_collective/purity, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kf" = ( /obj/machinery/light{ dir = 4 }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kg" = ( /obj/machinery/light{ dir = 8 }, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kh" = ( /obj/machinery/light{ dir = 4 }, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ki" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/zaddat, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kj" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/wolf, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kk" = ( /obj/structure/table/standard, /obj/random/toolbox, @@ -2746,7 +2751,7 @@ /obj/random/material, /obj/random/material, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kl" = ( /obj/structure/table/standard, /obj/random/tool/power, @@ -2755,7 +2760,7 @@ /obj/random/material, /obj/random/material/precious, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "km" = ( /obj/structure/table/standard, /obj/random/tool, @@ -2763,14 +2768,14 @@ /obj/random/material, /obj/random/material, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kn" = ( /obj/machinery/light{ dir = 8; layer = 3 }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ko" = ( /obj/structure/closet, /obj/random/material/refined, @@ -2779,7 +2784,7 @@ /obj/random/mainttoyloot, /obj/random/mainttoyloot/nofail, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kp" = ( /obj/structure/closet, /obj/random/material, @@ -2787,11 +2792,11 @@ /obj/random/mainttoyloot, /obj/random/mainttoyloot/nofail, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kq" = ( /obj/random/multiple/corp_crate, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kr" = ( /obj/structure/table/standard, /obj/random/research_sample_type1, @@ -2799,36 +2804,36 @@ /obj/random/material, /obj/random/material, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ks" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/tesh, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kt" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/noodle, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ku" = ( /mob/living/simple_mob/humanoid/astral_collective/purity, /obj/machinery/light{ dir = 4 }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kv" = ( /obj/random/multiple/corp_crate, /obj/machinery/light{ dir = 8 }, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kw" = ( /obj/random/multiple/corp_crate, /obj/machinery/light{ dir = 4 }, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kx" = ( /obj/structure/table/standard, /obj/random/tool/power, @@ -2836,7 +2841,7 @@ /obj/random/material, /obj/random/material, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "ky" = ( /obj/structure/table/standard, /obj/random/tool, @@ -2845,7 +2850,7 @@ /obj/random/material, /obj/random/material/precious, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kz" = ( /obj/structure/table/standard, /obj/random/tool, @@ -2854,7 +2859,7 @@ /obj/random/material, /obj/random/material, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kA" = ( /obj/structure/table/standard, /obj/random/translator, @@ -2863,7 +2868,7 @@ /obj/random/material, /obj/random/material/refined, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kB" = ( /obj/structure/table/standard, /obj/random/slimecore, @@ -2871,24 +2876,24 @@ /obj/random/material, /obj/random/material, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kC" = ( /obj/machinery/reagent_refinery/filter, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kD" = ( /turf/simulated/floor/outdoors/desert_planet/gravel/tyr, /area/planet/tyr/caverns) "kE" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/noodle, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kF" = ( /obj/machinery/light{ dir = 8 }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kG" = ( /obj/structure/table/standard, /obj/random/research_sample_type3, @@ -2897,7 +2902,7 @@ /obj/random/material, /obj/random/material/refined, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kH" = ( /obj/random/tyroutcrop, /turf/simulated/floor/outdoors/desert_planet/gravel/tyr, @@ -2907,7 +2912,7 @@ id = "tyr_refinery" }, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kJ" = ( /obj/structure/table/standard, /obj/random/tool/alien, @@ -2916,19 +2921,20 @@ /obj/random/material, /obj/random/material, /obj/random/material/precious, +/obj/item/paper/tyr_notes/astral_a, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kK" = ( /obj/machinery/reagent_refinery/grinder, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kL" = ( /obj/machinery/conveyor{ id = "tyr_refinery"; dir = 8 }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kM" = ( /obj/structure/closet, /obj/random/material/precious, @@ -2937,21 +2943,21 @@ /obj/random/mainttoyloot, /obj/random/handgun, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kN" = ( /obj/structure/closet, /obj/random/material, /obj/random/material, /obj/random/mainttoyloot, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kO" = ( /obj/random/multiple/corp_crate, /obj/machinery/light{ dir = 1 }, /turf/simulated/floor/tiled/yellow, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kP" = ( /obj/structure/table/steel, /obj/machinery/reagentgrinder, @@ -2960,62 +2966,62 @@ "kQ" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/wolf, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kR" = ( /obj/machinery/conveyor{ id = "tyr_refinery" }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kS" = ( /obj/machinery/light{ dir = 1 }, /turf/simulated/floor/tiled/neutral, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kT" = ( /obj/structure/closet/excavation, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kU" = ( /obj/structure/fans/hardlight/colorable/abductor{ color = "#b6d9f3" }, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kV" = ( /obj/structure/fans/hardlight/colorable/abductor{ color = "#b6d9f3" }, /turf/simulated/floor/tiled/neutral, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kW" = ( /obj/structure/fans/hardlight/colorable/abductor{ color = "#b6d9f3" }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kX" = ( /obj/machinery/suspension_gen, /obj/machinery/light{ dir = 8 }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kY" = ( /obj/structure/closet/excavation, /obj/machinery/light{ dir = 4 }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "kZ" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/zaddat, /obj/machinery/light{ dir = 1 }, /turf/simulated/floor/tiled/purple, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "la" = ( /mob/living/simple_mob/humanoid/astral_collective/purity, /turf/simulated/floor/outdoors/desert_planet/gravel/tyr, @@ -3144,7 +3150,7 @@ "vI" = ( /mob/living/simple_mob/humanoid/astral_collective/ranged/tesh, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "CU" = ( /obj/random/tyroutcrop, /turf/simulated/floor/outdoors/desert_planet/deep_grass/tyr, @@ -3166,7 +3172,7 @@ /obj/random/material, /obj/random/material, /turf/simulated/floor/tiled, -/area/planet/tyr/eclipse_refinery) +/area/planet/tyr/ac_mainbase) "Uo" = ( /turf/simulated/floor/outdoors/desert_planet/sand/tyr, /area/planet/tyr/caverns) @@ -10402,7 +10408,7 @@ Mz Mz Mz ik -ir +iq iq iq iq @@ -10414,7 +10420,7 @@ ik iq iq iq -ir +iq ik Mz Mz @@ -11182,7 +11188,7 @@ ik iq iq iq -iq +ir iq iq iq @@ -11740,7 +11746,7 @@ ik fb eZ ik -ir +iq ik Mz Mz @@ -11950,7 +11956,7 @@ Mz Mz Mz ik -ir +iq iq iq iq @@ -11962,7 +11968,7 @@ ik iq iq iq -ir +iq ik Mz Mz @@ -13283,7 +13289,7 @@ iq iq iq iq -ir +iq ik fb eZ @@ -15826,7 +15832,7 @@ iM iM eZ ik -ir +iq iq iq iq @@ -16110,7 +16116,7 @@ iq iq iq iq -ir +iq ik fb iM @@ -17374,22 +17380,22 @@ iM iM eZ ik -iq -iq -iq -iq -iq -iq -iq -iq -iq -iq ir iq iq iq iq iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq kb Mz Mz @@ -18921,7 +18927,7 @@ iM iM eZ ik -ir +iq iq iq iq @@ -18956,7 +18962,7 @@ Mz Mz Mz ik -ir +iq iq iq iq @@ -19705,7 +19711,7 @@ iM fa ik ik -ir +iq ik ik fm @@ -20211,7 +20217,7 @@ iq iq iq iq -iq +ir ik fb iM @@ -20219,7 +20225,7 @@ iM iM eZ ik -iq +ir ik ik fm @@ -20253,7 +20259,7 @@ in io iE ik -iq +ir iq iq iq @@ -21794,7 +21800,7 @@ Mz Mz Mz ik -ir +iq ik ik ik @@ -22575,7 +22581,7 @@ ip ip iQ ik -ir +iq ik eW io @@ -23091,15 +23097,15 @@ in in iD ik -iq -iq -iq -iq -iq -iq -iq -iq ir +iq +iq +iq +iq +iq +iq +iq +iq ik Mz Mz @@ -23588,12 +23594,12 @@ iq iq iq iq -iq -iq -iq -iq -iq ir +iq +iq +iq +iq +iq ik Mz Mz @@ -24348,7 +24354,7 @@ ik ik ik ik -ir +iq ik Mz Mz @@ -26158,7 +26164,7 @@ iq iq iq is -fX +is is Mz Mz @@ -27437,7 +27443,7 @@ iq iq iq iq -fX +is is Mz Mz @@ -27473,7 +27479,7 @@ Mz Mz Mz ik -ir +iq ik iJ in @@ -27744,7 +27750,7 @@ iJ in iD ik -ir +iq ik Mz Mz @@ -28512,7 +28518,7 @@ iq iq iq iq -iq +ir iq iq iq @@ -30270,7 +30276,7 @@ Mz Mz Mz ik -ir +iq iq iq iq @@ -31069,7 +31075,7 @@ jf jf jf jh -jj +jh jh jf jf @@ -32601,10 +32607,10 @@ Mz Mz iZ jm -jq jp jp -jq +jp +jp jm iZ Mz @@ -32860,7 +32866,7 @@ Mz iZ jm jp -jm +dk jm jp jm @@ -34914,7 +34920,7 @@ iq iq iq iq -ir +iq ik Mz Mz @@ -38291,7 +38297,7 @@ dJ jp jp jp -jq +jp jm iZ Mz @@ -39323,7 +39329,7 @@ dN jv ju dI -fT +jr jn iZ Mz @@ -40352,7 +40358,7 @@ jm jp jp jp -jp +jq jm dJ jp @@ -42920,7 +42926,7 @@ iq iq iq iq -ir +iq ik iJ in @@ -43694,7 +43700,7 @@ in in iD ik -iq +ir iq iq iq @@ -43991,7 +43997,7 @@ iG iH iI iH -az +iI iH iI iH @@ -45240,7 +45246,7 @@ Mz in iD ik -ir +iq ik iJ in @@ -47833,7 +47839,7 @@ iq dv dv dv -dP +dv dv dv dv @@ -48115,10 +48121,10 @@ Mz Mz Mz iR -jo +di iz iy -aA +iz iy iz iy @@ -49381,7 +49387,7 @@ iq dv dv dv -dP +dv dv dv dv @@ -49647,7 +49653,7 @@ ik is is is -is +fX is is is @@ -54362,7 +54368,7 @@ cD gW aB gW -hd +aB gW aB gW @@ -55396,7 +55402,7 @@ aB gW aB gW -hd +aB gW cD hc @@ -55668,7 +55674,7 @@ aB aB aB aB -hd +aB aB aB aB @@ -56424,7 +56430,7 @@ gz gz cD gW -hd +aB aB aB aB @@ -56442,7 +56448,7 @@ aB aB aB aB -hd +aB aB aB aB @@ -61644,7 +61650,7 @@ gz gz gz gz -gz +kD Nc Nc Nc @@ -61901,9 +61907,9 @@ gz gz gz gz -gz -gz -gz +kD +kD +kD Nc Nc Nc @@ -62159,10 +62165,10 @@ gz gz gz gz -gz -gz -gz -gz +kD +kD +kD +kD Nc Nc Nc @@ -62418,11 +62424,11 @@ gz gz gz gz -gz -gz -gz -gz -gz +kD +kD +kD +kD +kD Nc dZ dZ @@ -62675,13 +62681,13 @@ gz gz gz gz -gz -gz -gz -gz -gz -gz -gz +aT +aT +aT +bA +aT +aT +aT dZ dZ dZ @@ -62933,13 +62939,13 @@ gz gz gz gz -gz -gz -gz -gz -gz -gz -gz +aT +aU +aU +aU +aU +aU +aT dZ dZ dZ @@ -63191,13 +63197,13 @@ gz gz gz gz -gz -gz -gz -gz -gz -gz -gz +aT +aU +aU +aU +aU +aU +aT gz dZ dZ @@ -63449,13 +63455,13 @@ gz gz gz gz -gz -gz -gz -gz -gz -gz -gz +aT +aU +aU +aU +aU +aU +aT gz dZ dZ @@ -63707,13 +63713,13 @@ gz gz gz gz -gz -gz -gz -gz -gz -gz -gz +aT +aU +aU +aU +aU +aU +aT gz gz dZ @@ -63965,13 +63971,13 @@ gz gz gz gz -gz -gz -gz -gz -gz -gz -gz +aT +aU +aU +aU +aU +aU +aT gz gz dZ @@ -64223,13 +64229,13 @@ gz gz gz gz -gz -gz -gz -gz -gz -gz -gz +aT +aT +aT +aT +aT +aT +aT gz gz dZ @@ -64427,7 +64433,7 @@ eN aP aO aL -gp +cc bV bV aH @@ -67265,7 +67271,7 @@ aL eX aL aL -hZ +db bV bV aH