人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

HSPで麻雀のソフトを作っています。ある数牌Aを3枚(暗刻とは限らない)持った状態で立直したあと、4枚目のAをツモったとします。ここで、このAが暗槓できるかどうかを調べたいのですが、どのように実装すればよいのでしょうか。但し、Aが「暗刻であると言い切れる(どのような見方をしても順子の一部や雀頭には絶対にならない)」状態であるならAは暗槓できる、とします。また、立直後なので送り槓はできないものとします。

●質問者: MihailJP
●カテゴリ:趣味・スポーツ ゲーム
✍キーワード:HSP いもの ソフト 立直 雀頭
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● rafile
●10ポイント

槓前の上がり牌と槓後の上がり牌に変化がないこと。

http://end

◎質問者からの返答

回答ありがとうございます。

ただ、たとえば1113444m東東東発発発のような場合、一萬を暗槓してもしなくても

二五待ちと三萬の単騎の三門張ですが、この場合

「一萬の雀頭・1_3の嵌張・四萬の暗刻」と見ることもできるので、

このような場合も除外したいのですが。


2 ● ふるるP
●20ポイント

ルールでは、リーチをした後、待ち牌が変化してはいけません。

同じ牌が3枚ある状態とそれをカンした場合に、待ち牌が変化しているならば、それはカンしてはいけません。

たとえば

3334567

の23578の待ちで、3がきてもアンカンしてはいけません。待ちが47だけに変化するからです。


http://www.net

URLはダミーです。

◎質問者からの返答

ありがとうございます。

ただ、上に書いた1113444の場合ように

「待ちが変わらないのに面子構成が変わる」(この場合1_3の嵌張と見ても成り立つ)

という場合もあるので、それらも除外できる方法もあればいいのですが。


3 ● ふるるP
●40ポイント ベストアンサー

待ちが変わらなくても槓してはいけないパターンは、槓する前後で、牌視が変わらないことでもあるので、牌の組み合わせが2パターンある場合(例に挙げられた1113444のような場合)、そのどちらのパターンも満足させないといけません。1を雀頭してもいいし、4を雀頭としてもいいので、槓をした後も1と4の両方を雀頭にできるようでなければ行けません。つまり、

(1) 待ちが変わらないこと

(2) 牌の組み合わせ上、雀頭とみなされていないかどうか

の2つの条件で槓ができるかどうかがわかるでしょう。

http://end

◎質問者からの返答

ありがとうございます。

待ち牌のチェックに加えて、雀頭になりうる牌かどうかを

チェックすればよさそうですね。

向聴数をチェックするためのコード(とデータベース)もあるので、

それをなんとか利用できそうです。


4 ● rafile
●30ポイント

依然として待ちの変化でいけると思いますが。

嵌張の2と、両面の2・5、そして単騎の3から、両面の2・5、そして単騎の3に変化してますよね。

結果の見た目は同じですが、プログラムで容易に見分けられるのではないですか?

http://end

◎質問者からの返答

回答ありがとうございます。

内部的に「ある牌が当たり牌であるかどうか」の判定コードはあるのですが

「それが両面・嵌張・辺張・双ポン・単騎のいずれであるか」のコードは

加符点と平和の判定のところにしか組んでいなかったので

そこのところを改良する必要がありそうです。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ