トピック
YUUKI m348yuuki

教えて

一つのSPをそのまま500こ位にして、それぞれを別々に動かす。 そんなプログラム教えてください。
0そうだね
プレイ済み
返信[1]
親投稿
だにえる haru2016nen
同じSPを500個用意すれば いいんじゃないでしょうか??
0そうだね
プレイ済み
返信[2]
親投稿
だにえる haru2016nen
訂正:同じ絵のSP
0そうだね
プレイ済み
返信[3]
親投稿
パズルみたいな感じが作りたいのでは?
0そうだね
プレイ済み
返信[4]
親投稿
nobu divine-creator
同じSPを増やすのは、 FOR I=0 TO 499 VSYNC SPDEF I,増やすSPのX座標,Y座標,横のサイズ,縦のサイズ,0,0,1 NEXT で500個に増やせますけど、一種類のSPをそんなに使ったら、同時に他のSPを少ししか使えなくなりますよ…。それでも良いのですか?
1そうだね
プレイ済み
返信[5]
親投稿
イマイチ意味がわかりにくいので、もうちょっと具体的に質問してもらえると答えやすいかも? ただnobuさんも言われているようにスプライトの数は最大が決まっているので500個もつかうと他に表示したいものが表示出来なくなるので、その辺もふまえて内容を設計して数を決める感じになるかなと思います。
0そうだね
プレイ済み
返信[6]
親投稿
YUUKI m348yuuki
一個ずつ定義していくと長くなってしまうので、コピーして増やせないのかな? ということです。 例えば人間のSPを一個ずつ定義していくのは面倒だから、コピーして人混みにして、それぞれを別々に歩かせたいということです。
0そうだね
プレイ済み
返信[7]
親投稿
ツララ LongIceSword
SPSET命令は一回に一つのスプライトしか定義出来ないので、nobuさんの方法の様にループで定義番号だけを変更しながら同じSPSET命令を使い回すのが妥当かと。 定義したスプライトをそれぞれ別々に動かしたいなら、一つのSPSET命令を使い回したのと同じ様に、一つのSPOFS命令やSPANIM命令を使い回して同じ様な事出来ると思いますよ。
1そうだね
プレイ済み
返信[8]
親投稿
みんなが言われているように同じ状態を再現したいならFORで繰り返すのが常套手段かなと思いますね。 その際に差分があるならREAD、DATAなどを用いて差の部分をデータ化して読み取り当てはめていくといいと思います。 FORで設定するのは同じですが、別々に歩かせるだけならRNDなどを使うのも良いですね。
0そうだね
プレイ済み
返信[9]
親投稿
nobu divine-creator
厳密に言えば、人混みの一人一人の動きは異なるのですけど、同じ方向へ向かう人とか、同じ速度で歩く人とか、同じパターンに当てはまる人がいるので、全員がバラバラではなく、あるグループごとに動きを決めて、それを同時に動かせば、だいたい望み通りの動きを表現できるのでは?
0そうだね
プレイ済み
返信[10]
親投稿
イメージと合っているかわからないけど一例だけ…。
0そうだね
プレイ済み
返信[11]
親投稿
YUUKI m348yuuki
皆さん、詳しい解説までありがとうございました。 参考にさせていただきます
0そうだね
プレイ済み