refactor(packages): 0.R5 - a question no longer starts its state - 64 lazy starts ('if st.x == null { st.x = ... }' inside a getter) are the state's defaults, gear__ensure is gone, and ludic migrate state --tighten took mut off 208 package parameters: things_all, thing_find, gear_charge, gear_level, jobs_state and the rest read
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
54f5efb23f
commit
9862ec82e3
102 changed files with 320 additions and 351 deletions
|
|
@ -24,7 +24,7 @@ export state FishingState {
|
|||
fishing_run_left: int = 0
|
||||
fishing_run_next: float = 0.0
|
||||
fishing_dice: Rng = null
|
||||
fishing_fact_q: Queue<FishingFact> = null
|
||||
fishing_fact_q: Queue<FishingFact> = fishing_fact_q__new()
|
||||
fishing_n: int = 0 # the record: caught, the biggest (cm), a legend landed
|
||||
fishing_big: int = 0
|
||||
fishing_leg: bool = false
|
||||
|
|
@ -42,8 +42,7 @@ export function fishing_config(fishing_st: mut FishingState, min_depth: float, d
|
|||
fishing_st.fishing_dice = rng_new(seed)
|
||||
}
|
||||
|
||||
export function fishing_facts(fishing_st: mut FishingState) -> Queue<FishingFact> {
|
||||
if fishing_st.fishing_fact_q == null { fishing_st.fishing_fact_q = queue_new("fishing.facts") }
|
||||
export function fishing_facts(fishing_st: FishingState) -> Queue<FishingFact> {
|
||||
return fishing_st.fishing_fact_q
|
||||
}
|
||||
|
||||
|
|
@ -52,7 +51,7 @@ function fishing_rand(fishing_st: mut FishingState) -> float {
|
|||
return rng_float(fishing_st.fishing_dice)
|
||||
}
|
||||
|
||||
function fishing_say(fishing_st: mut FishingState, what: int) -> void {
|
||||
function fishing_say(fishing_st: FishingState, what: int) -> void {
|
||||
let f = new FishingFact
|
||||
f.what = what
|
||||
f.species = fishing_st.fishing_sp
|
||||
|
|
@ -89,3 +88,4 @@ export function fishing_legend_caught(fishing_st: FishingState) -> bool { return
|
|||
export function fishing_water_at(fishing_st: FishingState, x: float, z: float) -> bool {
|
||||
return FishingWorld.afloat() or FishingWorld.depth(x, z) >= fishing_st.fishing_min_depth
|
||||
}
|
||||
function fishing_fact_q__new() -> Queue<FishingFact> { return queue_new("fishing.facts") }
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ program FishingTest {
|
|||
fishing_test_st.skill = 0.0
|
||||
}
|
||||
|
||||
function facts(fishing_st: mut FishingState) -> []FishingFact { return q_drain(fishing_facts(fishing_st)) }
|
||||
function facts(fishing_st: FishingState) -> []FishingFact { return q_drain(fishing_facts(fishing_st)) }
|
||||
function saw(fs: []FishingFact, what: int) -> bool {
|
||||
for i in 0 .. len(fs) { if fs[i].what == what { return true } }
|
||||
return false
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue