|
新着トラックバック
|
|
新着トラックバックはありません
|
|
| 若干近づいてきた |
| 2010年2月16日 10時07分 |
やあやあ、徹夜はしたが、その間ずっとプログラムをしていたわけでもないサカックだ。ホント、努力しない人間だ。
さて、前回ぶはぁ!となった所は…
・画像おかしいがな!!
・同じカードでてるがな!!
・キー1回押したら5枚ぐらいめくれてるがな!!
まあ、概ねこんな所だ。
画像がおかしかったのは、無いはずの通し番号0番が入ってたから。
シャッフルしてやろうとしたらおかしくなってた。トホホ。
そもそも使いもしないのに0をリザーブで…とか思うからこんな事に。
先の事を考えているフリをしていても、実は無計画だとバレバレじゃないか。
同じカードが出ていたのは、なんか以前、後々使うからとカードの通し番号(1〜54とか)を引数にして、カードの数字は何番?(1〜13)を返す関数を作っていたのだが、
こともあろうに
描画する(カードの表示元画像位置を返す(カードの数字を返す(通し番号)))
みたいな事を書いてしまっていたようで。
カードの表示元画像の位置を返す関数はカードの通し番号を入れるだけでよかったのに変換してしまったものだから、通し番号のはずの数値が1〜13のどれかになるわけで。
どのカードもクラブの1〜13に化けたというオチだった…なんてこったい。
キー1回で何枚もめくれたのは、まあ予想通り。
キーを押してるかどうかだけ検出してたので、1フレームの間にキーを放さないと一枚めくる事ができないという状態。
直前にキーは押されていたかフラグを作って、キー入力があったら、直前入力が無かった場合だけを「キーが押された瞬間」として採用する事で解決。ってか基本中の基本なわけだが。
簡単な事のはずだが、最近デバッグなんてマトモにしてなかったからすげえ大変だった。
そうして地道に直したら、こんな感じ。

キーを一回押すと…

おお、一枚だけめくれた。
で、ずだだだだーっと押しまくると…

オマケにリフルシャッフルもしておいたのでカードが混ざってる。
本当にちゃんとシャッフルできているかはちゃんと確認していないが…
ひゃっほー万事解決?と思ったら、最後の一枚の時の処理を入れてなかった。
最後の一枚めくったら存在しない53枚目を表示させようとするのでエラー。
どこまでも、ツメが甘い。
トホホ。
|
| http://db-e.net/sl/archive_86.htm |
|
コメント(0) / トラックバック(0)|XNA|
|
| コメントを書く |
|
|
| コメント |
|
|
| トラックバック |
|
|
|
|
2010年7月
|
| 日 |
月 |
火 |
水 |
木 |
金 |
土 |
|
|
|
|
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 |
|
リンク
関連書籍
|