投稿
nobu divine-creator
SPの向きを変える方法がよく分かりません…。(動いているものではなく、止まっているものの向きです!)左向きを右向きに変えて表示するのに良い方法を教えてください。 アトリビュートを変えようとしてみましたが、うまくいきませんでした…。
0そうだね
プレイ済み
返信[1]
親投稿
ゆう© YUTO617
まず反対の向きを向いたSPを作ります。(同じファイルに)そして、SPSET命令でSPを表示します。(管理番号をわかりやすくするため一応0にします。)そのあとIF B AND 8 THEN SPSET 0,(右を向いたキャラ定義番号)と書いて、次の行にIF B AND 4 THEN SPSET 0,(左を向いたキャラ定義番号)にすればいいと思います。とにかく右を向くSPと左を向くSPの管理番号を同じにすればいいと言うことかな?((ん?おかしいかな。
0そうだね
プレイ済み
返信[2]
親投稿
nobu divine-creator
反対を向いたSPを作る方法だと、全パターンを作ることになり、SPの量が倍になってしまうじゃないですか?! 動かすSPじゃないので、表示する向きを左右逆にできれば良いんですよ。(ボタン操作で向きを変えるわけではないです…。)
0そうだね
プレイ済み
返信[3]
親投稿
スプライトは反転できますよ! でも、直接アトリビュート(属性)だけを変える命令はなさそう? あるのかな
1そうだね
プレイ済み
返信[4]
親投稿
ゆう© YUTO617
せっかく長文書いたのに無駄骨かよ
0そうだね
プレイ済み
返信[5]
親投稿
nobu divine-creator
ゆうさん、最初に動きの無いものと書いてあります! それに、動かす時には参考にさせていただきます♪(ムダではないです!) クッキーさん、1+8とすれば反転できるのですね! 情報ありがとうございます♪ ところで、9でも良いのでしょうか?
1そうだね
プレイ済み
返信[6]
親投稿
ゆう© YUTO617
こんな低脳が書いた糞プラグラムで良ければw
0そうだね
プレイ済み
返信[7]
親投稿
「1+8」はわかりやすくするために書いたので(1は表示する属性、8は左右反転する属性)、9でも全然OKです。 ところで、「動くスプライト」「動かないスプライト」とはどういうことでしょう? スプライトは動かさなければ動きません。 動かせば動きます…
0そうだね
プレイ済み
返信[8]
親投稿
nobu divine-creator
「動く」というより「操作する」と表現したほうが良いのかもしれません。 ボタンを押して操作するためのスプライトではなく、表示されるだけのスプライトなので、操作して反転するわけではなく、反転させて表示したいということです♪
0そうだね
プレイ済み
返信[9]
親投稿
ゆうたん yu-tan-sama
そういうのって、スプライトの表示を変化させる前段階の条件が違うだけで スプライトに対してやることは同じよねー 分けて考える必要はないと思うし、スプライトの使い方はそのまま参考になると思うの
1そうだね
プレイ済み
返信[10]
親投稿
説明文そのままに単純に書いてみました 自作の改行マーク(8x8ドットの画像座標x:0,y:0)を ひとつ目(定義番号0)はそのままの向きでスプライトの定義として登録 二つ目(定義番号1)は向きを反転させて登録してみた例です 実際にやってることはクッキーさんと一緒ですね 動かすとか動かさないとかは置いといて とりあえず書いてみましょう スプライトを表示する時に使った命令はSPDEFで指定した番号を使っています SPSET 0,0:SPOFS 0,0,0 SPSET 1,1:SPSET 1,8,0
0そうだね
プレイ済み
返信[11]
親投稿
あぁ…また誤植が…; 最後のSPSETはSPOFSの間違いです orz
0そうだね
プレイ済み
返信[12]
親投稿
nobu divine-creator
そうですね♪SPの設定自体は、操作するしないに関わらず同じですからね。 操作する場合には、ボタンに合わせて動くように、追記するだけですね!
0そうだね
プレイ済み
返信[13]
親投稿
マギー M191246
こういうのは、言われていることと違います? すでに0番で表示されているとします。 SPCHR 0 OUT U,V,A SPCHR 0,U,V,A OR 8
0そうだね
プレイ済み
返信[14]
親投稿
マギー M191246
「反転させて表示させたい」ですね。 表示開始直後なら、きっと見えません。
0そうだね
プレイ済み
返信[15]
親投稿
nobu divine-creator
まだ不明な点が残っていますけど、とりあえず反転表示はできるようになりました♪ SPの表示についての疑問は、また後でこちらに記入しますので、よろしくお願い致します♪
0そうだね
プレイ済み
返信[16]
親投稿
nobu divine-creator
SP表示に関する命令の様々な疑問なのですが、 1.SPDEFやSPSETの有効範囲はどうなっているのでしょうか?(GOTOで飛んだ先では、無効になってしまったみたいなのですが、設定をし直す必要があるのは、どんな時でしょうか?) 2.SPHIDEで一旦隠し、SPSHOWで再表示できるのは確認できましたけど、SPSHOWも有効範囲が限られているようでした…。これも、どういう場合にリセットされてしまうのでしょうか?
0そうだね
プレイ済み
返信[17]
親投稿
ゆうたん yu-tan-sama
とんだ先でACLSでもしたんじゃないかなぁ 基本的にスプライトはプログラムが終了してもそのまま表示しっぱなし、SPANIMで動きっぱなしですし スプライトの設定が必要になるときは、プログラム起動時とかACLSで初期化したときとか あとはSPCLRでスプライトを開放したときくらいだったかと
0そうだね
プレイ済み
返信[18]
親投稿
nobu divine-creator
ゆうたんさん、回答ありがとうございます♪ 基本的には、ACLSかSPCLRを使用しない限りは、設定が活きている状態ということですね! ところで、SPCLRというのは、どのような場合に使用するのでしょうか?一時的にスプライトを消したい時には、SPHIDEで消せるため、SPCLRを使わなければならない場合というのが思い付きません…。
0そうだね
プレイ済み
返信[19]
親投稿
ゆうたん yu-tan-sama
SPSETが使い始めならSPCLRは使い終わりですねー スプライトをたくさん制御する場合、使わなくなったスプライトの管理番号は速やかにあけてあげないと使える管理番号が足りなくなっちゃいますので、管理番号の空き捜しをプチコン側に任せる場合は必要になります とはいえ、大体の人はエラーが怖いので見た目上消して自前で管理してるような気もします
0そうだね
プレイ済み
返信[20]
親投稿
nobu divine-creator
なるほど、たくさんのスプライトを使用する場合には必要になるのですね!(シューティングゲームだと必要になりそうですが、私の場合は使わなくても問題無さそうです♪)
0そうだね
プレイ済み