Beispiel #1
0
        public void UseSkill(Skill skill, Bio target, Vec3 targetPoint)
        {
            if (!this.CanUseSkill(skill))
            {
                LLogger.Log("skill:{0} can not use.", skill.id);
                return;
            }

            if (skill.castType == CastType.Target &&
                (target == null || target.isDead))
            {
                return;
            }

            switch (skill.castType)
            {
            case CastType.Target:
            case CastType.Point:
                this.Pursue(skill, target, skill.castType == CastType.Immediately ? this.property.position : targetPoint);
                break;

            case CastType.Immediately:
            case CastType.Dash:
                this.Attack(skill, target, skill.castType == CastType.Immediately ? this.property.position : targetPoint);
                break;
            }
        }
        public void Push(FSMStateType type, object[] param = null)
        {
            if (this.enableDebug)
            {
                LLogger.Log("Change state:{0}", type);
            }

            if (!this._states.ContainsKey(type))
            {
                LLogger.Log("State '{0}' not found.", type);
            }
            else
            {
                this.Push(this._states[type], param);
            }
        }
        private bool InternalChangeState(FSMState state, bool force = false, object[] param = null)
        {
            if (!force && this.currState == state)
            {
                return(false);
            }

            if (this.enableDebug)
            {
                LLogger.Log("Change state:{0}", state.type);
            }

            this.previousState = this.currState;
            this.currState?.Exit();

            this.currState = state;
            this.currState?.Enter(param);

            return(true);
        }
Beispiel #4
0
 public virtual void Foo1(string s)
 {
     LLogger.Log("s:" + s);
 }
Beispiel #5
0
 public void Foo(bool b)
 {
     LLogger.Log("b:" + b);
 }
Beispiel #6
0
 public virtual void Foo(int i)
 {
     LLogger.Log("i:" + i);
 }