HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0714
M−yゲーム作成について質問です3未解決


M−y

リンク

2014/7/14(Mon) 22:39:47|NO.62893

画面で、ボタンが→、←がありそれを押すとキャラが左右に動くようにしたいと思い、
button命令でボタンを作成し、押されたときはラベルに飛び、ラベルで表示ポイントを変える。
という方法にしたのですがうまくいきません

px=0 py=220 *main redraw 0 color 225,225,225 boxf gmode 0 pos x,y celput pos 230,450 button "←" , *LI pos 320,450 button "→" , *RI goto *kuri *LI px=px+3 goto *kuri *RI px=px-3 goto *kuri *kuri redraw 1 await 20 goto *main
すみません。画像などは読み込み済みだとします



この記事に返信する


GENKI

リンク

2014/7/14(Mon) 22:57:08|NO.62896

まずはこれを実行してみてください。

i = 0 x = 0 y = 0 *main redraw 0 color 255, 255, 255 boxf color pos x, y button "Button " + i, *dummy x = x + 20 y = y + 15 i = i + 1 redraw 1 await 1000 ; 1秒待つ goto *main *dummy dialog "i = " + i goto *main
button命令で配置されるボタンがどういった性質を持つのかお分かりいただけたと思います。
これを踏まえてご自分のソースを確認してみてください。


> すみません。画像などは読み込み済みだとします
celput のところを「color : mes "●"」とかに書き換えればこの1文不要ですよ。



SADOUS

リンク

2014/7/14(Mon) 23:03:03|NO.62897

キャラクターを動かしたい・・・画像を頻繁に書き換えたり、
場面を切り替えたりする都度、オブジェクトが邪魔になりそうな気がするので
こういう時は、当たり判定を使ってボタンを自作したほうがいいと思います。

ボタンとして表示する図形や画像を描写し、
マウス座標とキー判を用いてボタンの押下の判定

コチラのほうが自由度が高いし、扱いやすいです。(初級者な自分の意見)



ボタンはメインループの外で作る

リンク

2014/7/15(Tue) 20:48:16|NO.62916

button命令をメインループの中に書いてしまうと、ループが回った分だけボタンができてしまいます。
ですので、button命令はメインループの外に書くと良いですよ。
ちとなおしてみたソースがこちら

px=0 py=220 ;ボタンはメインループの外で作る pos 230,450 button "←" , *LI pos 320,450 button "→" , *RI *main redraw 0 color 225,225,225 boxf gmode 0 pos x,y ;celput //エラーが出るので一時的に外しておいた ;メインループの中にbutton命令を書くと、 ;まわった分だけボタンを作ってしまうので、よろしくない //pos 230,450 //button "←" , *LI //pos 320,450 //button "→" , *RI title str(px) ;タイトルバーにpxを出してみた goto *kuri *LI px=px+3 goto *kuri *RI px=px-3 goto *kuri *kuri redraw 1 await 20 goto *main
これ、←を押すとpxが増えて、→を押すとpxが減るけど、ええの?
(画面の座標をみてもわかるとおり、左がマイナスで、右がプラスなのです。これに合わせたほうが、このさき楽だと思うのです)



ONION software Copyright 1997-2021(c) All rights reserved.