WPF 飛行棋遊戲

2021-09-27 00:16:19 字數 2712 閱讀 2495

閒來無聊就打算自己製作乙個飛行棋遊戲。

他寫了三篇飛行棋設計部落格,結合他的文章內容和我在手機上的遊戲規則,編寫了一款辣眼睛的飛行棋遊戲。

目前已完成單人遊戲的基本功能,就只有拋骰子和迭機動畫未寫。

1.每次拋擲出6點,都可以在擲一次骰子。

⑴若停在傳送門起點,棋子先飛躍至傳送門終點,在飛躍至下乙個同色色塊。

⑵若飛躍至傳送門起點,則只能夠飛躍至傳送門終點。

3.擊殺:棋子停至某格,若已停有其他顏色的棋子,則可以將其撞會飛機場。

4.迭機:同色棋子停在同一格稱之為迭機。某色棋子迭機時,其他棋子無法通過該格,但是會先移動至該格,然後再【後】退,後退過程中還遇到,同理;當某色棋子停在迭機方格,則將迭機棋子全部擊殺。

5.四顆棋子率先抵達終點者獲勝,若點數多餘,則棋子往回走。當遊戲勝利後,五秒鐘後會重置本輪遊戲,玩家資料設為最初的【預設值】。

本來也打算用什麼牛b哄哄的框架來寫,後面仔細想想有點浪費時間【時間不多】,就一切從簡。

就如圖上所述一樣,

converters裡面存放的都是一些轉化,本來是用於datagrid,將一些資料進行轉換,後面被拋棄了區域網,所以這裡面的檔案也沒有用了。

data裡面儲存的就兩個txt檔案,乙個是存放地圖資訊,除了第一次載入地圖的時候,其他都是讀取map.txt裡面的資料;另乙個就是儲存使用者設定。

entity存放飛行棋最基本的類,box是地圖的方格;chess是玩家的棋子,繼承button;player飛行棋玩家;map就是所有方格的集合。

game儲存遊戲裡的公共內容。

helpers遊戲的一些幫助類。

images整個遊戲的資源檔案存放此處。

theme控制項樣式。

windows遊戲介面。

這是一張1080*1080的,將其分割成36*36,地圖上的每個點都能對應乙個座標,後面為了方便給方格排序,我稍微微調一下座標點。

將方格分類為:基礎方格、飛機場方格、起飛點方格、起點方格、傳送門起點方格、傳送門終點方格、轉折點方格、衝刺方格和終點方格

基礎方格:棋子正常跑的賽道,但不包含衝刺賽段【最後一段直線】。

轉折點方格:某色棋子基礎方格的最後乙個

衝刺方格:最後一段直線。

/// /// 飛行棋地圖中的方格

///

[serializable]

public class box

/// /// x軸座標

///

public int pointx

/// /// y軸座標

///

public int pointy

/// /// 所屬顏色

///

public colorenum color

/// /// 是否是基礎方格

///

public bool isbasic

/// /// 是否是飛機場

///

public bool isairport

/// /// 是否是棋子的起飛點

///

public bool istakeoff

/// /// 是否是傳送門起點

///

public bool isportalstart

/// /// 是否是傳送門終點

///

public bool isportalend

/// /// 是否是棋子的轉折點

///

public bool iscrisis

/// /// 是否是賽道的衝刺階段(最後一段直線)

///

public bool ishomestraight

/// /// 是否是棋子的終點

///

public bool isdestination

}

因為需要將方格集合需要儲存到txt文件中去,需要標記【serializable】

其他的內容我也就不多說了,程式中每個方法都有注釋,我相信應該能夠理解。

電腦玩家的**我就沒隨便寫了,如果你們有興趣可以自己完善。我就簡單的做了一些if判斷。

如果你要換成winform的專案,那你就需要更改移動動畫和介面,整個程式沒有加try..cath..,所以嘛。。。。

C 飛行棋遊戲

1 using system 2using system.collections.generic 3using system.linq 4using system.text 5using system.threading.tasks 67 namespace 05.飛行棋遊戲834 35 conso...

C 編寫飛行棋遊戲

using system using system.collections.generic using system.linq using system.text using system.threading.tasks using system.drawing 繪圖 namespace plane...

騎士飛行棋

include include include include int map 110 bu 1000 char str 4 20 struct node a 3 void f strcpy a 2 name,str m printf 玩家2選擇了 s n n a 2 name printf 人物選...