示例#1
0
        private void EnhanceStatus()
        {
            var skillUser = _skillUserObj.GetComponent <Player>();

            float statusRatio = 1.2f;
            float powerRatio  = 1.3f;

            if (skillUser.Level.Cur.Value >= 11)
            {
                statusRatio = 1.4f;
            }
            powerRatio = 1.6f;

            _spaceFixSpd = new FixSpd(skillUser.Status.Spd * statusRatio, FixSpdType.Buff);
            skillUser.FixSpd.Add(_spaceFixSpd);
            skillUser.Movement.SetJumpForce(skillUser.Status.Jmp * statusRatio);
            skillUser.Movement.SetLadderRatio(statusRatio);

            skillUser.Synchronizer.SyncFixAtk(powerRatio);

            ResetStatus = () => {
                skillUser.FixSpd.Remove(_spaceFixSpd);
                skillUser.Movement.SetJumpForce(skillUser.Status.Jmp);
                skillUser.Movement.SetLadderRatio(1.0f);

                skillUser.Synchronizer.SyncFixAtk(1.0f);
            };

            SkillReference.Instance.Register(viewID, _buffTime, () => { PhotonNetwork.Destroy(gameObject); });
        }
示例#2
0
        void Start()
        {
            _character             = transform.parent.gameObject.GetComponent <ICharacter>();
            _character.State.Heavy = true;

            _heavyFixSpd = new FixSpd(_heavySpd, FixSpdType.Debuff);
            _character.FixSpd.Add(_heavyFixSpd);
        }
示例#3
0
        void Start()
        {
            _character            = transform.parent.gameObject.GetComponent <ICharacter>();
            _character.State.Slow = true;

            _iceFixSpd = new FixSpd(_slowSpd, FixSpdType.Debuff);
            _character.FixSpd.Add(_iceFixSpd);
        }
示例#4
0
        private void EnhanceStatus()
        {
            var skillUser = _skillUserObj.GetComponent <Player>();

            _shiftFixSpd = new FixSpd(skillUser.Status.Spd * _spdRatio, FixSpdType.Buff);
            skillUser.FixSpd.Add(_shiftFixSpd);
            skillUser.Movement.SetLadderRatio(_spdRatio);

            ResetStatus = () => {
                skillUser.FixSpd.Remove(_shiftFixSpd);
                skillUser.Movement.SetLadderRatio(1.0f);
            };

            SkillReference.Instance.Register(viewID, _buffTime, () => { PhotonNetwork.Destroy(gameObject); });
        }