本文整理汇总了C#中StateMachine.Start方法的典型用法代码示例。如果您正苦于以下问题:C# StateMachine.Start方法的具体用法?C# StateMachine.Start怎么用?C# StateMachine.Start使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StateMachine
的用法示例。
在下文中一共展示了StateMachine.Start方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Awake
private void Awake()
{
NavigationBar.Show(true);
// states
states = new StateMachine(this, IdleState);
states.CreateState(IdleState, info => { }, info => { });
states.CreateState(RenameState, info => { }, info => { });
states.CreateState(DeleteState, info => { }, info => { });
states.Start();
// setup
ShowBuild.material = buildMaterial;
CreateBuildPreviews();
}
示例2: Initialize
public void Initialize(Highscore score, int[] ranks, float loot, int[] salvage, bool nextIsUnlocked)
{
// cache data
playerScore = score.score;
rankThresholds = ranks;
playerRank = score.rank;
playerLoot = loot;
playerSalvage = salvage;
// buttons
replayButton.ActivateEvent += (sender, args) => SceneManager.ReloadScene();
int nextLevel = ((FormationLevelManager)FormationLevelManager.Main).levelIndex + 1;
if (nextLevel < FormationLevelManager.LevelNames.Length && (score.rank != 0 || nextIsUnlocked))
{
nextButton.ActivateEvent += (sender, args) => SceneManager.LoadScene(Scenes.Scene((Scenes.Levels)((FormationLevelManager)FormationLevelManager.Main).levelIndex + 1));
}
else
{
nextAvailable = true;
}
states = new StateMachine(this, InitializingState);
states.CreateState(InitializingState, InitializingEnter, info => { });
states.CreateState(TimeState, info =>
{
timeLabel.text = score.TimeString;
states.SetState(LootState);
}, info => { });
states.CreateState(LootState, info => states.SetUpdate(LootUpdate()), info => { });
states.CreateState(SalvageState, info => states.SetUpdate(SalvageUpdate()), info => { });
states.CreateState(IdleState, info => { }, info => { });
states.CreateState(CompleteState, CompleteEnter, info => { });
states.Start();
}