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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
0206
げーむキー入力 getkey3解決


げーむ

リンク

2009/2/6(Fri) 11:21:11|NO.23240


#define JIKI_SIZE 17 screen 0 *move jtm=100 ;自弾の最大数 jtmsizex=15 ;自弾の大きさx jtmsizey=20 ;自弾の大きさy dim jtmc,jtm ;自弾の表示フラグ dim jtmx,jtm ;自弾の位置x dim jtmy,jtm ;自弾の位置y jtmno=0 ;次の弾のナンバー repeat redraw 0 gosub *bg1 x=mousex : y=mousey gosub *keycheck gosub *jtmdraw wait 1 redraw 1 loop return *keycheck getkey ky,90 if ky{ jtmc.jtmno=1 jtmx.jtmno=-jtmsizex/2+x jtmy.jtmno=y-19 jtmno++ : if jtmno=jtm : jtmno=0 } return *jtmdraw repeat jtm if jtmc.cnt=1 { jtmy.cnt-4 if jtmy.cnt<(-ginfo_dispy) : jtmc.cnt=0 color 250,0,0 boxf jtmx.cnt,jtmy.cnt,jtmx.cnt+jtmsizex,jtmy.cnt+jtmsizey color 0,0,255 boxf jtmx.cnt+10,jtmy.cnt+30,jtmx.cnt+jtmsizex+10,jtmy.cnt+jtmsizey+30 color 0,255,0 boxf jtmx.cnt-10,jtmy.cnt+50,jtmx.cnt+jtmsizex-10,jtmy.cnt+jtmsizey+50 } loop return *bg1 pos 0,0 : color 0,0,0 : boxf 0,0,640,480 color 255,255,255 return

getkeyを押しっぱなしにすると。自機弾が繋がってしまいます
これを、押しっぱなしにしてても繋がらない(少し間を空けて)弾を発射させたいんです
弾は1回で三発ずつ発射しています
stickだと何発も打ちたい時に何回も押さなければいけないのでgetkeyです

アドバイスお願いします



この記事に返信する


Ve

リンク

2009/2/6(Fri) 13:09:37|NO.23242

次の弾が発射されるまでのカウンタになる変数を組み込めばいいんじゃないかな。



Ve

リンク

2009/2/6(Fri) 13:14:56|NO.23243


#define JIKI_SIZE 17 screen 0 *move jtm=100 ;自弾の最大数 jtmsizex=15 ;自弾の大きさx jtmsizey=20 ;自弾の大きさy dim jtmc,jtm ;自弾の表示フラグ dim jtmx,jtm ;自弾の位置x dim jtmy,jtm ;自弾の位置y jtmno=0 ;次の弾のナンバー repeat redraw 0 gosub *bg1 x=mousex : y=mousey gosub *keycheck gosub *jtmdraw wait 1 redraw 1 jtcnt++ //挿入した箇所// if jtcnt>16 : jtcnt=0 ;自弾のカウント //挿入した箇所// loop return *keycheck getkey ky,90 if ky{ //挿入した箇所// if jtcnt=0{ ;自弾のカウントが0の時、次の弾発射 //挿入した箇所// jtmc.jtmno=1 jtmx.jtmno=-jtmsizex/2+x jtmy.jtmno=y-19 jtmno++ : if jtmno=jtm : jtmno=0 } } return *jtmdraw repeat jtm if jtmc.cnt=1 { jtmy.cnt-4 if jtmy.cnt<(-ginfo_dispy) : jtmc.cnt=0 color 250,0,0 boxf jtmx.cnt,jtmy.cnt,jtmx.cnt+jtmsizex,jtmy.cnt+jtmsizey color 0,0,255 boxf jtmx.cnt+10,jtmy.cnt+30,jtmx.cnt+jtmsizex+10,jtmy.cnt+jtmsizey+30 color 0,255,0 boxf jtmx.cnt-10,jtmy.cnt+50,jtmx.cnt+jtmsizex-10,jtmy.cnt+jtmsizey+50 } loop return *bg1 pos 0,0 : color 0,0,0 : boxf 0,0,640,480 color 255,255,255 return



げーむ

リンク

2009/2/6(Fri) 15:27:09|NO.23244

あああなるほど!
全然思い浮かびませんでした・・・簡単なことだったんですね
ありがとうございます!



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