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

Robot species and stuff #128

Merged
merged 41 commits into from
Oct 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
bc925a1
initial
carpotoxin Oct 3, 2024
d0d7282
checkpoint
carpotoxin Oct 6, 2024
285cbf9
Merge branch 'main' into paranoid-android
carpotoxin Oct 6, 2024
e51436f
checkpoint
carpotoxin Oct 6, 2024
0b0ec54
6/10
carpotoxin Oct 6, 2024
da946f8
crew tracker
carpotoxin Oct 7, 2024
4f438cc
charging implant/reagent processing
carpotoxin Oct 7, 2024
eaa93e9
crew sensor tweak
carpotoxin Oct 7, 2024
5eea21b
implanted quirk + sechud icon
carpotoxin Oct 7, 2024
853646b
more implants
carpotoxin Oct 7, 2024
46b4ce5
forgot this 💀
carpotoxin Oct 7, 2024
c9cb2da
left handed quirk i guess lol
carpotoxin Oct 8, 2024
814e583
Merge branch 'main' into paranoid-android
carpotoxin Oct 8, 2024
a4210df
bug blood
carpotoxin Oct 8, 2024
40fa98b
make the code work
carpotoxin Oct 8, 2024
364be00
why was this unticked i didnt even touch it
carpotoxin Oct 8, 2024
0d6f62b
the worst unit test on the repo has something to say
carpotoxin Oct 8, 2024
84bdede
IPCs are here
carpotoxin Oct 9, 2024
7dda0e9
some more screens
carpotoxin Oct 9, 2024
88f1006
update preview
carpotoxin Oct 9, 2024
c416103
IPC screens update on stat change
carpotoxin Oct 9, 2024
e5d2ee9
robot limb construction
carpotoxin Oct 10, 2024
d22dd17
woops
carpotoxin Oct 10, 2024
c339dc1
commit
carpotoxin Oct 10, 2024
f33eb2e
stay functional please
carpotoxin Oct 10, 2024
f9847a6
synth wounds pt 1
carpotoxin Oct 10, 2024
053705b
nothing icon state
carpotoxin Oct 10, 2024
022e659
synth wounds pt 2
carpotoxin Oct 11, 2024
3e3578b
bunch of synth medicine i forgot
carpotoxin Oct 11, 2024
c4b7a18
ci
carpotoxin Oct 11, 2024
15afd00
ci again
carpotoxin Oct 11, 2024
7b08de8
where is my mind
carpotoxin Oct 11, 2024
dcde584
better monitor code and a sfx
carpotoxin Oct 11, 2024
fd6e530
Merge branch 'master' into paranoid-android
CliffracerX Oct 11, 2024
e42072d
Merge branch 'main' into paranoid-android
carpotoxin Oct 12, 2024
61c7079
monitor head adds
carpotoxin Oct 12, 2024
b0ecb31
synth lizards
carpotoxin Oct 12, 2024
91edc39
forgot this
carpotoxin Oct 12, 2024
c14acf9
Merge branch 'main' into paranoid-android
carpotoxin Oct 12, 2024
56c76ee
oop
carpotoxin Oct 12, 2024
7b01a86
ci
carpotoxin Oct 12, 2024
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
4 changes: 4 additions & 0 deletions code/__DEFINES/atom_hud.dm
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,10 @@
#define DIAG_CAMERA_HUD "22"
/// Steady Hacked APC effect, visible only to Malf AIs
#define MALF_APC_HUD "23"
// DOPPLER ADDITION BEGIN
/// If they have the implanted quirk
#define SEC_IMPLANT_HUD "25"
// DOPPLER ADDITION END

//by default everything in the hud_list of an atom is an image
//a value in hud_list with one of these will change that behavior
Expand Down
4 changes: 4 additions & 0 deletions code/__DEFINES/text.dm
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,10 @@
#define FLESH_SCAR_FILE "wounds/flesh_scar_desc.json"
/// File location for bone wound descriptions
#define BONE_SCAR_FILE "wounds/bone_scar_desc.json"
// DOPPLER ADDITION BEGIN - SYNTH WOUNDS
/// File location for metalic wound descriptions
#define METAL_SCAR_FILE "wounds/metal_scar_desc.json"
// DOPPLER ADDITION END
/// File location for scar wound descriptions
#define SCAR_LOC_FILE "wounds/scar_loc.json"
/// File location for exodrone descriptions
Expand Down
11 changes: 8 additions & 3 deletions code/__DEFINES/wounds.dm
Original file line number Diff line number Diff line change
Expand Up @@ -128,11 +128,15 @@ GLOBAL_LIST_INIT(bio_state_anatomy, list(
/// Cranial fissure wound.
#define WOUND_SERIES_CRANIAL_FISSURE "wound_series_cranial_fissure"

// NOVA EDIT ADDITION BEGIN - MUSCLE AND SYNTH WOUNDS
// DOPPLER ADDITION BEGIN - synth wounds
// Have to put it here so I can use it in the global list of wound series
/// See muscle.dm and robotic_blunt.dm
#define WOUND_SERIES_MUSCLE_DAMAGE "nova_wound_series_muscle_damage"

#define WOUND_SERIES_METAL_BLUNT_BASIC "wound_series_metal_blunt_basic"
#define WOUND_SERIES_METAL_BURN_OVERHEAT "wound_series_metal_burn_basic"
#define WOUND_SERIES_WIRE_SLASH_ELECTRICAL_DAMAGE "wound_series_metal_slash_electrical_damage_basic"
#define WOUND_SERIES_WIRE_PIERCE_ELECTRICAL_DAMAGE "wound_series_metal_pierce_electrical_damage_basic"
// DOPPLER ADDITION END
/// A assoc list of (wound typepath -> wound_pregen_data instance). Every wound should have a pregen data.
GLOBAL_LIST_INIT_TYPED(all_wound_pregen_data, /datum/wound_pregen_data, generate_wound_static_data())

Expand Down Expand Up @@ -284,7 +288,8 @@ GLOBAL_LIST_INIT(wounding_types_to_series, list(
/// Assoc list of biotype -> ideal scar file to be used and grab stuff from.
GLOBAL_LIST_INIT(biotypes_to_scar_file, list(
"[BIO_FLESH]" = FLESH_SCAR_FILE,
"[BIO_BONE]" = BONE_SCAR_FILE
"[BIO_BONE]" = BONE_SCAR_FILE,
"[BIO_METAL]" = METAL_SCAR_FILE // DOPPLER EDIT ADDITION - METAL SCARS (see robotic_blunt.dm)
))

// ~burn wound infection defines
Expand Down
10 changes: 0 additions & 10 deletions code/__DEFINES/~doppler_defines/declarations.dm

This file was deleted.

5 changes: 3 additions & 2 deletions code/__DEFINES/~doppler_defines/is_helpers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,6 @@
#define issnail(A) (is_species(A, /datum/species/snail))
#define ishemophage(A) (is_species(A, /datum/species/genemod/hemophage))
#define isramatan(A) (is_species(A, /datum/species/ramatan))
//Species with green blood
#define hasgreenblood(A) (isinsectoid(A) || issnail(A) || HAS_TRAIT(A, TRAIT_GREEN_BLOOD))
//Species blood colors
#define hasgreenblood(A) (isinsectoid(A) || issnail(A) || isflyperson(A) || isalien(A) || HAS_TRAIT(A, TRAIT_GREEN_BLOOD))
#define hasblueblood(A) (isandroid(A) || HAS_TRAIT(A, TRAIT_BLUE_BLOOD))
8 changes: 8 additions & 0 deletions code/__DEFINES/~doppler_defines/mutant_blacklists.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
GLOBAL_LIST_INIT(species_blacklist_no_mutant, list(
/datum/species/human,
))

GLOBAL_LIST_INIT(species_blacklist_no_humanoid, list(
/datum/species/golem,
/datum/species/genemod/primitive,
))
4 changes: 2 additions & 2 deletions code/__DEFINES/~doppler_defines/mutant_variations.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
#define MONKEY "monkey"
#define DEER "deer"
#define BUG "bug"
#define SYNTHETIC "synthetic"
#define CYBERNETIC "cybernetic"
#define HUMANOID "humanoid"
#define ALIEN "alien"

Expand All @@ -30,7 +30,7 @@ GLOBAL_LIST_INIT(mutant_variations, list(
LIZARD,
MONKEY,
MOUSE,
SYNTHETIC,
CYBERNETIC,
ALIEN,
))

Expand Down
46 changes: 42 additions & 4 deletions code/__DEFINES/~doppler_defines/traits.dm
Original file line number Diff line number Diff line change
@@ -1,20 +1,58 @@
////
// Skills
////
/// trait that lets you do xenoarch magnification
#define TRAIT_XENOARCH_QUALIFIED "trait_xenoarch_qualified"

/// Traits granted by glassblowing
#define TRAIT_GLASSBLOWING "glassblowing"

/// Trait that is applied whenever someone or something is glassblowing
#define TRAIT_CURRENTLY_GLASSBLOWING "currently_glassblowing"

////
// Species
////
/// Trait for hemophages particularly!
#define TRAIT_OXYIMMUNE "oxyimmune" // Immune to oxygen damage, ideally give this to all non-breathing species or bad stuff will happen
/// Trait that defines if an android species type is charging their cell
#define TRAIT_CHARGING "charging"
/// Trait which lets species pick from a list of animal traits, used by genemod + subtypes and anthromorphs
#define TRAIT_ANIMALISTIC "animalistic"

// Green blood traits
#define TRAIT_GREEN_BLOOD "green_blood"

// Blue blood traits
#define TRAIT_BLUE_BLOOD "blue_blood"
// Trait that lets golems put stone limbs back on
#define TRAIT_GOLEM_LIMBATTACHMENT "golem_limbattachment"

////
// Quirks
////
/// Trait for extra language point.
#define TRAIT_LINGUIST "linguist"
/// Trait for the excitable quirk, woof!
#define TRAIT_EXCITABLE "wagwag"
/// Trait for if you are left handed
#define TRAIT_LEFT_HANDED "left_handed"
/// Trait for people with the cybernetic quirk
#define TRAIT_PERMITTED_CYBERNETIC "permitted_cybernetic"

////
// Jobs
////
/// Given to the detective, if they have this, they can see syndicate special descriptions.
#define TRAIT_DETECTIVE "detective_ability"

////
// Reagents
////
/// Trait that was granted by a reagent.
#define REAGENT_TRAIT "reagent"
/// Trait that changes the ending effects of twitch leaving your system
#define TRAIT_TWITCH_ADAPTED "twitch_adapted"

////
// Wounds
////
/// When someone is fixing electrical damage, this trait is set and prevents the wound from worsening.
// We use a trait to avoid erronous setting of a variable to false if two people are repairing and one stops.
#define TRAIT_ELECTRICAL_DAMAGE_REPAIRING "electrical_damage_repairing"
8 changes: 8 additions & 0 deletions code/_globalvars/traits/_traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,11 @@ GLOBAL_LIST_INIT(traits_by_type, list(
/datum/wound = list(
"TRAIT_WOUND_SCANNED" = TRAIT_WOUND_SCANNED,
),
// DOPPLER ADDITON BEGIN
/datum/wound/electrical_damage = list(
"TRAIT_ELECTRICAL_DAMAGE_REPAIRING" = TRAIT_ELECTRICAL_DAMAGE_REPAIRING,
),
// DOPPLER ADDITON END
/obj = list(
"TRAIT_WALLMOUNTED" = TRAIT_WALLMOUNTED,
"TRAIT_CONTRABAND" = TRAIT_CONTRABAND,
Expand Down Expand Up @@ -700,6 +705,9 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_TWITCH_ADAPTED" = TRAIT_TWITCH_ADAPTED,
"TRAIT_GOLEM_LIMBATTACHMENT" = TRAIT_GOLEM_LIMBATTACHMENT,
"TRAIT_LINGUIST" = TRAIT_LINGUIST,
"TRAIT_PERMITTED_CYBERNETIC" = TRAIT_PERMITTED_CYBERNETIC,
"TRAIT_CHARGING" = TRAIT_CHARGING,
"TRAIT_LEFT_HANDED" = TRAIT_LEFT_HANDED,
),
// DOPPLER EDIT ADDITION END
))
Expand Down
5 changes: 4 additions & 1 deletion code/_globalvars/traits/admin_tooling.dm
Original file line number Diff line number Diff line change
Expand Up @@ -382,7 +382,10 @@ GLOBAL_LIST_INIT(admin_visible_traits, list(
"TRAIT_DETECTIVE" = TRAIT_DETECTIVE,
"TRAIT_EXCITABLE" = TRAIT_EXCITABLE,
"TRAIT_TWITCH_ADAPTED" = TRAIT_TWITCH_ADAPTED,
"TRAIT_LINGUIST" = TRAIT_LINGUIST
"TRAIT_LINGUIST" = TRAIT_LINGUIST,
"TRAIT_PERMITTED_CYBERNETIC" = TRAIT_PERMITTED_CYBERNETIC,
"TRAIT_CHARGING" = TRAIT_CHARGING,
"TRAIT_LEFT_HANDED" = TRAIT_LEFT_HANDED,
),
// DOPPLER EDIT ADDITION END
))
Expand Down
4 changes: 4 additions & 0 deletions code/datums/wounds/bones.dm
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,8 @@
// DOPPLER EDIT ADDITION BEGIN - Green blood color
if(hasgreenblood(victim))
new /obj/effect/temp_visual/dir_setting/bloodsplatter/green(victim.loc, victim.dir)
if(hasblueblood(victim))
new /obj/effect/temp_visual/dir_setting/bloodsplatter/blue(victim.loc, victim.dir)
else
new /obj/effect/temp_visual/dir_setting/bloodsplatter(victim.loc, victim.dir)
// DOPPLER EDIT ADDITION END
Expand All @@ -176,6 +178,8 @@
// DOPPLER EDIT ADDITION BEGIN - Green blood color
if(hasgreenblood(victim))
new /obj/effect/temp_visual/dir_setting/bloodsplatter/green(victim.loc, victim.dir)
if(hasblueblood(victim))
new /obj/effect/temp_visual/dir_setting/bloodsplatter/blue(victim.loc, victim.dir)
else
new /obj/effect/temp_visual/dir_setting/bloodsplatter(victim.loc, victim.dir)
// DOPPLER EDIT ADDITION END
Expand Down
2 changes: 1 addition & 1 deletion code/game/data_huds.dm
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
hud_icons = list(ID_HUD)

/datum/atom_hud/data/human/security/advanced
hud_icons = list(ID_HUD, IMPSEC_FIRST_HUD, IMPLOYAL_HUD, IMPSEC_SECOND_HUD, WANTED_HUD)
hud_icons = list(ID_HUD, IMPSEC_FIRST_HUD, IMPLOYAL_HUD, IMPSEC_SECOND_HUD, WANTED_HUD, SEC_IMPLANT_HUD) // DOPPLER EDIT, old code: hud_icons = list(ID_HUD, IMPSEC_FIRST_HUD, IMPLOYAL_HUD, IMPSEC_SECOND_HUD, WANTED_HUD)

/datum/atom_hud/data/human/fan_hud
hud_icons = list(FAN_HUD)
Expand Down
11 changes: 11 additions & 0 deletions code/game/machinery/computer/crew.dm
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,8 @@
. += create_table_notices(list(
"name",
"job",
"charge", //DOPPLER EDIT ADDITION
"is_robot", //DOPPLER EDIT ADDITION
"life_status",
"suffocation",
"toxin",
Expand All @@ -64,6 +66,8 @@
var/list/entry = list()
entry["name"] = player_record["name"]
entry["job"] = player_record["assignment"]
entry["charge"] = player_record["charge"] // DOPPLER EDIT ADDITION
entry["is_robot"] = player_record["is_robot"] // DOPPLER EDIT ADDITION
entry["life_status"] = player_record["life_status"]
entry["suffocation"] = player_record["oxydam"]
entry["toxin"] = player_record["toxdam"]
Expand Down Expand Up @@ -245,6 +249,13 @@ GLOBAL_DATUM_INIT(crewmonitor, /datum/crewmonitor, new)
if (jobs[trim_assignment] != null)
entry["ijob"] = jobs[trim_assignment]

// DOPPLER EDIT ADDITION START
if (isandroid(tracked_human))
var/datum/species/android/energy_holder = tracked_human.dna.species
entry["is_robot"] = TRUE
entry["charge"] = "[round((energy_holder.core_energy/1000000), 0.1)]MJ"
// DOPPLER EDIT ADDITION END

// Broken sensors show garbage data
if (uniform.has_sensor == BROKEN_SENSORS)
entry["life_status"] = rand(0,1)
Expand Down
4 changes: 4 additions & 0 deletions code/game/objects/effects/decals/cleanable/humans.dm
Original file line number Diff line number Diff line change
Expand Up @@ -442,6 +442,8 @@ GLOBAL_LIST_EMPTY(bloody_footprints_cache)
var/obj/effect/decal/cleanable/final_splatter
if(istype(src, /obj/effect/decal/cleanable/blood/hitsplatter/green))
final_splatter = new /obj/effect/decal/cleanable/blood/green/splatter/over_window(prev_loc)
if(istype(src, /obj/effect/decal/cleanable/blood/hitsplatter/blue))
final_splatter = new /obj/effect/decal/cleanable/blood/blue/splatter/over_window(prev_loc)
else
final_splatter = new /obj/effect/decal/cleanable/blood/splatter/over_window(prev_loc)
// DOPPLER EDIT CHANGE END
Expand All @@ -459,6 +461,8 @@ GLOBAL_LIST_EMPTY(bloody_footprints_cache)
var/obj/effect/decal/cleanable/final_splatter
if(istype(src, /obj/effect/decal/cleanable/blood/hitsplatter/green))
final_splatter = new /obj/effect/decal/cleanable/blood/green/splatter/over_window(prev_loc)
if(istype(src, /obj/effect/decal/cleanable/blood/hitsplatter/blue))
final_splatter = new /obj/effect/decal/cleanable/blood/blue/splatter/over_window(prev_loc)
else
final_splatter = new /obj/effect/decal/cleanable/blood/splatter/over_window(prev_loc)
// DOPPLER EDIT CHANGE END
Expand Down
3 changes: 2 additions & 1 deletion code/game/objects/items/crayons.dm
Original file line number Diff line number Diff line change
Expand Up @@ -978,7 +978,7 @@
return ITEM_INTERACT_BLOCKING
if(check_empty(user))
return ITEM_INTERACT_BLOCKING

/* DOPPLER EDIT REMOVAL START
if(isbodypart(interacting_with) && actually_paints)
var/obj/item/bodypart/limb = interacting_with
if(!IS_ORGANIC_LIMB(limb))
Expand All @@ -994,6 +994,7 @@
playsound(user.loc, 'sound/effects/spray.ogg', 5, TRUE, 5)
limb.change_appearance(style_list_icons[choice], greyscale = FALSE)
return ITEM_INTERACT_SUCCESS
DOPPLER EDIT REMOVAL END */
if(interacting_with.color)
paint_color = interacting_with.color
balloon_alert(user, "matched colour of target")
Expand Down
4 changes: 4 additions & 0 deletions code/game/objects/structures/crates_lockers/crates.dm
Original file line number Diff line number Diff line change
Expand Up @@ -277,6 +277,10 @@
new /obj/item/reagent_containers/blood/o_plus(src)
new /obj/item/reagent_containers/blood/lizard(src)
new /obj/item/reagent_containers/blood/ethereal(src)
// DOPPLER ADDITION START
new /obj/item/reagent_containers/blood/robot(src)
new /obj/item/reagent_containers/blood/bug(src)
// DOPPLER ADDITION END
for(var/i in 1 to 3)
new /obj/item/reagent_containers/blood/random(src)

Expand Down
4 changes: 4 additions & 0 deletions code/modules/mob/living/basic/bots/medbot/medbot_ai.dm
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,10 @@
search_range = (mode_flags & MEDBOT_STATIONARY_MODE) ? 1 : initial(search_range)
var/list/ignore_keys = controller.blackboard[BB_TEMPORARY_IGNORE_LIST]
for(var/mob/living/carbon/human/treatable_target in oview(search_range, controller.pawn))
// DOPPLER EDIT ADDITION START
if(treatable_target.mob_biotypes & MOB_ROBOTIC)
continue
// DOPPLER EDIT ADDITION END
if(LAZYACCESS(ignore_keys, treatable_target) || treatable_target.stat == DEAD)
continue
if((access_flags & BOT_COVER_EMAGGED) && treatable_target.stat == CONSCIOUS)
Expand Down
10 changes: 7 additions & 3 deletions code/modules/mob/living/blood.dm
Original file line number Diff line number Diff line change
Expand Up @@ -361,7 +361,7 @@

//to add a splatter of blood or other mob liquid.
/mob/living/proc/add_splatter_floor(turf/T, small_drip)
if(get_blood_id() != /datum/reagent/blood && !hasgreenblood(src)) // DOPPLER EDIT CHANGE START - ORIGINAL: if(get_blood_id() != /datum/reagent/blood)
if(get_blood_id() != /datum/reagent/blood && !hasgreenblood(src) && !hasblueblood(src)) // DOPPLER EDIT CHANGE START - ORIGINAL: if(get_blood_id() != /datum/reagent/blood)
return
if(!T)
T = get_turf(src)
Expand All @@ -385,7 +385,9 @@
// DOPPLER EDIT CHANGE START - ORIGINAL: drop = new(T, get_static_viruses())
if(hasgreenblood(src))
drop = new /obj/effect/decal/cleanable/blood/drip/green(T, get_static_viruses())
else
if(hasblueblood(src))
drop = new /obj/effect/decal/cleanable/blood/drip/blue(T, get_static_viruses())
if(!hasblueblood(src) && !hasgreenblood(src))
drop = new(T, get_static_viruses())
// DOPPLER EDIT END
drop.transfer_mob_blood_dna(src)
Expand All @@ -397,7 +399,9 @@
// DOPPLER EDIT CHANGE START - ORIGINAL: B = new /obj/effect/decal/cleanable/blood/splatter(T, get_static_viruses())
if(hasgreenblood(src))
B = new /obj/effect/decal/cleanable/blood/green/splatter(T, get_static_viruses())
else
if(hasblueblood(src))
B = new /obj/effect/decal/cleanable/blood/blue/splatter(T, get_static_viruses())
if(!hasblueblood(src) && !hasgreenblood(src))
B = new /obj/effect/decal/cleanable/blood/splatter(T, get_static_viruses())
// DOPPLER EDIT END
if(QDELETED(B)) //Give it up
Expand Down
2 changes: 2 additions & 0 deletions code/modules/mob/living/carbon/carbon.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1444,6 +1444,8 @@
var/obj/effect/decal/cleanable/blood/hitsplatter/our_splatter
if(hasgreenblood(src))
our_splatter = new /obj/effect/decal/cleanable/blood/hitsplatter/green(loc)
if(hasblueblood(src))
our_splatter = new /obj/effect/decal/cleanable/blood/hitsplatter/blue(loc)
else
our_splatter = new /obj/effect/decal/cleanable/blood/hitsplatter(loc)
// DOPPLER EDIT CHANGE END
Expand Down
8 changes: 8 additions & 0 deletions code/modules/mob/living/carbon/human/death.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,14 @@ GLOBAL_LIST_EMPTY(dead_players_during_shift)
/mob/living/carbon/human/spawn_gibs(drop_bitflags=NONE)
if(flags_1 & HOLOGRAM_1)
return
// DOPPLER ADDITION START
if(isandroid(src))
new /obj/effect/gibspawner/robot(drop_location(), src, get_static_viruses())
return
if(hasgreenblood(src))
new /obj/effect/gibspawner/xeno/bodypartless(drop_location(), src, get_static_viruses())
return
// DOPPLER ADDITION END
if(drop_bitflags & DROP_BODYPARTS)
new /obj/effect/gibspawner/human(drop_location(), src, get_static_viruses())
else
Expand Down
2 changes: 1 addition & 1 deletion code/modules/mob/living/carbon/human/human_defines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
icon = 'icons/mob/human/human.dmi'
icon_state = "human_basic"
appearance_flags = KEEP_TOGETHER|TILE_BOUND|PIXEL_SCALE|LONG_GLIDE
hud_possible = list(HEALTH_HUD,STATUS_HUD,ID_HUD,WANTED_HUD,IMPLOYAL_HUD,IMPSEC_FIRST_HUD,IMPSEC_SECOND_HUD,ANTAG_HUD,GLAND_HUD,SENTIENT_DISEASE_HUD,FAN_HUD)
hud_possible = list(HEALTH_HUD,STATUS_HUD,ID_HUD,WANTED_HUD,IMPLOYAL_HUD,IMPSEC_FIRST_HUD,IMPSEC_SECOND_HUD,ANTAG_HUD,GLAND_HUD,SENTIENT_DISEASE_HUD,FAN_HUD,SEC_IMPLANT_HUD) // DOPPLER EDIT, old code: hud_possible = list(HEALTH_HUD,STATUS_HUD,ID_HUD,WANTED_HUD,IMPLOYAL_HUD,IMPSEC_FIRST_HUD,IMPSEC_SECOND_HUD,ANTAG_HUD,GLAND_HUD,SENTIENT_DISEASE_HUD,FAN_HUD)
hud_type = /datum/hud/human
pressure_resistance = 25
can_buckle = TRUE
Expand Down
12 changes: 8 additions & 4 deletions code/modules/projectiles/projectile.dm
Original file line number Diff line number Diff line change
Expand Up @@ -330,13 +330,17 @@
var/splatter_dir = dir
if(starting)
splatter_dir = get_dir(starting, target_turf)
if(isalien(living_target) || hasgreenblood(living_target)) // DOPPLER EDIT CHANGE - Green blood color - Original line: if(isalien(living_target))
new /obj/effect/temp_visual/dir_setting/bloodsplatter/green(target_turf, splatter_dir) // DOPPLER EDIT CHANGE - Green blood color - Original line: new /obj/effect/temp_visual/dir_setting/bloodsplatter/xenosplatter(target_turf, splatter_dir)
else
// DOPPLER ADDITION START
if(hasblueblood(living_target))
new /obj/effect/temp_visual/dir_setting/bloodsplatter/blue(target_turf, splatter_dir)
if(hasgreenblood(living_target))
new /obj/effect/temp_visual/dir_setting/bloodsplatter/green(target_turf, splatter_dir)
if(!hasblueblood(living_target) && !hasgreenblood(living_target))
new /obj/effect/temp_visual/dir_setting/bloodsplatter(target_turf, splatter_dir)
// DOPPLER ADDITION END
if(prob(33))
living_target.add_splatter_floor(target_turf)
else if (hit_bodypart?.biological_state & (BIO_METAL|BIO_WIRED))
if (hit_bodypart?.biological_state & (BIO_ROBOTIC)) // DOPPLER EDIT - old code: else if (hit_bodypart?.biological_state & (BIO_METAL|BIO_WIRED))
var/random_damage_mult = RANDOM_DECIMAL(0.85, 1.15) // SOMETIMES you can get more or less sparks
var/damage_dealt = ((damage / (1 - (blocked / 100))) * random_damage_mult)

Expand Down
Loading
Loading