用Visual Basic自編小遊戲 (轉)

worldblog發表於2007-12-09
用Visual Basic自編小遊戲 (轉)[@more@]

用自編小遊戲

開始學vb時,並不知道vb可以做出動畫,後來知道透過自編的子delay(c的庫函式中的該函式)和cls可以做出許多動畫,但有一個缺點就是太耗,就我個人認為構思應該比重要,因為一旦有了一個很好的構思剩下的問題都是技術問題,而我就是喜歡發現新的問題然後再想方設法解決它,透過發現問題和解決問題我可以學到許多很有用的知識和技巧。好了,現在有了一個好的構思就開始進入的編制。

  第一步,要做成這個遊戲的話必須能使小球有一個判斷性的運動,然而如何處理小球的運動呢,很顯然delay&cls的方法不再適用,因為整個程式執行時不停的清屏效果將很差,所以我想到了用shape來替代用circle命令畫的小球,接著要使小球運動起來,這個問題很簡單,因為shape控制元件有left和top的屬性,可以透過對這兩個屬性的控制可以很輕鬆的解決小球運動問題。

  第二步,將對小球進行角度控制,角度可以透過shape的屬性left和top來反映,透過timer控制元件使小球的left和top值不斷加上一個值或減去一個值,小球的left和top同時改變之後就可以對小球的角度進行控制。到這裡已經可以使小球運動起來,接下來的問題就是使小球能進行判斷性運動。

  第三步,可以這樣對小球進行判斷性控制,當小球的left大於窗體的scaleleft時小球的left改變成減去一個值,以此類推,小球的高度也可以進行類似的控制,現在已經很方便的對小球進行判斷性運動,到這一步程式已經算是完成了一半。

  第四步,既然小球可以自由的運動了,那就可以產生這樣一個想法,當小球的top和left的磚塊的top和left值接近到一定的範圍的條件成立時使磚塊的visible為false,然後小球的top和left加上接觸前相應相反的值,就可以使磚塊消失同時小球改變運動軌跡,這一步的實現需要解決很多技術性問題,可以在form的load事件裡定義兩個變數Dwd和Dhd以及兩個Boolean量為Dw和Dh,透過Dwd和Dhd來控制小球向左和向上運動,當小球和窗體的邊界或和磚塊的的邊界接觸時使Dw和Dh的值進行相應的變化,透過對該兩個值的控制可以使小球進行合乎反彈角度的運動,現在程式已經初步成型。

  第五步,要做成這樣的一個遊戲,必須有一個良好的介面,為了使小球能接受使用者的控制,我在窗體的下邊界放置了一個命令按鈕,該命令按鈕可以透過方向鍵來控制,然後再加上一些判斷語句使得小球command接觸時產生相應的運動,這樣一個使用者介面就解決了。

  第六步,現在只剩下程式的最後一步,就是生成磚塊的排列,磚塊可以用命令按鈕來替代,然後用迴圈語句將設定好的command控制元件陣列在程式執行時載入進來,好了,現在已經一切完成.


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-990077/,如需轉載,請註明出處,否則將追究法律責任。

相關文章