Merge pull request #61 from VOREStation/newjobs

Adds Clown, Mime, CC jobs
This commit is contained in:
Leshana
2016-05-14 23:03:28 -04:00
15 changed files with 207 additions and 23 deletions
+1 -1
View File
@@ -344,7 +344,7 @@
log_admin("[key_name_admin(usr)] has de-loyalty implanted [current].")
if("add")
H << "<span class='danger'><font size =3>You somehow have become the recepient of a loyalty transplant, and it just activated!</font></span>"
H.implant_loyalty(H, override = TRUE)
H.implant_loyalty(override = TRUE)
log_admin("[key_name_admin(usr)] has loyalty implanted [current].")
else
else if (href_list["silicon"])
+1 -1
View File
@@ -49,7 +49,7 @@ var/datum/antagonist/deathsquad/deathsquad
player.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/pulse_rifle(player), slot_r_hand)
player.equip_to_slot_or_del(new /obj/item/weapon/rig/ert/assetprotection(player), slot_back)
player.equip_to_slot_or_del(new /obj/item/weapon/melee/energy/sword(player), slot_s_store)
player.implant_loyalty(player)
player.implant_loyalty()
var/obj/item/weapon/card/id/id = create_id("Asset Protection", player)
if(id)
+3 -5
View File
@@ -223,17 +223,15 @@ proc/get_all_job_icons() //For all existing HUD icons
var/obj/item/weapon/card/id/I = GetID()
if(I)
if(istype(I,/obj/item/weapon/card/id/centcom))
return "Centcom"
var/job_icons = get_all_job_icons()
if(I.assignment in job_icons) //Check if the job has a hud icon
return I.assignment
if(I.rank in job_icons)
return I.rank
var/centcom = get_all_centcom_jobs()
if(I.assignment in centcom) //Return with the NT logo if it is a Centcom job
return "Centcom"
if(I.rank in centcom)
return "Centcom"
else
return
+1 -1
View File
@@ -44,7 +44,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H.back), slot_in_backpack)
H.implant_loyalty(src)
H.implant_loyalty()
return 1
+1 -1
View File
@@ -263,7 +263,7 @@
H.equip_to_slot_or_del(new /obj/item/device/pda/lawyer(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/briefcase(H), slot_l_hand)
H.implant_loyalty(H)
H.implant_loyalty()
return 1
+4 -1
View File
@@ -1,3 +1,6 @@
/datum/job
//Requires a ckey to be whitelisted in jobwhitelist.txt
var/whitelist_only = 0
//Does not display this job on the occupation setup screen
var/latejoin_only = 0
+1 -1
View File
@@ -41,7 +41,7 @@
H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_l_store)
else
H.equip_to_slot_or_del(new /obj/item/weapon/handcuffs(H), slot_in_backpack)
H.implant_loyalty(H)
H.implant_loyalty()
return 1
+162
View File
@@ -0,0 +1,162 @@
/datum/job/centcom_officer //For Business
title = "Centcom Officer"
department = "Command"
head_position = 1
faction = "Station"
total_positions = 2
spawn_positions = 1
supervisors = "company officials and Corporate Regulations"
selection_color = "#1D1D4F"
idtype = /obj/item/weapon/card/id/centcom
access = list()
minimal_access = list()
minimal_player_age = 14
economic_modifier = 20
whitelist_only = 1
latejoin_only = 1
minimum_character_age = 25
ideal_character_age = 40
equip(var/mob/living/carbon/human/H)
if(!H) return 0
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/centcom(H), slot_l_ear)
switch(H.backbag)
if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(H), slot_back)
if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back)
if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom, slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/device/pda/centcom(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/white(H), slot_gloves)
H.equip_to_slot_or_del(new /obj/item/clothing/head/beret/centcom/officer(H), slot_head)
H.equip_to_slot_or_del(new /obj/item/clothing/glasses/hud/security(H), slot_l_store)
H.implant_loyalty()
return 1
get_access()
var/access = get_all_station_access()
access += list("VIP Guest","Custodian","Thunderdome Overseer","Intel Officer","Medical Officer","Death Commando","Research Officer")
return access
/datum/job/centcom_visitor //For Pleasure
title = "Centcom Visitor"
department = "Civilian"
head_position = 1
faction = "Station"
total_positions = 2
spawn_positions = 1
supervisors = "company officials and Corporate Regulations"
selection_color = "#1D1D4F"
idtype = /obj/item/weapon/card/id/centcom
access = list()
minimal_access = list()
minimal_player_age = 14
economic_modifier = 20
whitelist_only = 1
latejoin_only = 1
minimum_character_age = 25
ideal_character_age = 40
equip(var/mob/living/carbon/human/H)
if(!H) return 0
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/centcom(H), slot_l_ear)
switch(H.backbag)
if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(H), slot_back)
if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back)
if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom, slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/device/pda/centcom(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/clothing/gloves/white(H), slot_gloves)
H.equip_to_slot_or_del(new /obj/item/clothing/head/beret/centcom/officer(H), slot_head)
H.equip_to_slot_or_del(new /obj/item/clothing/glasses/hud/security(H), slot_l_store)
H.implant_loyalty()
return 1
get_access()
var/access = get_all_station_access()
access += list("VIP Guest","Custodian","Thunderdome Overseer","Intel Officer","Medical Officer","Death Commando","Research Officer")
return access
/datum/job/clown
title = "Clown"
flag = CLOWN
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = -1
spawn_positions = -1
supervisors = "the spirit of laughter"
selection_color = "#515151"
economic_modifier = 1
access = list()
minimal_access = list()
alt_titles = list("Fun Mage","Happiness Witch","Joy Summoner","Asshole")
whitelist_only = 1
latejoin_only = 1
equip(var/mob/living/carbon/human/H)
if(!H) return 0
H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/clown(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/clown(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/clown_shoes(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), slot_wear_mask)
H.equip_to_slot_or_del(new /obj/item/device/pda/clown(H), slot_belt)
if(H.backbag > 0)
H.equip_to_slot_or_del(new /obj/item/weapon/stamp/clown(H.back), slot_in_backpack)
else
H.equip_to_slot_or_del(new /obj/item/weapon/stamp/clown(H), slot_l_hand)
return 1
/datum/job/clown/get_access()
if(config.assistant_maint)
return list(access_maint_tunnels)
else
return list()
/datum/job/mime
title = "Mime"
flag = MIME
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = -1
spawn_positions = -1
supervisors = "the spirit of performance"
selection_color = "#515151"
economic_modifier = 1
access = list()
minimal_access = list()
alt_titles = list("Silent One","The Performer","Kabuki","Asshole")
whitelist_only = 1
latejoin_only = 1
equip(var/mob/living/carbon/human/H)
if(!H) return 0
H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/clothing/under/mime(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/mime(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/clothing/head/soft/mime(H), slot_head)
H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/mime(H), slot_wear_mask)
H.equip_to_slot_or_del(new /obj/item/device/pda/mime(H), slot_belt)
if(H.backbag > 0)
H.equip_to_slot_or_del(new /obj/item/weapon/pen/crayon/mime(H.back), slot_in_backpack)
else
H.equip_to_slot_or_del(new /obj/item/weapon/pen/crayon/mime(H), slot_l_hand)
return 1
/datum/job/mime/get_access()
if(config.assistant_maint)
return list(access_maint_tunnels)
else
return list()
+3 -4
View File
@@ -1,8 +1,7 @@
var/list/job_whitelist = list()
/hook/startup/proc/loadJobWhitelist()
if(config.usewhitelist)
load_jobwhitelist()
load_jobwhitelist()
return 1
/proc/load_jobwhitelist()
@@ -24,9 +23,9 @@ var/list/job_whitelist = list()
return 0
if(M && rank)
for (var/s in job_whitelist)
if(findtext(s,"[M.ckey] - [rank]"))
if(findtext(s,"[lowertext(M.ckey)] - [lowertext(rank)]"))
return 1
if(findtext(s,"[M.ckey] - All"))
return 1
return 0
@@ -0,0 +1,5 @@
/obj/item/device/pda/centcom
default_cartridge = /obj/item/weapon/cartridge/captain
icon_state = "pda-h"
detonate = 0
// hidden = 1
@@ -0,0 +1,13 @@
/obj/item/device/radio/headset/centcom
name = "centcom radio headset"
desc = "The headset of the boss's boss."
icon_state = "com_headset"
item_state = "headset"
ks2type = /obj/item/device/encryptionkey/ert
/obj/item/device/radio/headset/centcom/alt
name = "centcom bowman headset"
desc = "The headset of the boss's boss."
icon_state = "com_headset_alt"
item_state = "com_headset_alt"
ks2type = /obj/item/device/encryptionkey/ert
@@ -68,7 +68,7 @@
var/datum/job/lastJob
if (!job_master) return
for(var/datum/job/job in job_master.occupations)
if(job.latejoin_only) continue //VOREStation Code
index += 1
if((index >= limit) || (job.title in splitJobs))
if((index < limit) && (lastJob != null))
@@ -150,21 +150,21 @@
update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message)
if(update) UpdateDamageIcon()
/mob/living/carbon/human/proc/implant_loyalty(mob/living/carbon/human/M, override = FALSE) // Won't override by default.
/mob/living/carbon/human/proc/implant_loyalty(override = FALSE) // Won't override by default.
if(!config.use_loyalty_implants && !override) return // Nuh-uh.
var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(M)
L.imp_in = M
var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(src)
L.imp_in = src
L.implanted = 1
var/obj/item/organ/external/affected = M.organs_by_name[BP_HEAD]
var/obj/item/organ/external/affected = src.organs_by_name[BP_HEAD]
affected.implants += L
L.part = affected
L.implanted(src)
/mob/living/carbon/human/proc/is_loyalty_implanted(mob/living/carbon/human/M)
for(var/L in M.contents)
/mob/living/carbon/human/proc/is_loyalty_implanted()
for(var/L in src.contents)
if(istype(L, /obj/item/weapon/implant/loyalty))
for(var/obj/item/organ/external/O in M.organs)
for(var/obj/item/organ/external/O in src.organs)
if(L in O.implants)
return 1
return 0
+4
View File
@@ -378,6 +378,7 @@
#include "code\game\jobs\job\science.dm"
#include "code\game\jobs\job\security.dm"
#include "code\game\jobs\job\silicon.dm"
#include "code\game\jobs\job\special.dm"
#include "code\game\machinery\adv_med.dm"
#include "code\game\machinery\adv_med_vr.dm"
#include "code\game\machinery\ai_slipper.dm"
@@ -649,11 +650,13 @@
#include "code\game\objects\items\devices\PDA\cart.dm"
#include "code\game\objects\items\devices\PDA\chatroom.dm"
#include "code\game\objects\items\devices\PDA\PDA.dm"
#include "code\game\objects\items\devices\PDA\PDA_vr.dm"
#include "code\game\objects\items\devices\PDA\radio.dm"
#include "code\game\objects\items\devices\radio\beacon.dm"
#include "code\game\objects\items\devices\radio\electropack.dm"
#include "code\game\objects\items\devices\radio\encryptionkey.dm"
#include "code\game\objects\items\devices\radio\headset.dm"
#include "code\game\objects\items\devices\radio\headset_vr.dm"
#include "code\game\objects\items\devices\radio\intercom.dm"
#include "code\game\objects\items\devices\radio\radio.dm"
#include "code\game\objects\items\robot\robot_items.dm"
@@ -1039,6 +1042,7 @@
#include "code\modules\clothing\ears\skrell.dm"
#include "code\modules\clothing\glasses\glasses.dm"
#include "code\modules\clothing\glasses\hud.dm"
#include "code\modules\clothing\glasses\hud_vr.dm"
#include "code\modules\clothing\gloves\arm_guards.dm"
#include "code\modules\clothing\gloves\boxing.dm"
#include "code\modules\clothing\gloves\color.dm"