DATAで範囲座標と文字を定義しておいて
@KEYTBL
DATA "A",19,169,37,151
DATA "B",38,169,56,151
: (N列分 定義)
最初に配列に読み込む
RESTORE @KEYTBL
FOR I=0 TO N
READ MOJI$[I],TX1[I],TY1[I],TX2[I],TY2[I]
NEXT
タッチ判定部分は
FOR I=0 TO N
IF TX>=TX1[I] && TX<=TX2[I] && TY>=TY1[I] && TY<=TY2[I] THEN INC STRING$,MOJI[I]:BREAK
NEXT
というような感じでどうでしょう。
定義した座標や文字はキーボード描画するときにも使えるかもしれません。タッチ判定部分が何ヶ所か出るようなら、関数化したほうが良いですね。
ALL GREENの原作作ったサークルで作られてる「ヤオチュー!」っていうカードゲームなんです。ヤオチュー牌しか使わないのでばらばらだと見た目国士っぽい状態ですねw
本物のフルの麻雀は考える要素多くて思考ルーチン作るの大変でしょうからね
ALL GREENではインチキ一切無しでやってますが、ちょいちょいそういう捨て方する?ってことあります。
まぁご愛敬と言うことで。
(つづき)
ポーカー用語なら、刻子=Three of kind、順子=(3枚で作る)Straight、頭(対子)=One pairで、
Three of kind + One pair (→Full house)か
Straight + One pair の形を作れば上がり(Showdown)です。
不聴罰符はそういうことですね。支払う点数は全体で3000点をやりとりするので、聴牌してる人数で点が変わります。
ALL GREENの場合ほとんど流局することが無いので、流局したらそれはかなりレアです。
ドラもその通りです。
通常の麻雀では9の次は1なのですが、ALL GREENでは發が9と1の間に入ります。
麻雀がある程度わかる人でないと、(日本人でも)わからない言葉が多いと思うので、他にもわからない点あったら遠慮無く聞いてください。