| お初にお目にかかります。 SRCユーザーの1人「GAMEMASTER」と申します。
> 早速質問ですが、固定アイテム以外のアイテムを > 全てはずすという動作を行いたいのですが、 > 下のようにするとエラーがおこるんです(最新の開発版にて確認) > どうすれば自分のやりたいことができるでしょうか? > まったく違うやり方でもいいので教えてください > よろしくお願いします > > (後略)
RemoveItemコマンドで装備中のアイテムを削除すると、装備しているアイテムの番号詰めが行われます。削除の跡に空欄を残すとItem関数及びCountItem関数が正確な値を返さなくなるためこれは正常な動作なのですが、このためForコマンドで最初に装備している数だけ繰り返すように指定するとループ回数が実際のアイテム装備数を上回った時にItemコマンドで空文字列が適用され、エラーとなります。
Doコマンドを利用しましょう。
abc = 1
Do While (Item(主人公,abc) <> "")
If Info(Item(主人公,abc), アイテムクラス) = 固定 Then
Incr abc
Skip
Else
Item Item(主人公,abc)
RemoveItem 主人公 Item(主人公,abc)
EndIf
Loop
参考になれば幸いです。
もう時間がないようでございますね。では、これにて退散させてもらいましょう。
|