using UnityEngine;
using System.Collections;
public class miner : MonoBehaviour
{
public enum State
{
EnterMineAndDigForNuggets,
EnterBankAndDepositGold
}
public State state;
public void Awake()
{
state = State.EnterMineAndDigForNuggets;
// Start the Finite State Machine
StartCoroutine(FSM());
}
IEnumerator FSM()
{
// Execute the current coroutine (state)
while (true)
{
yield return StartCoroutine(state.ToString());
}
}
IEnumerator EnterMineAndDigForNuggets()
{
/* This part works as the Enter function
of the previous post (it's optional) */
print("Entering the mine...");
yield return null;
/* Now we enter in the Execute part of a state
which will be usually inside a while - yield block */
bool dig = true;
int digged = 0;
while (dig)
{
print("Digging... " + (digged++) + " " + Time.time);
if (digged == 2) dig = false;
yield return new WaitForSeconds(1);
}
/* And finally do something before leaving
the state (optional too) and starting a new one */
print("Exiting the mine...");
state = State.EnterBankAndDepositGold;
}
IEnumerator EnterBankAndDepositGold()
{
//Enter
print("Entering the bank...");
yield return null;
//Execute
bool queing = true;
float t = Time.time;
while (queing)
{
print("waiting...");
if (Time.time - t > 5) queing = false;
yield return new WaitForSeconds(1);
}
//Exit
print("Leaving the bank a little bit richer...");
state = State.EnterMineAndDigForNuggets;
}
}
2019년 6월 6일 목요일
피드 구독하기:
댓글 (Atom)
git rejected error(feat. cherry-pick)
문제 아무 생각 없이 pull을 받지않고 로컬에서 작업! 커밋, 푸시 진행을 해버렷다. push에선 remote와 다르니 당연히 pull을 진행해라고 하지만 로컬에서 작업한 내용을 백업하지 않고 진행하기에는 부담스럽다(로컬작업 유실 가능성) 해결하려...
-
/// < summary > /// 검색 조건과 내용으로 테이블에 있는 데이터를 검색하는 메서드 /// </ summary > /// < param name = "valu...
-
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ...
-
해결책 서비스 > application layer Gateway Service 를 한번 실행해주면 엉킨포트가 풀리는지 어떤지 모르겠지만 된다 포트가 풀린것 확인하려면 명령프롬프트창에 netstat -n 명령을 넣어서 확인할 수 있다...
댓글 없음:
댓글 쓰기