mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 03:57:13 +01:00
Adds crawling. (#17899)
* crawling? * knockdown. CONTAINS CHANGES THAT NEED REVERTING * plotting can_moves death * CANMOVE IS DEAD * mappers are insane * removes todos as the are todone * decreases crawling speed * silly-con fixes * surgery fixes * fixes death * pAI fixes * removes var/lying * runtime fix * decreases default crawling speed * correct crawling dir * some more fixes * stunbaton tweak, revert later * rejuv fix * restraint and incapacitated refactor * crawling dir in line with TG * fixes vehicle movement and grabs * alien rest fixes * antistun fixes * fixed fall sounds * forgor to stage this * first review * canmove zombie dispersal * fix * lots of fixes * defines * fixes the trait helper * if you got no legs you can still crawl * sillyconfix * no reverty keepy * jaunt fix * hopefully fixes perma sleepy zzz * admin rejuv temp fix * rest canceling * antistun chems now remove knockdown * buckle offset fix * fixes some stuff * crawling delay = 4 * descuffs bed * sleeping hotfix * fixes simple mob resting * V is the macro for resting * projectiles no dodgy * refines the projectile check * god I hate strings * MORE FIXES * I hate buckling * fixes capulettium plus * winding down * farie review * bugs did stop showing up * SEAN * todo * sean review * ed209 * i HATE cyborgs * steel review * laaaaaast things * reverts stun baton changes * and done
This commit is contained in:
@@ -53,7 +53,7 @@
|
||||
return
|
||||
|
||||
var/mob/living/LM = parent
|
||||
if(!T.footstep || LM.lying || !LM.canmove || LM.resting || LM.buckled || LM.throwing || LM.flying || istype(LM.loc, /obj/machinery/atmospherics))
|
||||
if(!T.footstep || IS_HORIZONTAL(LM) || !(LM.mobility_flags & MOBILITY_MOVE) || LM.buckled || LM.throwing || LM.flying || istype(LM.loc, /obj/machinery/atmospherics))
|
||||
return
|
||||
|
||||
if(ishuman(LM))
|
||||
|
||||
@@ -10,8 +10,8 @@
|
||||
/datum/component/slippery
|
||||
/// Text that gets displayed in the slip proc, i.e. "user slips on [description]"
|
||||
var/description
|
||||
/// The amount of weaken to apply after slip.
|
||||
var/weaken
|
||||
/// The amount of knockdown to apply after slip.
|
||||
var/knockdown
|
||||
/// The chance that walking over the parent will slip you.
|
||||
var/slip_chance
|
||||
/// The amount of tiles someone will be moved after slip.
|
||||
@@ -23,12 +23,12 @@
|
||||
/// The verb that players will see when someone slips on the parent. In the form of "You [slip_verb]ped on".
|
||||
var/slip_verb
|
||||
|
||||
/datum/component/slippery/Initialize(_description, _weaken = 0, _slip_chance = 100, _slip_tiles = 0, _walking_is_safe = TRUE, _slip_always = FALSE, _slip_verb = "slip")
|
||||
/datum/component/slippery/Initialize(_description, _knockdown = 0, _slip_chance = 100, _slip_tiles = 0, _walking_is_safe = TRUE, _slip_always = FALSE, _slip_verb = "slip")
|
||||
if(!isatom(parent))
|
||||
return COMPONENT_INCOMPATIBLE
|
||||
|
||||
description = _description
|
||||
weaken = max(0, _weaken)
|
||||
knockdown = max(0, _knockdown)
|
||||
slip_chance = max(0, _slip_chance)
|
||||
slip_tiles = max(0, _slip_tiles)
|
||||
walking_is_safe = _walking_is_safe
|
||||
@@ -48,6 +48,6 @@
|
||||
Additionally calls the parent's `after_slip()` proc on the `victim`.
|
||||
*/
|
||||
/datum/component/slippery/proc/Slip(datum/source, mob/living/carbon/human/victim)
|
||||
if(istype(victim) && !victim.flying && prob(slip_chance) && victim.slip(description, weaken, slip_tiles, walking_is_safe, slip_always, slip_verb))
|
||||
if(istype(victim) && !victim.flying && prob(slip_chance) && victim.slip(description, knockdown, slip_tiles, walking_is_safe, slip_always, slip_verb))
|
||||
var/atom/movable/owner = parent
|
||||
owner.after_slip(victim)
|
||||
|
||||
Reference in New Issue
Block a user