mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Allows Cyborgs and AI to earn PTO and departmental playtime
This commit is contained in:
@@ -57,6 +57,8 @@
|
|||||||
#define PTO_EXPLORATION "Exploration"
|
#define PTO_EXPLORATION "Exploration"
|
||||||
#define PTO_CARGO "Cargo"
|
#define PTO_CARGO "Cargo"
|
||||||
#define PTO_CIVILIAN "Civilian"
|
#define PTO_CIVILIAN "Civilian"
|
||||||
|
#define PTO_CYBORG "Cyborg"
|
||||||
|
#define PTO_AI "AI"
|
||||||
|
|
||||||
#define DEPARTMENT_TALON "ITV Talon"
|
#define DEPARTMENT_TALON "ITV Talon"
|
||||||
|
|
||||||
|
|||||||
@@ -45,6 +45,19 @@ SUBSYSTEM_DEF(persist)
|
|||||||
var/department_earning = J.pto_type
|
var/department_earning = J.pto_type
|
||||||
clear_unused_pto(M)
|
clear_unused_pto(M)
|
||||||
|
|
||||||
|
// Determine special PTO types and convert properly
|
||||||
|
if(department_earning == PTO_AI)
|
||||||
|
department_earning = PTO_CIVILIAN
|
||||||
|
if(department_earning == PTO_CYBORG)
|
||||||
|
if(istype(M, /mob/living/silicon/robot))
|
||||||
|
var/mob/living/silicon/robot/C = M
|
||||||
|
if(C.module && C.module.pto_type)
|
||||||
|
department_earning = C.module.pto_type
|
||||||
|
if(department_earning == PTO_CYBORG)
|
||||||
|
if (MC_TICK_CHECK)
|
||||||
|
return
|
||||||
|
continue
|
||||||
|
|
||||||
// Update client whatever
|
// Update client whatever
|
||||||
var/client/C = M.client
|
var/client/C = M.client
|
||||||
var/wait_in_hours = wait / (1 HOUR)
|
var/wait_in_hours = wait / (1 HOUR)
|
||||||
|
|||||||
@@ -1,4 +1,8 @@
|
|||||||
|
/datum/job/ai
|
||||||
|
pto_type = PTO_AI
|
||||||
|
|
||||||
/datum/job/cyborg
|
/datum/job/cyborg
|
||||||
|
pto_type = PTO_CYBORG
|
||||||
minimal_player_age = 3 //1 day is a little too little time
|
minimal_player_age = 3 //1 day is a little too little time
|
||||||
total_positions = 4 //Along with one able to spawn later in the round.
|
total_positions = 4 //Along with one able to spawn later in the round.
|
||||||
spawn_positions = 3 //Let's have 3 able to spawn in roundstart
|
spawn_positions = 3 //Let's have 3 able to spawn in roundstart
|
||||||
@@ -15,6 +15,7 @@
|
|||||||
LANGUAGE_ENOCHIAN = 0
|
LANGUAGE_ENOCHIAN = 0
|
||||||
)
|
)
|
||||||
var/vr_sprites = list()
|
var/vr_sprites = list()
|
||||||
|
var/pto_type = null
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/clerical
|
/obj/item/weapon/robot_module/robot/clerical
|
||||||
languages = list(
|
languages = list(
|
||||||
@@ -63,14 +64,16 @@
|
|||||||
src.modules += new /obj/item/device/sleevemate(src) //Lets them scan people.
|
src.modules += new /obj/item/device/sleevemate(src) //Lets them scan people.
|
||||||
. = ..() //Any Global vore modules will come from here
|
. = ..() //Any Global vore modules will come from here
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/medical/surgeon //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/medical/surgeon
|
||||||
|
pto_type = PTO_MEDICAL
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Acheron" = "mechoid-Medical",
|
"Acheron" = "mechoid-Medical",
|
||||||
"Shellguard Noble" = "Noble-MED",
|
"Shellguard Noble" = "Noble-MED",
|
||||||
"ZOOM-BA" = "zoomba-medical"
|
"ZOOM-BA" = "zoomba-medical"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/medical/crisis //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/medical/crisis
|
||||||
|
pto_type = PTO_MEDICAL
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Handy" = "handy-med",
|
"Handy" = "handy-med",
|
||||||
"Acheron" = "mechoid-Medical",
|
"Acheron" = "mechoid-Medical",
|
||||||
@@ -78,7 +81,8 @@
|
|||||||
"ZOOM-BA" = "zoomba-crisis"
|
"ZOOM-BA" = "zoomba-crisis"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/clerical/butler //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/clerical/butler
|
||||||
|
pto_type = PTO_CIVILIAN
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Handy - Service" = "handy-service",
|
"Handy - Service" = "handy-service",
|
||||||
"Handy - Hydro" = "handy-hydro",
|
"Handy - Hydro" = "handy-hydro",
|
||||||
@@ -87,7 +91,8 @@
|
|||||||
"ZOOM-BA" = "zoomba-service"
|
"ZOOM-BA" = "zoomba-service"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/clerical/general //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/clerical/general
|
||||||
|
pto_type = PTO_CIVILIAN
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Handy" = "handy-clerk",
|
"Handy" = "handy-clerk",
|
||||||
"Acheron" = "mechoid-Service",
|
"Acheron" = "mechoid-Service",
|
||||||
@@ -95,7 +100,8 @@
|
|||||||
"ZOOM-BA" = "zoomba-clerical"
|
"ZOOM-BA" = "zoomba-clerical"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/janitor //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/janitor
|
||||||
|
pto_type = PTO_CIVILIAN
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Handy" = "handy-janitor",
|
"Handy" = "handy-janitor",
|
||||||
"Acheron" = "mechoid-Janitor",
|
"Acheron" = "mechoid-Janitor",
|
||||||
@@ -103,7 +109,8 @@
|
|||||||
"ZOOM-BA" = "zoomba-janitor"
|
"ZOOM-BA" = "zoomba-janitor"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/security/general //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/security/general
|
||||||
|
pto_type = PTO_SECURITY
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Handy" = "handy-sec",
|
"Handy" = "handy-sec",
|
||||||
"Acheron" = "mechoid-Security",
|
"Acheron" = "mechoid-Security",
|
||||||
@@ -111,7 +118,8 @@
|
|||||||
"ZOOM-BA" = "zoomba-security"
|
"ZOOM-BA" = "zoomba-security"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/miner //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/miner
|
||||||
|
pto_type = PTO_CARGO
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Handy" = "handy-miner",
|
"Handy" = "handy-miner",
|
||||||
"Acheron" = "mechoid-Miner",
|
"Acheron" = "mechoid-Miner",
|
||||||
@@ -119,28 +127,31 @@
|
|||||||
"ZOOM-BA" = "zoomba-miner"
|
"ZOOM-BA" = "zoomba-miner"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/standard //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/standard
|
||||||
|
pto_type = PTO_CIVILIAN
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Handy" = "handy-standard",
|
"Handy" = "handy-standard",
|
||||||
"Acheron" = "mechoid-Standard",
|
"Acheron" = "mechoid-Standard",
|
||||||
"Shellguard Noble" = "Noble-STD",
|
"Shellguard Noble" = "Noble-STD",
|
||||||
"ZOOM-BA" = "zoomba-standard"
|
"ZOOM-BA" = "zoomba-standard"
|
||||||
)
|
)
|
||||||
|
/obj/item/weapon/robot_module/robot/engineering/general
|
||||||
/obj/item/weapon/robot_module/robot/engineering/general //VOREStation sprites
|
pto_type = PTO_ENGINEERING
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Acheron" = "mechoid-Engineering",
|
"Acheron" = "mechoid-Engineering",
|
||||||
"Shellguard Noble" = "Noble-ENG",
|
"Shellguard Noble" = "Noble-ENG",
|
||||||
"ZOOM-BA" = "zoomba-engineering"
|
"ZOOM-BA" = "zoomba-engineering"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/research //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/research
|
||||||
|
pto_type = PTO_SCIENCE
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Acheron" = "mechoid-Science",
|
"Acheron" = "mechoid-Science",
|
||||||
"ZOOM-BA" = "zoomba-research"
|
"ZOOM-BA" = "zoomba-research"
|
||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/security/combat //VOREStation sprites
|
/obj/item/weapon/robot_module/robot/security/combat
|
||||||
|
pto_type = PTO_SECURITY
|
||||||
vr_sprites = list(
|
vr_sprites = list(
|
||||||
"Acheron" = "mechoid-Combat",
|
"Acheron" = "mechoid-Combat",
|
||||||
"ZOOM-BA" = "zoomba-combat"
|
"ZOOM-BA" = "zoomba-combat"
|
||||||
@@ -156,6 +167,7 @@
|
|||||||
)
|
)
|
||||||
channels = list("Security" = 1)
|
channels = list("Security" = 1)
|
||||||
networks = list(NETWORK_SECURITY)
|
networks = list(NETWORK_SECURITY)
|
||||||
|
pto_type = PTO_SECURITY
|
||||||
can_be_pushed = 0
|
can_be_pushed = 0
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/knine/New(var/mob/living/silicon/robot/R)
|
/obj/item/weapon/robot_module/robot/knine/New(var/mob/living/silicon/robot/R)
|
||||||
@@ -221,6 +233,7 @@
|
|||||||
channels = list("Medical" = 1)
|
channels = list("Medical" = 1)
|
||||||
networks = list(NETWORK_MEDICAL)
|
networks = list(NETWORK_MEDICAL)
|
||||||
subsystems = list(/mob/living/silicon/proc/subsystem_crew_monitor)
|
subsystems = list(/mob/living/silicon/proc/subsystem_crew_monitor)
|
||||||
|
pto_type = PTO_MEDICAL
|
||||||
can_be_pushed = 0
|
can_be_pushed = 0
|
||||||
sprites = list(
|
sprites = list(
|
||||||
"Medical Hound" = "medihound",
|
"Medical Hound" = "medihound",
|
||||||
@@ -276,6 +289,7 @@
|
|||||||
name = "Emergency Responce module"
|
name = "Emergency Responce module"
|
||||||
channels = list("Security" = 1)
|
channels = list("Security" = 1)
|
||||||
networks = list(NETWORK_SECURITY)
|
networks = list(NETWORK_SECURITY)
|
||||||
|
pto_type = PTO_SECURITY
|
||||||
can_be_pushed = 0
|
can_be_pushed = 0
|
||||||
sprites = list(
|
sprites = list(
|
||||||
"Standard" = "ert",
|
"Standard" = "ert",
|
||||||
@@ -327,6 +341,7 @@
|
|||||||
"Borgi" = "borgi-jani"
|
"Borgi" = "borgi-jani"
|
||||||
)
|
)
|
||||||
channels = list("Service" = 1)
|
channels = list("Service" = 1)
|
||||||
|
pto_type = PTO_CIVILIAN
|
||||||
can_be_pushed = 0
|
can_be_pushed = 0
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/scrubpup/New(var/mob/living/silicon/robot/R)
|
/obj/item/weapon/robot_module/robot/scrubpup/New(var/mob/living/silicon/robot/R)
|
||||||
@@ -411,6 +426,7 @@
|
|||||||
"SciHoundDark" = "scihounddark"
|
"SciHoundDark" = "scihounddark"
|
||||||
)
|
)
|
||||||
channels = list("Science" = 1)
|
channels = list("Science" = 1)
|
||||||
|
pto_type = PTO_SCIENCE
|
||||||
can_be_pushed = 0
|
can_be_pushed = 0
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/science/New(var/mob/living/silicon/robot/R)
|
/obj/item/weapon/robot_module/robot/science/New(var/mob/living/silicon/robot/R)
|
||||||
@@ -486,6 +502,7 @@
|
|||||||
)
|
)
|
||||||
channels = list("Engineering" = 1)
|
channels = list("Engineering" = 1)
|
||||||
networks = list(NETWORK_ENGINEERING)
|
networks = list(NETWORK_ENGINEERING)
|
||||||
|
pto_type = PTO_ENGINEERING
|
||||||
subsystems = list(/mob/living/silicon/proc/subsystem_power_monitor)
|
subsystems = list(/mob/living/silicon/proc/subsystem_power_monitor)
|
||||||
can_be_pushed = 0
|
can_be_pushed = 0
|
||||||
|
|
||||||
@@ -632,6 +649,7 @@
|
|||||||
"ServicehoundV2 Darkmode" = "servedark",
|
"ServicehoundV2 Darkmode" = "servedark",
|
||||||
)
|
)
|
||||||
channels = list("Service" = 1)
|
channels = list("Service" = 1)
|
||||||
|
pto_type = PTO_CIVILIAN
|
||||||
can_be_pushed = 0
|
can_be_pushed = 0
|
||||||
|
|
||||||
|
|
||||||
@@ -703,6 +721,7 @@
|
|||||||
"CargoHoundDark" = "cargohounddark"
|
"CargoHoundDark" = "cargohounddark"
|
||||||
)
|
)
|
||||||
channels = list("Supply" = 1)
|
channels = list("Supply" = 1)
|
||||||
|
pto_type = PTO_CARGO
|
||||||
can_be_pushed = 0
|
can_be_pushed = 0
|
||||||
|
|
||||||
/obj/item/weapon/robot_module/robot/kmine/New(var/mob/living/silicon/robot/R)
|
/obj/item/weapon/robot_module/robot/kmine/New(var/mob/living/silicon/robot/R)
|
||||||
|
|||||||
Reference in New Issue
Block a user