RGSS

RGSS勉強会では、RPGツクールXPのスクリプト「RGSS」についてのチップスを紹介しています。
間違いなどのご指摘、大歓迎です。

1 2 3
文章の表示 スイッチの操作
選択肢の表示 変数の操作
数値入力の処理 セルフスイッチの操作
文章オプション変更 タイマーの操作
ボタン入力の処理 ゴールドの増減
ウェイト アイテムの増減
注釈 武器の増減
条件分岐 防具の増減
ループ アクターの入れ替え
ループの中断 ウィンドウスキンの変更
イベント処理の中断 バトルBGMの変更
イベントの一時消去 バトル終了MEの変更
コモンイベント セーブ禁止の変更
ラベル メニュー禁止の変更
ラベルジャンプ エンカウント禁止の変更







ya05.gif スイッチの操作 command_121 ya_top.gif
ゲームスイッチは、スクリプト上では $game_switches[n]  というグローバル変数で管理されています。
ya06.gif n番のスイッチをONにする場合…
$game_switches[n] = true

ya06.gif n番のスイッチをOFFにする場合…
$game_switches[n] = false

$game_switches[n] はboolean型の変数です。代入出来る値「n」は、true、もしくはfalseのみです。
true、falseは、ゲームスイッチにおけるON、OFFにあたるものと考えて大丈夫だと思います。
2007年8月14日
spacer.gif
ya05.gif 変数の操作 command_122 ya_top.gif
ゲーム変数は、スクリプト上では $game_variables[n]  というグローバル変数で管理されています。
ya06.gif n番の変数に値mを代入する場合…
$game_variables[n]  =  m
$game_variables[n] は整数型の変数です。
2007年8月14日
spacer.gif
ya05.gif ゴールドの増減 command_124 ya_top.gif
ゴールドの値は、スクリプト上では $game_party.gold というグローバル変数で管理されています。
ゴールドの値を増減させるメソッドがインタプリタで用意されています。
ya06.gif ゴールドをn増やす…
$game_party.gain_gold(n)

ya06.gif ゴールドをn減らす…
$game_party.lose_gold(n)
イベントコマンドウィンドウと比べてみます。
gold_gain_lose.jpg
operation : 操作
operand_type : オペランドタイプ (0:定数 1:変数)
operand
右の見慣れない表記は、Interpreterの「操作する値の計算」で作られているメソッド「operate_value」のパラメータです。
イベントコマンド・ゴールドの増減は、このメソッドを使用しています。

イベントコマンドウィンドウにて、「操作」という項目があります(増やす、減らす)。
このラジオボタンで選択した項目によって、変数operationの値が変化します。ツクールのイベントコマンドでいうと、条件分岐みたいなものです。初期値は0で、この場合は「増やす」の操作を行います。1の場合、「減らす」を行います。

イベントコマンドウィンドウにて「オペランド」という項目があります。これも、operationと同じく、操作する変数が何なのかを判別しているにすぎません。
0:定数 1:変数と、RGSSで注釈してあります。
operandは、実際に扱う変数の値です。定数もしくはゲーム用の変数を入力します。

以上の内容を、イベントコマンドでスクリプトが処理するメソッドはRGSS内で次のようになっています。

operate_value(@parameters[0], @parameters[1], @parameters[2])

これより、イベントコマンドのゴールドの増減は次の通りになります。

ya06.gif ゴールドの増減…
$game_party.gain_gold(operate_value(operation, operation_type, operand)
# [operation : 操作(0:増やす 1:減らす)   operand_type : オペランドタイプ (0:定数 1:変数)   operand :値 ]

使用例1:
ゴールドを100 増やす
$game_party.gain_gold(operate_value(0,0,100)

使用例2:
ゴールドを変数20番の値 減らす
$game_party.gain_gold(operate_value(1,1,20)

$game_party.goldは整数型の変数です。
2008年1月22日
spacer.gif
ya05.gif セーブ禁止の変更 command_134 ya_top.gif
セーブ禁止の変更は、スクリプト上では $game_system.save_disabled  というグローバル変数で管理されています。
初期値はfalseです。
ya06.gif セーブ禁止をONにする場合…
$game_system.save_disabled = true
$game_system.save_disabled boolean型の変数です。よって、trueもしくはfalseのみ、代入可能です。ゲームスイッチのON、OFFと同じ考え方でOKです。
2008年1月22日
spacer.gif
ya05.gif メニュー禁止の変更 command_135 ya_top.gif
メニュー禁止の変更は、スクリプト上では $game_system.menu_disabled  というグローバル変数で管理されています。
初期値はfalseです。
ya06.gif メニュー禁止をONにする場合…
$game_system.menu_disabled = true
$game_system.menu_disabled boolean型の変数です。よって、trueもしくはfalseのみ、代入可能です。ゲームスイッチのON、OFFと同じ考え方でOKです。
2008年1月22日
spacer.gif
ya05.gif エンカウント禁止の変更 command_136 ya_top.gif
エンカウント禁止の変更は、スクリプト上では $game_system.encounter_disabled  というグローバル変数で管理されています。
初期値はfalseです。
ya06.gif エンカウント禁止をONにする場合…
$game_system.encounter_disabled = true
$game_system.encounter_disabled boolean型の変数です。よって、trueもしくはfalseのみ、代入可能です。ゲームスイッチのON、OFFと同じ考え方でOKです。
2008年1月22日
spacer.gif
 spacer.gif
Copylight 2000-2007 power spot. All Right Reserved.