|
我们继续我们的足球的揭秘之旅了,在解密的过程中,我牢牢遵守了由易到难的原则,今天是解密FoulTypes,GameState,PlayerState这三个枚举类型。
FoulType——犯规的枚举类型,相应的源代码如下所示:
1 ///
2 /// 犯规的类型的枚举类型
3 ///
4 public enum FoulTypes
5 {
6 ///
7 /// 直接任意球
8 ///
9 DirectFreeKick = 1,
10 ///
11 /// 间接任意球
12 ///
13 IndirectFreeKick = 2,
14 ///
15 /// 点球
16 ///
17 PenaltyKick = 3
18 }
懂得足球的规则的人都非常的明白,犯规后的惩罚无非是涉及这几种,点球,间接任意球,直接任意球等等。
GameState——当前游戏进行到了何种状态。相应的源代码:
1 ///
2 /// 当前游戏的状态
3 ///
4 public enum GameState
5 {
6 ///
7 /// 没有状态
8 ///
9 None,
10 ///
11 /// 选择球员的状态
12 ///
13 SignIn,
14 ///
15 /// 加载球队的状态
16 ///
17 Setup,
18 ///
19 /// 展示对手的状态
20 ///
21 ShowOpponents,
22 ///
23 /// 玩的状态
24 ///
25 Play,
26 ///
27 /// 进行射门的状态
28 ///
29 TestShot,
30 ///
31 /// 游戏结束的状态
32 ///
33 GameOver
34 }
None——没有状态。游戏没有开始。
SignIn——选择球队的状态,如图所示:
ShowOppent——展示对手的状态,如图所示:
SetUp——加载球队的状态,介于这两个状态之间。
Play——运动员玩的状态。如图所示:
TestShot——进行射门的状态。
GameOver——游戏结束的状态。
PlayerState——玩家的状态的枚举类型。相应源代码如下:
1 ///
2 /// 对运动员的操作的状态
3 ///
4 public enum PlayerState
5 {
6 ///
7 /// 没有任何的操作的状态
8 ///
9 None,
10 ///
11 /// 选择球员的状态
12 ///
13 SelectingNumberOfPlayers,
14 ///
15 /// 选择移动体的最终的目标的状态
16 ///
17 SelectingHost,
18 ///
19 /// 链接的状态
20 ///
21 Connecting,
22 ///
23 /// 接球的状态
24 ///
25 ReceivingInvitation,
26 ///
27 /// 运动的状态
28 ///
29 Aiming,
30
31 ///
32 /// 调用运动员的状态
33 ///
34 Calling
35 }
None——运动员没有任何的操作的状态,如图所示:
SelectingNumberOfPlayers——选择球员的状态,如图所示:
ReceivingInvitation——接球的状态,如图所示:
以上,就是我对三个类的详细说明。后面介绍下几个类。游戏的开源地址:http://51aspx.com/Code/ZCWWorldCupV10 |
|
|