character: a seated body is held by its seat alone - no step to the walker while sitting, and a hold no longer turns it off the seat's heading

The user's play of the bundle: the character shook while seated. chr_sit_tick eased the body onto the
seat point at the ground's height, then the same frame's chr_travel handed it to the walker, which
pushed it off a log, a bench or a boulder beside the seat; the next frame pulled it back. Unwalked, the
game's walker parks as it does under a rider. A hold's turn toward the work fought the seat's yaw the
same way. The new test sits the body against the boulder: 4.63 m from a seat at 5.7 before, still after.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-29 13:12:22 +03:00
parent 614f030407
commit 6029d10e62
3 changed files with 23 additions and 2 deletions

View file

@ -14,7 +14,7 @@ function chr_steer(character_st: mut CharacterState, dx: float, dz: float, mag:
if run { top = character_st.chr_run_speed * CharacterBody.pace() }
if CharacterBody.sneaking() { top = 1.3 }
target = mag * top * lined
} else if CharacterBody.holding() and not character_st.chr_air {
} else if CharacterBody.holding() and not character_st.chr_air and not character_st.chr_sit {
# a hold turns the body to the thing being worked, so the work is seen being done
chr_turn_to(character_st, CharacterBody.hold_x() - character_st.chr_x, CharacterBody.hold_z() - character_st.chr_z, 6.0 * dt)
}