zoukankan      html  css  js  c++  java
  • win8 开发之旅(19) 足球游戏揭秘6

    我们这里揭秘什么了,来揭秘一下.MoveResult,GoalPost ,Shot这几个类。

    首先,这几个类都属于Moel层,这几个类都是主要用于存储相应的实体类的信息,具体为什么请听我一一娓娓道来。  

    ①MoveResult——记录移动信息的类,就是记录运动员的移动的信息。他继承与Discoid这个类,物体的实体类。

    而实现的伪代码如下:

    相应的源代码如下:

    View Code
        /// <summary>
        /// 移动的结果
        /// </summary>
        public class MoveResult
        {
            /// <summary>
            ///   构造函数  进行 数据初始化
            /// </summary>
            public MoveResult()
            {
            }
    
            /// <summary>
            /// 各种传递位置
            /// </summary>
            public List<DiscoidPosition> DiscoidPositions { get; set; }
            /// <summary>
            /// 是不是控球双方易手了
            /// </summary>
            public bool IsTurnOver { get; set; }
        }

    ②GoalPost——球门柱的类,标记球门柱的具体的位置。他继承与Discoid这个类,物体的实体类。

    他的伪代码如下:

    注意球门的大小与位置用相应的等效向量标记。

    相应源代码如下:

    View Code
    ///  球门的实体类  
    public class GoalPost : Discoid
        {
       /// <summary>
            /// 构造函数 进行数据赋值
            /// </summary>
            /// <param name="position">当前位置</param>
            /// <param name="size">尺寸</param>
            /// <param name="id">当前id</param>
            public GoalPost(Vector2D position, Vector2D size, string id)
                : base(5, 0.3, false)
            { }
         }

    ③Shot——射门的类,记录每个射门的信息。

    他的伪代码如下:

    相应的源代码如下:

    View Code
        /// <summary>
        /// 射门的类
        /// 用于记录射门的球
        /// </summary>
        public class Shot
        {
            /// <summary>
            /// 构造函数  用于  数据的初始化
            /// </summary>
            /// <param name="player">玩家</param>
            /// <param name="target">目标</param>
            /// <param name="strength">力量</param>
            /// <param name="value">相应的值</param>
            public Shot(Player player, Point target, double strength, int value)
            {
                //玩家赋值
                this.Player = player;
                //什么的目标
                this.Target = target;
                //力量
                this.Strength = strength;
                //摩擦系数
                this.Value = value;
            }
            //玩家属性
            public Player Player { get; set; }
            /// <summary>
            /// 目标的值
            /// </summary>
            public Point Target { get; set; }
            /// <summary>
            /// 力量
            /// </summary>
            public double Strength { get; set; }
            /// <summary>
            ///摩擦系数
            /// </summary>
            public int Value { get; set; }
        }

    这就是今天的内容,以后我们在介绍另外的内容,反正好戏在后面,项目的开源地址是http://51aspx.com/Code/ZCWWorldCupV10

  • 相关阅读:
    Win32K里的死循环
    Oracle 经常使用命令小结
    ImageView 会盖掉ScrollView的OnTouchListener,监听Activity的手势
    怎样安装pip--python的包管理工具
    设计模式-模板方法
    django中怎样生成非HTML格式的内容。
    SharePoint 2013 设置自己定义布局页
    Android读写JSON格式的数据之JsonWriter和JsonReader
    基于Linux 3.0.8 Samsung FIMC(S5PV210) 的摄像头驱动框架解读(一)
    BZOJ-1923-外星千足虫-SDOI2010
  • 原文地址:https://www.cnblogs.com/manuosex/p/2781362.html
Copyright © 2011-2022 走看看