Exemplo n.º 1
0
        /// <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();
        }
Exemplo n.º 2
0
        /// <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();
        }