コード例 #1
0
ファイル: NullCommand.cs プロジェクト: hanplay/2.5D_Project
 public override void Visit(SkillState skillState)
 {
     if (skillState.IsEnd())
     {
         BasicState basicState = player.GetBasicState();
         basicState.Stop();
         player.SetState(basicState);
     }
 }
コード例 #2
0
ファイル: MoveCommand.cs プロジェクト: hanplay/2.5D_Project
 public override void Visit(BasicState basicState)
 {
     if (0.8f > Vector3.Distance(player.GetPosition(), destination))
     {
         basicState.Stop();
         return;
     }
     basicState.MoveTo(destination);
 }
コード例 #3
0
    public override void Visit(BasicState basicState)
    {
        if (false == basicState.IsTargetIngState())
        {
            BasicState idleState = player.GetBasicState();
            idleState.Stop();
            player.SetState(idleState);
        }

        Unit targetUnit = basicState.GetTargetUnit();

        if (range > player.DistanceToUnit(targetUnit))
        {
            SkillState skillState = skill.GetSkillState();
            skillState.SetTargetUnit(targetUnit);
            basicState.ChageToSkillState(skill.GetSkillState());
        }
        else
        {
            basicState.ChaseTarget(targetUnit);
        }
    }
コード例 #4
0
ファイル: NullCommand.cs プロジェクト: hanplay/2.5D_Project
 public override void Visit(BasicState basicState)
 {
     basicState.Stop();
 }