Gives the Bartender/Chef the Ability to Jump onto Tables Faster (#21885)

* and i saaaaid JUMP (JUMP!)

* logic moment + chef

* lewcc + contra reviews
This commit is contained in:
matttheficus
2023-08-16 20:25:05 +01:00
committed by GitHub
parent 57c96cea9a
commit 7a7d3d8226
4 changed files with 21 additions and 8 deletions
+1
View File
@@ -265,6 +265,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
//quirk traits
#define TRAIT_ALCOHOL_TOLERANCE "alcohol_tolerance"
#define TRAIT_TABLE_LEAP "table_leap"
//traits that should be properly converted to genetic mutations one day
#define TRAIT_LASEREYES "laser_eyes"
+2 -1
View File
@@ -77,7 +77,8 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_FLATTENED" = TRAIT_FLATTENED,
"TRAIT_SM_HALLUCINATION_IMMUNE" = SM_HALLUCINATION_IMMUNE,
"TRAIT_CONTORTED_BODY" = TRAIT_CONTORTED_BODY,
"TRAIT_DEFLECTS_PROJECTILES" = TRAIT_DEFLECTS_PROJECTILES
"TRAIT_DEFLECTS_PROJECTILES" = TRAIT_DEFLECTS_PROJECTILES,
"TRAIT_TABLE_LEAP" = TRAIT_TABLE_LEAP
),
/obj/item = list(
"TRAIT_SHOW_WIRE_INFO" = TRAIT_SHOW_WIRE_INFO,
+2
View File
@@ -164,6 +164,7 @@
singlemutcheck(H, GLOB.soberblock, MUTCHK_FORCED)
H.dna.default_blocks.Add(GLOB.soberblock)
H.check_mutations = 1
ADD_TRAIT(H, TRAIT_TABLE_LEAP, ROUNDSTART_TRAIT)
@@ -205,6 +206,7 @@
return
var/datum/martial_art/cqc/under_siege/justacook = new
justacook.teach(H)
ADD_TRAIT(H, TRAIT_TABLE_LEAP, ROUNDSTART_TRAIT)
/datum/job/hydro
+16 -7
View File
@@ -71,21 +71,30 @@
var/turf/T = src.loc
if(!T || !istype(T)) return FALSE
usr.visible_message("<span class='warning'>[user] starts climbing onto \the [src]!</span>")
climber = user
if(!do_after(user, 50, target = src))
climber = null
return FALSE
if(HAS_TRAIT(climber, TRAIT_TABLE_LEAP))
user.visible_message("<span class='warning'>[user] gets ready to vault up onto [src]!</span>")
if(!do_after(user, 0.5 SECONDS, target = src))
climber = null
return FALSE
else
user.visible_message("<span class='warning'>[user] starts climbing onto [src]!</span>")
if(!do_after(user, 5 SECONDS, target = src))
climber = null
return FALSE
if(!can_touch(user) || !climbable)
climber = null
return FALSE
var/old_loc = usr.loc
usr.loc = get_turf(src)
usr.Moved(old_loc, get_dir(old_loc, usr.loc), FALSE)
user.loc = get_turf(src)
user.Moved(old_loc, get_dir(old_loc, usr.loc), FALSE)
if(get_turf(user) == get_turf(src))
usr.visible_message("<span class='warning'>[user] climbs onto \the [src]!</span>")
if(HAS_TRAIT(climber, TRAIT_TABLE_LEAP))
user.visible_message("<span class='warning'>[user] leaps up onto [src]!</span>")
else
user.visible_message("<span class='warning'>[user] climbs onto [src]!</span>")
climber = null
return TRUE