コード例 #1
0
        protected override void Update(TimeSpan gameTime)
        {
            this.Member.Position  = this.Trans2D.Position;
            this.Member.Rotation  = this.Trans2D.Rotation;
            this.Member.Rectangle = this.RectangleCollider.Transform2D.Rectangle;

            IPlay play = this.Member.Turn();

            if (play == null)
            {
                return;
            }

            this.Trans2D.Position += play.GetMoveDirection() * this.Member.GetSpeed() * (float)gameTime.TotalSeconds;
            this.Trans2D.Rotation  = Utilities.WrapFloat(this.Trans2D.Rotation + play.GetRotation(), 0, 2 * Math.PI);

            if (play.GetMessage() != null)
            {
                play.GetMessage().Sender = this.Member;
                this.Member.GetTeam().AddMessage(play.GetMessage());
            }

            if (play.IsUsingAttack())
            {
                this.UseAttack();
            }
        }