Adds lizard, visitors and intrigue game modes.

This commit is contained in:
Datraen
2016-03-15 23:19:24 -04:00
committed by Dan Kennelty
parent f5aaefbeec
commit 141962b22f
10 changed files with 54 additions and 0 deletions

View File

@@ -81,6 +81,7 @@ var/list/be_special_flags = list(
#define MODE_LOYALIST "loyalist"
#define MODE_MALFUNCTION "malf"
#define MODE_TRAITOR "traitor"
#define MODE_AUTOTRAITOR "autotraitor"
#define DEFAULT_TELECRYSTAL_AMOUNT 12

View File

@@ -63,6 +63,8 @@
var/list/global_objectives = list() // Universal objectives if any.
var/list/candidates = list() // Potential candidates.
var/list/faction_members = list() // Semi-antags (in-round revs, borer thralls)
var/allow_latejoin = 0 //Determines whether or not the game mode will allow for the template to spawn try_latespawn
// ID card stuff.
var/default_access = list()

View File

@@ -33,6 +33,8 @@
return (flags & ANTAG_VOTABLE)
/datum/antagonist/proc/can_late_spawn()
if(!(allow_latejoin))
return 0
update_current_antag_max()
if(get_antag_count() >= cur_max)
return 0

View File

@@ -5,6 +5,10 @@ var/datum/antagonist/traitor/traitors
id = MODE_TRAITOR
protected_jobs = list("Security Officer", "Warden", "Detective", "Internal Affairs Agent", "Head of Security", "Captain")
flags = ANTAG_SUSPICIOUS | ANTAG_RANDSPAWN | ANTAG_VOTABLE
/datum/antagonist/traitor/auto
id = MODE_AUTOTRAITOR
allow_latejoin = 1
/datum/antagonist/traitor/New()
..()

View File

@@ -0,0 +1,12 @@
/datum/game_mode/intrigue
name = "Intrigue"
round_description = "Crewmembers are contacted by external elements while another infiltrates the colony."
extended_round_description = "Traitors and a ninja spawn during this round."
config_tag = "intrigue"
required_players = 15
required_players_secret = 15
required_enemies = 4
end_on_antag_death = 0
antag_tags = list(MODE_NINJA, MODE_AUTOTRAITOR)
round_autoantag = 1
require_all_templates = 1

View File

@@ -0,0 +1,11 @@
/datum/game_mode/lizard
name = "lizard"
round_description = "A space wizard and changelings have invaded the station!"
extended_round_description = "Changelings and a wizard spawn during this round."
config_tag = "lizard"
required_players = 15
required_players_secret = 15
required_enemies = 4
end_on_antag_death = 0
antag_tags = list(MODE_WIZARD, MODE_CHANGELING)
require_all_templates = 1

View File

@@ -0,0 +1,11 @@
/datum/game_mode/visitors
name = "Visitors"
round_description = "A space wizard and a ninja have invaded the station!"
extended_round_description = "A ninja and wizard spawn during this round."
config_tag = "visitors"
required_players = 10
required_players_secret = 10
required_enemies = 2
end_on_antag_death = 0
antag_tags = list(MODE_WIZARD, MODE_NINJA)
require_all_templates = 1

View File

@@ -21,6 +21,7 @@
/datum/game_mode/traitor/auto
name = "autotraitor"
config_tag = "autotraitor"
antag_tags = list(MODE_AUTOTRAITOR)
round_autoantag = 1
required_players_secret = 3
antag_scaling_coeff = 5

View File

@@ -0,0 +1,7 @@
author: Datraen
delete-after: True
changes:
- rscadd: "Added Three New Mixed Gamemodes: Lizard, Changeling + Wizard; Intrigue, Traitors + Ninja; Visitors, Ninja + Wizard."
- tweak: "Created a variable for latespawning antagonist templates, for customization of autospawning antagonists in mixed game modes."

View File

@@ -325,9 +325,12 @@
#include "code\game\gamemodes\meteor\meteors.dm"
#include "code\game\gamemodes\mixed\conflux.dm"
#include "code\game\gamemodes\mixed\infestation.dm"
#include "code\game\gamemodes\mixed\intrigue.dm"
#include "code\game\gamemodes\mixed\lizard.dm"
#include "code\game\gamemodes\mixed\paranoia.dm"
#include "code\game\gamemodes\mixed\traitorling.dm"
#include "code\game\gamemodes\mixed\uprising.dm"
#include "code\game\gamemodes\mixed\visitors.dm"
#include "code\game\gamemodes\ninja\ninja.dm"
#include "code\game\gamemodes\nuclear\nuclear.dm"
#include "code\game\gamemodes\nuclear\pinpointer.dm"