Moved several globals into the config controller, updated eample config appropriately.

This commit is contained in:
Zuhayr
2014-12-25 21:10:30 +10:30
parent 844c795c7a
commit 8978747e53
27 changed files with 187 additions and 180 deletions
+36 -1
View File
@@ -83,6 +83,7 @@
var/limitalienplayers = 0
var/alien_to_human_ratio = 0.5
var/guests_allowed = 1
var/debugparanoid = 0
var/server
@@ -118,6 +119,8 @@
var/use_loyalty_implants = 0
var/welder_vision = 1
//Used for modifying movement speed for mobs.
//Unversal modifiers
var/run_speed = 0
@@ -145,6 +148,8 @@
var/comms_password = ""
var/enter_allowed = 1
var/use_irc_bot = 0
var/irc_bot_host = ""
var/main_irc = ""
@@ -170,6 +175,12 @@
// 15, 45, 70 minutes respectively
var/list/event_delay_upper = list(EVENT_LEVEL_MUNDANE = 9000, EVENT_LEVEL_MODERATE = 27000, EVENT_LEVEL_MAJOR = 42000)
var/aliens_allowed = 0
var/ninjas_allowed = 0
var/abandon_allowed = 1
var/ooc_allowed = 1
var/dooc_allowed = 1
var/dsay_allowed = 1
/datum/configuration/New()
var/list/L = typesof(/datum/game_mode) - /datum/game_mode
@@ -367,7 +378,22 @@
config.guest_jobban = 1
if ("guest_ban")
guests_allowed = 0
config.guests_allowed = 0
if ("disable_ooc")
config.ooc_allowed = 0
if ("disable_entry")
config.enter_allowed = 0
if ("disable_dead_ooc")
config.dooc_allowed = 0
if ("disable_dsay")
config.dsay_allowed = 0
if ("disable_respawn")
config.abandon_allowed = 0
if ("usewhitelist")
config.usewhitelist = 1
@@ -381,6 +407,12 @@
if ("traitor_scaling")
config.traitor_scaling = 1
if ("aliens_allowed")
config.aliens_allowed = 1
if ("ninjas_allowed")
config.ninjas_allowed = 1
if ("objectives_disabled")
config.objectives_disabled = 1
@@ -544,6 +576,9 @@
if("expected_round_length")
config.expected_round_length = MinutesToTicks(text2num(value))
if("disable_welder_vision")
config.welder_vision = 0
if("event_custom_start_mundane")
var/values = text2numlist(value, ";")
config.event_first_run[EVENT_LEVEL_MUNDANE] = list("lower" = MinutesToTicks(values[1]), "upper" = MinutesToTicks(values[2]))
-29
View File
@@ -67,14 +67,6 @@ datum/controller/vote
current_votes.Cut()
additional_text.Cut()
/* if(auto_muted && !ooc_allowed)
auto_muted = 0
ooc_allowed = !( ooc_allowed )
world << "<b>The OOC channel has been automatically enabled due to vote end.</b>"
log_admin("OOC was toggled automatically due to vote end.")
message_admins("OOC has been toggled on automatically.")
*/
proc/get_result()
//get the highest number of votes
var/greatest_votes = 0
@@ -262,27 +254,6 @@ datum/controller/vote
if(mode == "gamemode" && going)
going = 0
world << "<font color='red'><b>Round start has been delayed.</b></font>"
/* if(mode == "crew_transfer" && ooc_allowed)
auto_muted = 1
ooc_allowed = !( ooc_allowed )
world << "<b>The OOC channel has been automatically disabled due to a crew transfer vote.</b>"
log_admin("OOC was toggled automatically due to crew_transfer vote.")
message_admins("OOC has been toggled off automatically.")
if(mode == "gamemode" && ooc_allowed)
auto_muted = 1
ooc_allowed = !( ooc_allowed )
world << "<b>The OOC channel has been automatically disabled due to the gamemode vote.</b>"
log_admin("OOC was toggled automatically due to gamemode vote.")
message_admins("OOC has been toggled off automatically.")
if(mode == "custom" && ooc_allowed)
auto_muted = 1
ooc_allowed = !( ooc_allowed )
world << "<b>The OOC channel has been automatically disabled due to a custom vote.</b>"
log_admin("OOC was toggled automatically due to custom vote.")
message_admins("OOC has been toggled off automatically.")
*/
time_remaining = round(config.vote_period/10)
return 1
@@ -70,7 +70,6 @@
/datum/game_mode/traitor/autotraitor/post_setup()
..()
abandon_allowed = 1
traitorcheckloop()
/datum/game_mode/traitor/autotraitor/proc/traitorcheckloop()
+2 -2
View File
@@ -26,7 +26,7 @@
var/eventNumbersToPickFrom = list(1,2,4,5,6,7,8,9,10,11,12,13,14, 15) //so ninjas don't cause "empty" events.
if((world.time/10)>=3600 && toggle_space_ninja && !sent_ninja_to_station)//If an hour has passed, relatively speaking. Also, if ninjas are allowed to spawn and if there is not already a ninja for the round.
if((world.time/10)>=3600 && config.ninjas_allowed && !sent_ninja_to_station)//If an hour has passed, relatively speaking. Also, if ninjas are allowed to spawn and if there is not already a ninja for the round.
eventNumbersToPickFrom += 3
switch(pick(eventNumbersToPickFrom))
if(1)
@@ -74,7 +74,7 @@
del(P)
*/
if(3)
if((world.time/10)>=3600 && toggle_space_ninja && !sent_ninja_to_station)//If an hour has passed, relatively speaking. Also, if ninjas are allowed to spawn and if there is not already a ninja for the round.
if((world.time/10)>=3600 && config.ninjas_allowed && !sent_ninja_to_station)//If an hour has passed, relatively speaking. Also, if ninjas are allowed to spawn and if there is not already a ninja for the round.
space_ninja_arrival()//Handled in space_ninja.dm. Doesn't announce arrival, all sneaky-like.
if(4)
mini_blob_event()
+2 -3
View File
@@ -90,7 +90,6 @@ I decided to scrap round-specific objectives since keeping track of them would r
When I already created about 4 new objectives, this doesn't seem terribly important or needed.
*/
/var/global/toggle_space_ninja = 0//If ninjas can spawn or not.
/var/global/sent_ninja_to_station = 0//If a ninja is already on the station.
var/ninja_selection_id = 1
@@ -437,7 +436,7 @@ As such, it's hard-coded for now. No reason for it not to be, really.
if(!ticker)
alert("Wait until the game starts")
return
if(!toggle_space_ninja)
if(!config.ninjas_allowed)
alert("Space Ninjas spawning is disabled.")
return
@@ -467,7 +466,7 @@ As such, it's hard-coded for now. No reason for it not to be, really.
if(!ticker.mode)
alert("The game hasn't started yet!")
return
if(!toggle_space_ninja)
if(!config.ninjas_allowed)
alert("Space Ninjas spawning is disabled.")
return
if(alert("Are you sure you want to send in a space ninja?",,"Yes","No")=="No")
@@ -181,7 +181,7 @@
usr << "You are unable to access the self-destruct system as you don't control the station yet."
return
if(ticker.mode:explosion_in_progress || ticker.mode:station_was_nuked)
if(ticker.mode.explosion_in_progress || ticker.mode:station_was_nuked)
usr << "The self-destruct countdown is already triggered!"
return
@@ -192,7 +192,7 @@
usr << "\red Self-Destruct sequence initialised!"
ticker.mode:to_nuke_or_not_to_nuke = 0
ticker.mode:explosion_in_progress = 1
ticker.mode.explosion_in_progress = 1
for(var/mob/M in player_list)
M << 'sound/machines/Alarm.ogg'
@@ -235,16 +235,15 @@
R.autosay(msg, AN)
if(abort)
ticker.mode:explosion_in_progress = 0
ticker.mode.explosion_in_progress = 0
set_security_level("red") //Delta's over
return
enter_allowed = 0
if(ticker)
ticker.station_explosion_cinematic(0,null)
if(ticker.mode)
ticker.mode:station_was_nuked = 1
ticker.mode:explosion_in_progress = 0
ticker.mode.explosion_in_progress = 0
return
@@ -389,8 +389,6 @@ obj/machinery/nuclearbomb/proc/nukehack_win(mob/user as mob)
ticker.mode.explosion_in_progress = 1
sleep(100)
enter_allowed = 0
var/off_station = 0
var/turf/bomb_location = get_turf(src)
if(bomb_location && (bomb_location.z in config.station_levels))
+1 -1
View File
@@ -345,7 +345,7 @@ Alien plants should do something if theres a lot of poison
var/status = GROWING //can be GROWING, GROWN or BURST; all mutually exclusive
/obj/effect/alien/egg/New()
if(aliens_allowed)
if(config.aliens_allowed)
..()
spawn(rand(MIN_GROWTH_TIME,MAX_GROWTH_TIME))
Grow()
+11 -11
View File
@@ -20,14 +20,14 @@
return
if(!holder)
if(!ooc_allowed)
src << "\red OOC is globally muted"
if(!config.ooc_allowed)
src << "<span class='danger'>OOC is globally muted.</span>"
return
if(!dooc_allowed && (mob.stat == DEAD))
usr << "\red OOC for dead mobs has been turned off."
if(!config.dooc_allowed && (mob.stat == DEAD))
usr << "<span class='danger'>OOC for dead mobs has been turned off.</span>"
return
if(prefs.muted & MUTE_OOC)
src << "\red You cannot use OOC (muted)."
src << "<span class='danger'>You cannot use OOC (muted).</span>"
return
if(handle_spam_prevention(msg,MUTE_OOC))
return
@@ -85,14 +85,14 @@
return
if(!holder)
if(!ooc_allowed)
src << "\red OOC is globally muted"
if(!config.ooc_allowed)
src << "<span class='danger'>OOC is globally muted.</span>"
return
if(!dooc_allowed && (mob.stat == DEAD))
usr << "\red OOC for dead mobs has been turned off."
if(!config.dooc_allowed && (mob.stat == DEAD))
usr << "<span class='danger'>OOC for dead mobs has been turned off.</span>"
return
if(prefs.muted & MUTE_OOC)
src << "\red You cannot use OOC (muted)."
src << "<span class='danger'>You cannot use OOC (muted).</span>"
return
if(handle_spam_prevention(msg,MUTE_OOC))
return
@@ -106,7 +106,7 @@
var/mob/source = src.mob
var/list/heard = get_mobs_in_view(7, source)
var/display_name = source.key
if(holder && holder.fakekey)
display_name = holder.fakekey
+12 -55
View File
@@ -39,6 +39,8 @@ var/list/paper_blacklist = list("java","onblur","onchange","onclick","ondblclick
"onkeypress","onkeyup","onload","onmousedown","onmousemove","onmouseout","onmouseover", \
"onmouseup","onreset","onselect","onsubmit","onunload")
// The way blocks are handled badly needs a rewrite, this is horrible.
// Too much of a project to handle at the moment, TODO for later.
var/BLINDBLOCK = 0
var/DEAFBLOCK = 0
var/HULKBLOCK = 0
@@ -85,26 +87,13 @@ var/game_version = "Baystation12"
var/changelog_hash = ""
var/game_year = (text2num(time2text(world.realtime, "YYYY")) + 544)
var/datum/air_tunnel/air_tunnel1/SS13_airtunnel = null
var/going = 1.0
var/master_mode = "extended"//"extended"
var/secret_force_mode = "secret" // if this is anything but "secret", the secret rotation will forceably choose this mode
var/datum/engine_eject/engine_eject_control = null
var/host = null
var/aliens_allowed = 0
var/ooc_allowed = 1
var/dsay_allowed = 1
var/dooc_allowed = 1
var/traitor_scaling = 1
//var/goonsay_allowed = 0
var/dna_ident = 1
var/abandon_allowed = 1
var/enter_allowed = 1
var/guests_allowed = 1
var/shuttle_frozen = 0
var/shuttle_left = 0
var/tinted_weldhelh = 1
var/list/jobMax = list()
var/list/bombers = list( )
@@ -136,7 +125,7 @@ var/list/latejoin_cyborg = list()
var/list/prisonwarp = list() //prisoners go to these
var/list/holdingfacility = list() //captured people go here
var/list/xeno_spawn = list()//Aliens spawn at these.
var/list/xeno_spawn = list()//Aliens spawn at ahahthese.
// list/mazewarp = list()
var/list/tdome1 = list()
var/list/tdome2 = list()
@@ -184,59 +173,26 @@ var/datum/nanomanager/nanomanager = new()
// event manager, the manager for events
var/datum/event_manager/event_manager = new()
#define SPEED_OF_LIGHT 3e8 //not exact but hey!
#define SPEED_OF_LIGHT_SQ 9e+16
#define FIRE_DAMAGE_MODIFIER 0.0215 //Higher values result in more external fire damage to the skin (default 0.0215)
#define AIR_DAMAGE_MODIFIER 2.025 //More means less damage from hot air scalding lungs, less = more damage. (default 2.025)
#define INFINITY 1.#INF
#define BACKGROUND_ENABLED 0 // The default value for all uses of set background. Set background can cause gradual lag and is recommended you only turn this on if necessary.
// 1 will enable set background. 0 will disable set background.
//Don't set this very much higher then 1024 unless you like inviting people in to dos your server with message spam
#define MAX_MESSAGE_LEN 1024
#define MAX_PAPER_MESSAGE_LEN 3072
#define MAX_BOOK_MESSAGE_LEN 9216
#define MAX_NAME_LEN 26
#define shuttle_time_in_station 1800 // 3 minutes in the station
#define shuttle_time_to_arrive 6000 // 10 minutes to arrive
#define EVENT_LEVEL_MUNDANE 1
#define EVENT_LEVEL_MODERATE 2
#define EVENT_LEVEL_MAJOR 3
// Suit sensor levels
#define SUIT_SENSOR_OFF 0
#define SUIT_SENSOR_BINARY 1
#define SUIT_SENSOR_VITAL 2
#define SUIT_SENSOR_TRACKING 3
//away missions
//away missions
var/list/awaydestinations = list() //a list of landmarks that the warpgate can take you to
// MySQL configuration
// MySQL configuration
var/sqladdress = "localhost"
var/sqlport = "3306"
var/sqldb = "tgstation"
var/sqllogin = "root"
var/sqlpass = ""
// Feedback gathering sql connection
// Feedback gathering sql connection
var/sqlfdbkdb = "test"
var/sqlfdbklogin = "root"
var/sqlfdbkpass = ""
var/sqllogging = 0 // Should we log deaths, population stats, etc?
// Forum MySQL configuration (for use with forum account/key authentication)
// These are all default values that will load should the forumdbconfig.txt
// file fail to read for whatever reason.
// Forum MySQL configuration (for use with forum account/key authentication)
// These are all default values that will load should the forumdbconfig.txt
// file fail to read for whatever reason.
var/forumsqladdress = "localhost"
var/forumsqlport = "3306"
var/forumsqldb = "tgstation"
@@ -245,8 +201,8 @@ var/forumsqlpass = ""
var/forum_activated_group = "2"
var/forum_authenticated_group = "10"
// For FTP requests. (i.e. downloading runtime logs.)
// However it'd be ok to use for accessing attack logs and such too, which are even laggier.
// For FTP requests. (i.e. downloading runtime logs.)
// However it'd be ok to use for accessing attack logs and such too, which are even laggier.
var/fileaccess_timer = 0
var/custom_event_msg = null
@@ -270,6 +226,7 @@ var/list/cheartstopper = list("potassium_chloride") //this stops the heart when
//Used by robots and robot preferences.
var/list/robot_module_types = list("Standard", "Engineering", "Construction", "Surgeon", "Crisis", "Miner", "Janitor", "Service", "Clerical", "Security")
// Some scary sounds.
var/static/list/scarySounds = list('sound/weapons/thudswoosh.ogg','sound/weapons/Taser.ogg','sound/weapons/armbomb.ogg','sound/voice/hiss1.ogg','sound/voice/hiss2.ogg','sound/voice/hiss3.ogg','sound/voice/hiss4.ogg','sound/voice/hiss5.ogg','sound/voice/hiss6.ogg','sound/effects/Glassbr1.ogg','sound/effects/Glassbr2.ogg','sound/effects/Glassbr3.ogg','sound/items/Welder.ogg','sound/items/Welder2.ogg','sound/machines/airlock.ogg','sound/effects/clownstep1.ogg','sound/effects/clownstep2.ogg')
// Bomb cap!
+1 -1
View File
@@ -5,7 +5,7 @@ world/IsBanned(key,address,computer_id)
return ..()
//Guest Checking
if(!guests_allowed && IsGuestKey(key))
if(!config.guests_allowed && IsGuestKey(key))
log_access("Failed Login: [key] - Guests not allowed")
message_admins("\blue Failed Login: [key] - Guests not allowed")
return list("reason"="guest", "desc"="\nReason: Guests not allowed. Please sign in with a byond account.")
+32 -33
View File
@@ -735,8 +735,8 @@ var/global/floorIsLava = 0
set category = "Server"
set desc="Globally Toggles OOC"
set name="Toggle OOC"
ooc_allowed = !( ooc_allowed )
if (ooc_allowed)
config.ooc_allowed = !(config.ooc_allowed)
if (config.ooc_allowed)
world << "<B>The OOC channel has been globally enabled!</B>"
else
world << "<B>The OOC channel has been globally disabled!</B>"
@@ -749,8 +749,8 @@ var/global/floorIsLava = 0
set category = "Server"
set desc="Globally Toggles DSAY"
set name="Toggle DSAY"
dsay_allowed = !( dsay_allowed )
if (dsay_allowed)
config.dsay_allowed = !(config.dsay_allowed)
if (config.dsay_allowed)
world << "<B>Deadchat has been globally enabled!</B>"
else
world << "<B>Deadchat has been globally disabled!</B>"
@@ -760,11 +760,10 @@ var/global/floorIsLava = 0
/datum/admins/proc/toggleoocdead()
set category = "Server"
set desc="Toggle dis bitch"
set desc="Toggle Dead OOC."
set name="Toggle Dead OOC"
dooc_allowed = !( dooc_allowed )
log_admin("[key_name(usr)] toggled OOC.")
config.dooc_allowed = !( config.dooc_allowed )
log_admin("[key_name(usr)] toggled Dead OOC.")
message_admins("[key_name_admin(usr)] toggled Dead OOC.", 1)
feedback_add_details("admin_verb","TDOOC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -772,9 +771,9 @@ var/global/floorIsLava = 0
set category = "Server"
set desc="Toggle traitor scaling"
set name="Toggle Traitor Scaling"
traitor_scaling = !traitor_scaling
log_admin("[key_name(usr)] toggled Traitor Scaling to [traitor_scaling].")
message_admins("[key_name_admin(usr)] toggled Traitor Scaling [traitor_scaling ? "on" : "off"].", 1)
config.traitor_scaling = !config.traitor_scaling
log_admin("[key_name(usr)] toggled Traitor Scaling to [config.traitor_scaling].")
message_admins("[key_name_admin(usr)] toggled Traitor Scaling [config.traitor_scaling ? "on" : "off"].", 1)
feedback_add_details("admin_verb","TTS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/datum/admins/proc/startnow()
@@ -798,8 +797,8 @@ var/global/floorIsLava = 0
set category = "Server"
set desc="People can't enter"
set name="Toggle Entering"
enter_allowed = !( enter_allowed )
if (!( enter_allowed ))
config.enter_allowed = !(config.enter_allowed)
if (!(config.enter_allowed))
world << "<B>New players may no longer enter the game.</B>"
else
world << "<B>New players may now enter the game.</B>"
@@ -825,13 +824,13 @@ var/global/floorIsLava = 0
set category = "Server"
set desc="Respawn basically"
set name="Toggle Respawn"
abandon_allowed = !( abandon_allowed )
if (abandon_allowed)
config.abandon_allowed = !(config.abandon_allowed)
if(config.abandon_allowed)
world << "<B>You may now respawn.</B>"
else
world << "<B>You may no longer respawn :(</B>"
message_admins("\blue [key_name_admin(usr)] toggled respawn to [abandon_allowed ? "On" : "Off"].", 1)
log_admin("[key_name(usr)] toggled respawn to [abandon_allowed ? "On" : "Off"].")
message_admins("\blue [key_name_admin(usr)] toggled respawn to [config.abandon_allowed ? "On" : "Off"].", 1)
log_admin("[key_name(usr)] toggled respawn to [config.abandon_allowed ? "On" : "Off"].")
world.update_status()
feedback_add_details("admin_verb","TR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -839,18 +838,18 @@ var/global/floorIsLava = 0
set category = "Server"
set desc="Toggle alien mobs"
set name="Toggle Aliens"
aliens_allowed = !aliens_allowed
log_admin("[key_name(usr)] toggled Aliens to [aliens_allowed].")
message_admins("[key_name_admin(usr)] toggled Aliens [aliens_allowed ? "on" : "off"].", 1)
config.aliens_allowed = !config.aliens_allowed
log_admin("[key_name(usr)] toggled Aliens to [config.aliens_allowed].")
message_admins("[key_name_admin(usr)] toggled Aliens [config.aliens_allowed ? "on" : "off"].", 1)
feedback_add_details("admin_verb","TA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/datum/admins/proc/toggle_space_ninja()
set category = "Server"
set desc="Toggle space ninjas spawning."
set name="Toggle Space Ninjas"
toggle_space_ninja = !toggle_space_ninja
log_admin("[key_name(usr)] toggled Space Ninjas to [toggle_space_ninja].")
message_admins("[key_name_admin(usr)] toggled Space Ninjas [toggle_space_ninja ? "on" : "off"].", 1)
config.ninjas_allowed = !config.ninjas_allowed
log_admin("[key_name(usr)] toggled Space Ninjas to [config.ninjas_allowed].")
message_admins("[key_name_admin(usr)] toggled Space Ninjas [config.ninjas_allowed ? "on" : "off"].", 1)
feedback_add_details("admin_verb","TSN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/datum/admins/proc/delay()
@@ -1048,26 +1047,26 @@ var/global/floorIsLava = 0
set category = "Debug"
set desc="Reduces view range when wearing welding helmets"
set name="Toggle tinted welding helmes"
tinted_weldhelh = !( tinted_weldhelh )
if (tinted_weldhelh)
world << "<B>The tinted_weldhelh has been enabled!</B>"
config.welder_vision = !( config.welder_vision )
if (config.welder_vision)
world << "<B>Reduced welder vision has been enabled!</B>"
else
world << "<B>The tinted_weldhelh has been disabled!</B>"
log_admin("[key_name(usr)] toggled tinted_weldhelh.")
message_admins("[key_name_admin(usr)] toggled tinted_weldhelh.", 1)
world << "<B>Reduced welder vision has been disabled!</B>"
log_admin("[key_name(usr)] toggled welder vision.")
message_admins("[key_name_admin(usr)] toggled welder vision.", 1)
feedback_add_details("admin_verb","TTWH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/datum/admins/proc/toggleguests()
set category = "Server"
set desc="Guests can't enter"
set name="Toggle guests"
guests_allowed = !( guests_allowed )
if (!( guests_allowed ))
config.guests_allowed = !(config.guests_allowed)
if (!(config.guests_allowed))
world << "<B>Guests may no longer enter the game.</B>"
else
world << "<B>Guests may now enter the game.</B>"
log_admin("[key_name(usr)] toggled guests game entering [guests_allowed?"":"dis"]allowed.")
message_admins("\blue [key_name_admin(usr)] toggled guests game entering [guests_allowed?"":"dis"]allowed.", 1)
log_admin("[key_name(usr)] toggled guests game entering [config.guests_allowed?"":"dis"]allowed.")
message_admins("\blue [key_name_admin(usr)] toggled guests game entering [config.guests_allowed?"":"dis"]allowed.", 1)
feedback_add_details("admin_verb","TGU") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/datum/admins/proc/output_ai_laws()
+2 -2
View File
@@ -2228,7 +2228,7 @@
if("aliens")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","AL")
if(aliens_allowed)
if(config.aliens_allowed)
new /datum/event/alien_infestation
message_admins("[key_name_admin(usr)] has spawned aliens", 1)
if("spiders")
@@ -2248,7 +2248,7 @@
if("spaceninja")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","SN")
if(toggle_space_ninja)
if(config.ninjas_allowed)
if(space_ninja_arrival())//If the ninja is actually spawned. They may not be depending on a few factors.
message_admins("[key_name_admin(usr)] has sent in a space ninja", 1)
if("carp")
+3 -3
View File
@@ -367,9 +367,9 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
set category = "Server"
set name = "Toggle Aliens"
aliens_allowed = !aliens_allowed
log_admin("[key_name(src)] has turned aliens [aliens_allowed ? "on" : "off"].")
message_admins("[key_name_admin(src)] has turned aliens [aliens_allowed ? "on" : "off"].", 0)
config.aliens_allowed = !config.aliens_allowed
log_admin("[key_name(src)] has turned aliens [config.aliens_allowed ? "on" : "off"].")
message_admins("[key_name_admin(src)] has turned aliens [config.aliens_allowed ? "on" : "off"].", 0)
feedback_add_details("admin_verb","TAL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/client/proc/cmd_admin_grantfullaccess(var/mob/M in mob_list)
+1 -1
View File
@@ -110,7 +110,7 @@
if(byond_version < MIN_CLIENT_VERSION) //Out of date client.
return null
if(!guests_allowed && IsGuestKey(key))
if(!config.guests_allowed && IsGuestKey(key))
alert(src,"This server doesn't allow guest accounts to play. Please go to http://www.byond.com/ and register for a key.","Guest","OK")
del(src)
return
+2 -2
View File
@@ -38,12 +38,12 @@
return total_weight
/datum/event_meta/alien/get_weight(var/list/active_with_role)
if(aliens_allowed)
if(config.aliens_allowed)
return ..(active_with_role)
return 0
/datum/event_meta/ninja/get_weight(var/list/active_with_role)
if(toggle_space_ninja)
if(config.ninjas_allowed)
return ..(active_with_role)
return 0
+2 -2
View File
@@ -89,9 +89,9 @@ var/list/event_last_fired = list()
if(active_with_role["Security"] > 0)
if(!sent_spiders_to_station)
possibleEvents[/datum/event/spider_infestation] = max(active_with_role["Security"], 5) + 5
if(aliens_allowed && !sent_aliens_to_station)
if(config.aliens_allowed && !sent_aliens_to_station)
possibleEvents[/datum/event/alien_infestation] = max(active_with_role["Security"], 5) + 2.5
if(!sent_ninja_to_station && toggle_space_ninja)
if(!sent_ninja_to_station && config.ninjas_allowed)
possibleEvents[/datum/event/space_ninja] = max(active_with_role["Security"], 5)
for(var/event_type in event_last_fired) if(possibleEvents[event_type])
+4 -4
View File
@@ -93,16 +93,16 @@
/mob/proc/emote_dead(var/message)
if(client.prefs.muted & MUTE_DEADCHAT)
src << "\red You cannot send deadchat emotes (muted)."
src << "<span class='danger'>You cannot send deadchat emotes (muted).</span>"
return
if(!(client.prefs.toggles & CHAT_DEAD))
src << "\red You have deadchat muted."
src << "<span class='danger'>You have deadchat muted.</span>"
return
if(!src.client.holder)
if(!dsay_allowed)
src << "\red Deadchat is globally muted"
if(!config.dsay_allowed)
src << "<span class='danger'>Deadchat is globally muted.</span>"
return
+1 -1
View File
@@ -1379,7 +1379,7 @@
if(eye_blurry) client.screen += global_hud.blurry
if(druggy) client.screen += global_hud.druggy
if(tinted_weldhelh)
if(config.welder_vision)
var/found_welder
if(istype(glasses, /obj/item/clothing/glasses/welding))
var/obj/item/clothing/glasses/welding/O = glasses
@@ -38,7 +38,7 @@ var/const/MAX_ACTIVE_TIME = 400
Attach(M)
/obj/item/clothing/mask/facehugger/New()
if(aliens_allowed)
if(config.aliens_allowed)
..()
else
del(src)
@@ -83,7 +83,7 @@
set desc = "Lay an egg to produce huggers to impregnate prey with."
set category = "Abilities"
if(!aliens_allowed)
if(!config.aliens_allowed)
src << "You begin to lay an egg, but hesitate. You suspect it isn't allowed."
verbs -= /mob/living/carbon/human/proc/lay_egg
return
+4 -4
View File
@@ -392,14 +392,14 @@ var/list/slot_equipment_priority = list( \
set name = "Respawn"
set category = "OOC"
if (!( abandon_allowed ))
usr << "\blue Respawn is disabled."
if (!( config.abandon_allowed ))
usr << "<span class='notice'>Respawn is disabled.</span>"
return
if ((stat != 2 || !( ticker )))
usr << "\blue <B>You must be dead to use this!</B>"
usr << "<span class='notice'><B>You must be dead to use this!</B></span>"
return
if (ticker.mode.name == "meteor" || ticker.mode.name == "epidemic") //BS12 EDIT
usr << "\blue Respawn is disabled for this roundtype."
usr << "<span class='notice'>Respawn is disabled for this roundtype.</span>"
return
else
var/deathtime = world.time - src.timeofdeath
+7 -4
View File
@@ -162,8 +162,11 @@
if(href_list["SelectedJob"])
if(!enter_allowed)
usr << "\blue There is an administrative lock on entering the game!"
if(!config.enter_allowed)
usr << "<span class='notice'>There is an administrative lock on entering the game!</span>"
return
else if(ticker && ticker.mode && ticker.mode.explosion_in_progress)
usr << "<span class='danger'>The station is currently exploding. Joining would go poorly.</span>"
return
if(client.prefs.species != "Human")
@@ -293,8 +296,8 @@
if(!ticker || ticker.current_state != GAME_STATE_PLAYING)
usr << "\red The round is either not ready, or has already finished..."
return 0
if(!enter_allowed)
usr << "\blue There is an administrative lock on entering the game!"
if(!config.enter_allowed)
usr << "<span class='notice'>There is an administrative lock on entering the game!</span>"
return 0
if(!IsJobAvailable(rank))
src << alert("[rank] is not available. Please try another.")
+4 -4
View File
@@ -44,16 +44,16 @@
/mob/proc/say_dead(var/message)
if(say_disabled) //This is here to try to identify lag problems
usr << "\red Speech is currently admin-disabled."
usr << "<span class='danger'>Speech is currently admin-disabled.</span>"
return
if(!src.client.holder)
if(!dsay_allowed)
src << "\red Deadchat is globally muted"
if(!config.dsay_allowed)
src << "<span class='danger'>Deadchat is globally muted.</span>"
return
if(client && !(client.prefs.toggles & CHAT_DEAD))
usr << "\red You have deadchat muted."
usr << "<span class='danger'>You have deadchat muted.</span>"
return
say_dead_direct("[pick("complains","moans","whines","laments","blubbers")], <span class='message'>\"[message]\"</span>", src)
+26
View File
@@ -776,3 +776,29 @@ var/list/be_special_flags = list(
//Chemistry
#define CHEM_SYNTH_ENERGY 500 //How much energy does it take to synthesize 1 unit of chemical, in J
#define SPEED_OF_LIGHT 3e8 //not exact but hey!
#define SPEED_OF_LIGHT_SQ 9e+16
#define FIRE_DAMAGE_MODIFIER 0.0215 //Higher values result in more external fire damage to the skin (default 0.0215)
#define AIR_DAMAGE_MODIFIER 2.025 //More means less damage from hot air scalding lungs, less = more damage. (default 2.025)
#define INFINITY 1.#INF
#define BACKGROUND_ENABLED 0 // The default value for all uses of set background. Set background can cause gradual lag and is recommended you only turn this on if necessary.
// 1 will enable set background. 0 will disable set background.
//Don't set this very much higher then 1024 unless you like inviting people in to dos your server with message spam
#define MAX_MESSAGE_LEN 1024
#define MAX_PAPER_MESSAGE_LEN 3072
#define MAX_BOOK_MESSAGE_LEN 9216
#define MAX_NAME_LEN 26
// Event defines.
#define EVENT_LEVEL_MUNDANE 1
#define EVENT_LEVEL_MODERATE 2
#define EVENT_LEVEL_MAJOR 3
// Suit sensor levels
#define SUIT_SENSOR_OFF 0
#define SUIT_SENSOR_BINARY 1
#define SUIT_SENSOR_VITAL 2
#define SUIT_SENSOR_TRACKING 3
+4 -7
View File
@@ -108,8 +108,8 @@ var/world_topic_spam_protect_time = world.timeofday
var/list/s = list()
s["version"] = game_version
s["mode"] = master_mode
s["respawn"] = config ? abandon_allowed : 0
s["enter"] = enter_allowed
s["respawn"] = config.abandon_allowed
s["enter"] = config.enter_allowed
s["vote"] = config.allow_vote_mode
s["ai"] = config.allow_ai
s["host"] = host ? host : null
@@ -264,9 +264,6 @@ var/world_topic_spam_protect_time = world.timeofday
config.load("config/game_options.txt","game_options")
config.loadsql("config/dbconfig.txt")
config.loadforumsql("config/forumdbconfig.txt")
// apply some settings from config..
abandon_allowed = config.respawn
/hook/startup/proc/loadMods()
world.load_mods()
@@ -316,10 +313,10 @@ var/world_topic_spam_protect_time = world.timeofday
else
features += "<b>STARTING</b>"
if (!enter_allowed)
if (!config.enter_allowed)
features += "closed"
features += abandon_allowed ? "respawn" : "no respawn"
features += config.abandon_allowed ? "respawn" : "no respawn"
if (config && config.allow_vote_mode)
features += "vote"
+24
View File
@@ -297,3 +297,27 @@ EVENT_CUSTOM_START_MAJOR 80;100
## designed for environments where you have testers but don't want them
## able to use the more powerful debug options.
#DEBUG_PARANOID
## Uncomment to allow aliens to spawn.
#ALIENS_ALLOWED
## Uncomment to allow xenos to spawn.
#NINJAS_ALLOWED
## Uncomment to disable the restrictive weldervision overlay.
#DISABLE_WELDER_VISION
## Uncomment to prevent anyone from joining the round by default.
#DISABLE_ENTRY
## Uncomment to disable the OOC channel by default.
#DISABLE_OOC
## Uncomment to disable the dead OOC channel by default.
#DISABLE_DEAD_OOC
## Uncomment to disable ghost chat by default.
#DISABLE_DSAY
## Uncomment to disable respawning by default.
#DISABLE_RESPAWN