mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-21 13:05:36 +01:00
[MIRROR] Plasmaman won't burn or breath in Mafia/Highlander instead of being transformed into a Human. (#3177)
* Plasmaman won't burn or breath in Mafia/Highlander instead of being transformed into a Human. (#56501) NO_BREATH and NO_FIRE are added to Mafia/Highlander players and plasmaman there won't be turned into Humans. Also shifts Ashwalkers above Ethereals and under Lizards in human.dm just too keep it in a pretty order. * Plasmaman won't burn or breath in Mafia/Highlander instead of being transformed into a Human. Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
This commit is contained in:
@@ -410,6 +410,10 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
|
||||
#define LYING_DOWN_TRAIT "lying-down"
|
||||
/// Trait associated to lacking electrical power.
|
||||
#define POWER_LACK_TRAIT "power-lack"
|
||||
/// Trait associated with mafia
|
||||
#define MAFIA_TRAIT "mafia"
|
||||
/// Trait associated with highlander
|
||||
#define HIGHLANDER_TRAIT "highlander"
|
||||
|
||||
// unique trait sources, still defines
|
||||
#define CLONING_POD_TRAIT "cloning-pod"
|
||||
|
||||
@@ -7,16 +7,20 @@
|
||||
|
||||
/datum/antagonist/highlander/apply_innate_effects(mob/living/mob_override)
|
||||
var/mob/living/L = owner.current || mob_override
|
||||
ADD_TRAIT(L, TRAIT_NOGUNS, "highlander")
|
||||
ADD_TRAIT(L, TRAIT_NODISMEMBER, "highlander")
|
||||
ADD_TRAIT(L, TRAIT_SHOCKIMMUNE, "highlander")
|
||||
ADD_TRAIT(L, TRAIT_NOGUNS, HIGHLANDER_TRAIT)
|
||||
ADD_TRAIT(L, TRAIT_NODISMEMBER, HIGHLANDER_TRAIT)
|
||||
ADD_TRAIT(L, TRAIT_SHOCKIMMUNE, HIGHLANDER_TRAIT)
|
||||
ADD_TRAIT(L, TRAIT_NOFIRE, HIGHLANDER_TRAIT)
|
||||
ADD_TRAIT(L, TRAIT_NOBREATH, HIGHLANDER_TRAIT)
|
||||
REMOVE_TRAIT(L, TRAIT_PACIFISM, ROUNDSTART_TRAIT)
|
||||
|
||||
/datum/antagonist/highlander/remove_innate_effects(mob/living/mob_override)
|
||||
var/mob/living/L = owner.current || mob_override
|
||||
REMOVE_TRAIT(L, TRAIT_NOGUNS, "highlander")
|
||||
REMOVE_TRAIT(L, TRAIT_NODISMEMBER, "highlander")
|
||||
REMOVE_TRAIT(L, TRAIT_SHOCKIMMUNE, "highlander")
|
||||
REMOVE_TRAIT(L, TRAIT_NOGUNS, HIGHLANDER_TRAIT)
|
||||
REMOVE_TRAIT(L, TRAIT_NODISMEMBER, HIGHLANDER_TRAIT)
|
||||
REMOVE_TRAIT(L, TRAIT_SHOCKIMMUNE, HIGHLANDER_TRAIT)
|
||||
REMOVE_TRAIT(L, TRAIT_NOFIRE, HIGHLANDER_TRAIT)
|
||||
REMOVE_TRAIT(L, TRAIT_NOBREATH, HIGHLANDER_TRAIT)
|
||||
if(L.has_quirk(/datum/quirk/nonviolent))
|
||||
ADD_TRAIT(L, TRAIT_PACIFISM, ROUNDSTART_TRAIT)
|
||||
|
||||
@@ -32,9 +36,6 @@
|
||||
/datum/antagonist/highlander/on_gain()
|
||||
forge_objectives()
|
||||
owner.special_role = "highlander"
|
||||
var/mob/living/carbon/human/humanlander = owner.current
|
||||
if(ishuman(humanlander) && humanlander.dna.species.outfit_important_for_life) //things that cannot live with the scottish kilt will be owned
|
||||
humanlander.set_species(/datum/species/human)
|
||||
give_equipment()
|
||||
. = ..()
|
||||
|
||||
|
||||
@@ -570,16 +570,13 @@
|
||||
/datum/mafia_controller/proc/create_bodies()
|
||||
for(var/datum/mafia_role/role in all_roles)
|
||||
var/mob/living/carbon/human/H = new(get_turf(role.assigned_landmark))
|
||||
ADD_TRAIT(H, TRAIT_NOFIRE, MAFIA_TRAIT)
|
||||
ADD_TRAIT(H, TRAIT_NOBREATH, MAFIA_TRAIT)
|
||||
H.equipOutfit(player_outfit)
|
||||
H.status_flags |= GODMODE
|
||||
RegisterSignal(H,COMSIG_ATOM_UPDATE_OVERLAYS,.proc/display_votes)
|
||||
var/datum/action/innate/mafia_panel/mafia_panel = new(null,src)
|
||||
mafia_panel.Grant(H)
|
||||
var/client/player_client = GLOB.directory[role.player_key]
|
||||
if(player_client)
|
||||
player_client.prefs.copy_to(H)
|
||||
if(H.dna.species.outfit_important_for_life) //plasmamen
|
||||
H.set_species(/datum/species/human)
|
||||
role.body = H
|
||||
player_role_lookup[H] = role
|
||||
H.key = role.player_key
|
||||
|
||||
@@ -1294,12 +1294,12 @@
|
||||
/mob/living/carbon/human/species/lizard
|
||||
race = /datum/species/lizard
|
||||
|
||||
/mob/living/carbon/human/species/ethereal
|
||||
race = /datum/species/ethereal
|
||||
|
||||
/mob/living/carbon/human/species/lizard/ashwalker
|
||||
race = /datum/species/lizard/ashwalker
|
||||
|
||||
/mob/living/carbon/human/species/ethereal
|
||||
race = /datum/species/ethereal
|
||||
|
||||
/mob/living/carbon/human/species/moth
|
||||
race = /datum/species/moth
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
meat = /obj/item/stack/sheet/mineral/plasma
|
||||
species_traits = list(NOBLOOD,NOTRANSSTING, HAS_BONE)
|
||||
// plasmemes get hard to wound since they only need a severe bone wound to dismember, but unlike skellies, they can't pop their bones back into place
|
||||
inherent_traits = list(TRAIT_ADVANCEDTOOLUSER,TRAIT_RESISTCOLD, TRAIT_RADIMMUNE, TRAIT_GENELESS, TRAIT_NOHUNGER, TRAIT_HARDLY_WOUNDED)
|
||||
inherent_traits = list(TRAIT_ADVANCEDTOOLUSER, TRAIT_RESISTCOLD, TRAIT_RADIMMUNE, TRAIT_GENELESS, TRAIT_NOHUNGER, TRAIT_HARDLY_WOUNDED)
|
||||
|
||||
inherent_biotypes = MOB_HUMANOID|MOB_MINERAL
|
||||
mutantlungs = /obj/item/organ/lungs/plasmaman
|
||||
|
||||
Reference in New Issue
Block a user