necrourn budget [N]: учёт и лимит общего бюджета шагов урн; necrourn info - состояние работы урны
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
ecae8eb6a7
commit
054897eb78
@@ -741,6 +741,15 @@ namespace NecromancerTome
|
||||
bool _pending;
|
||||
float _actAt;
|
||||
|
||||
/// <summary>Состояние работы для necrourn info (23.10: «стою в 19 м - не работают», проба находит урожай, дела нет).</summary>
|
||||
public string WorkState()
|
||||
{
|
||||
float now = Time.time;
|
||||
return "дело ждёт " + _pending + (_pending ? " (через " + (_actAt - now).ToString("0.0") + " с)" : "") +
|
||||
", следующий шаг через " + (_nextWork - now).ToString("0.0") + " с, прилив " + CinerariumLoad.Tide +
|
||||
", дух " + (_genie != null);
|
||||
}
|
||||
|
||||
/// <summary>Работа духа (CinerariumWork): раз в StepSeconds одно дело, только с черепом и только на сервере.
|
||||
/// Сначала пробный шаг (ничего не меняет) - куда лететь; само дело - когда дух долетел и машет руками. Если за это
|
||||
/// время что-то поменялось, настоящий шаг сделает то, что нужно на тот момент.</summary>
|
||||
@@ -773,7 +782,7 @@ namespace NecromancerTome
|
||||
_nextWork = Time.time + CinerariumWork.StepSeconds;
|
||||
return;
|
||||
}
|
||||
if (Time.time < _nextWork || !CinerariumLoad.TryTakeStep())
|
||||
if (Time.time < _nextWork || !CinerariumLoad.TryTakeStep(ToWorldPos()))
|
||||
{
|
||||
return; // не время или бюджет кадра на дела духов выбран - в следующем кадре
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user