Skip to content

Player: Use InputWalkBehavior#2071

Open
manuq wants to merge 5 commits intomainfrom
player-input
Open

Player: Use InputWalkBehavior#2071
manuq wants to merge 5 commits intomainfrom
player-input

Conversation

@manuq
Copy link
Collaborator

@manuq manuq commented Mar 19, 2026

Keep slowing down the player while the grappling hook is being used. For this, add a new aiming_changed signal to the PlayerHook.

Also use the running_changed signal of InputWalkBehavior instead of checking constantly for:

  • Emitting the dust particles.
  • Doubling the frame-by-frame animation speed or using a special run animation.

Adapt the scenes and scripts in StoryQuests that had the player speeds set.

Resolve #1151

@manuq
Copy link
Collaborator Author

manuq commented Mar 19, 2026

This works but is draft for now because StoryQuests have to be maintained, as a quick grep shows:

❯ git grep walk_speed scenes/quests/story_quests/
scenes/quests/story_quests/after_the_tremor/3_combat/after_the_tremor_combat.tscn:walk_speed = 10.0
scenes/quests/story_quests/after_the_tremor/3_combat/after_the_tremor_combat.tscn:walk_speed = 10.0
scenes/quests/story_quests/after_the_tremor/3_combat/scripts/combat.gd: p_node.walk_speed = 0.0
scenes/quests/story_quests/after_the_tremor/3_combat/scripts/combat.gd:         bryan.walk_speed = 300.0
scenes/quests/story_quests/shjourney/4_Laberinto/Laberinto.tscn:walk_speed = 200.0
scenes/quests/story_quests/shjourney/5_shjourney_sequence_puzzle/shjourney_sequence_puzzle.tscn:walk_speed = 190.0
scenes/quests/story_quests/shjourney/8_shjourney_outro/Outro.tscn:walk_speed = 200.0

❯ git grep run_speed scenes/quests/story_quests/
scenes/quests/story_quests/after_the_tremor/3_combat/after_the_tremor_combat.tscn:run_speed = 10.0
scenes/quests/story_quests/after_the_tremor/3_combat/after_the_tremor_combat.tscn:run_speed = 10.0
scenes/quests/story_quests/after_the_tremor/3_combat/scripts/combat.gd: p_node.run_speed = 0.0
scenes/quests/story_quests/after_the_tremor/3_combat/scripts/combat.gd:         bryan.run_speed = 500.0
scenes/quests/story_quests/shjourney/4_Laberinto/Laberinto.tscn:run_speed = 350.0
scenes/quests/story_quests/shjourney/5_shjourney_sequence_puzzle/shjourney_sequence_puzzle.tscn:run_speed = 200.0
scenes/quests/story_quests/shjourney/8_shjourney_outro/Outro.tscn:run_speed = 300.0

@github-actions
Copy link

Play this branch at https://play.threadbare.game/branches/endlessm/player-input/.

(This launches the game from the start, not directly at the change(s) in this pull request.)

manuq added 5 commits March 20, 2026 17:29
Keep slowing down the player while the grappling hook is being used. For this, add a new aiming_changed signal to the PlayerHook.

Also use the running_changed signal of InputWalkBehavior instead of checking constantly for:
- Emitting the dust particles.
- Doubling the frame-by-frame animation speed or using a special run animation.
Adapt to the speeds change. Also these instances have editable children to
hide and disable the dust particles, but the node in that position is now
the InputWalkBehavior, so switch it back to enabled and disable the dusts
(2nd node) instead.

Also remove mode=1 from players, because now that means "system controlled".
Adapt to the speeds change.
Because now that means "system controlled".
@manuq manuq marked this pull request as ready for review March 20, 2026 23:11
@manuq manuq requested review from a team as code owners March 20, 2026 23:11
@manuq
Copy link
Collaborator Author

manuq commented Mar 20, 2026

This also fixes scenes which had Player mode still set to 1, which now means "system controlled". Ouch. It could be a separate PR but I did it here directly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Use InputWalkBehavior for player

1 participant