しいたけサイクロン・アーカイブス

  1. トップ
  2. RGSS
  3. 行動スクリプト

行動スクリプト

概要

歩いたり戦闘をすることでポイントをため、予め設定しておいたイベント(パラメータ上昇など)を発生させるスクリプトです。

仕様

メニューコマンドから行動を選択することで、歩いたり戦闘によってポイント(以下、行動経験値と呼びます)が溜まり、一定値に到達するとイベント(パラメータ上昇、アイテム取得など)が発生します。
歩行中にイベントが発生した場合はマップ上であらかじめ設定したコメントが出現します。
戦闘終了時の場合は、戦闘結果のコメントに続く形で表示されます。

テストゲーム

ダウンロード (1.34MB)

(注)テストゲームを行うにはRPGツクールVXAceのRTPが必要です。

スクリプト

・DataManager
DataManager

・module
TrainingManager

・クラス
BattleManager
Game_Actor
Game_Player
Scene_Menu
Scene_Training
Scene_TrainingBase
Training_Items
Training_Results
TrainingData
Window_Help
Window_MenuCommand
Window_TrainingCommand
Window_TrainingList.txt

使用方法の説明

導入法

上のスクリプトたちを導入した後、本体のDataManager内のself.initのcreate_game_objectsの下にload_normal_databasetakowalkparaを挿入してください。

使い方

DataManagerのload_normal_databasetakowalkparaにおいて
$trainingCommandListで行動のコマンドリストを設定します。
$training_increase_degreeで各行動における必要経験値のレベルアップ上昇率を設定します。
$training_increase_walkで1歩歩くごに入る行動経験値を設定します。
$training_increase_battleで戦闘勝利に入る行動経験値の基本値を設定します。
$trainingList[id] =
Training_Items.new(id, type, name, msg_name , period, upvalue, result_var, result_type, result_value_type)
で行動を設定します。
idは 行動のid
typeは0にすると必要行動経験値が常に一定になります。1にすると$training_increase_degreeの倍率で上昇していきます。
nameは行動選択時にウィンドウに表示させる文字。
msg_nameはメッセージ中に用いる名前
periodは必要行動経験値の基本値を設定します。
upValueで上昇値の基本値を設定します。
result_varは設定に使われます。省略時は0となります。詳細は後述。
result_typeは行動の結果を設定します。省略時は:paramになります。詳細は後述。
result_value_typeはupValueの基本値に対して結果の値をどのように決めるかを設定します。詳細は後述。
result_value_typeが0のときはレベルごとのパラメータにupValueの値を掛けた値が上昇値。
result_value_typeが0のときはupValueの値が上昇値となります。

・result_typeが:paramの場合
パラメータを上昇させます。
result_var で上昇させるパラメータのIDを指定します。

・result_typeが:goldの場合
お金を上昇させます。

・result_typeが:itemの場合
アイテムを手に入れます。
result_var で手に入れるアイテムのIDを指定します。

・result_typeが:stateの場合
ステートを解除します。
result_var で解除するステートのIDを指定します。

・result_typeが:stateの場合
ステートを解除します。
result_var で解除するステートのIDを指定します。

・result_typeが:hpの場合
hp,mp,tpを回復させます。
result_varが0の場合hp、
result_varが1の場合mp、
result_varが2の場合tpとなります。

・result_typeが:switchの場合
スイッチを操作します。
result_var でスイッチIDを表します。
またupValueによる結果の値が1ならON、それ以外ならOFFになります。

・result_typeが:switchの場合
スイッチを操作します。
result_var でスイッチIDを表します。
またupValueによる結果の値が1ならON、それ以外ならOFFになります。

・result_typeが:varの場合
変数を操作します。
result_var の値を加算します。

$trainingList[id].result_txtで結果の際に表示させるテキストを設定します。
%sの最初には対象のアクター名、次の%sにはmsg_nameの文字列、3番目のの%sには $trainingList[id].descriptionで行動選択画面におけるテキストを設定します。

広告

使用例

200歩歩くごとにMPが15回復させるようにしてみます。

$trainingList[18] = Training_Items.new(18, 1 ,"MP回復","MP", 200 , 15, 2, :hp, 1)

まず $trainingList[18].increase_battle = 0

$trainingList[18].increase_battle = 0

として戦闘では行動経験値が増えないようにします。

$trainingList[18].result_txt = "%sは%sを解除した!" $trainingList[18].description = "呪いを解除する。"

としてテキストの設定を行います。

質問やバグなどの報告は製作ブログのコメント欄でお願いします。

広告