トップページ / ツクールMVスクリプトリファレンスwiki
・頻繁にこのwikiを参照される場合はこのページをブックマークしていただくと便利です。
・イベントスクリプトに書き込むことを前提として考えられています。
・各イベント名のリンクはその項目の詳細ページに繋がっています。
・項目はデフォルトのイベントコマンド順になっております。
・その項目について詳しく知りたい場合はイベントタイトルをクリックしてください。
皆様のゲーム製作のお役に立つことが出来れば幸いです。
*wikiの説明には専門用語が出てきます。
この目次最後に簡単な説明を付けておきますので必要であれば参照してください。
------目次------
------以下イベントコマンド(イベントコマンド順)------
文章の表示
$gameMessage.add("表示する文章")
//以下顔グラの設定
$gameMessage.setFaceImage("facesファイル内にあるファイル名", 番号)
選択肢の表示
this.setupChoices([["選択肢1","選択肢2","選択肢3","選択肢4","選択肢5","選択肢6"],キャンセル時の選択,デフォルト,ウィンドウ位置,背景]);
this.setWaitMode('message');
//ここで一度スクリプトを切って下さい。
switch (this._branch[this._indent]) {
case 0: $gameMessage.add("選択肢1を選択"); break;
case 1: $gameMessage.add("選択肢2を選択"); break;
case 2: $gameMessage.add("選択肢3を選択"); break;
case 3: $gameMessage.add("選択肢4を選択"); break;
case 4: $gameMessage.add("選択肢5を選択"); break;
case 5: $gameMessage.add("選択肢6を選択"); break;
default: $gameMessage.add("キャンセルを選択"); break;
}
ラベル・ラベルジャンプ
//ラベルの設定
this._list[this._index].parameters[0] = "ラベルの名前"
//ラベルジャンプ
for (var i = 0; i < this._list.length; i++) {
command = this._list[i];
if (command.parameters[0] === "ラベルの名前") {this.jumpTo(i)}
}
アイテムの増減
//アイテムを増やす
$gameParty.gainItem($dataItems[アイテムID], 個数)
//アイテムを減らす
$gameParty.loseItem($dataItems[アイテムID], 個数)
//ひとつだけ減らす
$gameParty.consumeItem($dataItems[アイテムID])
武器の増減
//武器を増やす
$gameParty.gainItem($dataWeapons[武器ID], 個数, 装備も含めるか)
//武器を減らす
$gameParty.loseItem($dataWeapons[武器ID], 個数, 装備も含めるか)
防具の増減
//防具を増やす
$gameParty.gainItem($dataArmors[防具ID], 個数, 装備も含めるか)
//防具を減らす
$gameParty.loseItem($dataArmors[防具ID], 個数, 装備も含めるか)
メンバーの入れ替え
//アクターを追加
$gameParty.addActor(アクターID)
//アクターを除名
$gameParty.removeActor(アクターID)
//初期化
$gameActors.actor(アクターID).setup(アクターID)
ステートの変更
//ステートの付加
$gameActors.actor(アクターID).addState(ステートID)
//ステートの解除
$gameActors.actor(アクターID).removeState(ステートID)
スキルの増減
//スキルを覚えさせる
$gameActors.actor(アクターID).learnSkill(スキルID)
//スキルを忘れさせる
$gameActors.actor(アクターID).forgetSkill(スキルID)
イベントの位置設定
character = this.character(キャラクターID)
character.locate(X座標, Y座標)
character.setDirection(方向)
移動ルートの設定
this.character(キャラクターID).forceMoveRoute({
"list":[{"code":コードID,"parameters":パラメータ}
{"code":コードID,"parameters":パラメータ}],
//ルート入力終了 *必須
{"code":0}],
//動作を繰り返す
"repeat":true か false,
//移動できない場合は飛ばす
"skippable":true か false,
//完了までウェイト
"wait":true か false
})
隊列歩行の変更
//隊列歩行をONにする
$gamePlayer.showFollowers()
$gamePlayer.refresh()
//隊列歩行をOFFにする
$gamePlayer.hideFollowers()
$gamePlayer.refresh()
フキダシアイコンの表示
this.character(イベントID).requestBalloon(フキダシアイコンID);
this.setWaitMode("balloon"); //ウェイトを入れる場合はこのコードを追加
ピクチャの移動
$gameScreen.movePicture(番号,原点,x座標,y座標,幅の拡大率,高さの拡大率,不透明度,合成方法,移動時間)
//ピクチャの移動中ウェイトをかけるなら以下のコードを追加
this.wait(ウェイト時間)
ピクチャの色調変更
$gameScreen.tintPicture(番号, [赤,緑,青,グレー], 変化時間)
//色調変化中ウェイトをかけるなら以下のコードを追加
this.wait(ウェイト時間);
画面のフェードアウト・画面のフェードイン
//画面のフェードアウト
$gameScreen.startFadeOut(フェード時間)
//フェード時ウェイトをかけるなら以下のコードを追加
this.wait(ウェイト時間)
//画面のフェードイン
$gameScreen.startFadeIn(フェード時間)
//フェード時ウェイトをかけるなら以下のコードを追加
this.wait(ウェイト時間)
SEの演奏・SEの停止
//SEの演奏
AudioManager.playSe({"name":"SE名","volume":音量,"pitch":ピッチ,"pan":位相})
//SEの停止
AudioManager.stopSe()
戦闘の処理
BattleManager.setup(敵グループID,逃走可,敗北可)
BattleManager.setEventCallback(function(n) {this._branch[this._indent] = n;}.bind(this))
$gamePlayer.makeEncounterCount()
SceneManager.push(Scene_Battle)
ショップの処理
g = [アイテムの種類,アイテムのID,価格を指定するか,値段]
goods = [g]
SceneManager.push(Scene_Shop)
SceneManager.prepareNextScene(goods, 購入のみか)
勝利MEの変更・敗北MEの変更
//勝利MEの変更
$gameSystem.setVictoryMe({"name":"BGM名","volume":音量,"pitch":ピッチ,"pan":位相})
//敗北MEの変更
$gameSystem.setDefeatMe({"name":"BGM名","volume":音量,"pitch":ピッチ,"pan":位相})
アクターの画像変更
//歩行キャラ
$gameActors.actor(アクターID).setCharacterImage("画像名", 画像番号)
//顔
$gameActors.actor(アクターID).setFaceImage("画像名", 画像番号)
//[SV]戦闘キャラ
$gameActors.actor(アクターID).setBattlerImage("画像名")
//変更を反映
$gamePlayer.refresh()
指定位置の情報取得
//地形タグの取得
$gameMap.terrainTag(x座標, y座標)
//イベントIDの取得
$gameMap.eventIdXy(x座標, y座標)
//タイルIDの取得
$gameMap.tileId(x座標, y座標, レイヤー数)
//リージョンIDの取得
$gameMap.regionId(x座標, y座標)
//変数に設定
$gameVariables.setValue(変数ID, 上記の情報タイプ)
敵キャラのHP増減
var value = this.operateValue(増減, 定数か変数か, 値);
this.iterateEnemyIndex(敵ID, function(enemy) {
this.changeHp(enemy, value, 戦闘不能を許可するか);
}.bind(this));
敵キャラのMP増減
var value = this.operateValue(増減, 定数か変数か, 値);
this.iterateEnemyIndex(敵ID, function(enemy) {
enemy.gainMp(value);
}.bind(this));
敵キャラのTP増減
var value = this.operateValue(増減, 定数か変数か, 値);
this.iterateEnemyIndex(敵ID, function(enemy) {
enemy.gainTp(value)
}.bind(this))
敵キャラのステート変更
this.iterateEnemyIndex(敵ID, function(enemy) {
enemy.addState(ステートID)
enemy.clearResult()
//以下状態"戦闘不能"になった際に処理
//戦闘不能になりえない時は省略可
if (enemy.isDead() && !alreadyDead) {
enemy.performCollapse()
}
}.bind(this))
敵キャラの出現
this.iterateEnemyIndex(敵ID, function(enemy) {
enemy.appear()
$gameTroop.makeUniqueNames()
}.bind(this))
敵キャラの変身
this.iterateEnemyIndex(変身させる敵ID, function(enemy) {
enemy.transform(変身後の敵キャラID)
$gameTroop.makeUniqueNames()
}.bind(this))
戦闘アニメーションの表示
this.iterateEnemyIndex(敵ID, function(enemy) {
if (enemy.isAlive()) {
enemy.startAnimation(アニメーションID, ミラー, 遅延);
}
}.bind(this));
戦闘行動の強制
this.iterateBattler(敵キャラかアクターか, 対象ID, function(battler) {
if (!battler.isDeathStateAffected()) {
battler.forceAction(スキルID, 対象)
BattleManager.forceAction(battler)
this.setWaitMode('action')
}
}.bind(this));
用語説明
ここではあくまで初心者が意味を掴みやすいように説明していますので、正確な意味を知りたい場合は他サイト・参考書をご覧ください。
if文
条件分岐を表します。javascriptではif(条件){処理内容}という形を取ります。
true、false
if文において条件に合えばtrue、合わなければfalseを返します。
返す
if文などで何らかの処理をした結果を出すことを「返す」と言います。
メソッド
処理の塊の事です。
関数、クラス、function
それぞれに違いはありますが、ここではメソッドの塊、つまり処理の塊がさらに塊を作ったものと考えてください。
パラメータ
メソッド名の後の丸括弧()に入っているもののことです。複数ある場合はカンマ,で区切られ左から第1パラメータ、第2パラメータ…と名付けられます。引数(ひきすう)とも呼ばれます。
配列
$gameSwitches[1]など文字の後ろについていないもので、[]で表される値のことです。例えば[1,4,3]、[1,10]、[1]というのはいずれも配列です
スタックする
データを"積み上げる"という意味で、ここでは配列に要素を追加することを指します。
popする
スタックしたデータを取り出すことです。
グローバル変数
ゲーム中どこからでも参照できる変数の事です。javascriptでは変数名を宣言するときに"var"がつけられていない変数のことです。"$gameMessage"等もグローバル変数です。