Skip to content

Commit

Permalink
Removes Clone Damage (tgstation#80109)
Browse files Browse the repository at this point in the history
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

Does what it says on the tin. We don't have any "special" sources of
clone damage left in the game, most of them are rather trivial so I
bunched them together into this PR.

Notable things removed:
- Clonexadone, because its entire thing was centered around clone damage
- Decloner gun, it's also centered around cloning damage, I couldn't
think of a replacement mechanic and nobody uses it anyways
- Everything else already dealt clone damage as a side (rainbow knife
deals a random damage type for example), so these sources were removed

<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

## Why It's Good For The Game

Consider the four sources of normal damage that you can get: Brute,
Burn, Toxins and Oxygen. These four horsemen of the apocalypse are very
well put together and it's no surprise that they are in the game, as you
can fit any way of damaging a mob into them. Getting beaten to death by
a security officer? Brute damage. Running around on fire? Burn damage.
Poisoned or irradiated? Toxin damage. Suffocating in space? Brute, burn
and oxygen damage. Technically there's also stamina damage but that's
its own ballpark and it also makes sense why we have a damage number for
it.

Picture this now: We have this cool mechanic called "clone pods" where
you can magically revive dead people with absolute ease. We don't want
it to be for free though, it comes at a cost. This cost is clone damage,
and it serves to restrain people from abusing cloning.

Fast forward time a bit and cloning is now removed from the game. What
stays with us is a damage number that is intrinsically tied to the
context of a removed feature. It was a good idea that we had it for that
feature at the time, but now it just sits there. It's the odd one out
from all the other damage types. You can easily explain why your blade
dealt brute damage, but how are you going to fit clone damage into any
context without also becoming extremely specific?

My point is: **clone damage is conceptually a flawed mechanic because it
is too specific**. That is the major issue why no one uses it, and why
that makes it unworthy of being a damage stat.
Don't take my word for it though, because a while ago we only had a
handful of sources for this damage type in the game. And in most of the
rounds where you saw this damage, it came from only one department. It's
not worthwhile to keep it around as a damage number. People also didn't
know what to do with this damage type, so we currently have two ways of
healing clone damage: Cryotubes as a roundstart way of healing clone
damage and Rezadone, which instantly sets your clone damage to 0 on the
first tick. As a medical doctor, when was the last time you saw someone
come in with clone damage and thought to yourself, "Oh, this person has
clone damage, I cannot wait to heal them!" ?

Now we have replacements for these clone damage sources. Slimes? Slime
status effect that deals brute instead of clone. Cosmic heretics? Random
organ damage, because their mechanics are already pretty fleshed out.
Decloning virus? The virus operated as a "ticking timebomb" which used
cloning damage as the timer, so it has been reworked to not use clone
damage. What remains after all this is now a basically unused damage
type. Every specific situation that used clone damage is now relying on
another damage type. Now it's time to put clone damage to rest once and
for all.

Sure, you can technically add some form of cellular degradation in the
future, but it shouldn't be a damage number. The idea of your cells
being degraded is a cool concept, don't get me wrong, but make it a
status effect or maybe even a wound for that matter.

<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->

## Changelog

<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and it's effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->

:cl:
del: Removed clone damage.
del: Removed the decloner gun.
del: Removed clonexadone.
/🆑

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
  • Loading branch information
distributivgesetz authored Dec 4, 2023
1 parent 109cd2d commit 274eb2a
Show file tree
Hide file tree
Showing 126 changed files with 170 additions and 491 deletions.
13 changes: 10 additions & 3 deletions SQL/database_changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,26 @@ Any time you make a change to the schema files, remember to increment the databa

Make sure to also update `DB_MAJOR_VERSION` and `DB_MINOR_VERSION`, which can be found in `code/__DEFINES/subsystem.dm`.

The latest database version is 5.25; The query to update the schema revision table is:
The latest database version is 5.26; The query to update the schema revision table is:

```sql
INSERT INTO `schema_revision` (`major`, `minor`) VALUES (5, 25);
INSERT INTO `schema_revision` (`major`, `minor`) VALUES (5, 26);
```
or

```sql
INSERT INTO `SS13_schema_revision` (`major`, `minor`) VALUES (5, 25);
INSERT INTO `SS13_schema_revision` (`major`, `minor`) VALUES (5, 26);
```

In any query remember to add a prefix to the table names if you use one.

-----------------------------------------------------
Version 5.26, 03 December 2023, by distributivgesetz
Set the default value of cloneloss to 0, as it's obsolete and it won't be set by blackbox anymore.
```sql
ALTER TABLE `death` MODIFY COLUMN `cloneloss` SMALLINT(5) UNSIGNED DEFAULT '0';
```

-----------------------------------------------------
Version 5.25, 27 September 2023, by Jimmyl
Removes the text_adventures table because it is no longer used
Expand Down
2 changes: 1 addition & 1 deletion SQL/tgstation_schema.sql
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ CREATE TABLE `death` (
`fireloss` smallint(5) unsigned NOT NULL,
`oxyloss` smallint(5) unsigned NOT NULL,
`toxloss` smallint(5) unsigned NOT NULL,
`cloneloss` smallint(5) unsigned NOT NULL,
`cloneloss` smallint(5) unsigned DEFAULT '0',
`staminaloss` smallint(5) unsigned NOT NULL,
`last_words` varchar(255) DEFAULT NULL,
`suicide` tinyint(1) NOT NULL DEFAULT '0',
Expand Down
2 changes: 1 addition & 1 deletion SQL/tgstation_schema_prefixed.sql
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ CREATE TABLE `SS13_death` (
`fireloss` smallint(5) unsigned NOT NULL,
`oxyloss` smallint(5) unsigned NOT NULL,
`toxloss` smallint(5) unsigned NOT NULL,
`cloneloss` smallint(5) unsigned NOT NULL,
`cloneloss` smallint(5) unsigned DEFAULT '0',
`staminaloss` smallint(5) unsigned NOT NULL,
`last_words` varchar(255) DEFAULT NULL,
`suicide` tinyint(1) NOT NULL DEFAULT '0',
Expand Down
13 changes: 5 additions & 8 deletions code/__DEFINES/combat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@
#define TOX "toxin"
/// Suffocation.
#define OXY "oxygen"
/// Cellular degredation. Rare and difficult to treat.
#define CLONE "clone"
/// Exhaustion and nonlethal damage.
#define STAMINA "stamina"
/// Brain damage. Should probably be decomissioned and replaced with proper organ damage.
Expand Down Expand Up @@ -56,12 +54,11 @@
#define BRUTELOSS (1<<0)
#define FIRELOSS (1<<1)
#define TOXLOSS (1<<2)
#define CLONELOSS (1<<3)
#define OXYLOSS (1<<4)
#define STAMINALOSS (1<<5)
#define SHAME (1<<6)
#define MANUAL_SUICIDE (1<<7) //suicide_act will do the actual killing.
#define MANUAL_SUICIDE_NONLETHAL (1<<8) //when the suicide is conditionally lethal
#define OXYLOSS (1<<3)
#define STAMINALOSS (1<<4)
#define SHAME (1<<5)
#define MANUAL_SUICIDE (1<<6) //suicide_act will do the actual killing.
#define MANUAL_SUICIDE_NONLETHAL (1<<7) //when the suicide is conditionally lethal

#define EFFECT_STUN "stun"
#define EFFECT_KNOCKDOWN "knockdown"
Expand Down
3 changes: 0 additions & 3 deletions code/__DEFINES/dcs/signals/signals_mob/signals_mob_living.dm
Original file line number Diff line number Diff line change
Expand Up @@ -69,16 +69,13 @@
#define COMSIG_LIVING_ADJUST_OXY_DAMAGE "living_adjust_oxy_damage"
/// Send when toxloss is modified (type, amount, forced)
#define COMSIG_LIVING_ADJUST_TOX_DAMAGE "living_adjust_tox_damage"
/// Send when cloneloss is modified (type, amount, forced)
#define COMSIG_LIVING_ADJUST_CLONE_DAMAGE "living_adjust_clone_damage"
/// Send when staminaloss is modified (type, amount, forced)
#define COMSIG_LIVING_ADJUST_STAMINA_DAMAGE "living_adjust_stamina_damage"

/// List of signals sent when you receive any damage except stamina
#define COMSIG_LIVING_ADJUST_STANDARD_DAMAGE_TYPES list(\
COMSIG_LIVING_ADJUST_BRUTE_DAMAGE,\
COMSIG_LIVING_ADJUST_BURN_DAMAGE,\
COMSIG_LIVING_ADJUST_CLONE_DAMAGE,\
COMSIG_LIVING_ADJUST_OXY_DAMAGE,\
COMSIG_LIVING_ADJUST_TOX_DAMAGE,\
)
Expand Down
33 changes: 15 additions & 18 deletions code/__DEFINES/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -486,7 +486,6 @@

#define DEFAULT_BRUTE_EXAMINE_TEXT "bruising"
#define DEFAULT_BURN_EXAMINE_TEXT "burns"
#define DEFAULT_CLONE_EXAMINE_TEXT "cellular damage"

#define ROBOTIC_BRUTE_EXAMINE_TEXT "denting"
#define ROBOTIC_BURN_EXAMINE_TEXT "charring"
Expand Down Expand Up @@ -900,39 +899,37 @@ GLOBAL_LIST_INIT(layers_to_offset, list(
#define HEAL_TOX (1<<3)
/// Heals all oxyloss.
#define HEAL_OXY (1<<4)
/// Heals all cellular damage.
#define HEAL_CLONE (1<<5)
/// Heals all stamina damage.
#define HEAL_STAM (1<<6)
#define HEAL_STAM (1<<5)
/// Restore all limbs to their initial state.
#define HEAL_LIMBS (1<<7)
#define HEAL_LIMBS (1<<6)
/// Heals all organs from failing.
#define HEAL_ORGANS (1<<8)
#define HEAL_ORGANS (1<<7)
/// A "super" heal organs, this refreshes all organs entirely, deleting old and replacing them with new.
#define HEAL_REFRESH_ORGANS (1<<9)
#define HEAL_REFRESH_ORGANS (1<<8)
/// Removes all wounds.
#define HEAL_WOUNDS (1<<10)
#define HEAL_WOUNDS (1<<9)
/// Removes all brain traumas, not including permanent ones.
#define HEAL_TRAUMAS (1<<11)
#define HEAL_TRAUMAS (1<<10)
/// Removes all reagents present.
#define HEAL_ALL_REAGENTS (1<<12)
#define HEAL_ALL_REAGENTS (1<<11)
/// Removes all non-positive diseases.
#define HEAL_NEGATIVE_DISEASES (1<<13)
#define HEAL_NEGATIVE_DISEASES (1<<12)
/// Restores body temperature back to nominal.
#define HEAL_TEMP (1<<14)
#define HEAL_TEMP (1<<13)
/// Restores blood levels to normal.
#define HEAL_BLOOD (1<<15)
#define HEAL_BLOOD (1<<14)
/// Removes all non-positive mutations (neutral included).
#define HEAL_NEGATIVE_MUTATIONS (1<<16)
#define HEAL_NEGATIVE_MUTATIONS (1<<15)
/// Removes status effects with this flag set that also have remove_on_fullheal = TRUE.
#define HEAL_STATUS (1<<17)
#define HEAL_STATUS (1<<16)
/// Same as above, removes all CC related status effects with this flag set that also have remove_on_fullheal = TRUE.
#define HEAL_CC_STATUS (1<<18)
#define HEAL_CC_STATUS (1<<17)
/// Deletes any restraints on the mob (handcuffs / legcuffs)
#define HEAL_RESTRAINTS (1<<19)
#define HEAL_RESTRAINTS (1<<18)

/// Combination flag to only heal the main damage types.
#define HEAL_DAMAGE (HEAL_BRUTE|HEAL_BURN|HEAL_TOX|HEAL_OXY|HEAL_CLONE|HEAL_STAM)
#define HEAL_DAMAGE (HEAL_BRUTE|HEAL_BURN|HEAL_TOX|HEAL_OXY|HEAL_STAM)
/// Combination flag to only heal things messed up things about the mob's body itself.
#define HEAL_BODY (HEAL_LIMBS|HEAL_ORGANS|HEAL_REFRESH_ORGANS|HEAL_WOUNDS|HEAL_TRAUMAS|HEAL_BLOOD|HEAL_TEMP)
/// Combination flag to heal negative things affecting the mob.
Expand Down
36 changes: 17 additions & 19 deletions code/__DEFINES/reagents.dm
Original file line number Diff line number Diff line change
Expand Up @@ -151,42 +151,40 @@
#define REACTION_TAG_TOXIN (1<<2)
/// This reagent does oxy effects (BOTH damaging and healing)
#define REACTION_TAG_OXY (1<<3)
/// This reagent does clone effects (BOTH damaging and healing)
#define REACTION_TAG_CLONE (1<<4)
/// This reagent primarily heals, or it's supposed to be used for healing (in the case of c2 - they are healing)
#define REACTION_TAG_HEALING (1<<5)
#define REACTION_TAG_HEALING (1<<4)
/// This reagent primarily damages
#define REACTION_TAG_DAMAGING (1<<6)
#define REACTION_TAG_DAMAGING (1<<5)
/// This reagent explodes as a part of it's intended effect (i.e. not overheated/impure)
#define REACTION_TAG_EXPLOSIVE (1<<7)
#define REACTION_TAG_EXPLOSIVE (1<<6)
/// This reagent does things that are unique and special
#define REACTION_TAG_OTHER (1<<8)
#define REACTION_TAG_OTHER (1<<7)
/// This reagent's reaction is dangerous to create (i.e. explodes if you fail it)
#define REACTION_TAG_DANGEROUS (1<<9)
#define REACTION_TAG_DANGEROUS (1<<8)
/// This reagent's reaction is easy
#define REACTION_TAG_EASY (1<<10)
#define REACTION_TAG_EASY (1<<9)
/// This reagent's reaction is difficult/involved
#define REACTION_TAG_MODERATE (1<<11)
#define REACTION_TAG_MODERATE (1<<10)
/// This reagent's reaction is hard
#define REACTION_TAG_HARD (1<<12)
#define REACTION_TAG_HARD (1<<11)
/// This reagent affects organs
#define REACTION_TAG_ORGAN (1<<13)
#define REACTION_TAG_ORGAN (1<<12)
/// This reaction creates a drink reagent
#define REACTION_TAG_DRINK (1<<14)
#define REACTION_TAG_DRINK (1<<13)
/// This reaction has something to do with food
#define REACTION_TAG_FOOD (1<<15)
#define REACTION_TAG_FOOD (1<<14)
/// This reaction is a slime reaction
#define REACTION_TAG_SLIME (1<<16)
#define REACTION_TAG_SLIME (1<<15)
/// This reaction is a drug reaction
#define REACTION_TAG_DRUG (1<<17)
#define REACTION_TAG_DRUG (1<<16)
/// This reaction is a unique reaction
#define REACTION_TAG_UNIQUE (1<<18)
#define REACTION_TAG_UNIQUE (1<<17)
/// This reaction is produces a product that affects reactions
#define REACTION_TAG_CHEMICAL (1<<19)
#define REACTION_TAG_CHEMICAL (1<<18)
/// This reaction is produces a product that affects plants
#define REACTION_TAG_PLANT (1<<20)
#define REACTION_TAG_PLANT (1<<19)
/// This reaction is produces a product that affects plants
#define REACTION_TAG_COMPETITIVE (1<<21)
#define REACTION_TAG_COMPETITIVE (1<<20)

//flags used by holder.dm to locate an reagent
///Direct type
Expand Down
2 changes: 1 addition & 1 deletion code/__DEFINES/subsystems.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
*
* make sure you add an update to the schema_version stable in the db changelog
*/
#define DB_MINOR_VERSION 25
#define DB_MINOR_VERSION 26


//! ## Timing subsystem
Expand Down
2 changes: 0 additions & 2 deletions code/__DEFINES/traits/declarations.dm
Original file line number Diff line number Diff line change
Expand Up @@ -174,8 +174,6 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
#define TRAIT_NO_DNA_SCRAMBLE "no_dna_scramble"
/// Carbons with this trait can eat blood to regenerate their own blood volume, instead of injecting it
#define TRAIT_DRINKS_BLOOD "drinks_blood"
/// Mob is immune to clone (cellular) damage
#define TRAIT_NOCLONELOSS "no_cloneloss"
/// Mob is immune to toxin damage
#define TRAIT_TOXIMMUNE "toxin_immune"
/// Mob is immune to oxygen damage, does not need to breathe
Expand Down
1 change: 0 additions & 1 deletion code/_globalvars/traits/_traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -304,7 +304,6 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_NO_ZOMBIFY" = TRAIT_NO_ZOMBIFY,
"TRAIT_NOBLOOD" = TRAIT_NOBLOOD,
"TRAIT_NOBREATH" = TRAIT_NOBREATH,
"TRAIT_NOCLONELOSS" = TRAIT_NOCLONELOSS,
"TRAIT_NOCRITDAMAGE" = TRAIT_NOCRITDAMAGE,
"TRAIT_NOCRITOVERLAY" = TRAIT_NOCRITOVERLAY,
"TRAIT_NODEATH" = TRAIT_NODEATH,
Expand Down
1 change: 0 additions & 1 deletion code/_globalvars/traits/admin_tooling.dm
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,6 @@ GLOBAL_LIST_INIT(admin_visible_traits, list(
"TRAIT_NO_ZOMBIFY" = TRAIT_NO_ZOMBIFY,
"TRAIT_NOBLOOD" = TRAIT_NOBLOOD,
"TRAIT_NOBREATH" = TRAIT_NOBREATH,
"TRAIT_NOCLONELOSS" = TRAIT_NOCLONELOSS,
"TRAIT_NOCRITDAMAGE" = TRAIT_NOCRITDAMAGE,
"TRAIT_NOCRITOVERLAY" = TRAIT_NOCRITOVERLAY,
"TRAIT_NODEATH" = TRAIT_NODEATH,
Expand Down
7 changes: 3 additions & 4 deletions code/controllers/subsystem/blackbox.dm
Original file line number Diff line number Diff line change
Expand Up @@ -329,15 +329,15 @@ Versioning
first_death["role"] = null
first_death["role"] = L.mind.assigned_role.title
first_death["area"] = "[AREACOORD(L)]"
first_death["damage"] = "<font color='#FF5555'>[L.getBruteLoss()]</font>/<font color='orange'>[L.getFireLoss()]</font>/<font color='lightgreen'>[L.getToxLoss()]</font>/<font color='lightblue'>[L.getOxyLoss()]</font>/<font color='pink'>[L.getCloneLoss()]</font>"
first_death["damage"] = "<font color='#FF5555'>[L.getBruteLoss()]</font>/<font color='orange'>[L.getFireLoss()]</font>/<font color='lightgreen'>[L.getToxLoss()]</font>/<font color='lightblue'>[L.getOxyLoss()]</font>"
first_death["last_words"] = L.last_words

if(!SSdbcore.Connect())
return

var/datum/db_query/query_report_death = SSdbcore.NewQuery({"
INSERT INTO [format_table_name("death")] (pod, x_coord, y_coord, z_coord, mapname, server_ip, server_port, round_id, tod, job, special, name, byondkey, laname, lakey, bruteloss, fireloss, brainloss, oxyloss, toxloss, cloneloss, staminaloss, last_words, suicide)
VALUES (:pod, :x_coord, :y_coord, :z_coord, :map, INET_ATON(:internet_address), :port, :round_id, :time, :job, :special, :name, :key, :laname, :lakey, :brute, :fire, :brain, :oxy, :tox, :clone, :stamina, :last_words, :suicide)
INSERT INTO [format_table_name("death")] (pod, x_coord, y_coord, z_coord, mapname, server_ip, server_port, round_id, tod, job, special, name, byondkey, laname, lakey, bruteloss, fireloss, brainloss, oxyloss, toxloss, staminaloss, last_words, suicide)
VALUES (:pod, :x_coord, :y_coord, :z_coord, :map, INET_ATON(:internet_address), :port, :round_id, :time, :job, :special, :name, :key, :laname, :lakey, :brute, :fire, :brain, :oxy, :tox, :stamina, :last_words, :suicide)
"}, list(
"name" = L.real_name,
"key" = L.ckey,
Expand All @@ -351,7 +351,6 @@ Versioning
"brain" = L.get_organ_loss(ORGAN_SLOT_BRAIN) || BRAIN_DAMAGE_DEATH, //get_organ_loss returns null without a brain but a value is required for this column
"oxy" = L.getOxyLoss(),
"tox" = L.getToxLoss(),
"clone" = L.getCloneLoss(),
"stamina" = L.getStaminaLoss(),
"x_coord" = L.x,
"y_coord" = L.y,
Expand Down
4 changes: 2 additions & 2 deletions code/datums/actions/mobs/defensive_mode.dm
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,15 @@
defence(owner_mob)

/datum/action/cooldown/mob_cooldown/defensive_mode/proc/offence(mob/living/basic/owner_mob)
owner_mob.damage_coeff = list(BRUTE = 1, BURN = 1.25, TOX = 1, CLONE = 1, STAMINA = 1, OXY = 1)
owner_mob.damage_coeff = list(BRUTE = 1, BURN = 1.25, TOX = 1, STAMINA = 1, OXY = 1)
owner_mob.icon_state = initial(owner_mob.icon_state)
owner_mob.icon_living = initial(owner_mob.icon_living)
owner_mob.icon_dead = initial(owner_mob.icon_dead)
owner_mob.remove_movespeed_modifier(modifier_type)
defense_active = FALSE

/datum/action/cooldown/mob_cooldown/defensive_mode/proc/defence(mob/living/basic/owner_mob)
owner_mob.damage_coeff = list(BRUTE = 0.4, BURN = 0.5, TOX = 1, CLONE = 1, STAMINA = 1, OXY = 1)
owner_mob.damage_coeff = list(BRUTE = 0.4, BURN = 0.5, TOX = 1, STAMINA = 1, OXY = 1)
owner_mob.icon_dead = "[owner_mob.icon_state]_d_dead"
owner_mob.icon_state = "[owner_mob.icon_state]_d"
owner_mob.icon_living = "[owner_mob.icon_living]_d"
Expand Down
6 changes: 0 additions & 6 deletions code/datums/components/aura_healing.dm
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,6 @@
/// Stamina damage to heal over a second
var/stamina_heal = 0

/// Amount of cloning damage to heal over a second
var/clone_heal = 0

/// Amount of blood to heal over a second
var/blood_heal = 0

Expand Down Expand Up @@ -57,7 +54,6 @@
toxin_heal = 0,
suffocation_heal = 0,
stamina_heal = 0,
clone_heal = 0,
blood_heal = 0,
organ_healing = null,
simple_heal = 0,
Expand All @@ -76,7 +72,6 @@
src.toxin_heal = toxin_heal
src.suffocation_heal = suffocation_heal
src.stamina_heal = stamina_heal
src.clone_heal = clone_heal
src.blood_heal = blood_heal
src.organ_healing = organ_healing
src.simple_heal = simple_heal
Expand Down Expand Up @@ -126,7 +121,6 @@

candidate.adjustOxyLoss(-suffocation_heal * seconds_per_tick, updating_health = FALSE)
candidate.adjustStaminaLoss(-stamina_heal * seconds_per_tick, updating_stamina = FALSE)
candidate.adjustCloneLoss(-clone_heal * seconds_per_tick, updating_health = FALSE)

for (var/organ in organ_healing)
candidate.adjustOrganLoss(organ, -organ_healing[organ] * seconds_per_tick)
Expand Down
4 changes: 0 additions & 4 deletions code/datums/components/crafting/guncrafting.dm
Original file line number Diff line number Diff line change
Expand Up @@ -87,10 +87,6 @@
name = "particle acceleration rifle part kit (lethal)"
desc = "The coup de grace of guncrafting. This suitcase contains the highly experimental rig for a particle acceleration rifle. Requires an energy gun, a stabilized flux anomaly and a stabilized gravity anomaly."

/obj/item/weaponcrafting/gunkit/decloner
name = "decloner part kit (lethal)"
desc = "An uttery baffling array of gun parts and technology that somehow turns a laser gun into a decloner. Haircut not included."

/obj/item/weaponcrafting/gunkit/ebow
name = "energy crossbow part kit (less lethal)"
desc = "Highly illegal weapons refurbishment kit that allows you to turn the standard proto-kinetic accelerator into a near-duplicate energy crossbow. Almost like the real thing!"
Expand Down
16 changes: 0 additions & 16 deletions code/datums/components/crafting/ranged_weapon.dm
Original file line number Diff line number Diff line change
Expand Up @@ -140,22 +140,6 @@
..()
blacklist += subtypesof(/obj/item/gun/energy/laser)

/datum/crafting_recipe/decloner
name = "Biological Demolecularisor"
result = /obj/item/gun/energy/decloner
reqs = list(
/obj/item/gun/energy/laser = 1,
/obj/item/weaponcrafting/gunkit/decloner = 1,
/datum/reagent/baldium = 30,
/datum/reagent/toxin/mutagen = 4,
)
time = 10 SECONDS
category = CAT_WEAPON_RANGED

/datum/crafting_recipe/decloner/New()
..()
blacklist += subtypesof(/obj/item/gun/energy/laser)

/datum/crafting_recipe/teslacannon
name = "Tesla Cannon"
result = /obj/item/gun/energy/tesla_cannon
Expand Down
6 changes: 0 additions & 6 deletions code/datums/components/damage_aura.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,6 @@
/// Stamina damage to damage over a second
var/stamina_damage = 0

/// Amount of cloning damage to damage over a second
var/clone_damage = 0

/// Amount of blood to damage over a second
var/blood_damage = 0

Expand All @@ -53,7 +50,6 @@
toxin_damage = 0,
suffocation_damage = 0,
stamina_damage = 0,
clone_damage = 0,
blood_damage = 0,
organ_damage = null,
simple_damage = 0,
Expand All @@ -72,7 +68,6 @@
src.toxin_damage = toxin_damage
src.suffocation_damage = suffocation_damage
src.stamina_damage = stamina_damage
src.clone_damage = clone_damage
src.blood_damage = blood_damage
src.organ_damage = organ_damage
src.simple_damage = simple_damage
Expand Down Expand Up @@ -125,7 +120,6 @@
candidate.adjustToxLoss(toxin_damage * seconds_per_tick, updating_health = FALSE)
candidate.adjustOxyLoss(suffocation_damage * seconds_per_tick, updating_health = FALSE)
candidate.adjustStaminaLoss(stamina_damage * seconds_per_tick, updating_stamina = FALSE)
candidate.adjustCloneLoss(clone_damage * seconds_per_tick, updating_health = FALSE)

for (var/organ in organ_damage)
candidate.adjustOrganLoss(organ, organ_damage[organ] * seconds_per_tick)
Expand Down
Loading

0 comments on commit 274eb2a

Please sign in to comment.