First Seed Material Screen Resolution 800*600 (pixels) or over.
Best viewed with the latest MS IE.
CSS, JavaScript ON, necessary.
リクエスト掲示板[ツクールVX] スクリプト(RGSS2)関連 » パーティの隊列を記憶させる
 トピックに返信
フラット表示
 古いものから
  前のトピック  次のトピック  下へ 
bloo-TAS #1 題名: パーティの隊列を記憶させる 投稿日時: 2010年 7月 28日 (水) 20:31
FSM MEMBER
FSM MEMBER
登録日: 2010年 7月 28日
所在地:
プロフィール

戦闘中に何らかの方法でメンバーが変わっても、戦闘が終了した時に戦闘開始時の戦闘メンバーのならびになる、といったシステムを導入しようと思っています。

戦闘開始時に戦闘メンバーの並びをアクターIDとして変数に入れ、戦闘終了時にその変数により戦闘メンバーを戻すスクリプトを作っていただきたいです。

イメージとしては、
① 戦闘開始時、隊列の一番最初のアクターIDを変数nに代入。
② その次のアクターのIDを変数n+1に代入・・・(ry
③ そして、戦闘終了時に変数からIDを読み込み、その並びに戦闘メンバーを戻す

こういう感じです。

出来れば設定で、戦闘メンバーの人数、使用する変数、イベントのスクリプトに書き込むことで強制的に③を実行できる命令なども欲しいです。

長々と書いてしまいましたが、どうかよろしくお願いします。
 印刷 記事からPDFを作成  返信 引用 
メタボ #2 題名: Re: パーティの隊列を記憶させる 投稿日時: 2010年 7月 29日 (木) 22:18
接続元ID: IdzG8u4Y/jQ

 こんばんは。

 以下のコードを入れてみてください。
class Game_Party < Game_Unit
attr_accessor :actors
end
class Game_Troop < Game_Unit
attr_accessor :before_members

alias memory_order_clear clear
def clear
memory_order_clear
@before_members = []
end
alias memory_order_setup setup
def setup(troop_id)
memory_order_setup(troop_id)
@before_members = $game_party.actors.clone
end
end
class Scene_Battle < Scene_Base
alias memory_order_battle_end battle_end
def battle_end(result)
$game_party.actors = $game_troop.before_members
memory_order_battle_end(result)
end
end
 仰るように一つ一つ代入したり参照せずとも、配列のまま扱えます。

 イベントコマンドでメンバーの並びを変更するなら、
$game_party.actors = [1, 4, 3, 2]  # 配列の中身はアクターID
…を実行すればOKです。
 印刷 記事からPDFを作成  返信 引用 編集 削除
bloo-TAS #3 題名: Re: パーティの隊列を記憶させる 投稿日時: 2010年 7月 31日 (土) 16:09
FSM MEMBER
FSM MEMBER
登録日: 2010年 7月 28日
所在地:
プロフィール

ありがとうございます。
助かりました。
 印刷 記事からPDFを作成  返信 引用 
フラット表示
 古いものから
  前のトピック  次のトピック  上へ 
トピックに返信 

All times are GMT+9:00

 
[ 高度な検索 ]

移動先:
Copyright © 2001, 2005, First Seed Material, REFMAP
Powered by XOOPS © 2001, 2003 The XOOPS Project :: phpBB © 2001, 2003 phpBB Group :: Customized by tekepon.net