忍者ブログ
Admin*Write*Comment
35歳からのC言語ゲームプログラミング
[38]  [37]  [36]  [35]  [34]  [33]  [32]  [31]  [30]  [29]  [28
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

新しい方式

悔しがっててもしかたないから、つながったぷよの検索の部分に新しい方式を実装した。
今回のは、操作ぷよが落ちた時、消えたぷよの上段が落ちた時、それぞれでグループ分けをしなおすので、増えようが、分割されようが、座標が変ろうが関係ない。

まず、ぷよ全てにバラバラのグループ番号を付けてグループ用の配列に記録する。

フィールド用の配列を参照して各グループの色情報を得る。

グループ配列を上段から検索する。
検索ブロックの上下、右に同じ色のグループがある時は、若い方のグループ番号で結合する。
生き残ったグループ番号のメンバーを+1。

検索終了後、メンバーが4以上になったぷよを消す。

消えたぷよの上段を落とす。

最初に戻る。(消えるぷよが無くなるまで繰り返す。)

処理の流れはこんな感じ。
失敗に終った方式から、グループで管理する部分を継承しつつ、インデックスの仕方と検索の仕方を変えた。
グループメンバーの座標を管理する必要がなくなったのと、グループナンバーが使用中かどうかのフラグも必要なくなったので、シンプルな形になった。

まだ、たまにおかしな動きがあるけど、格段に良くなった。
テストしながら直してゆこう。
どうか・・・致命的な問題がありませんように・・・。

http://u7.getuploader.com/game/download/54/%E3%81%B7%E3%82%88%E5%86%8D%E7%8F%BE%E3%83%81%E3%83%A3%E3%83%AC%E3%83%B3%E3%82%B8%EF%BC%8312.zip

実行ファイルをアップしときます。
いつもどうりzipです。解凍してからexeファイルを実行してください。

デバッグ用のため落下ごとに一時停止します。
そのつど、なにかキーを押してください。

下は現在のソースファイルです。
前の方式で使ってた変数宣言が残ったままの生々しい感じで・・・。
http://u7.getuploader.com/game/download/55/%E3%81%B7%E3%82%88%E3%81%B7%E3%82%88%E5%86%8D%E7%8F%BE%E3%83%81%E3%83%A3%E3%83%AC%E3%83%B3%E3%82%B8%EF%BC%8312%E3%81%AE%E3%82%BD%E3%83%BC%E3%82%B9.txt




PR
この記事にコメントする
お名前
タイトル
メール
URL
コメント
文字色
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
secret
この記事へのトラックバック
この記事にトラックバックする:
  • ABOUT
やってやれないことはないっ!たぶん・・・
  • カレンダー
06 2025/07 08
S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
  • 最新コメント
[11/09 CALL MY NAME]
[11/09 erin]
[08/18 うずランド]
[07/11 うずランド]
[06/23 うずランド]
  • プロフィール
HN:
Call my name
年齢:
51
性別:
男性
誕生日:
1974/05/22
職業:
スロ屋店員
趣味:
いろいろ
自己紹介:
やる気だけはあるつもりです。
はい。
  • バーコード
  • ブログ内検索
  • カウンター
  • アクセス解析
Copyright © 35歳からのC言語ゲームプログラミング All Rights Reserved.*Powered by NinjaBlog
Graphics By R-C free web graphics*material by 工房たま素材館*Template by Kaie
忍者ブログ [PR]