-
-
Notifications
You must be signed in to change notification settings - Fork 164
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adds enkephalin rush adds ores mining and walls fixing spawners Convert maps to TGM new : _maps/shuttles/enkephalin_rush_elevator.dmm new : _maps/templates/enkephalin_rush/dist4_briah.dmm Automatically commited by: tools\mapmerge2\fixup.py stuff linters mining enemy event abnormality spawns fixed
- Loading branch information
1 parent
13e1252
commit 91c5c14
Showing
21 changed files
with
85,225 additions
and
1 deletion.
There are no files selected for viewing
Binary file not shown.
17 changes: 17 additions & 0 deletions
17
ModularTegustation/tegu_items/enkephalin_rush/enkr_corpses.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
//dead stuff but better | ||
|
||
/obj/effect/mob_spawn/human/agent | ||
icon_state = "corpsehuman" | ||
outfit = /datum/outfit/job/agent | ||
|
||
|
||
/obj/effect/mob_spawn/human/agent/loot | ||
icon_state = "corpsehuman" | ||
outfit = /datum/outfit/job/agent | ||
|
||
/obj/effect/mob_spawn/human/agent/loot/Initialize() | ||
..() | ||
|
||
/obj/effect/mob_spawn/human/manager | ||
icon_state = "corpsehuman" | ||
outfit = /datum/outfit/job/manager |
209 changes: 209 additions & 0 deletions
209
ModularTegustation/tegu_items/enkephalin_rush/enkr_spawners.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,209 @@ | ||
//Mainly supplies for latejoiners | ||
/obj/effect/landmark/enkritemspawn | ||
name = "site burial requisitions" | ||
desc = "It spawns an item. Notify a coder. Thanks!" | ||
icon = 'icons/effects/landmarks_static.dmi' | ||
icon_state = "x4" | ||
var/list/possible_items = list( | ||
/obj/item/ksyringe, | ||
/obj/item/reagent_containers/hypospray/medipen/salacid, | ||
/obj/item/reagent_containers/hypospray/medipen/mental, | ||
/obj/item/flashlight/flare, | ||
/obj/item/pickaxe, | ||
) | ||
|
||
/obj/effect/landmark/enkritemspawn/Initialize() | ||
..() | ||
var/spawning = pick(possible_items) | ||
new spawning(get_turf(src)) | ||
var/timeradd = rand(1200, 1800) | ||
addtimer(CALLBACK(src, PROC_REF(spawnagain)), timeradd) | ||
|
||
/obj/effect/landmark/enkritemspawn/proc/spawnagain() | ||
var/timeradd = rand(1200, 1800) | ||
addtimer(CALLBACK(src, PROC_REF(spawnagain)), timeradd) | ||
|
||
if(prob(50)) //50% to spawn | ||
return | ||
|
||
var/spawning = pick(possible_items) | ||
new spawning(get_turf(src)) | ||
|
||
|
||
//map-based enemy faction selection | ||
/obj/effect/spawner/map_enemy | ||
var/risk_multiplier = 1 | ||
var/level = 1//risk level | ||
var/obj/effect/spawner/scatter/chosen_spawner//the spawner this copies vars from | ||
var/global/map_enemy//enemy type determined when initialized the first time in a given round | ||
var/list/ordeal_types = list()//the types of ordeals the enemy type can spawn | ||
var/list/spawner_types = list(//TODO: this needs to be determined by specific maps. Default is currently for District 4 | ||
/datum/enemy/gold, | ||
/datum/enemy/brown, | ||
/datum/enemy/steel, | ||
/datum/enemy/abnos, | ||
//TODO: wineberry creek E.G.O corrosion faction | ||
) | ||
|
||
/obj/effect/spawner/map_enemy/New(loc, risk_level) | ||
if(risk_level) | ||
level = risk_level | ||
..() | ||
|
||
/obj/effect/spawner/map_enemy/Initialize() | ||
if(!map_enemy) | ||
map_enemy = pick(spawner_types) | ||
var/datum/enemy/myenemy = new map_enemy() | ||
if(istype(myenemy,/datum/enemy)) | ||
ordeal_types = myenemy.ordeal_types | ||
var/i = 0 | ||
for(var/obj/S as anything in ordeal_types) | ||
i++ | ||
if(i == level || i == LAZYLEN(ordeal_types)) | ||
var/bonus_spawns = level - i | ||
chosen_spawner = new S(loc, spawns = (1 + bonus_spawns), range = 1) | ||
break | ||
..() | ||
qdel(src) | ||
|
||
/datum/enemy | ||
var/ordeal_types = list() | ||
|
||
//amber ordeals | ||
/datum/enemy/amber | ||
ordeal_types = list( | ||
/obj/effect/spawner/scatter/amber_dawn, | ||
) | ||
//clockwork teeth; green ordeals | ||
/datum/enemy/green | ||
ordeal_types = list( | ||
/obj/effect/spawner/scatter/green_dawn, | ||
/obj/effect/spawner/scatter/green_noon, | ||
) | ||
//sweepers | ||
/datum/enemy/indigo | ||
ordeal_types = list( | ||
/obj/effect/spawner/scatter/indigo_dawn, | ||
/obj/effect/spawner/scatter/indigo_noon, | ||
) | ||
//E.G.O corroded LC employees | ||
/datum/enemy/gold | ||
ordeal_types = list( | ||
/obj/effect/spawner/scatter/gold_dawn, | ||
/obj/effect/spawner/scatter/gold_noon, | ||
/obj/effect/spawner/scatter/gold_dusk, | ||
/obj/effect/spawner/scatter/gold_midnight, | ||
) | ||
//peccatulae | ||
/datum/enemy/brown | ||
ordeal_types = list( | ||
/obj/effect/spawner/scatter/brown_dawn, | ||
) | ||
//G. corp veterans | ||
/datum/enemy/steel | ||
ordeal_types = list( | ||
/obj/effect/spawner/scatter/steel_dawn, | ||
/obj/effect/spawner/scatter/steel_noon, | ||
) | ||
|
||
//Abnormality thralls | ||
/datum/enemy/abnos | ||
ordeal_types = list( | ||
/obj/effect/spawner/scatter/teth, | ||
/obj/effect/spawner/scatter/he, | ||
/obj/effect/spawner/scatter/waw, | ||
/obj/effect/spawner/scatter/aleph, | ||
) | ||
|
||
//Peccatulae | ||
/obj/effect/spawner/scatter/brown_dawn | ||
name = "mixed peccatulae spawn" | ||
max_spawns = 10 | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/ordeal/sin_sloth = 1, | ||
/mob/living/simple_animal/hostile/ordeal/sin_gluttony = 1, | ||
/mob/living/simple_animal/hostile/ordeal/sin_gloom = 1, | ||
/mob/living/simple_animal/hostile/ordeal/sin_pride = 1, | ||
/mob/living/simple_animal/hostile/ordeal/sin_lust = 1, | ||
/mob/living/simple_animal/hostile/ordeal/sin_wrath = 1, | ||
) | ||
|
||
//E.G.O Corrosions | ||
/obj/effect/spawner/scatter/gold_dawn | ||
name = "amurdad-beanstalk corrosion spawn" | ||
max_spawns = 5 | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/ordeal/fallen_amurdad_corrosion = 1, | ||
/mob/living/simple_animal/hostile/ordeal/beanstalk_corrosion = 10, | ||
) | ||
|
||
/obj/effect/spawner/scatter/gold_noon | ||
name = "silent handmaiden spawn" | ||
max_spawns = 5 | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/ordeal/silentgirl_corrosion = 10, | ||
/mob/living/simple_animal/hostile/ordeal/white_lake_corrosion = 1, | ||
) | ||
|
||
/obj/effect/spawner/scatter/gold_dusk | ||
name = "electric gold dusk spawn" | ||
max_spawns = 5 | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/ordeal/centipede_corrosion = 1 , | ||
/mob/living/simple_animal/hostile/ordeal/thunderbird_corrosion = 1, | ||
/mob/living/simple_animal/hostile/ordeal/KHz_corrosion = 1, | ||
) | ||
|
||
/obj/effect/spawner/scatter/gold_midnight | ||
name = "corroded inquisition spawn" | ||
max_spawns = 1 | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/ordeal/snake_corrosion = 10, | ||
/mob/living/simple_animal/hostile/ordeal/dog_corrosion = 10, | ||
/mob/living/simple_animal/hostile/ordeal/dog_corrosion/strong = 3, | ||
/mob/living/simple_animal/hostile/ordeal/snake_corrosion/strong = 3, | ||
/mob/living/simple_animal/hostile/ordeal/NT_corrosion = 3, | ||
/mob/living/simple_animal/hostile/ordeal/tso_corrosion = 1,//bosses | ||
) | ||
|
||
/obj/effect/spawner/scatter/teth//generally these are supposed to be humans who died in the facility, but there aren't enough for good variety | ||
name = "teth abnormality thrall spawn" | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/shrimp = 1,//shrimp liquidation intern | ||
/mob/living/simple_animal/hostile/doomsday_doll = 1, | ||
/mob/living/simple_animal/hostile/runawaybird = 1,//judgement bird minion | ||
/mob/living/simple_animal/hostile/azure_stave = 1,//servant of wrath minion | ||
) | ||
|
||
/obj/effect/spawner/scatter/he | ||
name = "he abnormality thrall spawn" | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/shrimp_soldier = 1,//shotgun shrimp | ||
/mob/living/simple_animal/hostile/gift = 1,//laetitia spider | ||
/mob/living/simple_animal/hostile/grown_strong = 1, | ||
/mob/living/simple_animal/hostile/nosferatu_mob = 1, | ||
/mob/living/simple_animal/hostile/worker_bee = 1, | ||
/mob/living/simple_animal/hostile/soldier_bee = 1,//identical to above, has a hat | ||
/mob/living/simple_animal/hostile/artillery_bee = 1, | ||
/mob/living/simple_animal/hostile/slime = 1,//ML slime (small) | ||
) | ||
|
||
/obj/effect/spawner/scatter/waw | ||
name = "waw abnormality thrall spawn" | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/yagaslave = 1, | ||
/mob/living/simple_animal/hostile/parasite_tree_sapling = 1, | ||
/mob/living/simple_animal/hostile/thunder_zombie = 1, | ||
) | ||
|
||
/obj/effect/spawner/scatter/aleph | ||
name = "aleph abnormality thrall spawn" | ||
loot_table = list( | ||
/mob/living/simple_animal/hostile/little_prince_1 = 1,//this guy has a wopping 1200 hp | ||
/mob/living/simple_animal/hostile/mini_censored = 1, | ||
/mob/living/simple_animal/hostile/meatblob = 1, | ||
/mob/living/simple_animal/hostile/meatblob/gunner = 1, | ||
/mob/living/simple_animal/hostile/meatblob/gunner/shotgun = 1, | ||
/mob/living/simple_animal/hostile/meatblob/gunner/sniper = 1, | ||
/mob/living/simple_animal/hostile/slime/big = 1//ML's chosen | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
//move this to a mapping folder | ||
/obj/effect/spawner/room/dist4_briah | ||
name = "district 4 briah layer spawner" | ||
dir = NORTH | ||
icon_state = "random_room" | ||
room_width = 54 | ||
room_height = 70 | ||
room_type = "enkephalin_rush" | ||
|
||
|
||
/datum/map_template/random_room/enkephalin_rush/dist4_briah | ||
centerspawner = FALSE | ||
template_width = 49 | ||
template_height = 35 | ||
room_type = "enkephalin_rush" | ||
weight = 1 | ||
mappath = "_maps/templates/enkephalin_rush/dist4_briah.dmm" |
77 changes: 77 additions & 0 deletions
77
ModularTegustation/tegu_items/enkephalin_rush/landmarks.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
//Abnormalities that are mapped into enkephalin rush. Generally none should teleport or overall cause inconvenience to people outside the surrounding area | ||
GLOBAL_LIST_INIT(assiyah, list(//HE's and TETHs | ||
/mob/living/simple_animal/hostile/abnormality/puss_in_boots, | ||
/mob/living/simple_animal/hostile/abnormality/woodsman, | ||
/mob/living/simple_animal/hostile/abnormality/redblooded, | ||
/mob/living/simple_animal/hostile/abnormality/funeral, | ||
/mob/living/simple_animal/hostile/abnormality/scarecrow, | ||
/mob/living/simple_animal/hostile/abnormality/golden_apple, | ||
/mob/living/simple_animal/hostile/abnormality/shock_centipede, | ||
/mob/living/simple_animal/hostile/abnormality/ardor_moth, | ||
/mob/living/simple_animal/hostile/abnormality/porccubus, | ||
)) | ||
|
||
GLOBAL_LIST_INIT(briah, list(//WAW | ||
/mob/living/simple_animal/hostile/abnormality/warden, | ||
/mob/living/simple_animal/hostile/abnormality/thunder_bird, | ||
/mob/living/simple_animal/hostile/abnormality/judgement_bird, | ||
/mob/living/simple_animal/hostile/abnormality/big_bird, | ||
/mob/living/simple_animal/hostile/abnormality/nosferatu, | ||
/mob/living/simple_animal/hostile/abnormality/red_hood, | ||
/mob/living/simple_animal/hostile/abnormality/big_wolf, | ||
/mob/living/simple_animal/hostile/abnormality/dreaming_current, | ||
)) | ||
|
||
GLOBAL_LIST_INIT(atziluth, list(//ALEPH | ||
/mob/living/simple_animal/hostile/abnormality/nobody_is, | ||
/mob/living/simple_animal/hostile/abnormality/mountain, | ||
/mob/living/simple_animal/hostile/abnormality/melting_love, | ||
/mob/living/simple_animal/hostile/abnormality/censored, | ||
|
||
)) | ||
|
||
//Split into 3 groups, Combat for damaging abnos, Support for ranged, AOE and otherwise support abnos, and tank for abnos that can take a beating reliably | ||
/obj/effect/landmark/abnospawn/assiyah | ||
name = "assiyah abno spawner" | ||
desc = "It spawns an abno. Notify a coder. Thanks!" | ||
icon = 'icons/effects/landmarks_static.dmi' | ||
icon_state = "x4" | ||
|
||
/obj/effect/landmark/abnospawn/assiyah/Initialize()//Use subtypes instead of repeating all this code | ||
..() | ||
var/spawning = pick_n_take(GLOB.assiyah) | ||
if(spawning) | ||
var/mob/living/simple_animal/hostile/abnormality/A = new spawning(get_turf(src)) | ||
addtimer(CALLBACK(A, TYPE_PROC_REF(/mob/living/simple_animal/hostile/abnormality, BreachEffect), BREACH_PINK), 2 SECONDS) | ||
SSabnormality_queue.possible_abnormalities[HE_LEVEL] -= spawning | ||
return INITIALIZE_HINT_QDEL | ||
|
||
/obj/effect/landmark/abnospawn/briah | ||
name = "briah abno spawner" | ||
desc = "It spawns an abno. Notify a coder. Thanks!" | ||
icon = 'icons/effects/landmarks_static.dmi' | ||
icon_state = "x4" | ||
|
||
/obj/effect/landmark/abnospawn/briah/Initialize() | ||
..() | ||
var/spawning = pick_n_take(GLOB.briah) | ||
if(spawning) | ||
var/mob/living/simple_animal/hostile/abnormality/A = new spawning(get_turf(src)) | ||
addtimer(CALLBACK(A, TYPE_PROC_REF(/mob/living/simple_animal/hostile/abnormality, BreachEffect), BREACH_PINK), 2 SECONDS) | ||
SSabnormality_queue.possible_abnormalities[WAW_LEVEL] -= spawning | ||
return INITIALIZE_HINT_QDEL | ||
|
||
/obj/effect/landmark/abnospawn/atziluth | ||
name = "atziluth abno spawner" | ||
desc = "It spawns an abno. Notify a coder. Thanks!" | ||
icon = 'icons/effects/landmarks_static.dmi' | ||
icon_state = "x4" | ||
|
||
/obj/effect/landmark/abnospawn/atziluth/Initialize() | ||
..() | ||
var/spawning = pick_n_take(GLOB.atziluth) | ||
if(spawning) | ||
var/mob/living/simple_animal/hostile/abnormality/A = new spawning(get_turf(src)) | ||
addtimer(CALLBACK(A, TYPE_PROC_REF(/mob/living/simple_animal/hostile/abnormality, BreachEffect), BREACH_PINK), 2 SECONDS) | ||
SSabnormality_queue.possible_abnormalities[ALEPH_LEVEL] -= spawning | ||
return INITIALIZE_HINT_QDEL |
Oops, something went wrong.