P07-01-WX: 仕上がった天候の機能の受入:自然天候・雨・嵐・世界樹と成人客のマナ霧・上部の表示と予報・保存と移行(マナ炉の産出 120 を除く。P07-01 の補助の作業。原単位への加算 0)

This commit is contained in:
Agent Control Runner
2026-10-24 08:59:36 +09:00
parent f99c881bca
commit db87270972
9 changed files with 108 additions and 16 deletions
@@ -238,6 +238,16 @@ func _test_rain_stay_and_saves() -> void:
## itself runs at the extended time: it is not held again and begins leaving
## with the ordinary PLANNED_EXIT.
func _test_rain_hold_exit() -> void:
var natural := _new_runtime(SEED_RAIN)
var natural_runtime: Variant = natural[&"runtime"]
var departing: Variant = _spawn(natural_runtime, &"p07_departing_guest", &"traveler", 362)
natural[&"clock"].advance_minutes(3)
_expect(natural_runtime.weather.get_rain_hold(&"p07_departing_guest") == {"original_exit": 362, "extended_to": 602} and departing.state == GuestRuntime.State.LEAVING
and departing.exit_reason == &"NO_SUITABLE_FACILITY", "in ordinary minutes the held guest still leaves by the current rules")
natural[&"clock"].advance_minutes(1)
var departed: Dictionary = natural_runtime.create_snapshot()
_expect(natural_runtime.guest_service.get_guest(&"p07_departing_guest") == null and natural_runtime.weather.get_rain_holds().is_empty()
and natural_runtime.restore_snapshot(departed) and natural_runtime.create_snapshot() == departed, "the hold leaves with the guest, so the minute it left restores")
var rainy := _new_runtime(SEED_RAIN)
var runtime: Variant = rainy[&"runtime"]
var guest: Variant = _spawn(runtime, &"p07_exit_guest", &"traveler", 362)