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


HSPTV!掲示板


未解決 解決 停止 削除要請

2010
0602
Kazu(HGIMG3)eventで動かしている物を一時停止させたい4解決


Kazu

リンク

2010/6/2(Wed) 21:12:43|NO.32926

HGIMG3を使って作成中のシューティングゲームにポーズ機能を実装したいのですが、
弾の移動をevent_dirで行っており、任意に止める方法がわからなくて困っています。
eventの呼び出しを停止、再開する命令はないでしょうか?
どなたかわかる方おられましたら、教えていただけませんか。
よろしくお願いします。



この記事に返信する


ヌコルプ

リンク

2010/6/5(Sat) 05:18:54|NO.33008

浅学ながら・・・

ストップ中はhgimg描画をやめてしまうってのが一番簡単かなあ・・・
いろいろ考えたけどコレが一番差し支えないかも。サンプルかなんかに組み込んで試してみてね

以下の2行見たいなカンジでメインループにキーチェック追加
<PRE>
stick key,,1
if key&32 : goto *stop_test ;キーは適当に(getkeyで取得する場合自前でトリガー処理が必要)
</PRE>

んで、こんなカンジの処理を追加
<PRE>
*stop_test
gsel 0 : hgcapture ;メインウィンドウにコピーしてしまう

;ストップのお知らせ。なんか一拍あるのでHGIMGで描画してからhgcaptureした方がいい気がする
color 255,255,255
font msgothic,64,3
pos 200,200
mes "S T O P"
*@
redraw 0 ;復帰時のちらつき防止
stick key,,1 ;キーは適当に(getkeyで取得する場合自前でトリガー処理が必要)
if key&32{
color : boxf ;都合が悪かったり、気になるならこんなカンジで塗りつぶし
goto *main
}
redraw 1
await 20
goto *@b
</PRE>

オレは単純にeventを一時停止させる方法は知りません。
上記の方法じゃなく、弾にありがちな点滅等の処理をストップ中も続けたい場合は・・・う〜ん
思いついた方法じゃストップは出来るけど復帰がね・・・出来ない事もないと思うんだけど、
事と次第によっては結構めんどいかも。event任せに出来ない処理が諸々出てきたり・・・
どんな弾の種類があって、どこまでevent処理してるかにも寄るんだけど。
差し支えなければこれで。



おにたま(管理人)

リンク

2010/6/5(Sat) 10:14:48|NO.33016

全体の動作を停止・再開させる場合は、hgprm 1,0を使用してみてください。
詳しくはhgprmのリファレンスを参照下さい。



ヌコルプ

リンク

2010/6/6(Sun) 12:23:00|NO.33059

うををを!?
まさかのおにたまさんのレス。こんな命令あったんですね
直接描画とかは続けられるし、自己制御は動かせるし断然イイ
勉強になりましたm(_ _)m



Kazu

リンク

2010/6/6(Sun) 19:44:27|NO.33097

レスが遅くなってしまいもうしわけありません(汗
ヌコルプさん、おにたまさん、ご回答ありがとうございました。

hgprm命令、私も知りませんでした。
助かりました。本当にありがとうございました。



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