
No.2ベストアンサー
- 回答日時:
使い勝手がいいかどうかは知らんけど, スクウェアなますを使ってヘックスっぽくする, 俗に「疑似ヘックス」と呼ばれる方法があります. 縦と横のうちある方向はそのままにしてもう一方を半分だけずらすという手法で, 確かファミコンの大戦略でもこの表示を採用していたんじゃないかな.
これなら (「隣」の判定は若干面倒だけど) 二次元配列で表現できますね.
試しにやってみました。
二次元配列で表現できましたが、ヘックスの上下の判定が
オセロのようなマスメと違って複雑になって頭が痛いです。
ずらした行の一つ上はxとx+1になって
ずらさなかった行の一つ上はx-1とxになって…。
そのあたりがなんとか出来れば実現できそうです。
有難うございました。
No.4
- 回答日時:
こうしてはどお?

ご回答ありがとうございます。
とりあえず、2と3のかたのやり方で実装してみましたが
特別問題はないので、それで行くことにしました。
作成を進めてみて問題が出てきたら
そちらのやりかたをご参考にさせて頂きます。
助かりました。
No.3
- 回答日時:
回答2のやり方がスマートかと思いますが、
「疑似ヘックス」というのは表示上の手抜きの問題で、
同じデータ形式でも六角形で描画すればそのままヘックス表示になります。
あとは、隣り合うマスの座標ですけど、(x,y)を基準に、
左上:(x+y%2-1,y-1) 右上: (x+y%2,y-1)
左:(x-1,y) 基準(x,y) 右:(x+1,y)
左下:(x+y%2-1,y+1) 右下: (x+y%2,y+1)
といった形で簡単に計算できるかと。
No.1
- 回答日時:
Javaなら、クラス内に左上、右上、左、右、左下、右下にあるカードのオブジェクトを参照するフィールドを作ればいいのでは。
で、それらを単純にArrayに突っ込んで、走査が必要ならArrayを端からみれば良くて、あるカードの隣のカードを見たければ、そのあるカード内のフィールドを参照するとか。
有難うございます。
試しに考えながら作ってみました。
public class Card {
private Card[] card;
private int unit;
public Card(Card cr, Card cl, Card crd, Card cld, Card cur, Card cul, int u){
card=new Card[10];
card[1]=cld;card[3]=crd;card[4]=cl;card[6]=cr;card[7]=cul;card[9]=cur;
unit=u;
}
public Card getCard(int i){
return card[i];
}
public void setCard(Card c,int i){
card[i]=c;
}
}
上下の繋がりをセットするところとか、画面上をクリックしたときどのカードがを押したのかの判定だの
考えてるとこんがらがってきますがとりあえず作れそうです。有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 正五角形の対角線と求角 添付の画像、36°と求められるのですけど、 私は正五角形の内角の1つを108 5 2022/10/20 15:00
- 数学 高校一年生です。 数学で分からない単元があるので教えて欲しいです。単元は命題の真偽です。 出た課題の 4 2023/08/18 16:30
- その他(住宅・住まい) 六角形のネジ?ボルト?を緩めて外すにはどうしたらいいですか? 4 2022/09/17 10:59
- ノートパソコン 三角形折りの卓上札に両面印刷をしたいのですが、全くわかりません。エクセル、ワードだれか教えてください 4 2023/06/23 22:52
- 数学 画像の中学2年生の数学の問題について教えていただきたいです。 三角形ADCが二等辺三角形であることと 2 2023/01/29 16:14
- 囲碁・将棋 ▲1五角が危険すぎる(投了図) 1 2023/01/06 07:25
- 数学 問題「キッチンペーパーだけでバウムクーヘンを五等分せよ」 正解は? 5 2022/12/16 22:18
- 囲碁・将棋 2019年1月号ゴキ中を押さえ込もう 2 2022/08/25 08:01
- その他(ソフトウェア) 簡単な絵が描けるソフト(wordに挿入) 3 2022/05/20 22:16
- 囲碁・将棋 横歩取り45角戦法か 1 2023/06/10 07:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jdbcでinsert,delete,createをe...
-
プログラミングの問題です。大...
-
Googleログインボタンのデザイ...
-
JDONWROADER2のエラー修復
-
「main メソッドを持つクラスが...
-
Eclipse 動的プロジェクトで404...
-
正規表現について質問です。 カ...
-
スプレッドシートからリマイン...
-
googleスプレッドシートのスク...
-
googleスプレッドシートのGASに...
-
Verilogについて質問です。この...
-
論理回路設計をVerilogで行う問...
-
ゲーム開発の入門書を探しています
-
session,requestはjspで未定義...
-
サーブレットをapacheで公開す...
-
下記のリストならno002が含まれ...
-
is this even a thing?
-
JAの支部?地域の農協のカード...
-
えハミルトン路と全域木のちが...
-
CSV出力を画面から選択したデー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JDONWROADER2のエラー修復
-
Googleログインボタンのデザイ...
-
配列にnullを代入すると、null...
-
jdbcでinsert,delete,createをe...
-
「main メソッドを持つクラスが...
-
プログラミングの問題です。大...
-
eclipseで作ったプログラムを他...
-
正規表現について質問です。 カ...
-
Eclipse 動的プロジェクトで404...
-
マイクラでPythonのプログラミ...
-
jdk17.06のインストーラーが起...
-
自作Androidアプリのデータ引き...
-
直し方について教えて頂きたい...
-
eclipse実行ができない
-
サーブレットをapacheで公開す...
-
あんまりお料理しないのに台所...
-
CSV出力を画面から選択したデー...
-
次のhtml・cssでspan内の文字を...
-
問題作成のWebアプリの作り方を...
-
ゲーム開発の入門書を探しています
おすすめ情報