
以下、マクロ。ポイントっぽい所だけ赤字にしています。
[macro name="●文字ボタン"]
;…マクロ引数:テキスト,文字高,storage,label,ボタン画像,ボタン画像_over,ボタン画像_on,hint,exp
[button storage="&mp.storage" target="&mp.target" normal="&mp.ボタン画像" over="&mp.ボタン画像_over" on="&mp.ボタン画像_on" hint="&mp.hint" exp="&mp.exp"]
[eval exp="mp.nl = kag.current.numLinks-1"]
[eval exp="kag.current.links[mp.nl].object.font.height = mp.文字高"]
[eval exp="mp.bw = kag.current.links[mp.nl].object.width/2"]
[eval exp="mp.btw = kag.current.links[mp.nl].object.font.getTextWidth(mp.テキスト)/2"]
[eval exp="mp.bh = kag.current.links[mp.nl].object.height/2"]
[eval exp="mp.bth = kag.current.links[mp.nl].object.font.height/2"]
[eval exp="mp.fcol = 0xFFFFFF"]
;横並びのボタン画像に文字を配置していく
[eval exp="kag.current.links[mp.nl].object.drawText(mp.bw-mp.btw,mp.bh-mp.bth, mp.テキスト, mp.fcol,,true, 1024, 0x442233, 3, 0, 0)"]
[eval exp="kag.current.links[mp.nl].object.drawText(mp.bw*3-mp.btw,mp.bh-mp.bth, mp.テキスト, mp.fcol,,true, 1024, 0x442233, 3, 0, 0)"]
[eval exp="kag.current.links[mp.nl].object.drawText(mp.bw*5-mp.btw,mp.bh-mp.bth, mp.テキスト, mp.fcol,,true, 1024, 0x442233, 3, 0, 0)"]
[endmacro]
使用例
[●文字ボタン テキスト="リトライ" 文字高="15" storage="XXXXX.ks" target="*リトライ" ボタン画像="a.png" ボタン画像_over="b.png" ボタン画像_on="c.png" hint="リトライします"]