Files
Bubberstation/code/modules/movespeed/modifiers/mobs.dm
carlarctg c261389549 Adds Untie Shoes, a 1-point wizard spell. (#84880)
## About The Pull Request

Added Untie Shoes. This is a wizard spell that's seemingly weak but has
some power under the surface.

The first level unties, then knots shoes.
The second level allows you to tie jackboots and the like.
The third level allows you to summon shoes if the target has none.
And, for the true pranksters out there, the fourth level makes
invocations silent and gestureless.

Also, it always slows noncarbons down a bit.

It's also given to clowns after Jubilation, and the wizard themself, at
max level for the latter, if they dont have it already.

### Why would you ever pick this??

Knotted shoes make the wearer unable to walk without being stunned and
tripping on the floor. Let that sink in! Anyone hit twice by the spell
is forced to crawl around or risk stepping on broken glass. Worse, they
need to go through a looong process to untie their shoes to even drop
them.
This spell has infinite range, although casting from beyond screen range
or through zlevels multiplies the cooldown by ten, which is excellent
for softening up targets.
It's a 1-point, ranged, supportive spell with low cooldown, which makes
it excellent as a deterrent for harassing wizards at long range -
something they often lack answers to.
It's great for whittling down antimagic charges.
It's funny.

## Why It's Good For The Game

This spell is silly, comical, yet also very versatile and adds a rather
large amount of depth to Wizard while also expanding on shoe knotting,
which is inherently funny and rarely looked at.

I also wanted it to work through camera consoles because that's
EXTREMELY funny. The long cooldown should prevent it from being too
annoying.

## Changelog

🆑
add: Adds Untie Shoes, a 1-point wizard spell. It can be upgraded to
untie jackboots, summon shoes to untie, and become completely silent!
/🆑
2024-07-21 00:28:33 -04:00

178 lines
4.5 KiB
Plaintext

/datum/movespeed_modifier/obesity
// large weight slows even if flying and floating
multiplicative_slowdown = 1.5
/datum/movespeed_modifier/monkey_reagent_speedmod
variable = TRUE
/datum/movespeed_modifier/monkey_health_speedmod
variable = TRUE
/datum/movespeed_modifier/monkey_temperature_speedmod
variable = TRUE
/datum/movespeed_modifier/hunger
movetypes = GROUND|FLYING
variable = TRUE
/datum/movespeed_modifier/golem_hunger
variable = TRUE
/datum/movespeed_modifier/slaughter
multiplicative_slowdown = -1
/datum/movespeed_modifier/resonance
multiplicative_slowdown = 0.75
/datum/movespeed_modifier/damage_slowdown
blacklisted_movetypes = FLOATING|FLYING
variable = TRUE
/datum/movespeed_modifier/damage_slowdown_flying
movetypes = FLYING
variable = TRUE
/// Movespeed modifier applied by worn equipment.
/datum/movespeed_modifier/equipment_speedmod
variable = TRUE
blacklisted_movetypes = FLOATING
/// Movespeed modifier applied by immutably slow worn equipment. Should never be ignored, because that's the point.
/datum/movespeed_modifier/equipment_speedmod/immutable
/datum/movespeed_modifier/grab_slowdown
id = MOVESPEED_ID_MOB_GRAB_STATE
blacklisted_movetypes = FLOATING
/datum/movespeed_modifier/grab_slowdown/aggressive
multiplicative_slowdown = 3
/datum/movespeed_modifier/grab_slowdown/neck
multiplicative_slowdown = 6
/datum/movespeed_modifier/grab_slowdown/kill
multiplicative_slowdown = 9
/datum/movespeed_modifier/config_walk_run
multiplicative_slowdown = 1
id = MOVESPEED_ID_MOB_WALK_RUN
flags = IGNORE_NOSLOW
/datum/movespeed_modifier/config_walk_run/proc/sync()
/datum/movespeed_modifier/config_walk_run/walk/sync()
var/mod = CONFIG_GET(number/movedelay/walk_delay)
multiplicative_slowdown = isnum(mod)? mod : initial(multiplicative_slowdown)
/datum/movespeed_modifier/config_walk_run/run/sync()
var/mod = CONFIG_GET(number/movedelay/run_delay)
multiplicative_slowdown = isnum(mod)? mod : initial(multiplicative_slowdown)
/datum/movespeed_modifier/turf_slowdown
movetypes = GROUND
blacklisted_movetypes = (FLYING|FLOATING)
variable = TRUE
/datum/movespeed_modifier/bulky_drag
variable = TRUE
blacklisted_movetypes = FLOATING
/datum/movespeed_modifier/cold
blacklisted_movetypes = FLOATING
variable = TRUE
/datum/movespeed_modifier/staggered
multiplicative_slowdown = STAGGERED_SLOWDOWN_STRENGTH
/datum/movespeed_modifier/human_carry
multiplicative_slowdown = HUMAN_CARRY_SLOWDOWN
blacklisted_movetypes = FLOATING
/datum/movespeed_modifier/limbless
variable = TRUE
movetypes = GROUND
blacklisted_movetypes = FLOATING|FLYING
flags = IGNORE_NOSLOW
/datum/movespeed_modifier/simplemob_varspeed
variable = TRUE
flags = IGNORE_NOSLOW
/datum/movespeed_modifier/fast_web
multiplicative_slowdown = 0.2
/datum/movespeed_modifier/young_web
multiplicative_slowdown = 0.5
/datum/movespeed_modifier/spiderling_web
multiplicative_slowdown = 0.7
/datum/movespeed_modifier/average_web
multiplicative_slowdown = 1.2
/datum/movespeed_modifier/below_average_web
multiplicative_slowdown = 2.5
/datum/movespeed_modifier/slow_web
multiplicative_slowdown = 5
/datum/movespeed_modifier/viper_defensive
multiplicative_slowdown = 1.5
/datum/movespeed_modifier/gravity
blacklisted_movetypes = FLOATING
variable = TRUE
flags = IGNORE_NOSLOW
/datum/movespeed_modifier/carbon_softcrit
multiplicative_slowdown = SOFTCRIT_ADD_SLOWDOWN
flags = IGNORE_NOSLOW
/datum/movespeed_modifier/carbon_crawling
multiplicative_slowdown = CRAWLING_ADD_SLOWDOWN
flags = IGNORE_NOSLOW
/datum/movespeed_modifier/mob_config_speedmod
variable = TRUE
flags = IGNORE_NOSLOW
/datum/movespeed_modifier/metabolicboost
multiplicative_slowdown = -1.5
/datum/movespeed_modifier/dragon_rage
multiplicative_slowdown = -0.5
/datum/movespeed_modifier/dragon_depression
multiplicative_slowdown = 5
/datum/movespeed_modifier/morph_disguised
multiplicative_slowdown = -1
/datum/movespeed_modifier/auto_wash
multiplicative_slowdown = 3
/datum/movespeed_modifier/player_spider_modifier
variable = TRUE
/datum/movespeed_modifier/health_scaling_speed_buff
variable = TRUE
/datum/movespeed_modifier/alien_speed
variable = TRUE
/datum/movespeed_modifier/grown_killer_tomato
variable = TRUE
/datum/movespeed_modifier/goliath_mount
multiplicative_slowdown = -26
/datum/movespeed_modifier/settler
multiplicative_slowdown = 0.2
blacklisted_movetypes = FLOATING|FLYING
/datum/movespeed_modifier/basilisk_overheat
multiplicative_slowdown = -18
/datum/movespeed_modifier/magic_ties
multiplicative_slowdown = 0.5