Skip to content

Commit

Permalink
Merge pull request #4727 from Colfer1/master
Browse files Browse the repository at this point in the history
Adds crafty and tinkerer traits, and standardizes mob buckling
  • Loading branch information
Tk420634 authored Mar 26, 2024
2 parents 64959b9 + c3d343c commit 6964861
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 3 deletions.
54 changes: 54 additions & 0 deletions code/datums/traits/good.dm
Original file line number Diff line number Diff line change
Expand Up @@ -629,6 +629,18 @@ GLOBAL_LIST_INIT(weapons_of_texarkana, list(
H.mind.learned_recipes -= GLOB.pa_repair
H.mind.learned_recipes -= GLOB.armored_hazard_suit

/datum/quirk/crafty
name = "Crafty"
desc = "You are able to craft without the necessities provided by a traditional workbench."
value = 25
category = "Lifepath Quirks"
mechanics = "You do not need a workbench or alchemy table when crafting."
human_only = FALSE
/datum/quirk/crafty/on_spawn()
var/mob/living/H = quirk_holder
new /obj/machinery/workbench(H)
new /obj/machinery/chem_master/primitive(H)

/datum/quirk/gunsmith
name = "Weaponsmith - Basic"
desc = "You know how to make various weapons, protective vests, gun mods, and can now forge weapons at an anvil. The list is too large to try and put here."
Expand Down Expand Up @@ -2700,6 +2712,48 @@ GLOBAL_LIST_INIT(weapons_of_texarkana, list(
REMOVE_TRAIT(H, TRAIT_NIGHT_VISION, "Dark Vision - Minor")
REMOVE_TRAIT(H, TRAIT_SOFT_YARDS, "Mobility - Wasteland Wanderer")

/datum/quirk/package/tinkerer
name = "Tinker-er"
desc = "You are able to craft without a traditional workbench, as well as craft more and gain more from salvage"
value = 85
category = "Quirk Packages"
mechanics = "You don't need a workbench or alchemy table when crafting, get more recipes, and gain 1-3 more from salvaging"
human_only = FALSE
conflicts = list(
/datum/quirk/tribal,
/datum/quirk/dumb,
/datum/quirk/luddite,
/datum/quirk/primitive,
/datum/quirk/technophreak,
/datum/quirk/crafty
)
mob_trait = TRAIT_TECHNOPHREAK

/datum/quirk/package/tinkerer/on_spawn()
var/mob/living/H = quirk_holder
new /obj/machinery/workbench(H)
new /obj/machinery/chem_master/primitive(H)

/datum/quirk/package/tinkerer/add()
var/mob/living/carbon/human/H = quirk_holder
// I made the quirks add the same recipes as the trait books. Feel free to nerf this
if(!H.mind.learned_recipes)
H.mind.learned_recipes = list()
H.mind.learned_recipes |= GLOB.tier_three_parts
H.mind.learned_recipes |= GLOB.energyweapon_cell_crafting
H.mind.learned_recipes |= GLOB.energyweapon_crafting
H.mind.learned_recipes |= GLOB.pa_repair
H.mind.learned_recipes |= GLOB.armored_hazard_suit

/datum/quirk/package/tinkerer/remove()
var/mob/living/carbon/human/H = quirk_holder
if(H)
H.mind.learned_recipes -= GLOB.tier_three_parts
H.mind.learned_recipes -= GLOB.energyweapon_cell_crafting
H.mind.learned_recipes -= GLOB.energyweapon_crafting
H.mind.learned_recipes -= GLOB.pa_repair
H.mind.learned_recipes -= GLOB.armored_hazard_suit

/datum/quirk/package/generalmedicalpractitioner
name = "General Medical Practitioner"
desc = "You were a General Practiotioner at some point in your life, you probably had an office and a license to practice medicine, or... maybe this is what you kept saying to your patients..."
Expand Down
6 changes: 3 additions & 3 deletions code/modules/mob/living/carbon/human/human.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1399,13 +1399,13 @@ GLOBAL_VAR_INIT(crotch_call_cooldown, 0)
if(target.incapacitated(FALSE, TRUE) || incapacitated(FALSE, TRUE))
target.visible_message(span_warning("[target] can't hang onto [src]!"))
return
if(dna.features["taur"] != "None" || IsFeral()) //if the mount is a taur, then everyone needs -1 hands to piggback ride.
/*if(dna.features["taur"] != "None" || IsFeral()) //if the mount is a taur, then everyone needs -1 hands to piggback ride.
if(istype(get_item_by_slot(SLOT_WEAR_SUIT), /obj/item/clothing/suit/armor/taursaddle) || (locate(/obj/item/clothing/suit/armor/taursaddle) in src)) //if the mount is wearing a saddle, then there's no need to use hands at all
buckle_mob(target, TRUE, TRUE, FALSE, 0, 0, FALSE)
else
buckle_mob(target, TRUE, TRUE, FALSE, 0, 1, FALSE)
buckle_mob(target, TRUE, TRUE, FALSE, 0, 1, FALSE)*/
else
buckle_mob(target, TRUE, TRUE, FALSE, 1, 2, FALSE)
buckle_mob(target, TRUE, TRUE, FALSE, 0, 1, FALSE)
else
visible_message(span_warning("[target] fails to climb onto [src]!"))
else
Expand Down

0 comments on commit 6964861

Please sign in to comment.