frame allocs (25.2): a fact record past the 64 made at the start is @alloc_ok, in its own function, in npc, character, physics, vehicles and wildlife

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-28 15:58:10 +03:00
parent c8c230449e
commit 082fd26bf1
10 changed files with 40 additions and 15 deletions

View file

@ -24,3 +24,10 @@ function np_queue_sized(q: Queue<NpcFact>) -> Queue<NpcFact> {
List.clear(q.spare)
return q
}
# past them: a record for the new peak, kept in the pool for good
@alloc_ok("a new peak of facts held at once, past the 64 made at the start; kept and reused")
function np_fact_more(npc_st: mut NpcState) -> NpcFact {
let f = new NpcFact
push(npc_st.np_fpool, f)
return f
}

View file

@ -94,9 +94,7 @@ function np_fact_record(npc_st: mut NpcState) -> NpcFact {
f.z = 0.0
return f
}
let f = new NpcFact
push(npc_st.np_fpool, f)
return f
return np_fact_more(npc_st)
}
# how many fact records have ever been made: the peak held at once, not the facts pushed
export function npc_fact_records(npc_st: NpcState) -> int { return len(npc_st.np_fpool) }