游戲的原貌到底是怎么樣的了,這節我們給你來揭秘吧。
我們這里遵從先外向里的原則,先局部后整體的原則吧。首先看看他的整體的結構吧!如圖所示:
這里沒有用分層的概念,而是一個文件夾代表了一個層。層確實蠻多的,但是與這個有關的核心的文件夾只有這幾個Images文件夾,Sound文件夾,Controls文件夾,Common文件夾,View文件夾。
Images文件夾包含了這個游戲中所有的資源的圖片。
Sounds文件夾包含了這個游戲中所有的聲音文件。
而Controls包含了其中控制器,控制相應頁面上控件的業務邏輯。如下圖所示:
BallFace——控制有關球運動的相應的邏輯。
GameHelper——游戲中相應的幫助類。
GreenButton——重寫綠色按鈕的類。
PlayFace——運動員的玩家的類。
ScoreControl——得分控件的類,控制相應得分的邏輯。
Teams——控制頁面上隊伍的類。
Core——游戲的核心類,相應的實體類。如圖所示:
Ball——球的實體類。傳遞球的信息。
BallEnteredGoal——判斷球是否進球的類。
Discoid——所有的球與球員的繼承的類,實體類。
FoulType——犯規的類型枚舉類型。
Game——游戲的實體類。
GameConfig——游戲的配置的類。
GameState——游戲的狀態的枚舉類型。
GhostBall——鬼球的類。
Goal——球門的類。
GoalPost——球桿的類。
Group——分組的情況的類。
IGoalObserver——檢測的球的觀察類。
MoveResult——最終的移動的結果。
PlayerPosition——運動員的坐標位置的類。
Player——運動員的類。
PlayerMoveResult——運動員的移動結果的類。
PlayerConfig——運動員的配置的類。
PlayerState——運動員的狀態枚舉類型。
PlayerToBallContract——運動員的踢球的類。
PlayerToPlayerContract——運動員撞運動員的類。
RectangleCollison——矩形的碰撞檢測的類。
Shot——射門的類。
Team——球隊的實體類。
TeamPlayer——球員的類。
Turn——射門的類。
TurnEvent——射門的結果的類。
DiscoidPosition——子控件的坐標位置的類。
Vector2D——射門二維向量的類。
View——控件的UI層。如圖所示:
IntroMenu.xaml——開始的子菜單信息用戶控件。
UserControlContainer.xaml——用戶控件的容器的類。
吧這些控件的放在MainPage上面,這就是所有用戶控件的容器類。
由於MainPage是 用戶控件,吧他放在MainPage1上面才能使用。具體情況,如圖所示:
這就是,這個游戲的基本簡介,具體情況,我們后來再說。