Skip to content

Commit

Permalink
Merge branch 'Bubberstation:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
MosleyTheMalO authored Jul 5, 2024
2 parents 455147c + 9b1d1bb commit fcf6923
Show file tree
Hide file tree
Showing 44 changed files with 987 additions and 130 deletions.
3 changes: 3 additions & 0 deletions code/__DEFINES/role_preferences.dm
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,8 @@
#define ROLE_BLOODSUCKERBREAKOUT "Bloodsucker (Latejoin)"
#define ROLE_MONSTERHUNTER "Monster Hunter"
#define ROLE_VASSAL "Vassal"

#define ROLE_CHANGELING_ZOMBIE "Changeling Zombie"
//BUBBER EDIT END

/// This defines the antagonists you can operate with in the settings.
Expand Down Expand Up @@ -205,6 +207,7 @@ GLOBAL_LIST_INIT(special_roles, list(
ROLE_VAMPIRICACCIDENT = 14,
ROLE_BLOODSUCKERBREAKOUT = 14,
ROLE_MONSTERHUNTER = 14,
ROLE_CHANGELING_ZOMBIE = 0
//BUBBER EDIT END
))

Expand Down
29 changes: 29 additions & 0 deletions code/__DEFINES/~~bubber_defines/changeling_zombie.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
//Minimum toxin damage required to transformed. The victim must also be dead.
#define CHANGELING_ZOMBIE_TOXINS_THRESHOLD_TO_TRANSFORM 100

//Minimum time required to actually transform when all conditions are met.
#define CHANGELING_ZOMBIE_MINIMUM_TRANSFORM_DELAY (30 SECONDS)

//Minimum toxin damage to enter the curable stage. Reducing toxins damage back to 0 cures.
#define CHANGELING_ZOMBIE_TOXINS_THRESHOLD_TO_CURE 50

//Toxin damage per second dealt to living beings with the infection. This doubles every minute.
#define CHANGELING_ZOMBIE_TOXINS_PER_SECOND_LIVING 0.5

//Toxin damage per second dealt to dead beings with the infection. This doubles every minute.
#define CHANGELING_ZOMBIE_TOXINS_PER_SECOND_DEAD 1.5

//Infection chance per instance when a melee attack is supposed to draw blood. This applies to changeling zombies spawned via the event.
#define CHANGELING_ZOMBIE_INFECT_CHANCE 80

//Infection chance per instance when a melee attack is supposed to draw blood. This applies to changeling zombies created by changelings.
#define CHANGELING_ZOMBIE_INFECT_CHANCE_LESSER 0

//Infection cooldown to be able to infect another person after a successful infection.
#define CHANGELING_ZOMBIE_REINFECT_DELAY (3 SECONDS)

//Passive healing provided per second to changeling zombies. Randomly chosen between brute/burn.
#define CHANGELING_ZOMBIE_PASSIVE_HEALING 1

//Amount of time it takes to regenerate a limb, after losing one. Resets when a limb is regrown or another limb is lost.
#define CHANGELING_ZOMBIE_LIMB_REGEN_TIME (30 SECONDS)
4 changes: 1 addition & 3 deletions code/__DEFINES/~~bubber_defines/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@

#define TRAIT_HYDROPHILIC "hydrophilic"
#define TRAIT_CAN_BE_PICKED_UP "can_be_picked_up"

//Cyborg traits

#define TRAIT_CHANGELING_ZOMBIE "changelingzombie"
#define TRAIT_RESEARCH_CYBORG "research_cyborg"

/// Cyborgs with unique sprites
Expand Down
15 changes: 15 additions & 0 deletions code/game/objects/items/devices/scanners/health_analyzer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -449,6 +449,21 @@
render_list += death_consequences_status_text
// SKYRAT EDIT END

//BUBBERSTATION EDIT ADDITION - CHANGELING ZOMBIE STUFF
var/datum/component/changeling_zombie_infection/cling_infection = target.GetComponent(/datum/component/changeling_zombie_infection)
if(cling_infection)
if(cling_infection.zombified)
render_list += span_userdanger("Classified viral infection detected.")
render_list += "<span class='alert ml-1'>Treatment Guide: Euthanasia.</span>"
else
render_list += span_userdanger("Classified viral infection detected.")
if(cling_infection.was_changeling_husked)
render_list += "<span class='alert ml-1'>Treatment Guide: Apply [SYNTHFLESH_LING_UNHUSK_AMOUNT]u of synthflesh or inject rezadone.</span>"
else
render_list += "<span class='alert ml-1'>Treatment Guide: Wait until patient receives more than [CHANGELING_ZOMBIE_TOXINS_THRESHOLD_TO_CURE] units of toxin damage to expose the infection from the incubation stage, then treat toxins to cure.</span>"
render_list += "<span class='alert ml-1'>Patient's infection is currently <b><i>[cling_infection.can_cure ? "EXPOSED" : "INCUBATING"]</i></b>.</span>"
//BUBBERSTATION EDIT END

if(tochat)
to_chat(user, examine_block(jointext(render_list, "")), trailing_newline = FALSE, type = MESSAGE_TYPE_INFO)
else
Expand Down
16 changes: 10 additions & 6 deletions code/modules/clothing/head/tinfoilhat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
armor_type = /datum/armor/costume_foilhat
equip_delay_other = 140
clothing_flags = ANTI_TINFOIL_MANEUVER
var/datum/brain_trauma/mild/phobia/conspiracies/paranoia
// var/datum/brain_trauma/mild/phobia/conspiracies/paranoia BUBBERSTATION CHANGE, REMOVES PARANOIA
var/warped = FALSE
interaction_flags_mouse_drop = NEED_HANDS

Expand All @@ -24,23 +24,25 @@
/datum/component/anti_magic, \
antimagic_flags = MAGIC_RESISTANCE_MIND, \
inventory_flags = ITEM_SLOT_HEAD, \
charges = 6, \
charges = 1000, \
drain_antimagic = CALLBACK(src, PROC_REF(drain_antimagic)), \
expiration = CALLBACK(src, PROC_REF(warp_up)) \
)
) //BUBBERSTATION CHANGE: NEAR-INFINITE CHARGES (6 TO 1000)


/obj/item/clothing/head/costume/foilhat/equipped(mob/living/carbon/human/user, slot)
. = ..()
if(!(slot & ITEM_SLOT_HEAD) || warped)
return
/* BUBBERSTATION CHANGE START: REMOVES PARANOIA
if(paranoia)
QDEL_NULL(paranoia)
paranoia = new()
BUBBERSTATION CHANGE END: REMOVES PARANOIA */

RegisterSignal(user, COMSIG_HUMAN_SUICIDE_ACT, PROC_REF(call_suicide))

user.gain_trauma(paranoia, TRAUMA_RESILIENCE_MAGIC)
// user.gain_trauma(paranoia, TRAUMA_RESILIENCE_MAGIC ) BUBBERSTATION CHANGE: REMOVES PARANOIA
to_chat(user, span_warning("As you don the foiled hat, an entire world of conspiracy theories and seemingly insane ideas suddenly rush into your mind. What you once thought unbelievable suddenly seems.. undeniable. Everything is connected and nothing happens just by accident. You know too much and now they're out to get you. "))

/obj/item/clothing/head/costume/foilhat/mouse_drop_dragged(atom/over_object, mob/user)
Expand All @@ -54,8 +56,10 @@

/obj/item/clothing/head/costume/foilhat/dropped(mob/user)
. = ..()
/* BUBBERSTATION CHANGE START: REMOVES PARANOIA
if(paranoia)
QDEL_NULL(paranoia)
*/
UnregisterSignal(user, COMSIG_HUMAN_SUICIDE_ACT)

/// When the foilhat is drained an anti-magic charge.
Expand All @@ -67,13 +71,13 @@
desc = "A badly warped up hat. Quite unprobable this will still work against any of fictional and contemporary dangers it used to."
warped = TRUE
clothing_flags &= ~ANTI_TINFOIL_MANEUVER
if(!isliving(loc) || !paranoia)
if(!isliving(loc)) //BUBBERSTATION CHANGE, REMOVES PARANOIA
return
var/mob/living/target = loc
UnregisterSignal(target, COMSIG_HUMAN_SUICIDE_ACT)
if(target.get_item_by_slot(ITEM_SLOT_HEAD) != src)
return
QDEL_NULL(paranoia)
// QDEL_NULL(paranoia) BUBBERSTATION CHANGE, REMOVES PARANOIA
if(target.stat < UNCONSCIOUS)
to_chat(target, span_warning("Your zealous conspirationism rapidly dissipates as the donned hat warps up into a ruined mess. All those theories starting to sound like nothing but a ridicolous fanfare."))

Expand Down
1 change: 1 addition & 0 deletions code/modules/mob/living/status_procs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -517,6 +517,7 @@
ADD_TRAIT(src, TRAIT_DISFIGURED, "husk")
update_body()
RegisterSignal(src, SIGNAL_ADDTRAIT(TRAIT_UNHUSKABLE), PROC_REF(became_unhuskable))
return TRUE //MODULAR ZUBBERS CHANGE: RETURN TRUE

/// Called when we become unhuskable while already husked
/mob/living/proc/became_unhuskable()
Expand Down
1 change: 1 addition & 0 deletions code/modules/reagents/reagent_containers/cups/drinks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
B.mimic_broken(src, target, break_top)
qdel(src)
target.Bumped(B)
return B //BUBBERSTATION CHANGE: RETURNS THE BROKEN BOTTLE.

/obj/item/reagent_containers/cup/glass/bullet_act(obj/projectile/P)
. = ..()
Expand Down
5 changes: 5 additions & 0 deletions html/changelogs/AutoChangeLog-pr-1557.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
author: "BurgerBB"
delete-after: True
changes:
- rscadd: "Adds Changeling Zombies to the game. This is meant to replace RNA zombies and Tumor Zombies as a balanced, updated, and functional alternative."
- rscadd: "Being husked/absorbed from a regular Changeling turns you into an unaligned/unaffiliated changeling zombie. Note that this also cures your husk infection once turned."
4 changes: 4 additions & 0 deletions html/changelogs/AutoChangeLog-pr-1613.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
author: "BurgerBB"
delete-after: True
changes:
- balance: "Wearing the tinfoil hat no longer gives you a phobia of conspiracy theories. Tinfoil hat is no longer single use and will work indefinitely until removed."
4 changes: 4 additions & 0 deletions html/changelogs/AutoChangeLog-pr-1638.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
author: "BurgerBB"
delete-after: True
changes:
- balance: "Adds Monkeydone, a chemical that transforms monkeys into humans. It can be made by mixing 10u Unstable Mutagen + 10u Mutadone + 1u Salt to make 1u Monkeydone."
4 changes: 4 additions & 0 deletions html/changelogs/AutoChangeLog-pr-1727.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
author: "Cecily-C-Catherine"
delete-after: True
changes:
- rscadd: "Added new sprites and code to allow the choosing of sprites"
4 changes: 4 additions & 0 deletions html/changelogs/AutoChangeLog-pr-1742.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
author: "YakumoChen"
delete-after: True
changes:
- bugfix: "Fixes guns being in imports again due to code reversion"
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
/* //BUBBER REMOVAL: Re-removes guns from imports (buy goodies instead)
/datum/armament_entry/company_import/allstar
category = COMPANY_NAME_ALLSTAR_ENERGY
company_bitflag = CARGO_COMPANY_ALLSTAR_ENERGY
Expand Down Expand Up @@ -54,4 +55,4 @@
/datum/armament_entry/company_import/allstar/experimental_energy/tesla_cannon
item_type = /obj/item/gun/energy/tesla_cannon

*/
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@

/datum/armament_entry/company_import/micron/rifle
subcategory = ARMAMENT_SUBCATEGORY_SPECIAL

/*
/datum/armament_entry/company_import/micron/rifle/mcr
item_type = /obj/item/gun/microfusion/mcr01
cost = PAYCHECK_COMMAND * 4

*/ //BUBBER REMOVAL - No import guns

/datum/armament_entry/company_import/micron/ammo
subcategory = ARMAMENT_SUBCATEGORY_AMMO
Expand Down

This file was deleted.

9 changes: 9 additions & 0 deletions modular_zubbers/code/modules/borgs/code/robot_defines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,34 +6,43 @@
#define CYBORG_ICON_CLOWN_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_clown.dmi'

#define CYBORG_ICON_MED_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_med.dmi'
#define CYBORG_ICON_MED_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_med.dmi'
#define CYBORG_ICON_MED_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_med.dmi'

#define CYBORG_ICON_CARGO_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_cargo.dmi'
#define CYBORG_ICON_CARGO_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_cargo.dmi'
#define CYBORG_ICON_CARGO_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_cargo.dmi'

#define CYBORG_ICON_SEC_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_sec.dmi'
#define CYBORG_ICON_SEC_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_sec.dmi'
#define CYBORG_ICON_SEC_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_sec.dmi'

#define CYBORG_ICON_ENG_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_eng.dmi'
#define CYBORG_ICON_ENG_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_eng.dmi'
#define CYBORG_ICON_ENG_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_eng.dmi'

#define CYBORG_ICON_PEACEKEEPER_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_pk.dmi'
#define CYBORG_ICON_PEACEKEEPER_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_pk.dmi'
#define CYBORG_ICON_PEACEKEEPER_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_pk.dmi'

#define CYBORG_ICON_SERVICE_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_serv.dmi'
#define CYBORG_ICON_SERVICE_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_serv.dmi'
#define CYBORG_ICON_SERVICE_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_serv.dmi'

#define CYBORG_ICON_MINING_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_mine.dmi'
#define CYBORG_ICON_MINING_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_mine.dmi'
#define CYBORG_ICON_MINING_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_mine.dmi'

#define CYBORG_ICON_JANI_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_jani.dmi'
#define CYBORG_ICON_JANI_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_jani.dmi'
#define CYBORG_ICON_JANI_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_jani.dmi'

#define CYBORG_ICON_SYNDIE_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_syndie.dmi'
#define CYBORG_ICON_SYNDIE_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_syndie.dmi'
#define CYBORG_ICON_SYNDIE_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_syndie.dmi'

#define CYBORG_ICON_NINJA_WIDE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/widerobot_ninja.dmi'
#define CYBORG_ICON_NINJA_TALL_BUBBER 'modular_zubbers/code/modules/borgs/sprites/tallrobot_ninja.dmi'
#define CYBORG_ICON_NINJA_LARGE_BUBBER 'modular_zubbers/code/modules/borgs/sprites/largerobot_ninja.dmi'

#define CYBORG_ICON_TYPE_RAPTOR "raptor"
Expand Down
Loading

0 comments on commit fcf6923

Please sign in to comment.