[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:
SkyratBot
2021-02-09 00:08:04 +01:00
committed by GitHub
parent e136889e92
commit 0a284aefdd
5 changed files with 20 additions and 18 deletions
+4
View File
@@ -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()
. = ..()
+2 -5
View File
@@ -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