mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 20:47:10 +01:00
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into lavaland_megafauna
# Conflicts: # code/game/gamemodes/cult/runes.dm
This commit is contained in:
@@ -58,6 +58,7 @@
|
||||
|
||||
// if(!traitors.len)
|
||||
// return 0
|
||||
..()
|
||||
return 1
|
||||
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@ var/list/blob_nodes = list()
|
||||
|
||||
if(!infected_crew.len)
|
||||
return 0
|
||||
|
||||
..()
|
||||
return 1
|
||||
|
||||
/datum/game_mode/blob/proc/get_blob_candidates()
|
||||
|
||||
@@ -55,6 +55,7 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon"
|
||||
changeling.restricted_roles = restricted_jobs
|
||||
modePlayer += changelings
|
||||
changeling.special_role = SPECIAL_ROLE_CHANGELING
|
||||
..()
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
@@ -99,6 +99,7 @@ var/global/list/all_cults = list()
|
||||
cult += cultist
|
||||
cultist.restricted_roles = restricted_jobs
|
||||
cultist.special_role = SPECIAL_ROLE_CULTIST
|
||||
..()
|
||||
return (cult.len>0)
|
||||
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
force = 30
|
||||
throwforce = 10
|
||||
sharp = 1
|
||||
edge = 1
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||
|
||||
|
||||
@@ -192,9 +192,6 @@
|
||||
if(total < 15)
|
||||
message_admins("There are [total] players, too little for the mass convert objective!")
|
||||
log_admin("There are [total] players, too little for the mass convert objective!")
|
||||
else if(total > 50)
|
||||
message_admins("There are [total] players, too many for the mass convert objective!")
|
||||
log_admin("There are [total] players, too many for the mass convert objective!")
|
||||
else
|
||||
possible_objectives |= "convert"
|
||||
convert_target = round(total / 2)
|
||||
|
||||
@@ -36,7 +36,10 @@
|
||||
canbypass = 1
|
||||
|
||||
/obj/item/weapon/tome/New()
|
||||
icon_state = ticker.mode.cultdat.tome_icon
|
||||
if(!ticker)
|
||||
icon_state = "tome"
|
||||
else
|
||||
icon_state = ticker.mode.cultdat.tome_icon
|
||||
..()
|
||||
|
||||
/obj/item/weapon/tome/examine(mob/user)
|
||||
@@ -151,7 +154,7 @@
|
||||
text += "<font color='red'><b>Talisman of Stunning</b></font><br>Attacking a target will knock them down for a long duration in addition to inhibiting their speech. \
|
||||
Robotic lifeforms will suffer the effects of a heavy electromagnetic pulse instead.<br><br>"
|
||||
|
||||
text += "<font color='red'><b>Talisman of Armaments</b></font><br>The Talisman of Arming will equip the user with armored robes, a backpack, an eldritch longsword, an empowered bola, and a pair of boots. Any items that cannot \
|
||||
text += "<font color='red'><b>Talisman of Armaments</b></font><br>The Talisman of Arming will equip the user with armored robes, a backpack, an eldritch longsword, an empowered bola. Any items that cannot \
|
||||
be equipped will not be summoned. Attacking a fellow cultist with it will instead equip them.<br><br>"
|
||||
|
||||
text += "<font color='red'><b>Talisman of Horrors</b></font><br>The Talisman of Horror must be applied directly to the victim, it will shatter your victim's mind with visions of the endtimes that may incapitate them.<br><br>"
|
||||
@@ -194,10 +197,9 @@
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/tome/proc/finale_runes_ok(mob/living/user, obj/effect/rune/rune_to_scribe)
|
||||
|
||||
if(ticker.mode.name == "cult")
|
||||
if(!canbypass == 1)//not an admin-tome, check things
|
||||
var/datum/game_mode/cult/cult_mode = ticker.mode
|
||||
var/datum/game_mode/cult/cult_mode = ticker.mode
|
||||
if(GAMEMODE_IS_CULT)
|
||||
if(!canbypass)//not an admin-tome, check things
|
||||
if(!cult_mode.narsie_condition_cleared)
|
||||
to_chat(user, "<span class='warning'>There is still more to do before unleashing [cult_mode.cultdat.entity_name] power!</span>")
|
||||
return 0
|
||||
@@ -210,20 +212,19 @@
|
||||
if(!(CULT_ELDERGOD in cult_mode.objectives) || !(CULT_SLAUGHTER in cult_mode.objectives))
|
||||
to_chat(user, "<span class='warning'>[cult_mode.cultdat.entity_name]'s power does not wish to be unleashed!</span>")
|
||||
return 0
|
||||
var/confirm_final = alert(user, "This is the FINAL step to summon your dietys power, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for Nar-Sie!", "No")
|
||||
if(confirm_final == "No")
|
||||
to_chat(user, "<span class='cult'>You decide to prepare further before scribing the rune.</span>")
|
||||
return
|
||||
else
|
||||
return 1
|
||||
var/confirm_final = alert(user, "This is the FINAL step to summon your dietys power, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for [cult_mode.cultdat.entity_name]!", "No")
|
||||
if(confirm_final == "No" || confirm_final == null)
|
||||
to_chat(user, "<span class='cult'>You decide to prepare further before scribing the rune.</span>")
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
else//the game mode is not cult..but we ARE a cultist...ALL ON THE ADMINBUS
|
||||
if(!canbypass == 1)//not an admin-tome, check things
|
||||
var/confirm_final = alert(user, "This is the FINAL step to summon your dietys power, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for Nar-Sie!", "No")
|
||||
if(confirm_final == "No")
|
||||
to_chat(user, "<span class='cult'>You decide to prepare further before scribing the rune.</span>")
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
var/confirm_final = alert(user, "This is the FINAL step to summon your dietys power, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for [cult_mode.cultdat.entity_name]!", "No")
|
||||
if(confirm_final == "No" || confirm_final == null)
|
||||
to_chat(user, "<span class='cult'>You decide to prepare further before scribing the rune.</span>")
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/tome/proc/scribe_rune(mob/living/user)
|
||||
var/turf/runeturf = get_turf(user)
|
||||
@@ -273,6 +274,8 @@
|
||||
N.icon_state = "shield-cult"
|
||||
N.health = 60
|
||||
shields |= N
|
||||
else
|
||||
return//don't do shit
|
||||
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/dam_zone = pick("head", "chest", "groin", "l_arm", "l_hand", "r_arm", "r_hand", "l_leg", "l_foot", "r_leg", "r_foot")
|
||||
|
||||
@@ -324,6 +324,7 @@ var/list/teleport_runes = list()
|
||||
/obj/effect/rune/convert/invoke(var/list/invokers)
|
||||
var/list/convertees = list()
|
||||
var/turf/T = get_turf(src)
|
||||
|
||||
for(var/mob/living/M in T.contents)
|
||||
if(!iscultist(M) && !isloyal(M))
|
||||
convertees.Add(M)
|
||||
@@ -341,6 +342,7 @@ var/list/teleport_runes = list()
|
||||
log_game("Convert rune failed - convertee could not be converted")
|
||||
return
|
||||
..()
|
||||
|
||||
new_cultist.visible_message("<span class='warning'>[new_cultist] writhes in pain as the markings below them glow a bloody red!</span>", \
|
||||
"<span class='cultlarge'><i>AAAAAAAAAAAAAA-</i></span>")
|
||||
ticker.mode.add_cultist(new_cultist.mind, 1)
|
||||
@@ -473,48 +475,47 @@ var/list/teleport_runes = list()
|
||||
if(used)
|
||||
return
|
||||
var/mob/living/user = invokers[1]
|
||||
if(istype(ticker.mode.name, "cult"))
|
||||
var/datum/game_mode/cult/cult_mode = ticker.mode
|
||||
if(!is_station_level(user.z))
|
||||
message_admins("[key_name_admin(user)] tried to summon Nar-Sie off station")
|
||||
for(var/M in invokers)
|
||||
var/mob/living/L = M
|
||||
to_chat(L, "<span class='cultlarge'><i>\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"</i></span>")
|
||||
if(L.reagents)
|
||||
L.reagents.add_reagent("hell_water", 10)
|
||||
L.Weaken(7)
|
||||
L.Stun(7)
|
||||
fail_invoke()
|
||||
log_game("Summon Nar-Sie rune failed - off station Z level")
|
||||
return
|
||||
if(!cult_mode.eldergod)
|
||||
for(var/M in invokers)
|
||||
to_chat(M, "<span class='warning'>[ticker.mode.cultdat.entity_name] is already on this plane!</span>")
|
||||
log_game("Summon Nar-Sie rune failed - already summoned")
|
||||
return
|
||||
//BEGIN THE SUMMONING
|
||||
used = 1
|
||||
color = rgb(255, 0, 0)
|
||||
..()
|
||||
world << 'sound/effects/dimensional_rend.ogg'
|
||||
to_chat(world, "<span class='cultitalic'><b>The veil... <span class='big'>is...</span> <span class='reallybig'>TORN!!!--</span></b></span>")
|
||||
icon_state = "rune_large_distorted"
|
||||
var/turf/T = get_turf(src)
|
||||
sleep(40)
|
||||
new /obj/singularity/narsie/large(T) //Causes Nar-Sie to spawn even if the rune has been removed
|
||||
cult_mode.eldergod = 0
|
||||
var/datum/game_mode/cult/cult_mode = ticker.mode
|
||||
if(!is_station_level(user.z))
|
||||
message_admins("[key_name_admin(user)] tried to summon an eldritch horror off station")
|
||||
for(var/M in invokers)
|
||||
var/mob/living/L = M
|
||||
to_chat(L, "<span class='cultlarge'><i>\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"</i></span>")
|
||||
if(L.reagents)
|
||||
L.reagents.add_reagent("hell_water", 10)
|
||||
L.Weaken(7)
|
||||
L.Stun(7)
|
||||
fail_invoke()
|
||||
log_game("Summon Nar-Sie rune failed - off station Z level")
|
||||
return
|
||||
if(!cult_mode.eldergod)
|
||||
for(var/M in invokers)
|
||||
to_chat(M, "<span class='warning'>[ticker.mode.cultdat.entity_name] is already on this plane!</span>")
|
||||
log_game("Summon god rune failed - already summoned")
|
||||
return
|
||||
//BEGIN THE SUMMONING
|
||||
used = 1
|
||||
color = rgb(255, 0, 0)
|
||||
..()
|
||||
world << 'sound/effects/dimensional_rend.ogg'
|
||||
to_chat(world, "<span class='cultitalic'><b>The veil... <span class='big'>is...</span> <span class='reallybig'>TORN!!!--</span></b></span>")
|
||||
icon_state = "rune_large_distorted"
|
||||
var/turf/T = get_turf(src)
|
||||
sleep(40)
|
||||
new /obj/singularity/narsie/large(T) //Causes Nar-Sie to spawn even if the rune has been removed
|
||||
cult_mode.eldergod = 0
|
||||
|
||||
/obj/effect/rune/narsie/attackby(obj/I, mob/user, params) //Since the narsie rune takes a long time to make, add logging to removal.
|
||||
if((istype(I, /obj/item/weapon/tome) && iscultist(user)))
|
||||
user.visible_message("<span class='warning'>[user.name] begins erasing the [src]...</span>", "<span class='notice'>You begin erasing the [src]...</span>")
|
||||
if(do_after(user, 50, target = src)) //Prevents accidental erasures.
|
||||
log_game("Summon Narsie rune erased by [key_name(user)] with a tome")
|
||||
log_game("Summon Narsie rune erased by [user.mind.key] (ckey) with a tome")
|
||||
message_admins("[key_name_admin(user)] erased a Narsie rune with a tome")
|
||||
..()
|
||||
return
|
||||
else
|
||||
if(istype(I, /obj/item/weapon/nullrod)) //Begone foul magiks. You cannot hinder me.
|
||||
log_game("Summon Narsie rune erased by [key_name(user)] using a null rod")
|
||||
log_game("Summon Narsie rune erased by [user.mind.key] (ckey) using a null rod")
|
||||
message_admins("[key_name_admin(user)] erased a Narsie rune with a null rod")
|
||||
..()
|
||||
return
|
||||
@@ -546,13 +547,13 @@ var/list/teleport_runes = list()
|
||||
if((istype(I, /obj/item/weapon/tome) && iscultist(user)))
|
||||
user.visible_message("<span class='warning'>[user.name] begins erasing the [src]...</span>", "<span class='notice'>You begin erasing the [src]...</span>")
|
||||
if(do_after(user, 50, target = src)) //Prevents accidental erasures.
|
||||
log_game("Summon demon rune erased by [key_name(user)] with a tome")
|
||||
log_game("Summon demon rune erased by [user.mind.key] (ckey) with a tome")
|
||||
message_admins("[key_name_admin(user)] erased a demon rune with a tome")
|
||||
..()
|
||||
return
|
||||
else
|
||||
if(istype(I, /obj/item/weapon/nullrod)) //Begone foul magiks. You cannot hinder me.
|
||||
log_game("Summon demon rune erased by [key_name(user)] using a null rod")
|
||||
log_game("Summon demon rune erased by [user.mind.key] (ckey) using a null rod")
|
||||
message_admins("[key_name_admin(user)] erased a demon rune with a null rod")
|
||||
..()
|
||||
return
|
||||
@@ -562,56 +563,55 @@ var/list/teleport_runes = list()
|
||||
if(used)
|
||||
return
|
||||
var/mob/living/user = invokers[1]
|
||||
if(istype(ticker.mode.name, "cult"))
|
||||
var/datum/game_mode/cult/cult_mode = ticker.mode
|
||||
if(!(CULT_SLAUGHTER in cult_mode.objectives))
|
||||
message_admins("[key_name_admin(user)] tried to summon demons when the objective was wrong")
|
||||
for(var/M in invokers)
|
||||
var/mob/living/L = M
|
||||
to_chat(L, "<span class='cultlarge'><i>\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"</i></span>")
|
||||
if(L.reagents)
|
||||
L.reagents.add_reagent("hell_water", 10)
|
||||
L.Weaken(7)
|
||||
L.Stun(7)
|
||||
fail_invoke()
|
||||
log_game("Summon Demons rune failed - improper objective")
|
||||
var/datum/game_mode/cult/cult_mode = ticker.mode
|
||||
if(!(CULT_SLAUGHTER in cult_mode.objectives))
|
||||
message_admins("[usr.real_name]([user.ckey]) tried to summon demons when the objective was wrong")
|
||||
for(var/M in invokers)
|
||||
var/mob/living/L = M
|
||||
to_chat(L, "<span class='cultlarge'><i>\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"</i></span>")
|
||||
if(L.reagents)
|
||||
L.reagents.add_reagent("hell_water", 10)
|
||||
L.Weaken(7)
|
||||
L.Stun(7)
|
||||
fail_invoke()
|
||||
log_game("Summon Demons rune failed - improper objective")
|
||||
return
|
||||
if(!is_station_level(user.z))
|
||||
message_admins("[user.real_name]([user.ckey]) tried to summon demons off station")
|
||||
for(var/M in invokers)
|
||||
var/mob/living/L = M
|
||||
to_chat(L, "<span class='cultlarge'><i>\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"</i></span>")
|
||||
if(L.reagents)
|
||||
L.reagents.add_reagent("hell_water", 10)
|
||||
L.Weaken(7)
|
||||
L.Stun(7)
|
||||
fail_invoke()
|
||||
log_game("Summon demons rune failed - off station Z level")
|
||||
return
|
||||
if(cult_mode.demons_summoned)
|
||||
for(var/M in invokers)
|
||||
to_chat(M, "<span class='warning'>Demons are already on this plane!</span>")
|
||||
log_game("Summon Demons rune failed - already summoned")
|
||||
return
|
||||
if(!is_station_level(user.z))
|
||||
message_admins("[key_name_admin(user)] tried to summon demons off station")
|
||||
for(var/M in invokers)
|
||||
var/mob/living/L = M
|
||||
to_chat(L, "<span class='cultlarge'><i>\"YOUR SOUL BURNS WITH YOUR ARROGANCE!!!\"</i></span>")
|
||||
if(L.reagents)
|
||||
L.reagents.add_reagent("hell_water", 10)
|
||||
L.Weaken(7)
|
||||
L.Stun(7)
|
||||
fail_invoke()
|
||||
log_game("Summon demons rune failed - off station Z level")
|
||||
return
|
||||
if(cult_mode.demons_summoned)
|
||||
for(var/M in invokers)
|
||||
to_chat(M, "<span class='warning'>Demons are already on this plane!</span>")
|
||||
log_game("Summon Demons rune failed - already summoned")
|
||||
return
|
||||
//BEGIN THE SLAUGHTER
|
||||
used = 1
|
||||
for(var/mob/living/M in range(1,src))
|
||||
if(iscultist(M))
|
||||
M.say("TOK-LYR RQA-NAP SHA-NEX!!")
|
||||
world << 'sound/effects/dimensional_rend.ogg'
|
||||
to_chat(world, "<span class='userdanger'>A hellish cacaphony bombards from all around as something awful tears through the world...</span>")
|
||||
icon_state = "rune_large_distorted"
|
||||
sleep(55)
|
||||
to_chat(world, "<span class='cultlarge'><i>\"LIBREATE TE EX INFERIS!\"</i></span>")//Fethas note:I COULDN'T HELP IT OKAY?!
|
||||
visible_message("<span class='warning'>[src] melts away into blood, and three horrific figures emerge from within!</span>")
|
||||
var/turf/T = get_turf(src)
|
||||
new /mob/living/simple_animal/slaughter/cult(T)
|
||||
new /mob/living/simple_animal/slaughter/cult(T, pick(NORTH, EAST, SOUTH, WEST))
|
||||
new /mob/living/simple_animal/slaughter/cult(T, pick(NORTHEAST, SOUTHEAST, NORTHWEST, SOUTHWEST))
|
||||
cult_mode.demons_summoned = 1
|
||||
shuttle_master.emergency.request(null, 0.5,null)
|
||||
cult_mode.third_phase()
|
||||
qdel(src)
|
||||
//BEGIN THE SLAUGHTER
|
||||
used = 1
|
||||
for(var/mob/living/M in range(1,src))
|
||||
if(iscultist(M))
|
||||
M.say("TOK-LYR RQA-NAP SHA-NEX!!")
|
||||
world << 'sound/effects/dimensional_rend.ogg'
|
||||
to_chat(world, "<span class='userdanger'>A hellish cacaphony bombards from all around as something awful tears through the world...</span>")
|
||||
icon_state = "rune_large_distorted"
|
||||
sleep(55)
|
||||
to_chat(world, "<span class='cultlarge'><i>\"LIBREATE TE EX INFERIS!\"</i></span>")//Fethas note:I COULDN'T HELP IT OKAY?!
|
||||
visible_message("<span class='warning'>[src] melts away into blood, and three horrific figures emerge from within!</span>")
|
||||
var/turf/T = get_turf(src)
|
||||
new /mob/living/simple_animal/slaughter/cult(T)
|
||||
new /mob/living/simple_animal/slaughter/cult(T, pick(NORTH, EAST, SOUTH, WEST))
|
||||
new /mob/living/simple_animal/slaughter/cult(T, pick(NORTHEAST, SOUTHEAST, NORTHWEST, SOUTHWEST))
|
||||
cult_mode.demons_summoned = 1
|
||||
shuttle_master.emergency.request(null, 0.5,null)
|
||||
cult_mode.third_phase()
|
||||
qdel(src)
|
||||
|
||||
|
||||
//Rite of Resurrection: Requires two corpses. Revives one and gibs the other.
|
||||
|
||||
@@ -272,15 +272,14 @@
|
||||
"<span class='cultitalic'>You speak the words of the talisman, arming yourself!</span>")
|
||||
H.equip_or_collect(new /obj/item/clothing/suit/hooded/cultrobes/alt(user), slot_wear_suit)
|
||||
H.equip_or_collect(new /obj/item/weapon/storage/backpack/cultpack(user), slot_back)
|
||||
H.drop_item()
|
||||
H.put_in_hands(new /obj/item/weapon/melee/cultblade(user))
|
||||
H.put_in_hands(new /obj/item/weapon/restraints/legcuffs/bola/cult(user))
|
||||
|
||||
/obj/item/weapon/paper/talisman/armor/attack(mob/living/target, mob/living/user)
|
||||
if(iscultist(user) && iscultist(target))
|
||||
user.drop_item()
|
||||
invoke(target)
|
||||
qdel(src)
|
||||
invoke(target)
|
||||
return
|
||||
..()
|
||||
|
||||
|
||||
@@ -46,7 +46,6 @@
|
||||
///Checks to see if the game can be setup and ran with the current number of players or whatnot.
|
||||
/datum/game_mode/proc/can_start()
|
||||
var/playerC = 0
|
||||
cultdat = setupcult()
|
||||
for(var/mob/new_player/player in player_list)
|
||||
if((player.client)&&(player.ready))
|
||||
playerC++
|
||||
@@ -63,6 +62,7 @@
|
||||
///pre_setup()
|
||||
///Attempts to select players for special roles the mode might have.
|
||||
/datum/game_mode/proc/pre_setup()
|
||||
cultdat = setupcult()
|
||||
return 1
|
||||
|
||||
|
||||
|
||||
@@ -53,6 +53,7 @@ var/global/list/obj/cortical_stacks = list() //Stacks for 'leave nobody behind'
|
||||
for(var/datum/mind/raider in raiders)
|
||||
raider.assigned_role = "MODE"
|
||||
raider.special_role = SPECIAL_ROLE_RAIDER
|
||||
..()
|
||||
return 1
|
||||
|
||||
/datum/game_mode/heist/pre_setup()
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
for(var/i=1,i<=abductor_teams,i++)
|
||||
if(!make_abductor_team(i))
|
||||
return 0
|
||||
|
||||
..()
|
||||
return 1
|
||||
|
||||
/datum/game_mode/abduction/proc/make_abductor_team(team_number,preset_agent=null,preset_scientist=null)
|
||||
@@ -134,7 +134,7 @@
|
||||
equip_scientist(H,team_number)
|
||||
greet_scientist(scientist,team_number)
|
||||
update_abductor_icons_added(scientist)
|
||||
|
||||
|
||||
return ..()
|
||||
|
||||
//Used for create antag buttons
|
||||
@@ -341,7 +341,7 @@
|
||||
else
|
||||
return 0
|
||||
return 0
|
||||
|
||||
|
||||
/datum/game_mode/proc/remove_abductor(datum/mind/abductor_mind)
|
||||
if(abductor_mind in abductors)
|
||||
ticker.mode.abductors -= abductor_mind
|
||||
@@ -351,7 +351,7 @@
|
||||
to_chat(abductor_mind.current, "<span class='userdanger'>You have been turned into a robot! You are no longer an abductor.</span>")
|
||||
else
|
||||
to_chat(abductor_mind.current, "<span class='userdanger'>You have been brainwashed! You are no longer an abductor.</span>")
|
||||
ticker.mode.update_abductor_icons_added(abductor_mind)
|
||||
ticker.mode.update_abductor_icons_added(abductor_mind)
|
||||
|
||||
/datum/game_mode/proc/update_abductor_icons_added(datum/mind/alien_mind)
|
||||
var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_ABDUCTOR]
|
||||
|
||||
@@ -55,6 +55,7 @@ proc/issyndicate(mob/living/M as mob)
|
||||
|
||||
|
||||
/datum/game_mode/nuclear/pre_setup()
|
||||
..()
|
||||
return 1
|
||||
|
||||
/datum/game_mode/proc/remove_operative(datum/mind/operative_mind)
|
||||
@@ -68,8 +69,8 @@ proc/issyndicate(mob/living/M as mob)
|
||||
to_chat(operative_mind.current, "<span class='userdanger'>You have been turned into a robot! You are no longer a Syndicate operative.</span>")
|
||||
else
|
||||
to_chat(operative_mind.current, "<span class='userdanger'>You have been brainwashed! You are no longer a Syndicate operative.</span>")
|
||||
ticker.mode.update_synd_icons_removed(operative_mind)
|
||||
|
||||
ticker.mode.update_synd_icons_removed(operative_mind)
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -161,8 +162,8 @@ proc/issyndicate(mob/living/M as mob)
|
||||
head_organ.b_hair = color2B(hair_c)
|
||||
M.change_eye_color(color2R(eye_c), color2G(eye_c), color2B(eye_c))
|
||||
M.s_tone = skin_tone
|
||||
head_organ.h_style = random_hair_style(M.gender, head_organ.species.name)
|
||||
head_organ.f_style = random_facial_hair_style(M.gender, head_organ.species.name)
|
||||
head_organ.h_style = random_hair_style(M.gender, head_organ.species.name)
|
||||
head_organ.f_style = random_facial_hair_style(M.gender, head_organ.species.name)
|
||||
M.body_accessory = null
|
||||
M.regenerate_icons()
|
||||
M.update_body()
|
||||
|
||||
@@ -97,6 +97,7 @@ Made by Xhuis
|
||||
shadow.special_role = SPECIAL_ROLE_SHADOWLING
|
||||
shadow.restricted_roles = restricted_jobs
|
||||
shadowlings--
|
||||
..()
|
||||
return 1
|
||||
|
||||
|
||||
|
||||
@@ -32,7 +32,8 @@
|
||||
slaved.masters += vampire
|
||||
vampire.som = slaved //we MIGT want to mindslave someone
|
||||
vampire.restricted_roles = restricted_jobs
|
||||
return ..()
|
||||
..()
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
|
||||
@@ -59,6 +59,7 @@
|
||||
slaved.masters += vampire
|
||||
vampire.som = slaved //we MIGT want to mindslave someone
|
||||
vampire.special_role = SPECIAL_ROLE_VAMPIRE
|
||||
..()
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
/datum/game_mode/wizard/pre_setup()
|
||||
for(var/datum/mind/wiz in wizards)
|
||||
wiz.current.loc = pick(wizardstart)
|
||||
|
||||
..()
|
||||
return 1
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
update_wiz_icons_added(wizard)
|
||||
|
||||
..()
|
||||
|
||||
|
||||
/datum/game_mode/proc/remove_wizard(datum/mind/wizard_mind)
|
||||
if(wizard_mind in wizards)
|
||||
ticker.mode.wizards -= wizard_mind
|
||||
@@ -66,8 +66,8 @@
|
||||
to_chat(wizard_mind.current, "<span class='userdanger'>You have been turned into a robot! You can feel your magical powers fading away...</span>")
|
||||
else
|
||||
to_chat(wizard_mind.current, "<span class='userdanger'>You have been brainwashed! You are no longer a wizard.</span>")
|
||||
ticker.mode.update_wiz_icons_removed(wizard_mind)
|
||||
|
||||
ticker.mode.update_wiz_icons_removed(wizard_mind)
|
||||
|
||||
/datum/game_mode/proc/update_wiz_icons_added(datum/mind/wiz_mind)
|
||||
var/datum/atom_hud/antag/wizhud = huds[ANTAG_HUD_WIZ]
|
||||
wizhud.join_hud(wiz_mind.current)
|
||||
|
||||
@@ -390,6 +390,12 @@
|
||||
go_out()
|
||||
..(severity)
|
||||
|
||||
/obj/machinery/sleeper/narsie_act()
|
||||
go_out()
|
||||
new /obj/effect/gibspawner/generic(get_turf(loc)) //I REPLACE YOUR TECHNOLOGY WITH FLESH!
|
||||
qdel(src)
|
||||
|
||||
|
||||
// ???
|
||||
// This looks cool, although mildly broken, should it be included again?
|
||||
/obj/machinery/sleeper/alter_health(mob/living/M as mob)
|
||||
|
||||
@@ -193,6 +193,11 @@
|
||||
A.blob_act()
|
||||
qdel(src)
|
||||
|
||||
/obj/machinery/bodyscanner/narsie_act()
|
||||
go_out()
|
||||
new /obj/effect/gibspawner/generic(get_turf(loc)) //I REPLACE YOUR TECHNOLOGY WITH FLESH!
|
||||
qdel(src)
|
||||
|
||||
/obj/machinery/bodyscanner/attack_animal(var/mob/living/simple_animal/M)//Stop putting hostile mobs in things guise
|
||||
if(M.environment_smash)
|
||||
M.do_attack_animation(src)
|
||||
|
||||
@@ -451,6 +451,12 @@
|
||||
add_fingerprint(usr)
|
||||
return
|
||||
|
||||
/obj/machinery/atmospherics/unary/cryo_cell/narsie_act()
|
||||
go_out()
|
||||
new /obj/effect/gibspawner/generic(get_turf(loc)) //I REPLACE YOUR TECHNOLOGY WITH FLESH!
|
||||
color = "red"//force the icon to red
|
||||
light_color = LIGHT_COLOR_RED
|
||||
|
||||
/obj/machinery/atmospherics/unary/cryo_cell/verb/move_inside()
|
||||
set name = "Move Inside"
|
||||
set category = "Object"
|
||||
|
||||
@@ -92,6 +92,12 @@
|
||||
A.blob_act()
|
||||
qdel(src)
|
||||
|
||||
/obj/machinery/recharge_station/narsie_act()
|
||||
go_out()
|
||||
new /obj/effect/gibspawner/generic(get_turf(loc)) //I REPLACE YOUR TECHNOLOGY WITH FLESH!
|
||||
qdel(src)
|
||||
|
||||
|
||||
/obj/machinery/recharge_station/attack_animal(var/mob/living/simple_animal/M)//Stop putting hostile mobs in things guise
|
||||
if(M.environment_smash)
|
||||
M.do_attack_animation(src)
|
||||
|
||||
@@ -24,7 +24,7 @@ var/global/list/image/splatter_cache=list()
|
||||
/obj/effect/decal/cleanable/blood/New()
|
||||
..()
|
||||
update_icon()
|
||||
if(ticker && ticker.mode && istype(ticker.mode.name, "cult"))
|
||||
if(GAMEMODE_IS_CULT)
|
||||
var/datum/game_mode/cult/mode_ticker = ticker.mode
|
||||
var/turf/T = get_turf(src)
|
||||
if(T && (is_station_level(T.z)))//F I V E T I L E S
|
||||
@@ -45,7 +45,7 @@ var/global/list/image/splatter_cache=list()
|
||||
dry()
|
||||
|
||||
/obj/effect/decal/cleanable/blood/Destroy()
|
||||
if(ticker.mode && istype(ticker.mode.name, "cult"))
|
||||
if(GAMEMODE_IS_CULT)
|
||||
var/datum/game_mode/cult/mode_ticker = ticker.mode
|
||||
var/turf/T = get_turf(src)
|
||||
if(T && (is_station_level(T.z)))
|
||||
|
||||
@@ -123,6 +123,8 @@
|
||||
|
||||
|
||||
/obj/singularity/narsie/proc/acquire(var/mob/food)
|
||||
if(food == target)
|
||||
return
|
||||
to_chat(target, "<span class='cultlarge'>[uppertext(ticker.mode.cultdat.entity_name)] HAS LOST INTEREST IN YOU</span>")
|
||||
target = food
|
||||
if(ishuman(target))
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 158 KiB After Width: | Height: | Size: 158 KiB |
@@ -1613,7 +1613,6 @@
|
||||
#include "code\modules\mob\living\silicon\robot\robot_damage.dm"
|
||||
#include "code\modules\mob\living\silicon\robot\robot_items.dm"
|
||||
#include "code\modules\mob\living\silicon\robot\robot_modules.dm"
|
||||
#include "code\modules\mob\living\silicon\robot\robot_module_actions.dm"
|
||||
#include "code\modules\mob\living\silicon\robot\robot_movement.dm"
|
||||
#include "code\modules\mob\living\silicon\robot\update_status.dm"
|
||||
#include "code\modules\mob\living\silicon\robot\drone\drone.dm"
|
||||
|
||||
Reference in New Issue
Block a user