mirror of
https://github.com/fulpstation/fulpstation.git
synced 2025-12-09 16:09:15 +00:00
Modularizes a ton of Fulp edits within TG code (#362)
* removes fulp edits from job.dm * crew monitor and basemap * revert * MODULAR BLOODSUCKER HUDS FINALLY * 2 more fulp edits knocked out * re-adds chain of command but modular * moves bloodsucker define to new bloodsucker defines file * chain of command fix * ok good enough * Update mentor_clientprocs.dm
This commit is contained in:
@@ -79,7 +79,6 @@
|
||||
#define ANTAG_HUD_SPACECOP 24
|
||||
#define ANTAG_HUD_HERETIC 25
|
||||
#define ANTAG_HUD_BRAINWASHED 26
|
||||
#define ANTAG_HUD_BLOODSUCKER 27 // Fulp edit - Bloodsuckers //Put this one last! DON'T LEAVE SPACE BETWEEN HUDS!
|
||||
|
||||
// Notification action types
|
||||
#define NOTIFY_JUMP "jump"
|
||||
|
||||
@@ -15,10 +15,6 @@
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/undershirt, GLOB.undershirt_list, GLOB.undershirt_m, GLOB.undershirt_f)
|
||||
//socks
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, GLOB.socks_list)
|
||||
// Fulp edit START - Species
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/beef/eyes, GLOB.eyes_beefman)
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/beef/mouth, GLOB.mouths_beefman)
|
||||
// Fulp edit END
|
||||
//bodypart accessories (blizzard intensifies)
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/body_markings, GLOB.body_markings_list)
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/lizard, GLOB.tails_list_lizard)
|
||||
|
||||
@@ -109,3 +109,5 @@
|
||||
#define ui_vamprank_display "WEST:6,CENTER-2:-5"
|
||||
/// 6 pixels to the right, zero tiles & 5 pixels DOWN.
|
||||
#define ui_sunlight_display "WEST:6,CENTER-0:0"
|
||||
/// Define for Bloodsucker Antag HUDs
|
||||
#define ANTAG_HUD_BLOODSUCKER 1
|
||||
|
||||
@@ -50,15 +50,6 @@ SUBSYSTEM_DEF(job)
|
||||
* See [/datum/controller/subsystem/ticker/proc/equip_characters]
|
||||
*/
|
||||
var/list/chain_of_command = list(
|
||||
// Fulp edit START - Jobs
|
||||
"Captain" = 1,
|
||||
"Head of Personnel" = 2,
|
||||
"Head of Security" = 3,
|
||||
"Research Director" = 4,
|
||||
"Chief Engineer" = 5,
|
||||
"Chief Medical Officer" = 6,
|
||||
"Quartermaster" = 7)
|
||||
/*
|
||||
"Captain" = 1,
|
||||
"Head of Personnel" = 2,
|
||||
"Research Director" = 3,
|
||||
@@ -66,7 +57,6 @@ SUBSYSTEM_DEF(job)
|
||||
"Chief Medical Officer" = 5,
|
||||
"Head of Security" = 6,
|
||||
"Quartermaster" = 7)
|
||||
*/ // Fulp edit END
|
||||
|
||||
/// If TRUE, some player has been assigned Captaincy or Acting Captaincy at some point during the shift and has been given the spare ID safe code.
|
||||
var/assigned_captain = FALSE
|
||||
@@ -791,9 +781,6 @@ SUBSYSTEM_DEF(job)
|
||||
/datum/controller/subsystem/job/proc/setup_job_lists()
|
||||
station_jobs = list("Assistant", "Captain", "Head of Personnel", "Bartender", "Cook", "Botanist", "Quartermaster", "Cargo Technician", \
|
||||
"Shaft Miner", "Clown", "Mime", "Janitor", "Curator", "Lawyer", "Chaplain", "Chief Engineer", "Station Engineer", \
|
||||
// Fulp edit START - Jobs
|
||||
"Brig Physician", "Deputy", "Supply Deputy", "Engineering Deputy", "Medical Deputy", "Science Deputy", "Service Deputy", \
|
||||
// Fulp edit END
|
||||
"Atmospheric Technician", "Chief Medical Officer", "Medical Doctor", "Paramedic", "Chemist", "Geneticist", "Virologist", "Psychologist", \
|
||||
"Research Director", "Scientist", "Roboticist", "Head of Security", "Warden", "Detective", "Security Officer", "Prisoner")
|
||||
|
||||
|
||||
@@ -30,7 +30,6 @@ GLOBAL_LIST_INIT(huds, list(
|
||||
ANTAG_HUD_SPACECOP = new/datum/atom_hud/antag(),
|
||||
ANTAG_HUD_HERETIC = new/datum/atom_hud/antag/hidden(),
|
||||
ANTAG_HUD_BRAINWASHED = new/datum/atom_hud/antag/hidden(),
|
||||
ANTAG_HUD_BLOODSUCKER = new/datum/atom_hud/antag/bloodsucker(), // Fulp edit - Bloodsuckers //This HAS to be last.
|
||||
))
|
||||
|
||||
/datum/atom_hud
|
||||
|
||||
@@ -137,15 +137,6 @@ GLOBAL_DATUM_INIT(crewmonitor, /datum/crewmonitor, new)
|
||||
"Janitor" = 68,
|
||||
"Lawyer" = 69,
|
||||
"Psychologist" = 71,
|
||||
// Fulp edit START - Jobs
|
||||
"Brig Physician" = 18,
|
||||
"Deputy" = 17,
|
||||
"Supply Deputy" = 54,
|
||||
"Engineering Deputy" = 43,
|
||||
"Medical Deputy" = 25,
|
||||
"Science Deputy" = 34,
|
||||
"Service Deputy" = 72,
|
||||
// Fulp edit END
|
||||
// ANYTHING ELSE = UNKNOWN_JOB_ID, Unknowns/custom jobs will appear after civilians, and before assistants
|
||||
"Assistant" = 999,
|
||||
|
||||
|
||||
@@ -101,8 +101,6 @@ GLOBAL_LIST_INIT(blacklisted_builds, list(
|
||||
cmd_admin_pm(href_list["priv_msg"],null)
|
||||
return
|
||||
|
||||
if(mentor_client_procs(href_list)) // Fulp edit - Mentors
|
||||
return
|
||||
switch(href_list["_src_"])
|
||||
if("holder")
|
||||
hsrc = holder
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
/// We're loading Mentors from here
|
||||
/world/New()
|
||||
. = ..()
|
||||
// Load Mentors
|
||||
load_mentors()
|
||||
// Load Fulp race datums
|
||||
make_fulp_datum_references_lists()
|
||||
|
||||
/// Redirect of update_status to use our own via not calling parent.
|
||||
/world/update_status()
|
||||
|
||||
@@ -2,3 +2,19 @@
|
||||
|
||||
/atom
|
||||
var/use_without_hands = FALSE // Now you can use something regardless of having a hand. EX: Beefman Phobetor Tears
|
||||
|
||||
/// We're making Beefmen load their accessories
|
||||
/world/proc/make_fulp_datum_references_lists()
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/beef/eyes, GLOB.eyes_beefman)
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/beef/mouth, GLOB.mouths_beefman)
|
||||
|
||||
/**
|
||||
* # If you're looking to improve this:
|
||||
*
|
||||
* Request a change at the upstream to change
|
||||
* /proc/make_datum_references_lists()
|
||||
* to
|
||||
* /world/proc/make_datum_references_lists()
|
||||
*
|
||||
* This one line change will allow us to use that proc directly, rather than make our own off of /world/New()
|
||||
*/
|
||||
|
||||
@@ -154,10 +154,10 @@
|
||||
// Called when using admin tools to give antag status
|
||||
/datum/antagonist/bloodsucker/admin_add(datum/mind/new_owner, mob/admin)
|
||||
var/levels = input("How many unspent Ranks would you like [new_owner] to have?","Bloodsucker Rank", bloodsucker_level_unspent) as null | num
|
||||
var/msg = " made [key_name_admin(new_owner)] into [name]"
|
||||
var/msg = " made [key_name_admin(new_owner)] into \a [name]"
|
||||
if(!isnull(levels))
|
||||
bloodsucker_level_unspent = levels
|
||||
msg += "with [levels] extra unspent Ranks."
|
||||
msg += " with [levels] extra unspent Ranks."
|
||||
message_admins("[key_name_admin(usr)][msg]")
|
||||
log_admin("[key_name(usr)][msg]")
|
||||
new_owner.add_antag_datum(src)
|
||||
@@ -697,13 +697,13 @@
|
||||
icontype = "masquerade_broken"
|
||||
else
|
||||
icontype = "bloodsucker"
|
||||
var/datum/atom_hud/antag/vamphud = GLOB.huds[ANTAG_HUD_BLOODSUCKER]
|
||||
var/datum/atom_hud/antag/vamphud = GLOB.fulp_huds[ANTAG_HUD_BLOODSUCKER]
|
||||
vamphud.join_hud(owner.current)
|
||||
set_antag_hud(owner.current, icontype)
|
||||
owner.current.hud_list[ANTAG_HUD].icon = image('fulp_modules/main_features/bloodsuckers/icons/bloodsucker_icons.dmi', owner.current, icontype) // Check prepare_huds in mob.dm to see why.
|
||||
|
||||
/datum/antagonist/bloodsucker/proc/update_bloodsucker_icons_removed(datum/mind/m)
|
||||
var/datum/atom_hud/antag/vamphud = GLOB.huds[ANTAG_HUD_BLOODSUCKER]
|
||||
var/datum/atom_hud/antag/vamphud = GLOB.fulp_huds[ANTAG_HUD_BLOODSUCKER]
|
||||
vamphud.leave_hud(owner.current)
|
||||
set_antag_hud(owner.current, null)
|
||||
owner.current.prepare_huds()
|
||||
|
||||
@@ -178,13 +178,13 @@
|
||||
else
|
||||
icontype = "vassal"
|
||||
// This is a copy of Bloodsucker's hud.
|
||||
var/datum/atom_hud/antag/bloodsucker/hud = GLOB.huds[ANTAG_HUD_BLOODSUCKER]
|
||||
var/datum/atom_hud/antag/bloodsucker/hud = GLOB.fulp_huds[ANTAG_HUD_BLOODSUCKER]
|
||||
hud.join_hud(owner.current)
|
||||
set_antag_hud(owner.current, icontype)
|
||||
owner.current.hud_list[ANTAG_HUD].icon = image('fulp_modules/main_features/bloodsuckers/icons/bloodsucker_icons.dmi', owner.current, icontype)
|
||||
|
||||
/datum/antagonist/vassal/proc/update_vassal_icons_removed(datum/mind/vassal)
|
||||
var/datum/atom_hud/antag/hud = GLOB.huds[ANTAG_HUD_BLOODSUCKER]
|
||||
var/datum/atom_hud/antag/hud = GLOB.fulp_huds[ANTAG_HUD_BLOODSUCKER]
|
||||
set_antag_hud(owner.current, null)
|
||||
hud.leave_hud(owner.current)
|
||||
|
||||
|
||||
@@ -1,3 +1,17 @@
|
||||
GLOBAL_LIST_INIT(fulp_huds, list(
|
||||
ANTAG_HUD_BLOODSUCKER = new/datum/atom_hud/antag/bloodsucker(),
|
||||
))
|
||||
|
||||
/client/has_antag_hud()
|
||||
var/adding_hud = !has_fulp_antag_hud()
|
||||
for(var/datum/atom_hud/antag/H in GLOB.fulp_huds) // add antag huds
|
||||
(adding_hud) ? H.add_hud_to(usr) : H.remove_hud_from(usr)
|
||||
. = ..()
|
||||
|
||||
/client/proc/has_fulp_antag_hud()
|
||||
var/datum/atom_hud/A = GLOB.fulp_huds[ANTAG_HUD_TRAITOR]
|
||||
return A.hudusers[mob]
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// TG OVERWRITES
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/// Default Deputy
|
||||
/datum/outfit/job/deputy
|
||||
name = "Deputy"
|
||||
jobtype = /datum/job/fulp/deputy
|
||||
|
||||
backpack = /obj/item/storage/backpack/security
|
||||
@@ -15,12 +16,12 @@
|
||||
uniform = /obj/item/clothing/under/rank/security/officer/mallcop
|
||||
belt = /obj/item/storage/belt/security/deputy
|
||||
shoes = /obj/item/clothing/shoes/laceup
|
||||
l_pocket = /obj/item/flashlight/seclite
|
||||
r_pocket = /obj/item/pda/security
|
||||
l_pocket = /obj/item/pda/security
|
||||
r_pocket = /obj/item/flashlight/seclite
|
||||
|
||||
pda_slot = ITEM_SLOT_LPOCKET
|
||||
id_trim = /datum/id_trim/job/deputy
|
||||
box = /obj/item/storage/box/survival
|
||||
pda_slot = ITEM_SLOT_RPOCKET
|
||||
|
||||
/// Engineering Deputy
|
||||
/datum/outfit/job/deputy/engineering
|
||||
|
||||
@@ -18,3 +18,43 @@
|
||||
for(var/turf/T in shuffle(get_area_turfs(room)))
|
||||
if(!T.is_blocked_turf(TRUE))
|
||||
return T
|
||||
|
||||
/// We're overwriting TG's Chain of Command with our own via /New()
|
||||
/datum/controller/subsystem/job
|
||||
chain_of_command = list(
|
||||
"Captain" = 1,
|
||||
"Head of Personnel" = 2,
|
||||
"Head of Security" = 3,
|
||||
"Research Director" = 4,
|
||||
"Chief Medical Officer" = 5,
|
||||
"Chief Engineer" = 6,
|
||||
"Quartermaster" = 7,
|
||||
"Warden" = 8,
|
||||
)
|
||||
|
||||
|
||||
// Add Fulp jobs to the list of station jobs
|
||||
/datum/controller/subsystem/job/setup_job_lists()
|
||||
. = ..()
|
||||
station_jobs += list(
|
||||
"Brig Physician",
|
||||
"Deputy",
|
||||
"Supply Deputy",
|
||||
"Engineering Deputy",
|
||||
"Medical Deputy",
|
||||
"Science Deputy",
|
||||
"Service Deputy",
|
||||
)
|
||||
|
||||
// Add Fulp jobs to the Crew monitor, at their assigned position (/datum/crewmonitor/var/list/jobs)
|
||||
/datum/crewmonitor/New()
|
||||
. = ..()
|
||||
jobs += list(
|
||||
"Brig Physician" = 18,
|
||||
"Deputy" = 17,
|
||||
"Supply Deputy" = 54,
|
||||
"Engineering Deputy" = 43,
|
||||
"Medical Deputy" = 25,
|
||||
"Science Deputy" = 34,
|
||||
"Service Deputy" = 72,
|
||||
)
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
## TG edits:
|
||||
|
||||
- code/controllers/subsystem/job.dm > Adds Fulp jobs to the station job list datum.
|
||||
- code/modules/jobs/jobs.dm > Adds Fulp jobs to GLOBAL_LIST_INIT(security_positions, list() & GLOBAL_LIST_INIT(security_sub_positions, list()
|
||||
- code/game/machinery/computer/crew.dm > Adds Fulp jobs to the crew monitor.
|
||||
- None
|
||||
|
||||
## TG proc overwrites:
|
||||
|
||||
- sec_hud_set_ID() (code/game/data_huds.dm) > Assigns HUD Overlays for Fulp jobs.
|
||||
- setup_job_lists() (code/controllers/subsystem/job.dm) > Adds Fulp jobs to the list of all jobs
|
||||
- /datum/crewmonitor/var/list/jobs (code/game/machinery/computer/crew.dm) > Adds Fulp jobs to the Crew monitor
|
||||
|
||||
## TG sounds/sprites used:
|
||||
|
||||
|
||||
@@ -2,6 +2,12 @@
|
||||
. = ..()
|
||||
mentor_datum_set()
|
||||
|
||||
// Overwrites /client/Topic to return for mentor client procs
|
||||
/client/Topic(href, href_list, hsrc)
|
||||
if(mentor_client_procs(href_list))
|
||||
return
|
||||
. = ..()
|
||||
|
||||
/client/proc/mentor_client_procs(href_list)
|
||||
if(href_list["mentor_msg"])
|
||||
cmd_mentor_pm(href_list["mentor_msg"],null)
|
||||
|
||||
@@ -2,24 +2,16 @@
|
||||
|
||||
- _maps/_basemap.dm > Adds our maps to the list of playable maps
|
||||
|
||||
- code/__DEFINES/atom_hud.dm > Bloodsucker HUDs
|
||||
|
||||
- code/__DEFINES/role_preferences.dm > Bloodsuckers/Monster Hunters as antagonist preference options
|
||||
|
||||
- code/__HELPERS/global_lists.dm > Beefmen customization/preferences.
|
||||
- code/__HELPERS/roundend.dm > Plays our roundend music instead
|
||||
|
||||
- code/controllers/subsystem/job.dm > Adds Fulp jobs to the station job list datum. || Replaces var/list/chain_of_command with our own version.
|
||||
- code/controllers/subsystem/ticker.dm > Adds pick_round_end_sound() to the round_end_song
|
||||
|
||||
- code/datums/hud.dm > Bloodsucker HUDs
|
||||
|
||||
- code/game/area/areas/shuttle.dm > Plays ApproachingFulp instead of ApproachingTG
|
||||
- code/game/gamemodes/objective.dm > Added Bloodsucker objectives to the list of objectives Admins can make
|
||||
- code/game/machinery/computer/crew.dm > Adds Fulp jobs to the crew monitor.
|
||||
- code/game/objects/items/devices/scanners.dm > Falsifies health analyzers if you're on Masquerade
|
||||
|
||||
- code/modules/client/client_procs.dm > Gives the mentorhelp verb
|
||||
- code/modules/mob/living/carbon/human/examine.dm > Changes examine text for Beefmen || Added examining Bloodsuckers/Vassals || adds ShowAsPaleExamine()
|
||||
- code/modules/mob/living/carbon/human/species.dm > Beefmen customization/preferences || Makes Digitigrade shoes fit Digi Lizards.
|
||||
- code/modules/surgery/bodyparts/_bodyparts.dm > Changes bodypart .dmi files for Beefmen
|
||||
|
||||
Reference in New Issue
Block a user