マップ座標xとyのデータベーステーブルがあるとしましょう。表示したいものを取り出し、PILを使って地図画像を作成します。以下を解く最適化された方法
私は画像を作成し、各マップタイルをループして背景画像を貼り付けます。すべてが問題ありません。
タイルにはn人のプレイヤー、モンスター、npc、ポータルなどが存在します。 タイルにオブジェクトがある場合は、特定のイメージを貼り付ける必要があります。
問題:タイルに何かがあるかどうかを確認する方法:どのようなDB構造が必要ですか?
すべてのプレイヤーは、ポジション(FKからポジションのMapTileまで)を持っています。タイルにプレーヤー/モンスター/ npcがどこにあるかをDBで照会すると苦労するので、各座標にobjects_count列を追加します。それが> 0なら、私は発生を探します。
if objects_count:
if query_for_players_exists:
show player
elif query_for_monster_exists:
show monster
elif query_for_npc...
show npc
and so on.
私は、一般的な関係を持つテーブルにM2Mを使用することができますが、私見一般的な関係はその速くはありません。
そして、それは次のようになります。 クエリーセットは49個のタイルで構成されていますが、どのようなオブジェクトがタイル上に存在しているかを簡単に調べるにはどうすればよいですか?
これは1つのクエリです。問題は、これらのタイルに配置されたオブジェクトをフェッチする方法です。 – aemdy
ああ。私は擬似コードを間違って補間して、複数のDBクエリを実行していたことを意味します。 – bot403