Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactors species organs, deletes golems & adamantine #595

Merged
merged 8 commits into from
Sep 16, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 4 additions & 19 deletions _maps/RandomRuins/AnywhereRuins/golem_ship.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,6 @@
"l" = (
/turf/open/floor/mineral/titanium/purple,
/area/ruin/powered/golem_ship)
"m" = (
/obj/effect/mob_spawn/ghost_role/human/golem/adamantine,
/turf/open/floor/mineral/titanium/purple,
/area/ruin/powered/golem_ship)
"n" = (
/obj/machinery/mineral/equipment_vendor/golem,
/turf/open/floor/mineral/titanium/purple,
Expand Down Expand Up @@ -179,7 +175,6 @@
/obj/item/storage/medkit/brute,
/obj/structure/table/wood,
/obj/item/storage/medkit/brute,
/obj/item/disk/data/golem_shell,
/turf/open/floor/mineral/titanium/purple,
/area/ruin/powered/golem_ship)
"E" = (
Expand Down Expand Up @@ -214,11 +209,6 @@
/obj/machinery/light/small/directional/north,
/turf/open/floor/mineral/titanium/purple,
/area/ruin/powered/golem_ship)
"M" = (
/obj/effect/mob_spawn/ghost_role/human/golem/adamantine,
/obj/machinery/light/small/directional/north,
/turf/open/floor/mineral/titanium/purple,
/area/ruin/powered/golem_ship)
"N" = (
/obj/machinery/light/directional/north,
/turf/open/floor/mineral/titanium/purple,
Expand All @@ -236,11 +226,6 @@
/obj/machinery/door/airlock/titanium,
/turf/open/floor/mineral/titanium/purple,
/area/ruin/powered/golem_ship)
"U" = (
/obj/effect/mob_spawn/ghost_role/human/golem/adamantine,
/obj/machinery/light/small/directional/south,
/turf/open/floor/mineral/titanium/purple,
/area/ruin/powered/golem_ship)
"V" = (
/obj/machinery/light/small/directional/north,
/turf/open/floor/plating,
Expand Down Expand Up @@ -402,14 +387,14 @@ b
c
I
b
M
L
o
b
l
l
G
o
U
Q
b
V
F
Expand All @@ -420,14 +405,14 @@ b
c
f
b
m
l
o
b
l
l
G
o
m
l
b
f
F
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomRuins/LavaRuins/lavaland_surface_greed.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
/area/ruin/powered/greed)
"j" = (
/obj/structure/table/wood/poker,
/obj/item/coin/adamantine,
/obj/item/coin/mythril,
/turf/open/floor/carpet,
/area/ruin/powered/greed)
"k" = (
Expand Down
18 changes: 1 addition & 17 deletions _maps/RandomZLevels/caves.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -2229,22 +2229,6 @@

},
/area/awaymission/caves/bmp_asteroid)
"Ly" = (
/obj/structure/closet/crate/miningcar{
name = "Mining cart"
},
/obj/item/pickaxe/rusted{
pixel_x = 5
},
/obj/item/stack/sheet/mineral/adamantine{
amount = 15
},
/turf/open/misc/asteroid/basalt{
initial_gas = list("nitrogen" = 23, "oxygen" = 14);
temperature = 2.7;

},
/area/awaymission/caves/bmp_asteroid/level_two)
"Mk" = (
/obj/machinery/light/small/built/directional/west,
/turf/open/floor/wood,
Expand Down Expand Up @@ -61860,7 +61844,7 @@ bK
bK
bK
bK
Ly
DH
oI
oI
oI
Expand Down
3 changes: 0 additions & 3 deletions _maps/shuttles/ferry_meat.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,6 @@
/obj/item/food/meat/slab/human/mutant/fly{
name = "flyman meat"
},
/obj/item/food/meat/slab/human/mutant/golem/adamantine{
name = "golem meat"
},
/obj/item/food/meat/slab/human/mutant/lizard{
name = "lizard meat"
},
Expand Down
69 changes: 17 additions & 52 deletions code/__DEFINES/DNA.dm
Original file line number Diff line number Diff line change
Expand Up @@ -80,40 +80,34 @@
#define NOTRANSSTING 7
#define NOZOMBIE 8
#define NO_UNDERWEAR 9
#define NOSTOMACH 10
#define NO_DNA_COPY 11
#define DRINKSBLOOD 12
#define NO_DNA_COPY 10
#define DRINKSBLOOD 11
/// Use this if you want to change the race's color without the player being able to pick their own color. AKA special color shifting
#define DYNCOLORS 13
#define AGENDER 14
#define DYNCOLORS 12
#define AGENDER 13
/// Do not draw eyes or eyeless overlay
#define NOEYESPRITES 15
/// Used for determining which wounds are applicable to this species.
/// if we have flesh (can suffer slash/piercing/burn wounds, requires they don't have NOBLOOD)
#define HAS_FLESH 16
/// if we have bones (can suffer bone wounds)
#define HAS_BONE 17
#define NOEYESPRITES 14
///If we have a limb-specific overlay sprite
#define HAS_MARKINGS 18
#define HAS_MARKINGS 15
/// Do not draw blood overlay
#define NOBLOODOVERLAY 19
#define NOBLOODOVERLAY 17
///No augments, for monkeys in specific because they will turn into fucking freakazoids https://cdn.discordapp.com/attachments/326831214667235328/791313258912153640/102707682-fa7cad80-4294-11eb-8f13-8c689468aeb0.png
#define NOAUGMENTS 20
#define NOAUGMENTS 18
///will be assigned a universal vampire themed last name shared by their department. this is preferenced!
#define BLOOD_CLANS 21
#define BLOOD_CLANS 19
/// Can this species use the 'Body size' preference
#define BODY_RESIZABLE 22
#define MUTCOLORS2 23
#define MUTCOLORS3 24
#define BODY_RESIZABLE 20
///Haircolor
#define HAIRCOLOR 25
#define FACEHAIRCOLOR 26
#define SCLERA 27
#define HAIRCOLOR 22
#define FACEHAIRCOLOR 22
#define SCLERA 23
///Has non-human hair. Used by pref code to hide standard hair options.
#define NONHUMANHAIR 28
#define NONHUMANHAIR 24

/// For use in /datum/species/var/organs
#define DOES_NOT_NEED "does_not_need"

//organ slots
#define ORGAN_SLOT_ADAMANTINE_RESONATOR "adamantine_resonator"
#define ORGAN_SLOT_APPENDIX "appendix"
#define ORGAN_SLOT_BRAIN "brain"
#define ORGAN_SLOT_BRAIN_ANTIDROP "brain_antidrop"
Expand Down Expand Up @@ -193,7 +187,6 @@ GLOBAL_LIST_INIT(organ_process_order, list(
ORGAN_SLOT_LIVER,
ORGAN_SLOT_TONGUE,
ORGAN_SLOT_VOICE,
ORGAN_SLOT_ADAMANTINE_RESONATOR,
ORGAN_SLOT_HEART_AID,
ORGAN_SLOT_BRAIN_ANTIDROP,
ORGAN_SLOT_BRAIN_ANTISTUN,
Expand All @@ -207,34 +200,6 @@ GLOBAL_LIST_INIT(organ_process_order, list(
ORGAN_SLOT_XENO_EGGSAC,
ORGAN_SLOT_BRAIN))

//Defines for Golem Species IDs
#define SPECIES_GOLEM "golem"
#define SPECIES_GOLEM_ADAMANTINE "a_golem"
#define SPECIES_GOLEM_PLASMA "p_golem"
#define SPECIES_GOLEM_DIAMOND "diamond_golem"
#define SPECIES_GOLEM_GOLD "gold_golem"
#define SPECIES_GOLEM_SILVER "silver_golem"
#define SPECIES_GOLEM_PLASTEEL "plasteel_golem"
#define SPECIES_GOLEM_TITANIUM "titanium_golem"
#define SPECIES_GOLEM_PLASTITANIUM "plastitanium_golem"
#define SPECIES_GOLEM_ALIEN "alloy_golem"
#define SPECIES_GOLEM_WOOD "wood_golem"
#define SPECIES_GOLEM_URANIUM "uranium_golem"
#define SPECIES_GOLEM_SAND "sand_golem"
#define SPECIES_GOLEM_GLASS "glass_golem"
#define SPECIES_GOLEM_BLUESPACE "bluespace_golem"
#define SPECIES_GOLEM_BANANIUM "ba_golem"
#define SPECIES_GOLEM_CULT "cultgolem"
#define SPECIES_GOLEM_CLOTH "clothgolem"
#define SPECIES_GOLEM_PLASTIC "plastic_golem"
#define SPECIES_GOLEM_BRONZE "bronze_golem"
#define SPECIES_GOLEM_CARDBOARD "c_golem"
#define SPECIES_GOLEM_LEATHER "leather_golem"
#define SPECIES_GOLEM_DURATHREAD "d_golem"
#define SPECIES_GOLEM_BONE "b_golem"
#define SPECIES_GOLEM_SNOW "sn_golem"
#define SPECIES_GOLEM_HYDROGEN "metallic_hydrogen_golem"

// Defines for used in creating "perks" for the species preference pages.
/// A key that designates UI icon displayed on the perk.
#define SPECIES_PERK_ICON "ui_icon"
Expand Down
1 change: 0 additions & 1 deletion code/__DEFINES/is_helpers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(

//Human sub-species
#define isabductor(A) (is_species(A, /datum/species/abductor))
#define isgolem(A) (is_species(A, /datum/species/golem))
#define islizard(A) (is_species(A, /datum/species/lizard))
#define isplasmaman(A) (is_species(A, /datum/species/plasmaman))
#define isvox(A) (is_species(A, /datum/species/vox))
Expand Down
1 change: 0 additions & 1 deletion code/_globalvars/phobias.dm
Original file line number Diff line number Diff line change
Expand Up @@ -500,7 +500,6 @@ GLOBAL_LIST_INIT(phobia_species, list(
/datum/species/plasmaman,
/datum/species/skeleton,
)),
"the supernatural" = typecacheof(list(/datum/species/golem/runic)),
))

/// Creates a regular expression to match against the given phobia
Expand Down
98 changes: 0 additions & 98 deletions code/datums/diseases/gastrolisis.dm

This file was deleted.

16 changes: 5 additions & 11 deletions code/datums/dna.dm
Original file line number Diff line number Diff line change
Expand Up @@ -886,7 +886,7 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block())
dna.remove_all_mutations()
dna.stability = 100
if(prob(max(70-instability,0)))
switch(rand(0,9)) //not complete and utter death
switch(rand(0,7)) //not complete and utter death
if(0)
monkeyize()
if(1)
Expand Down Expand Up @@ -917,9 +917,6 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block())
O.forceMove(drop_location())
if(prob(20))
O.animate_atom_living()
if(8 to 9)
ForceContractDisease(new/datum/disease/gastrolosis())
to_chat(src, span_notice("Oh, I actually feel quite alright!"))
else
switch(rand(0,5))
if(0)
Expand All @@ -931,14 +928,11 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block())
death()
petrify(INFINITY)
if(3)
if(prob(95))
var/obj/item/bodypart/BP = get_bodypart(pick(BODY_ZONE_CHEST,BODY_ZONE_HEAD))
if(BP)
BP.dismember()
else
gib()
var/obj/item/bodypart/BP = get_bodypart(pick(BODY_ZONE_CHEST,BODY_ZONE_HEAD))
if(BP)
BP.dismember()
else
set_species(/datum/species/dullahan)
gib()
if(4)
visible_message(span_warning("[src]'s skin melts off!"), span_boldwarning("Your skin melts off!"))
spawn_gibs()
Expand Down
4 changes: 2 additions & 2 deletions code/datums/elements/spooky.dm
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
H.Paralyze(15) //zombies can't resist the doot
C.set_timed_status_effect(70 SECONDS, /datum/status_effect/jitter, only_if_higher = TRUE)
C.set_timed_status_effect(40 SECONDS, /datum/status_effect/speech/stutter)
if((!istype(H.dna.species, /datum/species/skeleton)) && (!istype(H.dna.species, /datum/species/golem)) && (!istype(H.dna.species, /datum/species/android)) && (!istype(H.dna.species, /datum/species/jelly)))
if((!istype(H.dna.species, /datum/species/skeleton)) && (!istype(H.dna.species, /datum/species/android)) && (!istype(H.dna.species, /datum/species/jelly)))
C.stamina.adjust(-25) //boneless humanoids don't lose the will to live
to_chat(C, "<font color='red' size='4'><B>DOOT</B></font>")
INVOKE_ASYNC(src, PROC_REF(spectral_change), H)
Expand All @@ -47,7 +47,7 @@
C.set_timed_status_effect(40 SECONDS, /datum/status_effect/speech/stutter)

/datum/element/spooky/proc/spectral_change(mob/living/carbon/human/H, mob/user)
if((H.stamina.current < 105) && (!istype(H.dna.species, /datum/species/skeleton)) && (!istype(H.dna.species, /datum/species/golem)) && (!istype(H.dna.species, /datum/species/android)) && (!istype(H.dna.species, /datum/species/jelly)))
if((H.stamina.current < 105) && (!istype(H.dna.species, /datum/species/skeleton)) && (!istype(H.dna.species, /datum/species/android)) && (!istype(H.dna.species, /datum/species/jelly)))
H.Paralyze(20)
H.set_species(/datum/species/skeleton)
H.visible_message(span_warning("[H] has given up on life as a mortal."))
Expand Down
Loading
Loading