メイン 迷える子羊の部屋【初心者専用】 斜めに移動しながら、弾を出す | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
10-feet | Åê¹ÆNo.37338 投稿日時: 2008-1-25 16:56 |
新米 居住地: 投稿: 25
使用環境:
WinXp,Flash CS3 Pro,AS2.0 player8 |
斜めに移動しながら、弾を出す こんにちは、feetです。
過去ログや、他のサイトで調べてみたのですが 自分の書き方が初心者のせいかマッチするものが見当たりませんでした。 このまま悩み続けても時間が消費されるばかりだと思ったので こちらに投稿させていただきます。 質問内容は「弾を撃ちながら斜め移動をする」です。 現状は、斜め移動は可能で、上下左右の移動も可能。 静止中、上下左右と斜め(右上)移動中に弾が発射できる状態です。 右上を除く斜め移動時にスペースを押しても弾が出ないのです・・・。 また、上と同じ意味ですが、先にスペースを押していると右上を除く斜め移動ができません。 行の位置を入れ替えたり、別々のフレームに書いたり 色々と試しましたが直りませんでした。 なぜ右上移動時だけ発射可能なのかもさっぱりです。 お手すきな方がいましたら、どの部分がまずいのかご指摘もらえないでしょうか? 以下ソースになります。 記述場所「_root上の1フレーム目」
記述場所「_root上に配置したplayer(MC)」
弾のMCには進むソースと画面外にいったらbulletcounterを-1して自身を消すソースが書かれているだけです。 それと質問内容とは違うのですが・・・ 長いソースの場合は、どこかのサイトにファイルをUPしたほうがいいのでしょうか? 切り分けて載せるのが自分でも良いと思うのですが 何処が間違っているかわからない状態なのでほとんど載せてます。 |
Tonpoo (gaienboy改め) | Åê¹ÆNo.37341 投稿日時: 2008-1-25 18:52 |
職人 居住地: 東京・神宮前 投稿: 717
使用環境:
Windows 7 Professional, Flash CS5 Pro, Flash Player 10,1,102,64 |
Re: 斜めに移動しながら、弾を出す こんにちは、gaienboyです。
引用: 10-feetさんは書きました: まずい、というか、意図通りの動きになっていないのだとしたら、まずはどこにそ の原因があるかというのを突き止めることが大事です。文末にご自分でも「切り分 けて載せるのが自分でも良いと思うのですが何処が間違っているかわからない状態 なのでほとんど載せてます。」と書かれていますが、「どこがまずい≒間違ってい る≒原因となっている」かがわかれば、自然と掲載するスクリプトの量も減ります。 で、原因の見つけ方についてですが、これはとにかく処理を細かく切り分けて、最 小限の構成から一つ一つの処理が正しく行われているかどうかを地道に調べていく のが確実です。 例えば今回のケースであれば、複数のキーを同時に押下しているので、その判定の 過程で不具合が起こっているのではないかと思います。なので、私ならば 1.十字キー押下の判定が正しく処理できているか調べる
2.スペースキー押下の判定が正しく処理できているか調べる
3.十字キー+スペースキー押下の判定が正しく処理できているか調べる
これでもし右上を押したときにスペースを押して
とtraceされるのに、右下を押したときに
とtraceされないのであれば、このキー押下判定周りがあやしいということになり ます。そうでなければ、他の処理(角度や位置の計算、弾丸の発射、弾丸の発射可 能状態の判定などなど)がまずい、という可能性が高いです。 長々となりましたが、このように処理を小分けにして試してみて下さい。 ■追記 長々と書いておいてこんなこと言うのもなんですが、「flash キー 同時押し」で Google検索かけたら、下記のページがヒットしました。ページ下の方にある 「同時に押せないキー」を読んでみて下さい。(それ以外の箇所も非常に参考に なるので、読んでみることをおすすめします) しっぽのブログ: コツのお話その5 インターフェース キー編
|
10-feet | Åê¹ÆNo.37345 投稿日時: 2008-1-25 19:41 |
新米 居住地: 投稿: 25
使用環境:
WinXp,Flash CS3 Pro,AS2.0 player8 |
Re: 斜めに移動しながら、弾を出す 御早いレスありがとうございます。
引用:
その通りなんですよね
う、これは・・・。 根本的な組み立て方を変える必要がありそうですね・・・。 なんにせよ、gaienboyさんの助言を参考にして1つ1つ試してみます。(確認・勉強の意味も込めて) それと私事で申し訳ないですが 土日にPCが使えなくなってしまうので、これ以降の返信が遅くなってしまいます。 使えるようになり次第、結果等書き込みます。 ありがとうございます |
10-feet | Åê¹ÆNo.37375 投稿日時: 2008-1-28 12:25 |
新米 居住地: 投稿: 25
使用環境:
WinXp,Flash CS3 Pro,AS2.0 player8 |
Re: 斜めに移動しながら、弾を出す こんにちは、feetです。
traceを使い、キー判定が正しく行なわれているか試した所 やはりアローキーを含めた同時入力は認識されていませんでした。 アローキーの部分をそれぞれWASDに置き換えたところ 無事に斜めに移動しながら弾を打ってくれるようになりました。 スペースキーで弾が出るのは変わっていません。
一応は解決したのですが、1つ疑問があります。 上記の事がわかってから色々と調べてみたのですが アローキーで斜め移動+スペースキーで弾発射 というのはキーボードで操作している以上、Flashでは実現不可能な事なんでしょうか? 他のシューティングゲームの操作方法などもこの組み合わせの物は見当たりませんでした。 見当たらない=使えないってことなのかもしれませんが 1人で結論を出すのは危険な気がしたので・・・。 ものすごく初心者臭い質問ですが、どうか宜しくお願いします。 |
Tonpoo (gaienboy改め) | Åê¹ÆNo.37376 投稿日時: 2008-1-28 12:50 |
職人 居住地: 東京・神宮前 投稿: 717
使用環境:
Windows 7 Professional, Flash CS5 Pro, Flash Player 10,1,102,64 |
Re: 斜めに移動しながら、弾を出す 「同時 キー 押せない」でGoogle検索してみたところ、下記のページがヒットしました。
キーが三つ同時に押せない(反応しない) | True Combat: Japan 左斜め上とスペースキーを同時に押せないのですが・・・ - 教えて!goo これらのページに書いてあることから判断すると、一部のキーボードでキーが三つ 同時に押せないのは、ハードウェア的な制約だということになります。とすると、 ユーザーがキーボードを交換するかキーバインドを変更するかなどをしなければ ならないということになりそうですが、これらはどちらもFlash側ではどうにも ならないことであると思います。
|
10-feet | Åê¹ÆNo.37377 投稿日時: 2008-1-28 14:30 |
新米 居住地: 投稿: 25
使用環境:
WinXp,Flash CS3 Pro,AS2.0 player8 |
Re: 斜めに移動しながら、弾を出す 解答ありがとうございます。
引用:
ありがとうございます!すっきりしました 同時入力では認識出来ないキーがあることを覚えておきます。 今回はありがとうございました。 また機会があれば宜しくお願いします |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |