プチコン3号 SmileBASIC コミュニティ投稿ドララ dorara135792015/03/29 23:56:37質問SPキャラクタを十字キーで四方に動かしたいのですが、 中々上手くいきません。 どうしたら動くでしょうか?1そうだね 13返信プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿Mez mituaki5842015/3/30 0:01ビット演算ならスムースにボタン入力ができます IF BUTTON() AND 1 と、ANDを使えば一見落着! 仕組みが知りたくばwebで「ビット演算」を検索するのだ0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[2]親投稿ドララ dorara135792015/3/30 0:17ANDですか、分かりました! ありがとうございます! にしても、ここでビット演算がでてくるんですね…覚えておいてよかった!0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿ドララ dorara135792015/3/30 0:29あれ、でもどういう風に入力すれば良いんでしょうか?0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿Mez mituaki5842015/3/30 0:3013~16行の「==」を書き換えればいいと思うよ0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿ドララ dorara135792015/3/30 0:39いえ、そうじゃなくて、ANDに置き換えただけでは先程のプログラムと同じ動きになってしまうんです。 理想としては、十字上キーを押したら、上に動くようなプログラムにしたいんです。今は上キーを押したら上を向き、足踏みする状態です。0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[6]親投稿ゆうたん yu-tan-sama2015/3/30 0:44これ、ビット演算とかが原因じゃないよね まず、BUTTON(2)を指定してるから押された瞬間しか反応しない SPANIMの方向を決めるだけならとりあえずこれでいいけど… 次、そもそもループの中でスプライトの座標を変えてない なのでX座標やY座標をいじってSPOFSで場所を移動させましょう0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[7]親投稿Mez mituaki5842015/3/30 0:46それならば BUTTON(0)にて上を押したら上へ、右を押したら右へ...といったプログラムを追加すれヴぁいい話ですな (スプライトの座標移動命令であるSPOFSを使ってその結果を反映する)0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[8]親投稿Mez mituaki5842015/3/30 0:51例を挙げるならば B=BUTTON(0) IF B AND 1 THEN DEC Y IF B AND 2 THEN INC Y IF B AND 4 THEN DEC X IF B AND 8 THEN INC X SPOFS 0,X,Y0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[9]親投稿おちゃめ ochame_nako2015/3/30 12:50本筋とは関係ない話ですが、ビット演算を使って普通に判定をすると4方向ではなく8方向移動になってしまいます。1そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[10]親投稿ドララ dorara135792015/3/30 13:14う~ん、動きませんね…XとYが座標ではなく、変数として扱われているんでしょうか? でも試しにPRINTしてみたところ、どれも無反応(0)なんですよね…0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[11]親投稿おちゃめ ochame_nako2015/3/30 13:20X、Yの値を変えてもWHILE~WENDのメインループ内にSPOFS 1,X,Yを入れないと動きません。0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[12]親投稿ドララ dorara135792015/3/30 13:39メインループ内にSPOFSを入れても動きませんでした。 何か根本的な原因があるのでしょうか?0そうだね プレイ済み2017/11/03 22:27:55に取得
プチコン3号 SmileBASIC コミュニティ返信[13]親投稿ツララ LongIceSword2015/3/30 14:32XとYの値を操作する命令もループ内に入れないと反映されませんよ。 WHILEをLOCATの上に移動させてやらないと。0そうだね プレイ済み2017/11/03 22:27:55に取得