手遊《奧林劈圖》的開發日記(二)

峻峰飛陽發表於2019-04-03

 

        無論對結果滿不滿意,我不會對自己曾經的努力後悔。有人對我說:你覺得你花了那麼好幾年時間,熬了那麼多個深夜值得

嗎?我將回答:值得,因為那裡有我的青春記憶。但如果能讓我回到從前,給我一個重來的機會,我再也不會這麼做。

 

[2016年5月17日]


g2Ring的強化設計

強化g2Ring的元件性,弱化g2ShapeClip, g2ShapeClip依賴g2Ring實現圖形功能。

class g2Ring {

std::vector<g2Ring> m_children; 

}

class g2Shape  extends g2Map {
    g2Ring ring;
}

//g2ShapeClip是主地圖剪下下來的一塊地圖,vertex, edge, grid與主地圖共用
class g2ShapeClip  extends g2Shape {
    g2Map* hostMap
}

 

父Ring定義外邊界,子Ring定義內邊界。典型的是圓環。

子Ring所有點都在父Ring內部或邊界上,子Ring面積一定比父Ring小。

Ring有方向,例如:圓環外邊界是逆時針,內邊界是順時針。

 

備忘:

change <string.h> to <string>

[2016年5月17日]

Outline 由g2Ring表示

輪廓線的拐角包括1, 0, -1。

Outline區域性特徵由1,0,-1序列表示:

-1, 1, 1, -1 一個凸型

1, -1, -1, 1 一個凹型

判斷一個Outline包含幾個凸型,只需搜尋g2Ring::m_corners即可。

 

[2016年5月19日]

 

美術及介面風格設計

 

色調: 亮麗,新鮮

高光:

立體有型

背景分層,景深,層間相對滑動,有動感物體(閃爍,滑動...)

 

介面主體顏色亮麗,新鮮。元件元素高光,有型。元件元素適當動畫。

 

遊戲資源:

源圖單元塊,目標圖單元塊,源圖圍牆

劈分牆

方塊(立體感強,劈分後鼓出)

障礙塊 (目標區域)

障礙牆 (目標區域,勾勒出方塊的輪廓或它們之間的界線)

圍牆 (目標區域的範圍,與障礙塊和障礙牆組合來限制方塊位置)

桔子,梨,糖葫蘆,蘿蔔和蘿蔔坑,

 

 

[2016年5月22日]

源圖形和目標圖形的變換

 

同時映象或旋轉源和目標圖形將會產生新關卡。

旋轉軸點為圖形中心點。

 

水平映象,豎直映象,水平豎直映象,

旋轉90度和-90度

 

源圖形與目標圖形交換

 

[2016年5月22日]

劈圖攻擊PVP設計

兩個玩家分別完成電腦隨機生成的劈圖題,成功完成後的目標區域作為自己的攻擊圖形或作為防守的保衛圖形。

攻擊圖形調整位置後啟動攻擊,進入對方腹地,造成傷害,圖形面積越大傷害越大。一方生命為0後失敗,戰鬥結束。

防守時玩家可通過劈分自己的保衛圖形,填充對方的攻擊圖形,成功填充後對方圖形被銷燬。

 

可把陣地分成幾塊,前中後三排,每排塊數可不同,每一塊可容納一個圖形,圖形只能在自己陣地塊內移動調整。陣地塊的排列構成己方的攻擊或防守陣型。

 

AI在陣地塊內根據某個規則生成新圖形,玩家可劈分後,產生自己的兵力。

某個陣地塊一旦被對方兵力攻入,劈分被鎖住,只有等到對方離開後才可解鎖繼續。

 

兵力過河後,速度降低但生命加倍,與對方兵力火拼時相當於以一敵二。

 

 

 

 

 

 

相關文章