win8 开发之旅(19) --足球游戏揭秘6

简介:

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

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

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

而实现的伪代码如下:

相应的源代码如下:


 /// <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这个类,物体的实体类。

他的伪代码如下:

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

相应源代码如下:


///  球门的实体类  
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——射门的类,记录每个射门的信息。

他的伪代码如下:

相应的源代码如下:


 /// <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


目录
相关文章
|
Python
Python版飞机大战游戏的设计(三)-----游戏背景
Python版飞机大战游戏的设计(三)-----游戏背景
145 0
Python版飞机大战游戏的设计(三)-----游戏背景
|
8月前
|
C# 图形学
【Unity】2D游戏-愤怒的小鸟教学实战(附源码和实现步骤 超详细)
【Unity】2D游戏-愤怒的小鸟教学实战(附源码和实现步骤 超详细)
407 2
|
Python
Python版飞机大战游戏的设计(二)-----游戏框架搭建
Python版飞机大战游戏的设计(二)-----游戏框架搭建
127 0
|
Python
python小游戏——乒乓球大战2.0版本の双人联机对战功能的实现
python小游戏——乒乓球大战2.0版本の双人联机对战功能的实现
303 0
|
存储
游戏开发实战教程(13):闯关模式的实现
之所以制作这样的一个模式,起初的想法是这样的:原来的游戏模式一局的时间比较长,以我自己为例,进行一次游戏的时间至少要在 10 分钟以上,如果认真仔细一点儿,想玩到几千分的话,那么可能需要半个小时以上。很明显这样的单次游戏时长对于一个小游戏来讲有些太长了,但是游戏模式已经是这样了,如果想要缩短单次游戏之间,在现有的模式下只能通过增加游戏难度这种方式,但这并不是一种好的方式。
140 0
|
开发者
从零开始制作一个俄罗斯方块游戏
小蚂蚁的游戏目前已经上线,主要面向的是有一定基础的同学。从零开始制作一个经典的俄罗斯方块游戏,理论结合实战,帮助你进一步提升做游戏的技能。
163 0
|
Python
python及pygame雷霆战机游戏项目实战14 游戏开始结束界面
python及pygame雷霆战机游戏项目实战14 游戏开始结束界面
217 0
|
Python
通过游戏学Python系列之小兔要上天---手把手教你使用Pygame开发平台跳跃类游戏01之Pygame游戏模板
通过游戏学Python系列之小兔要上天---手把手教你使用Pygame开发平台跳跃类游戏01之Pygame游戏模板
139 0