Example #1
0
    void TimeLine_4()
    {
        if (NodeUtil.IsActivateAbility(Owner, 214))
        {
            NodeUtil.DrawCard();
        }

        else
        {
        }
    }
    //이벤트
    void TimeLine_4()
    {
        // 플레이어 위치 2그리드 90도 안에 존재할 시!!!
        if (NodeUtil.PlayerInSight(Owner, 2f, 45f))
        {
            //플레이어에게 데미지를 준다!!!
            if (Owner.StateStack.Count == 0)
            {
            }
            NodeUtil.TakeDamageToPlayer(Owner.Status.CurrentDamage);


            if (NodeUtil.IsActivateAbility(Owner, 214))
            {
                //카드 드로우
                NodeUtil.DrawCard();
                if (Owner.StateStack.Count > 2)
                {
                    SaveCurrentDamage = Owner.Status.CurrentDamage - Owner.Status.Damage;
                    SaveCurrentSpeed  = Owner.Status.CurrentSpeed - Owner.Status.Speed;

                    Owner.DeleteState(CharacterStateType.E_IncreaseDamage);
                    Owner.DeleteState(CharacterStateType.E_IncreaseSpeed);
                }

                //고블린의 데미지를 업!
                Owner.AddState(new CharacterIncreaseDamageState(Owner, NodeUtil.GetMosterParameter(Owner, 1) + SaveCurrentDamage, 10f));
                //고블린의 이동속도를 업!
                Owner.AddState(new CharacterIncreaseSpeedState(Owner, NodeUtil.GetMosterParameter(Owner, 2) + SaveCurrentSpeed, 10f));
            }

            //if(NodeUtil.IsActivateAbility(Owner ,201))
            //           {
            //                              Owner.AddState(new CharacterIncreaseDamageState(Owner, NodeUtil.GetMosterParameter(Owner, 1), -1f));
            //         }
            //if(NodeUtil.IsActivateAbility(Owner, 203))
            //           {
            //             Owner.AddState(new CharacterIncreaseSpeedState(Owner, NodeUtil.GetMosterParameter(Owner, 2), -1f));
            //        }
            else
            {
            }
        }

        else
        {
        }
    }
    public override void StartAction(Character owner)
    {
        base.StartAction(owner);
        NodeUtil.BurnCard();
        NodeUtil.DrawCard();
        NodeUtil.TakeDamage(Owner, 10f);

        //Owner.Status;
        //Owner.AddState(new CharacterHitState(Owner, 1f).Init());

        //if(NodeUtil.IsGoalDestination(Owner))
        //{
        //    Owner.transform.position = new UnityEngine.Vector3(10f ,0f ,10f);
        //    Owner.Status.CurrentHp = Mathf.Min(NodeUtil.FloatAdd(Owner.Status.CurrentHp ,10f) ,Owner.Status.Hp);
        //}
    }