こんにちは。
>ボタンが二つ同時に押されている事も想定しなくちゃいけないとなると頭がこんがらがってきますね。
そうなんです。キーボードやマウスと違って複数の指を同時にタッチされていることを想定して作らないといけないので慣れるまでは頭がこんがらがってきます。
mtinfo命令を使う場合は、セットでmtlist命令を使います。
mtlist命令でタッチされているポイントIDリストを取得し、次にポイントIDリストの数だけmtinfo命令で座標等を取得します。
#include "hsp3dish.as"
dim point_id, 1
wx = ginfo_sx
wy = ginfo_sy
px = wx / 4
py = wy / 2
tama_cnt = 0
*main
redraw 0
title "弾ボタンを押した回数:" + tama_cnt
x = 0
y = 0
up_key = 0
down_key = 0
tama_flg = 0
r = 0
b = 255
mtlist point_id
repeat stat
mtinfo key, point_id(cnt)
x = key(1)
y = key(2)
if 0 < x && wx / 3 > x && 0 < y && (wy / 3) / 2 > y : up_key = 1 : continue
if 0 < x && wx / 3 > x && (wy / 3) / 2 < y && wy / 3 > y : down_key = 1 : continue
if wx - wx / 3 < x && wx > x && 0 < y && wy / 3 > y : tama_flg = 1 : continue
loop
;上下に進むコントローラー
if up_key == 1 : py--
if down_key == 1 : py++
;弾が一瞬青から赤に変わるボタン(トリガー)
if tama_flg == 0 : tama_trigger_flg = 0
if tama_flg == 1 && tama_trigger_flg == 0 {
r = 255
b = 0
tama_trigger_flg = 1
tama_cnt++
}
;ボタンと弾の描画
color 255, 255, 0 : boxf 0, 0, wx / 3, wy / 3
color 0, 0, 255 : boxf wx - wx / 3, 0, wx, wy / 3
pos wx / 18, 0 : color 0, 0, 0 : font"", wy / 7 : mes "↑"
pos wx / 18, wy / 5 : color 0, 0, 0 : font"", wy / 7 : mes "↓"
pos wx - wx / 3, 0 : color 255, 255, 255 : font"", wy / 20 : mes "ボタン"
pos px, py : color r, 0, b : font"", wy / 3 : mes "●"
redraw 1
await 1000 / 60
goto *main