wip(0.S2): migrate - a var nothing writes becomes a let; a state is keyed by its module, directory or program, so every program's plan agrees; paths normalized; program states named SceneDemoState / scene_demo_st; the LSP reads state, mut and entry/handler parameters
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
3eda72e8c2
commit
5ffe50ed02
463 changed files with 72045 additions and 67421 deletions
|
|
@ -1,39 +1,39 @@
|
|||
# system.ludic - two systems, one per owner: "jobs" is this player's (personal jobs and boards, the
|
||||
# done counts, the tick), "jobs.party" the party's, saved with the world
|
||||
export function jobs_reset(base_st: mut BaseState, jobs_st: mut JobsState) -> void {
|
||||
jobs__reset_scope(jobs_st, JOBS_SELF)
|
||||
for g in 0 .. JOBS_GROUPS { jobs_st.jobs__done_n[g] = 0 }
|
||||
q_clear(base_st, jobs_facts(base_st, jobs_st))
|
||||
export function jobs_reset() -> void {
|
||||
jobs__reset_scope(JOBS_SELF)
|
||||
for g in 0 .. JOBS_GROUPS { jobs__done_n[g] = 0 }
|
||||
q_clear(jobs_facts())
|
||||
}
|
||||
|
||||
export function jobs_party_reset(jobs_st: mut JobsState) -> void { jobs__reset_scope(jobs_st, JOBS_PARTY) }
|
||||
export function jobs_party_reset() -> void { jobs__reset_scope(JOBS_PARTY) }
|
||||
|
||||
export function jobs_save(jobs_st: mut JobsState) -> Val {
|
||||
jobs__ensure(jobs_st)
|
||||
let v = jobs__save_scope(jobs_st, JOBS_SELF)
|
||||
sv_put_ints(v, "done", jobs_st.jobs__done_n)
|
||||
export function jobs_save() -> Val {
|
||||
jobs__ensure()
|
||||
let v = jobs__save_scope(JOBS_SELF)
|
||||
sv_put_ints(v, "done", jobs__done_n)
|
||||
return v
|
||||
}
|
||||
|
||||
export function jobs_load(jobs_st: mut JobsState, v: Val, version: int) -> void {
|
||||
jobs__load_scope(jobs_st, JOBS_SELF, v)
|
||||
export function jobs_load(v: Val, version: int) -> void {
|
||||
jobs__load_scope(JOBS_SELF, v)
|
||||
let d = sv_ints(v, "done")
|
||||
for g in 0 .. JOBS_GROUPS {
|
||||
jobs_st.jobs__done_n[g] = 0
|
||||
if g < len(d) { jobs_st.jobs__done_n[g] = d[g] }
|
||||
jobs__done_n[g] = 0
|
||||
if g < len(d) { jobs__done_n[g] = d[g] }
|
||||
}
|
||||
}
|
||||
|
||||
export function jobs_party_save(jobs_st: mut JobsState) -> Val {
|
||||
jobs__ensure(jobs_st)
|
||||
return jobs__save_scope(jobs_st, JOBS_PARTY)
|
||||
export function jobs_party_save() -> Val {
|
||||
jobs__ensure()
|
||||
return jobs__save_scope(JOBS_PARTY)
|
||||
}
|
||||
|
||||
export function jobs_party_load(jobs_st: mut JobsState, v: Val, version: int) -> void { jobs__load_scope(jobs_st, JOBS_PARTY, v) }
|
||||
export function jobs_party_load(v: Val, version: int) -> void { jobs__load_scope(JOBS_PARTY, v) }
|
||||
|
||||
function jobs__tick(base_st: mut BaseState, jobs_st: mut JobsState, t: Tick) -> void {
|
||||
jobs__offers(base_st, jobs_st)
|
||||
jobs_recheck(base_st, jobs_st)
|
||||
function jobs__tick(t: Tick) -> void {
|
||||
jobs__offers()
|
||||
jobs_recheck()
|
||||
}
|
||||
|
||||
export function jobs_system() -> System {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue