問題タブ [tetris]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - このスタック オーバーフロー例外が発生するのはなぜですか?
私はテトリスのクローンを書いています。これは私が実際に行った中で最大のプロジェクトです。行削除コードを実装する際に、スタック オーバーフロー例外を受け取り始めました。おそらく、私の膨大なコレクションや、ひどく非効率的な Linq の使用に関係していると思います。問題を引き起こしている特定の方法は次のとおりです。
方法がわかれば、ソース全体を添付します (必要に応じて別のサイトを使用しても)。
気が向いたら、誰かがコード ベース全体を見て、私が何を書いて何を間違っているか (命名規則、アルゴリズムなど) を教えてくれてもかまいません。明らかに、これはこのサイトの目的ではありませんが、とにかくコード ベースを攻撃しているので、これを投入すると考えました。
編集: メインのゲーム ファイルは次のとおりです:
http://pastebin.com/PqVAS56U
コードの残りの部分は次のとおりです:
http://pastebin.com/JjBKZgwN
Edit2:これはスタック トレースだと思います:
machine-learning - リアルタイム ゲーム プレーヤー シミュレーターを構築するための好ましい機械学習手法は何ですか?
私は、テトリスの遊び方を学習する AI エンジン、つまりヒューリスティックを調整するなどしてパフォーマンスを改善できるエンジンの構築に着手しました。GUI を片付けたとしましょう。エンジンの構築はどこから始めればよいでしょうか。これに関連する機械学習の概念を理解するには、初心者としてどのリソースを使用すればよいですか?
特に、主題の数学的処理ではなく、コードと実際の例に基づいた説明資料を探しています。
android - Android テトリスのエラー - getEntry
当時、私と友人は、学校のプロジェクトでクラシック ゲームのテトリスをプログラミングしていました。私はしばらくの間プログラミングをしており、rotate と moveBlock の両方、および newBlock、draw などのメソッドを実装していたので、今が初めて実行するのに最適な時期だと思いました。しかし、その後、エラーメッセージが表示されます:
メソッドを使用して、自己構築されたビュー(surfaceHolder / surfaceView)を使用するスレッドで実行しています。基本的に、教師がヘビゲームをプログラムしたレッスンに従っています。したがって、テトリスで正しいようにメソッドを更新すると機能するはずですが、今ではエラーが表示されません。エラー メッセージの意味を知っている人は、さらに情報が必要な場合は質問を貼り付けてください。
多くの LOG コマンドを追加しましたが、TetrisView (surfaceView) コンストラクターと Thread のコンストラクターから LOG を取得したので、どのメソッド内にもありません。
java - Tetris、Android/Java の int 配列で左/右をチェックする
Android用のゲームプログラミングを学ぶのに役立つAndroid用のテトリスゲームを作ろうとしています。私の goLeft/Rights は、ボタンが押されると右に壊れます。左に移動するためのコードは、フィールド int 配列とリスト パーツ配列とは別のクラスにあります。fields 配列は、参照変数 (TetrisWorld tetrisworld;) によってアクセスされます。パーツ リスト配列は公開されているため、goLeft() コードにある変数 (パーツ) コードを介してアクセスします。if(tetrisworld.fields[x][part.y] != 0) 左のコード:
fields int 配列のコード:
WORLD_WIDTH と WORLD_HEIGHT はどちらも静的な最終整数で、幅は 9、高さは 19 です。
if(tetrisworld.fields[0][0] == 0) を入れてみましたが、それでもクラッシュするので、変数とは関係ないと思います。また、それを確認するコードをまだ追加していなくても、範囲外にはなりません。これは、x = 5 の周りにテロイドが発生しているためです。ハプニング
goLeft/Right メソッドを「world = TetrisWorld();」を持つ gamescreen クラスに移動しようとしました。そして、それはまだ同じ場所でバグアウトします
アップデート:
追加するだけでOK:
最初のifステートメントで修正されましたが、私の質問は、なぜ修正されたのですか? このチェックがないと動けないのはなぜですか?私の知る限り、それは明らかにゼロの原因ではありません。今では完全にレスポンシブです。
しかし、これを解決するためのより簡単な方法は、SOOOO簡単fields
に静的に変更することです...そして、それにアクセスするように:TetrisWorld.fields
だから私の更新されたコードは次のとおりです:
python - ランダムなテトリスの形
テトリスのランダムな形状をボードに描画する Python プログラムを作成しようとしています。これが私のコードです:
私の問題は「self.current_shape = Board.draw_shape(the_shape)にあります。the_shapeは定義されていませんが、create_new_shapeで定義したと思いました.
javascript - テトリスを作成しようとしていますが、作成できません
何らかの理由で、私のコードは、各ブロックにxとyの位置を割り当てることを許可しません。各ブロックの幅と高さは30ピクセルで、その一部である部分に応じて色が付けられます。重力とクリア関数は実装されておらず、左に移動する関数と右に移動する関数は、右に機能していなかったために大きく異なり、左の関数に表示されているように再作成されましたが、機能が低下します...
助けてください!
編集:申し訳ありませんが、通常は何も投稿しません。私が今通り抜けることができない部分は、関数ブロック/ブロックの追加/タイプセット/タイプの割り当てです。ランダムなものをかなりうまく割り当てますが、そのタイプ(正方形など)がx値とy値を割り当てようとすると、エラーが発生します。
java - Tetris midlet 属性
上記は、ブロックの Tetris midlet/J2ME コードです。しかし、これらのパラメータを説明する方法がわかりません。誰でも私にアドバイスを与えることができますか?完全なコードが必要な場合はお知らせください。
これは私の完全なコードです:
}
c# - テトリスのクリアラインの問題
プロジェクトのテトリスクローンを作成しています。私はほとんど完了しましたが、私の明確な線のクラスには、私が振ることができないバグがあります。スプライトを描画する 10*20 グリッドを作成しました。床に線を引くと問題なく動作しますが、その上では線が削除され、その下にあるものもすべて下に移動します。これは私のクリアラインクラスのコードです:
誰かが何をすべきかについて光を当てることができれば、本当に感謝しています。私はたくさん試しましたが、何もうまくいきません:(
java - JFrame内のJPanel
Javaの学習を始めたばかりで、今はTetris用のGUIを作成しています。私はそのようなものが欲しいです: 1 http://desmond.imageshack.us/Himg846/scaled.php?server=846&filename=tetrisf.png&res=landing
編集:誰かがこれを修正する方法を教えてもらえますか?
これは、TetrisFrame(拡張JFrame)コンストラクターの一部です。
これは私のTetrisPanelクラスの一部です。
python - 「後」無期限ループ: メインループに入ることはありません
これは私の最初の投稿です。2 か月前にキャリア スワップを検討しているときにコーディングを開始し、テトリスのクローンに取り組んでいます。コア機能のほとんどを実装しましたが、アフター ループでゲームを継続的に更新することができません。
Tkinter を使用して Gui を生成し、イベント指向プログラミングを試しています。
私の理解では、after(Time, Event)
fromは、 で指定された遅延の後にコールバック関数が発生するTkinter
ようにスケジュールする必要があります。コードはこの後、後続の項目を実行し続けることになっていると思います。Event
Time
私のフレーム リフレッシュ関数 ( game.updateBoard()
) は、テトリスが機能するために必要なイベントのほとんどを実行し、after を使用してそれ自体を呼び出します。ゲームのインスタンスを初期化するときに一度呼び出します。
に進む代わりにmainloop()
、game.updateboard()
関数はafter
無期限に自分自身を呼び出します。
after
指定された遅延が発生するまでスクリプトを実行し続けるという、私が思っていたように動作していないと思われます。コールバックが終了して続行するのを待っていると思います。
これに関するリソースを見つけようとしましたが、できませんでした。
この質問、添付のコード、または一般的なコーディングについての提案があれば、喜んでお聞きします。これは学習プロセスであり、私はあなたが提案するほとんどすべてを喜んで試します.
コードの関連部分は次のとおりです。