mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 03:27:05 +01:00
Traitor Vamp
This commit is contained in:
+11
-3
@@ -139,7 +139,7 @@
|
||||
"cult",
|
||||
"wizard",
|
||||
"changeling",
|
||||
"vampire",
|
||||
"vampire", // "traitorvamp",
|
||||
"nuclear",
|
||||
"traitor", // "traitorchan",
|
||||
"malfunction",
|
||||
@@ -257,7 +257,7 @@
|
||||
|
||||
/** VAMPIRE ***/
|
||||
text = "vampire"
|
||||
if (ticker.mode.config_tag=="vampire")
|
||||
if (ticker.mode.config_tag=="vampire" || ticker.mode.config_tag=="traitorvamp")
|
||||
text = uppertext(text)
|
||||
text = "<i><b>[text]</b></i>: "
|
||||
if (src in ticker.mode.vampires)
|
||||
@@ -305,7 +305,7 @@
|
||||
|
||||
/** TRAITOR ***/
|
||||
text = "traitor"
|
||||
if (ticker.mode.config_tag=="traitor" || ticker.mode.config_tag=="traitorchan")
|
||||
if (ticker.mode.config_tag=="traitor" || ticker.mode.config_tag=="traitorchan" || ticker.mode.config_tag=="traitorvamp")
|
||||
text = uppertext(text)
|
||||
text = "<i><b>[text]</b></i>: "
|
||||
if (isloyal(H))
|
||||
@@ -375,6 +375,14 @@
|
||||
out += sections["changeling"]+"<br>"
|
||||
sections -= "traitor"
|
||||
sections -= "changeling"
|
||||
|
||||
if (ticker.mode.config_tag == "traitorvamp")
|
||||
if (sections["traitor"])
|
||||
out += sections["traitor"]+"<br>"
|
||||
if (sections["vampire"])
|
||||
out += sections["vampire"]+"<br>"
|
||||
sections -= "traitor"
|
||||
sections -= "vampire"
|
||||
else
|
||||
if (sections[ticker.mode.config_tag])
|
||||
out += sections[ticker.mode.config_tag]+"<br>"
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
config_tag = "traitorchan"
|
||||
traitors_possible = 3 //hard limit on traitors if scaling is turned off
|
||||
restricted_jobs = list("AI", "Cyborg")
|
||||
required_players = 3
|
||||
required_players_secret = 10
|
||||
required_enemies = 2
|
||||
required_players = 0
|
||||
required_players_secret = 0
|
||||
required_enemies = 1 // how many of each type are required
|
||||
recommended_enemies = 3
|
||||
var/protected_species_changeling = list("Machine", "Slime People")
|
||||
|
||||
@@ -24,9 +24,8 @@
|
||||
if((player.mind in possible_changelings) && (player.client.prefs.species in protected_species_changeling))
|
||||
possible_changelings -= player.mind
|
||||
|
||||
if(possible_changelings.len>0)
|
||||
if(possible_changelings.len > 0)
|
||||
var/datum/mind/changeling = pick(possible_changelings)
|
||||
//possible_changelings-=changeling
|
||||
changelings += changeling
|
||||
modePlayer += changelings
|
||||
changeling.restricted_roles = restricted_jobs
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
/datum/game_mode/traitor/vampire
|
||||
name = "traitor+vampire"
|
||||
config_tag = "traitorvamp"
|
||||
traitors_possible = 3 //hard limit on traitors if scaling is turned off
|
||||
restricted_jobs = list("AI", "Cyborg")
|
||||
required_players = 0
|
||||
required_players_secret = 0
|
||||
required_enemies = 1 // how many of each type are required
|
||||
recommended_enemies = 3
|
||||
var/protected_species_vampire = list("Machine")
|
||||
|
||||
/datum/game_mode/traitor/vampire/announce()
|
||||
to_chat(world, "<B>The current game mode is - Traitor+Vampire!</B>")
|
||||
to_chat(world, "<B>There is a Vampire from Space Transylvania on the station along with some syndicate operatives out for their own gain! Do not let the vampire and the traitors succeed!</B>")
|
||||
|
||||
|
||||
/datum/game_mode/traitor/vampire/pre_setup()
|
||||
if(config.protect_roles_from_antagonist)
|
||||
restricted_jobs += protected_jobs
|
||||
|
||||
var/list/datum/mind/possible_vampires = get_players_for_role(ROLE_VAMPIRE)
|
||||
|
||||
for(var/mob/new_player/player in player_list)
|
||||
if((player.mind in possible_vampires) && (player.client.prefs.species in protected_species_vampire))
|
||||
possible_vampires -= player.mind
|
||||
|
||||
if(possible_vampires.len > 0)
|
||||
var/datum/mind/vampire = pick(possible_vampires)
|
||||
vampires += vampire
|
||||
modePlayer += vampires
|
||||
var/datum/mindslaves/slaved = new()
|
||||
slaved.masters += vampire
|
||||
vampire.som = slaved //we MIGT want to mindslave someone
|
||||
vampire.restricted_roles = restricted_jobs
|
||||
return ..()
|
||||
else
|
||||
return 0
|
||||
|
||||
/datum/game_mode/traitor/vampire/post_setup()
|
||||
for(var/datum/mind/vampire in vampires)
|
||||
grant_vampire_powers(vampire.current)
|
||||
vampire.special_role = "Vampire"
|
||||
forge_vampire_objectives(vampire)
|
||||
greet_vampire(vampire)
|
||||
..()
|
||||
@@ -77,6 +77,7 @@ PROBABILITY CHANGELING 3
|
||||
PROBABILITY CULT 4
|
||||
PROBABILITY EXTEND-A-TRAITORMONGOUS 5
|
||||
PROBABILITY TRAITORCHAN 4
|
||||
PROBABILITY TRAITORVAMP 4
|
||||
PROBABILITY BLOB 2
|
||||
PROBABILITY REVOLUTION 0
|
||||
PROBABILITY HEIST 1
|
||||
|
||||
@@ -437,6 +437,7 @@
|
||||
#include "code\game\gamemodes\shadowling\special_shadowling_abilities.dm"
|
||||
#include "code\game\gamemodes\traitor\traitor.dm"
|
||||
#include "code\game\gamemodes\vampire\hud.dm"
|
||||
#include "code\game\gamemodes\vampire\traitor_vamp.dm"
|
||||
#include "code\game\gamemodes\vampire\vampire.dm"
|
||||
#include "code\game\gamemodes\vampire\vampire_powers.dm"
|
||||
#include "code\game\gamemodes\wizard\artefact.dm"
|
||||
|
||||
Reference in New Issue
Block a user