This repository has been archived by the owner on Jun 29, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 186
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #783 from panvxv/goblin-roles
Goblin roles
- Loading branch information
Showing
9 changed files
with
217 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
34 changes: 34 additions & 0 deletions
34
code/modules/jobs/job_types/roguetown/goblin/goblincook.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
/datum/job/roguetown/goblincook | ||
title = "Goblin Cook" | ||
flag = GOBLINCOOK | ||
department_flag = GOBLIN | ||
faction = "Station" | ||
total_positions = 2 | ||
spawn_positions = 2 | ||
allowed_sexes = list(MALE) | ||
allowed_races = list("Goblin") | ||
allowed_patrons = list("Graggar") | ||
tutorial = "Cook, farm, butcher. Make king happy with apple pies! Don't forget about your brothers." | ||
|
||
outfit = /datum/outfit/job/roguetown/goblincook | ||
display_order = JDO_GOBLINCOOK | ||
min_pq = 0 | ||
max_pq = null | ||
|
||
/datum/outfit/job/roguetown/goblincook/pre_equip(mob/living/carbon/human/H) | ||
..() | ||
armor = /obj/item/clothing/suit/roguetown/armor/leather/hide/goblin | ||
belt = /obj/item/storage/belt/rogue/leather/rope | ||
cloak = /obj/item/clothing/cloak/apron/cook | ||
head = /obj/item/clothing/head/roguetown/cookhat | ||
neck = /obj/item/storage/belt/rogue/pouch/coins/poor | ||
if(H.mind) | ||
H.mind.adjust_skillrank(/datum/skill/combat/knives, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/cooking, 4, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/crafting, 2, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/sewing, 2, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/labor/butchering, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/labor/farming, 4, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/climbing, 3, TRUE) | ||
H.change_stat("intelligence", 1) | ||
H.change_stat("fortune", 1) |
44 changes: 44 additions & 0 deletions
44
code/modules/jobs/job_types/roguetown/goblin/goblinguard.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
/datum/job/roguetown/goblinguard | ||
title = "Goblin Guard" | ||
flag = GOBLINGUARD | ||
department_flag = GOBLIN | ||
faction = "Station" | ||
total_positions = 10 | ||
spawn_positions = 10 | ||
allowed_sexes = list(MALE) | ||
allowed_races = list("Goblin") | ||
allowed_patrons = list("Graggar") | ||
tutorial = "Goblin Guards rensposible for their kingdom and his majesty King." | ||
display_order = JDO_GOBLINGUARD | ||
min_pq = 1 | ||
max_pq = null | ||
|
||
/datum/outfit/job/roguetown/goblinguard/pre_equip(mob/living/carbon/human/H) | ||
. = ..() | ||
head = /obj/item/clothing/head/roguetown/helmet/leather/goblin | ||
armor = /obj/item/clothing/suit/roguetown/armor/leather/hide/goblin | ||
belt = /obj/item/storage/belt/rogue/leather | ||
backr = /obj/item/storage/backpack/rogue/satchel | ||
backpack_contents = list(/obj/item/rope/chain = 1) | ||
H.verbs |= /mob/proc/haltyell | ||
ADD_TRAIT(H, RTRAIT_MEDIUMARMOR, TRAIT_GENERIC) | ||
if(H.mind) | ||
H.mind.adjust_skillrank(/datum/skill/combat/axesmaces, 3, TRUE) // Town guards have stronger street skills then castle guards. | ||
H.mind.adjust_skillrank(/datum/skill/combat/bows, 2, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/combat/crossbows, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/combat/wrestling, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/combat/unarmed, 4, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/combat/swords, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/combat/polearms, 2 , TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/combat/whipsflails, 3 , TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/sneaking, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/combat/knives, 4, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/swimming, 2, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/climbing, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/athletics, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/medicine, 1, TRUE) | ||
H.change_stat("strength", 1) | ||
H.change_stat("perception", 2) | ||
H.change_stat("constitution", 1) | ||
H.change_stat("endurance", 1) | ||
H.change_stat("intelligence", -1) |
76 changes: 76 additions & 0 deletions
76
code/modules/jobs/job_types/roguetown/goblin/goblinking.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
|
||
/datum/job/roguetown/goblinking | ||
title = "Goblin King" | ||
flag = GOBLINKING | ||
department_flag = GOBLIN | ||
faction = "Station" | ||
total_positions = 1 | ||
spawn_positions = 1 | ||
allowed_sexes = list(MALE) | ||
allowed_races = list("Goblin") | ||
allowed_patrons = list("Graggar") | ||
tutorial = "Goblin King is a fatty lazy pig who wishes to do nothing but eat apple pies and fart while sitting on his stone throne." | ||
whitelist_req = FALSE | ||
outfit = /datum/outfit/job/roguetown/goblinking | ||
|
||
display_order = JDO_GOBLINKING | ||
min_pq = 2 | ||
max_pq = null | ||
|
||
/datum/outfit/job/roguetown/goblinking/pre_equip(mob/living/carbon/human/H) | ||
..() | ||
H.verbs |= /mob/living/carbon/human/proc/goblinannouncement | ||
//H.verbs |= /mob/living/carbon/human/proc/goblinopenslot | ||
beltl = /obj/item/rogueweapon/huntingknife/idagger/steel/special | ||
belt = /obj/item/storage/belt/rogue/leather/rope | ||
beltr = /obj/item/storage/belt/rogue/pouch/coins/rich | ||
armor = /obj/item/clothing/suit/roguetown/armor/leather/hide/goblin | ||
if(H.mind) | ||
H.mind.adjust_skillrank(/datum/skill/misc/reading, 1, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/combat/knives, 3, TRUE) | ||
H.change_stat("strength", -1) | ||
H.change_stat("intelligence", 2) | ||
H.change_stat("constitution", 6) | ||
H.change_stat("endurance", 1) | ||
H.change_stat("speed", -2) | ||
|
||
/mob/living/carbon/human/proc/goblinannouncement() | ||
set name = "Announcement" | ||
set category = "Goblin King" | ||
if(stat) | ||
return | ||
var/inputty = input("Make an announcement", "ROGUETOWN") as text|null | ||
if(inputty) | ||
if(!istype(get_area(src), /area/rogue/outdoors/mountains/decap)) | ||
to_chat(src, "<span class='warning'>I need to do this from the Goblin Kingdom.</span>") | ||
return FALSE | ||
priority_announce("[inputty]", title = "The Goblin King Squeals", sound = 'sound/misc/dun.ogg') | ||
/* | ||
/mob/living/carbon/human/proc/goblinopenslot() | ||
set name = "Open Slot" | ||
set category = "Goblin King" | ||
if(stat) | ||
return | ||
var/datum/job/cookjob = SSjob.GetJob("Goblin Cook") | ||
var/datum/job/guardjob = SSjob.GetJob("Goblin Guard") | ||
var/datum/job/smithjob = SSjob.GetJob("Goblin Smith") | ||
var/list/souloptions = list("Goblin Cook", "Goblin Guard", "Goblin Smith") | ||
var/pickedsoul = input("Which worker shall join kingdom?", "Available workers") as null|anything in souloptions | ||
if(!istype(get_area(src), /area/rogue/outdoors/mountains/decap)) | ||
to_chat(src, "<span class='warning'>I need to do this from the Goblin Kingdom.</span>") | ||
return FALSE | ||
if(!pickedsoul) | ||
return | ||
switch(pickedsoul) | ||
if("Goblin Cook") | ||
cookjob.total_positions += 1 | ||
priority_announce("Goblin Cook shall join our Kingdom", title = "The Goblin King Hires", sound = 'sound/misc/dun.ogg') | ||
if("Goblin Guard") | ||
guardjob.total_positions += 1 | ||
priority_announce("Goblin Guard shall join our Kingdom", title = "The Goblin King Hires", sound = 'sound/misc/dun.ogg') | ||
if("Goblin Smith") | ||
smithjob.total_positions += 1 | ||
priority_announce("Goblin Smith shall join our Kingdom", title = "The Goblin King Hires", sound = 'sound/misc/dun.ogg') | ||
*/ | ||
|
||
|
38 changes: 38 additions & 0 deletions
38
code/modules/jobs/job_types/roguetown/goblin/goblinsmith.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
/datum/job/roguetown/goblinsmith | ||
title = "Goblin Smith" | ||
flag = GOBLINSMITH | ||
department_flag = GOBLIN | ||
faction = "Station" | ||
total_positions = 2 | ||
spawn_positions = 2 | ||
allowed_sexes = list(MALE) | ||
allowed_races = list("Goblin") | ||
allowed_patrons = list("Graggar") | ||
tutorial = "Goblin rensposible for fresh iron and steel" | ||
display_order = JDO_GOBLINSMITH | ||
outfit = /datum/outfit/job/roguetown/goblinsmith | ||
|
||
/datum/outfit/job/roguetown/goblinsmith/pre_equip(mob/living/carbon/human/H) | ||
..() | ||
armor = /obj/item/clothing/suit/roguetown/armor/leather/hide/goblin | ||
belt = /obj/item/storage/belt/rogue/leather | ||
neck = /obj/item/storage/belt/rogue/pouch/coins/poor | ||
cloak = /obj/item/clothing/cloak/apron/brown | ||
backl = /obj/item/storage/backpack/rogue/satchel | ||
|
||
if(H.mind) | ||
H.mind.adjust_skillrank(/datum/skill/combat/knives, 2, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/swimming, pick(0,0,1), TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/climbing, pick(1,1,2), TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/crafting, 2 , TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/masonry, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/engineering, pick(2,2,3), TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/misc/sewing, pick(1,1,2), TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/traps, pick(1,1,2), TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/blacksmithing, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/armorsmithing, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/weaponsmithing, 3, TRUE) | ||
H.mind.adjust_skillrank(/datum/skill/craft/carpentry, 3, TRUE) | ||
H.change_stat("strength", 1) | ||
H.change_stat("endurance", 1) | ||
H.change_stat("speed", -2) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters