GameDesign 板


LINE

※ 引述《jack58 (還是晚了點~)》之銘言: : 我想寫黑白棋這個遊戲的程式.. : 我現在也想寫ㄧ個黑白棋的遊戲..但是說真的還沒什麼頭緒> <".. : 有高手能告訴我黑白棋會用到的相關程式嗎?? : 或著他會用到的數學公式..方程式等... : 還有就是~~黑白棋有什麼歷史的淵源嗎??他是怎麼誕生的阿?? 歷史淵源....這個Google一下,資料應該跟山一樣多@@... 網路上也找得到黑白棋範例程式....所以,多上網找吧XD (逃) 好吧爲避免有賺P幣之嫌,回答一下好了:) 首先,要用什麼程式語言寫....其實真的沒有拘泥,高興的話 Basic,C++,Java都一定寫的出來~~ 那要用到DirectX,OpenGL嗎? 我想除非你想在黑白棋中加入絢麗的動畫(比方說會一下子就 真的有個人出手下子的動畫),否則真的不需要~ 那大概要怎麼寫呢? 我大概給個方向好了,首先你要訂定一個10x10的矩陣,分別代表 棋盤上的點。 內容可能有0,1,2三種變化,定義可能為: 0==沒下棋的點 1==白子 2==黑子 範例:  {0,1,0 0,2,0 0,1,1} 可能代表著如下的局勢: ╒○╕ ╟●╢ ╘○○ 下棋時後,分成圖層輸出、和底層處理,當你在某點下子時候 一方面會改變圖形的顯示,另一方面會改變那個矩陣內容。 比方說我現在持白子,下在剛剛棋盤上左上角那個點,那你就 要讓矩陣變成  {1,1,0 0,2,0 0,1,1} 接著還沒到對方輸入回合(或電腦思考回合),就要開始進行 判斷了。黑白棋基本規則是,只要你能在一條線上把對方完全 圍起來,就可以把棋子翻過來-也就是讓對方的子變成你的子 。(不清楚的話先把遊戲規則看清楚喔) 因此我們接著就是要讓程式作判斷,看哪些子有被圍起來。 判斷方法透過兩個if和for就好,我舉例如下: //X,Y定義為你剛剛下棋子的落點X,Y for(i=X+1;i<width;i++) //width在標準規則裡面就是10 //這裡只查在你下子右邊的局勢,總共要查八個方向 { if(matrix(i,Y)==matrix(X,Y)) //如果查到直線上有個跟你一樣的子 { bool is_all_dif; //定義為是否完全跟你不同色   for(j=X+1;j<i-1;j++) //查詢在那中間的子 { if(matrix(j,Y)==matrix(X,Y)) //如果有個跟你一樣顏色的,那就不算    { is_all_dif==false; break; } } if(is_all_dif){ChangeALLColor(X,Y,i,Y);} //如果都不同色,改變她們顏色 } } ChangeALLColor(X,Y,i,Y)子函式定義為改變兩個座標之間所有子力 這大概就是個雛形了!接著只要針對八個方向去做偵測就完成了~ 簡單吧:)?? 當然這個結構還不完整,你接著還要思考的是,怎麼做介面? 比方說要怎麼輸入?是否能選擇聲音或棋子顏色? 這些有趣的選單 如果想做成可以跟電腦對戰的,那難度會立即上升到一個你無 法相信的境界。初學程式我還是會建議你先從能做雙人對打的遊 戲開始。 回到原點,以上我用的都是結構化程式語言的概念,你看短短三 四行判斷,我已經用到迴圈決策副函式XD 重點是這些東西,都是不限定任何程式語言的。所以,在初學時 後,不應該被那些東西綁住。尤其如果有人跟你說黑白棋非學個 什麼什麼才能寫出,那你就用最基礎的GWBasic寫給他看吧XDDD 以上希望能回答你的問題:) --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.168.185.111







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:iOS站內搜尋

TOP