Change sand slowdown from 100% to 50%, and give it the gravel sound

This commit is contained in:
Eevee (Evelyn Woods) 2024-04-20 03:34:14 -06:00
parent 29fbb56c88
commit b360fa3998
3 changed files with 15 additions and 13 deletions

View File

@ -924,7 +924,7 @@ export const TILE_DESCRIPTIONS = {
},
sand: {
name: "Sand",
desc: "Anything walking on it moves at half speed. Stops all blocks.",
desc: "Anything walking on it moves 50% slower. Stops all blocks.",
},
grass: {
name: "Grass",

View File

@ -1158,7 +1158,9 @@ export class Level extends LevelInterface {
else if (terrain.type.name === 'popdown_floor') {
this.sfx.play_once('step-popdown');
}
else if (terrain.type.name === 'gravel' || terrain.type.name === 'railroad') {
else if (terrain.type.name === 'gravel' || terrain.type.name === 'railroad' ||
terrain.type.name === 'sand' || terrain.type.name === 'grass')
{
this.sfx.play_once('step-gravel');
}
else if (terrain.type.name === 'water') {
@ -1907,7 +1909,7 @@ export class Level extends LevelInterface {
let terrain = goal_cell.get_terrain();
let ignore = actor.ignores(terrain.type.name) || actor.slide_ignores(terrain.type.name);
if (terrain.type.speed_factor && ! ignore) {
speed /= terrain.type.speed_factor;
speed *= terrain.type.speed_factor;
}
// Speed boots speed us up, UNLESS we're entering a terrain with a speed factor and an
// unignored slide mode -- so e.g. we gain 2x on teleports, ice + ice skates, force floors +

View File

@ -56,7 +56,7 @@ function _define_force_floor(direction, opposite_type) {
return {
layer: LAYERS.terrain,
slide_mode: 'force',
speed_factor: 2,
speed_factor: 0.5,
allow_player_override: true,
// Used by Lynx to prevent backwards overriding
force_floor_direction: direction,
@ -729,7 +729,7 @@ const TILE_TYPES = {
sand: {
layer: LAYERS.terrain,
blocks_collision: COLLISION.block_cc1 | COLLISION.block_cc2,
speed_factor: 0.5,
speed_factor: 1.5,
},
grass: {
// TODO should bugs leave if they have no other option...? that seems real hard.
@ -759,7 +759,7 @@ const TILE_TYPES = {
},
dash_floor: {
layer: LAYERS.terrain,
speed_factor: 2,
speed_factor: 0.5,
},
spikes: {
layer: LAYERS.terrain,
@ -919,7 +919,7 @@ const TILE_TYPES = {
cracked_ice: {
layer: LAYERS.terrain,
slide_mode: 'ice',
speed_factor: 2,
speed_factor: 0.5,
on_arrive(me, level, other) {
level.schedule_actor_slide(other);
},
@ -932,7 +932,7 @@ const TILE_TYPES = {
ice: {
layer: LAYERS.terrain,
slide_mode: 'ice',
speed_factor: 2,
speed_factor: 0.5,
on_arrive(me, level, other) {
level.schedule_actor_slide(other);
},
@ -941,7 +941,7 @@ const TILE_TYPES = {
layer: LAYERS.terrain,
thin_walls: new Set(['south', 'west']),
slide_mode: 'ice',
speed_factor: 2,
speed_factor: 0.5,
blocks_leaving: blocks_leaving_thin_walls,
on_arrive(me, level, other) {
let direction = {
@ -957,7 +957,7 @@ const TILE_TYPES = {
layer: LAYERS.terrain,
thin_walls: new Set(['north', 'west']),
slide_mode: 'ice',
speed_factor: 2,
speed_factor: 0.5,
blocks_leaving: blocks_leaving_thin_walls,
on_arrive(me, level, other) {
let direction = {
@ -973,7 +973,7 @@ const TILE_TYPES = {
layer: LAYERS.terrain,
thin_walls: new Set(['north', 'east']),
slide_mode: 'ice',
speed_factor: 2,
speed_factor: 0.5,
blocks_leaving: blocks_leaving_thin_walls,
on_arrive(me, level, other) {
let direction = {
@ -989,7 +989,7 @@ const TILE_TYPES = {
layer: LAYERS.terrain,
thin_walls: new Set(['south', 'east']),
slide_mode: 'ice',
speed_factor: 2,
speed_factor: 0.5,
blocks_leaving: blocks_leaving_thin_walls,
on_arrive(me, level, other) {
let direction = {
@ -1008,7 +1008,7 @@ const TILE_TYPES = {
force_floor_all: {
layer: LAYERS.terrain,
slide_mode: 'force',
speed_factor: 2,
speed_factor: 0.5,
allow_player_override: true,
blocks(me, level, other) {
return (level.compat.rff_blocks_monsters &&