ludic.npc (18.2): a person a crowd moves
npc_set_crowd hands a person to a crowd. Its walk no longer steps or asks the way: its want is goal_x / goal_z / goal_speed (0 when it is not walking). npc_moved hands back the crowd's place: position, ground, heading from velocity, gait. Arrival, the act and the give-up after twenty seconds without progress are unchanged. Nothing allocates. npc 16/16. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
81b6782c9d
commit
074f10f302
5 changed files with 48 additions and 1 deletions
|
|
@ -7,6 +7,7 @@ export function npc_tick(npc_st: mut NpcState, dt: float) -> void {
|
|||
for i in 0 .. len(npc_st.np_walkers) {
|
||||
let p = npc_st.np_walkers[i]
|
||||
if not p.active or np_leaves(npc_st, p) { continue }
|
||||
p.goal_speed = 0.0
|
||||
if p.act == NPCA_WALK { npc_walk(npc_st, p, dt) } else { npc_act(npc_st, p, dt) }
|
||||
npc_notice(npc_st, p)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue