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); }); }
void Start() { _character = transform.parent.gameObject.GetComponent <ICharacter>(); _character.State.Heavy = true; _heavyFixSpd = new FixSpd(_heavySpd, FixSpdType.Debuff); _character.FixSpd.Add(_heavyFixSpd); }
void Start() { _character = transform.parent.gameObject.GetComponent <ICharacter>(); _character.State.Slow = true; _iceFixSpd = new FixSpd(_slowSpd, FixSpdType.Debuff); _character.FixSpd.Add(_iceFixSpd); }
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); }); }