Fixes bad buds and toxin healing
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
/datum/game_mode
|
||||
var/list/datum/mind/bloodsuckers = list() // List of minds belonging to this game mode.
|
||||
var/list/datum/mind/vassals = list() // List of minds that have been turned into Vassals.
|
||||
var/list/datum/mind/vamphunters = list() // List of minds hunting vampires.
|
||||
//var/list/datum/mind/vamphunters = list() // List of minds hunting vampires. Disabled at the moment
|
||||
var/obj/effect/sunlight/bloodsucker_sunlight // Sunlight Timer. Created on first Bloodsucker assign. Destroyed on last removed Bloodsucker.
|
||||
|
||||
// LISTS //
|
||||
@@ -18,8 +18,8 @@
|
||||
false_report_weight = 1
|
||||
restricted_jobs = list("AI","Cyborg")
|
||||
protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster")
|
||||
required_players = 0
|
||||
required_enemies = 1
|
||||
required_players = 10
|
||||
required_enemies = 2
|
||||
recommended_enemies = 4
|
||||
reroll_friendly = 1
|
||||
enemy_minimum_age = 7
|
||||
@@ -57,8 +57,8 @@
|
||||
log_game("[bloodsucker.key] (ckey) has been selected as a Bloodsucker.")
|
||||
antag_candidates.Remove(bloodsucker) // Apparently you can also write antag_candidates -= bloodsucker
|
||||
|
||||
// FULPSTATION: Assign Hunters (as many as monsters, plus one)
|
||||
assign_monster_hunters(bloodsuckers.len, TRUE, bloodsuckers) // FULP
|
||||
// Assign Hunters (as many as monsters, plus one)
|
||||
//assign_monster_hunters(bloodsuckers.len, TRUE, bloodsuckers) // Disabled for now
|
||||
|
||||
// Do we have enough vamps to continue?
|
||||
return bloodsuckers.len >= required_enemies
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
|
||||
|
||||
/*
|
||||
// Called from game mode pre_setup()
|
||||
/datum/game_mode/proc/assign_monster_hunters(monster_count = 4, guaranteed_hunters = FALSE, list/datum/mind/exclude_from_hunter)
|
||||
|
||||
@@ -47,3 +47,4 @@
|
||||
A.bad_dude = amEvil
|
||||
hunter.add_antag_datum(A)
|
||||
amEvil = FALSE // Every other hunter is just a boring greytider
|
||||
*/
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
|
||||
///Everyone should now be on the station and have their normal gear. This is the place to give the special roles extra things
|
||||
/datum/game_mode/proc/post_setup(report) //Gamemodes can override the intercept report. Passing TRUE as the argument will force a report.
|
||||
finalize_monster_hunters()
|
||||
//finalize_monster_hunters() Disabled for now
|
||||
if(!report)
|
||||
report = !CONFIG_GET(flag/no_intercept_report)
|
||||
addtimer(CALLBACK(GLOBAL_PROC, .proc/display_roundstart_logout_report), ROUNDSTART_LOGOUT_REPORT_TIME)
|
||||
|
||||
@@ -228,7 +228,7 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \
|
||||
|
||||
/obj/item/stack/sheet/mineral/wood
|
||||
name = "wooden plank"
|
||||
desc = "One can only guess that this is a bunch of wood."
|
||||
desc = "One can only guess that this is a bunch of wood. You might be able to make a stake with this if you use something sharp on it"
|
||||
singular_name = "wood plank"
|
||||
icon_state = "sheet-wood"
|
||||
item_state = "sheet-wood"
|
||||
@@ -240,6 +240,35 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \
|
||||
novariants = TRUE
|
||||
grind_results = list("carbon" = 20)
|
||||
|
||||
|
||||
/obj/item/stack/sheet/mineral/wood/attackby(obj/item/W, mob/user, params) // NOTE: sheet_types.dm is where the WOOD stack lives. Maybe move this over there.
|
||||
// Taken from /obj/item/stack/rods/attackby in [rods.dm]
|
||||
if(W.get_sharpness())
|
||||
user.visible_message("[user] begins whittling [src] into a pointy object.", \
|
||||
"<span class='notice'>You begin whittling [src] into a sharp point at one end.</span>", \
|
||||
"<span class='italics'>You hear wood carving.</span>")
|
||||
// 8 Second Timer
|
||||
if(!do_mob(user, src, 80))
|
||||
return
|
||||
// Make Stake
|
||||
var/obj/item/stake/basic/new_item = new(usr.loc)
|
||||
user.visible_message("[user] finishes carving a stake out of [src].", \
|
||||
"<span class='notice'>You finish carving a stake out of [src].</span>")
|
||||
// Prepare to Put in Hands (if holding wood)
|
||||
var/obj/item/stack/sheet/mineral/wood/N = src
|
||||
var/replace = (user.get_inactive_held_item() == N)
|
||||
// Use Wood
|
||||
N.use(1)
|
||||
// If stack depleted, put item in that hand (if it had one)
|
||||
if (!N && replace)
|
||||
user.put_in_hands(new_item)
|
||||
if(istype(W, merge_type))
|
||||
var/obj/item/stack/S = W
|
||||
if(merge(S))
|
||||
to_chat(user, "<span class='notice'>Your [S.name] stack now contains [S.get_amount()] [S.singular_name]\s.</span>")
|
||||
else
|
||||
. = ..()
|
||||
|
||||
/obj/item/stack/sheet/mineral/wood/Initialize(mapload, new_amount, merge = TRUE)
|
||||
recipes = GLOB.wood_recipes
|
||||
return ..()
|
||||
@@ -695,5 +724,3 @@ new /datum/stack_recipe("paper frame door", /obj/structure/mineral_door/paperfra
|
||||
merge_type = /obj/item/stack/sheet/cotton/durathread
|
||||
pull_effort = 70
|
||||
loom_result = /obj/item/stack/sheet/durathread
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user