本文整理汇总了C#中State.OnLeave方法的典型用法代码示例。如果您正苦于以下问题:C# State.OnLeave方法的具体用法?C# State.OnLeave怎么用?C# State.OnLeave使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类State
的用法示例。
在下文中一共展示了State.OnLeave方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: state_change_me
public void state_change_me(State current, State newstate)
{
int index = list.IndexOf(current);
if (index == -1)
{
Debug.LogError("state_change_me(" + current + ", " + newstate + ") : " + current + " introuvable !");
return;
}
while (index > 0)
{
index--;
list[index].OnLeave();
}
current.OnLeave();
index = list.IndexOf(current);
if (index == -1)
{
Debug.LogError("state_change_son(" + current + ", " + newstate + ") : " + current + ".OnLeave() ne doit pas changer l'�tat !");
return;
}
list.RemoveRange(0, index + 1);
list.Insert(0, newstate);
newstate.OnEnter();
index = list.IndexOf(newstate);
if (index != -1 && list.Count > index + 1)
list[index + 1].OnChildChanged();
}
示例2: state_kill_me
public void state_kill_me(State current)
{
int index = list.IndexOf(current);
if (index == -1)
{
Debug.LogError("state_kill_me(" + current + ") : " + current + " introuvable !");
return;
}
while (index > 0)
{
index--;
list[index].OnLeave();
}
current.OnLeave();
index = list.IndexOf(current);
if (index == -1)
{
Debug.LogError("state_kill_me(" + current + ") : " + current + ".OnLeave() ne doit pas changer l'�tat !");
return;
}
list.RemoveRange(0, index + 1);
if (list.Count > 0)
list[0].OnChildLeaved();
else
Debug.LogError("state_kill_me(" + current + ") : Attends, la liste est vide !!! AAAAAAAAAHHH !!!!!!!!!!");
}