トピック
Extra RYO0516EX

スプライトの管理番号を変数にする方法

スプライトの管理番号を変数にして、 1のやつに話しかけたらDATAでここを読み取ってそれが会話の内容になる・・・的なことをやりたいです
2そうだね
プレイ済み
返信[1]
親投稿
みむ*mim hidemimtp
やり方は色々ありますが、ぶつかって話しかけるなら、自分がSP0番とすると、 SP=SPHITSP(0) IF SP>0 THEN KAIWA$=GET_KAIWA(SP) みたいにしておいて、 DEF GET_KAIWA (SP)  RESTORE "@KAIWADATA"+STR$(SP)  READ D$  RETURN D$ END @KAIWADATA1 DATA "1だよ" @KAIWADATA2 DATA "2だよ"
3そうだね
プレイ済み
返信[2]
親投稿
Extra RYO0516EX
ありがとうございます!
1そうだね
プレイ済み
返信[3]
親投稿
みむさんのアイデアにプラスして、もしメッセージの管理番号が密接になってしまうのが気になる感じがあったら、スプライトに対して役者(セリフ?)IDのような数値を設定するようにして、その数値でセリフを変えるのも良いかもです。 その際、スプライト自体に値を設定する方法としてはSPVARが使えるので、これを使うと便利です。例えばスプライト管理番号5にセリフ番号2を割り当てるようなイメージだとしたら、 SPVAR 5,2 としておけば、 RESTORE "@KAIWADATA"+STR$(SPVAR(SP,5)) のような感じでスプライトに割り当てたセリフ番号からDATAを読み込むような流れにも出来ます。
1そうだね
プレイ済み
返信[4]
親投稿
ゴメン間違え…。 SPVAR 5,0,2 RESTORE "@KAIWADATA"+STR$(SPVAR(SP,0)) でした…
1そうだね
プレイ済み