Character.cs
private Ability mAbility = new Examine(this);
private CharState mState = new Idle(this);
public void SetAbility(Ability ability)
{
ย ย if (!mAbility.Equals(ability))
ย ย {
ย ย ย ย mAbility = ability;
ย ย ย ย mAbility.Enter();
ย ย }
}
public void SetState(CharState state)
{
ย ย if (!mState.Equals(state))
ย ย {
ย ย ย ย ย mState.Exit();
ย ย ย ย ย mState = state;
ย ย ย ย ย mState.Enter();
ย ย }
}
public Message Attack(Damageable target)
{
ย ย mAbility.Attack(target);
}
ChaseState.cs
public void Update()
{
ย ย ๋์ถฉ ํ๊ฒ๊น์ง ์ ๊ทผํ ํ ๊ฐ๊ณ ์๋ ํจ๊ณผ๋ฅผ ์คํํ๊ณ Idle๋ก ๋ณต๊ท
}
js๋ก ์ง๋ค์ค