/// <summary> /// Player to pass the ball to passtarget. /// </summary> public void ShortPass() { _status.PassStatus.IsPassFail = false; if (!this._status.Hasball || !this._status.Holdball) { return; } var target = GetTarget(); var speed = FootballRule.GetPassSpeed(_status.Current, target); Rotate(target); this.Manager.Match.Football.Kick(target, speed, this); this.Status.PassStatus.PassTarget.Status.SubState.SetSubState(EnumSubState.ShortPassAccepting, 0); InternalPass(); }
/// <summary> /// Player to action a long pass. /// </summary> public void LongPass() { _status.PassStatus.IsPassFail = false; if (!this._status.Hasball || !this._status.BallDistanceZero) { return; } var target = GetTarget(); var speed = FootballRule.GetPassSpeed(_status.Current, target); var angle = _match.RandomByte(20, 30); Rotate(target); this.Manager.Match.Football.Kick(target, speed, angle, this); this.Status.PassStatus.PassTarget.Status.SubState.SetSubState(EnumSubState.LongPassAccepting, 0); InternalPass(); }