RPG作る人のブログ -14ページ目
ツクールMVのスクリプトで場所移動を行う方法
場所移動は頻繁に登場するイベントです。
フェードを無しにすれば場所移動以外にもマップの変化を表現できます。
ツクールMVのスクリプトで場所移動を行うには以下の通りです。
$gamePlayer.reserveTransfer(マップID, x座標, y座標, 向き, フェード)
向きは以下のように対応しています。
0:そのまま
2:下
4:左
6:右
8:上
テンキーの矢印に対応しています。
フェードは以下のように対応しています。
0:黒
1:白
2:なし
サンプルコード(マップIDが1のマップの位置x:18,y:13に左向きで白フェードして場所移動)
$gamePlayer.reserveTransfer(1, 18, 13, 4, 1)
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトでプロフィール変更を行う方法
プロフィール変更というのはいままでのツクールにはなかったような。
確かに名前が変わったり、二つ名が変わったらそれに応じてプロフィールも変わらないと変な感じがしますね。
ツクールMVのスクリプトでプロフィール変更を行うには以下の通りです。
$gameActors.actor(アクターID).setProfile("変更後のプロフィール")
サンプルコード(アクターIDが1のアクターの名前をでんすけに変更)
$gameActors.actor(1).setProfile("カロリーメイトを3食食べて今まで生きてきたという究極の\nカロリーメイト愛好者")
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトで二つ名の変更を行う方法
ツクールMVのスクリプトで名前の変更を行うには以下の通りです。
$gameActors.actor(アクターID).setNickname("変更する二つ名")
サンプルコード(アクターIDが1のアクターの二つ名をカロリーメイタ―に変更)
$gameActors.actor(1).setNickname("カロリーメイタ―")
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトで職業の変更を行う方法
ツクールMVにおいて職業の変更を行うなら以下の通りです。
$gameActors.actor(アクターID).changeClass(職業ID)
サンプルコード(アクターIDが1のアクターの職業を魔術師に変更)
$gameActors.actor(1).changeClass(3)
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトで名前の変更を行う方法
ツクールMVのスクリプトで名前の変更を行うには以下の通りです。
$gameActors.actor(アクターID).setName("変更する名前")
サンプルコード(アクターIDが1のアクターの名前をでんすけに変更)
$gameActors.actor(1).setName("でんすけ")
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトで装備の変更を行う方法
ツクールMVのスクリプトで装備の変更を行うなら以下の通りです。
$gameActors.actor(アクターID).changeEquipById(装備タイプ, 装備品)
装備タイプについては以下のようになっています。
1:武器
2:盾
3:頭
4:身体
5:装飾品
サンプルコード(アクターIDが1のアクターに剣を装備させる)
$gameActors.actor(1).changeEquipById(1, 1)
戦闘システムで頻繁に装備を変更するものを採用するときにはスクリプトを使うこともあるかもしれません。
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトで能力値の増減を行う方法
ツクールMVのスクリプトで能力値の増減をするには以下の通りです。
$gameActors.actor(アクターID).addParam(能力値ID, 変化量)
能力値IDは以下のようになっています。
0:最大HP
1:最大MP
2:攻撃力
3:防御力
4:魔法力
5:魔法防御
6:敏捷性
7:運
サンプルコード(アクターIDが1のアクターの最大HPを100増やす)
$gameActors.actor(1).addParam(0, 100)
パーティー全体に能力値の増減を施すなら以下の通りです。
サンプルコード(パーティー全体の攻撃力を10上げる)
for(i = 1; i <= $gameParty.size(); i++){
$gameActors.actor(i).addParam(2, 10)
}
変数を変化量として入れたいときは変化量のパラメータのところに変数を入れてください。
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトでレベルの増減を行う方法
ツクールMVのスクリプトでレベルの増減を行うなら以下の通りです。
$gameActors.actor(アクターID).changeLevel(変化量, レベルアップを表示するか[true or false])
サンプルコード(アクターIDが1のアクターのレベルを6増やす。レベルアップを表示する)
$gameActors.actor(1).changeLevel(6, true)
パーティー全体にレベルの増減を施すなら以下の通りです。
サンプルコード(パーティー全体のレベルを3上げる。レベルアップを表示する)
for(i = 1; i <= $gameParty.size(); i++){
$gameActors.actor(i).changeLevel(3, true)
}
レベルを上げるという操作はかなり珍しいのではないのでしょうか。
それこそレベルを上げるアイテムというと「不思議なアメ」くらいしか思い出せません。
アイテムを持ち寄ってレベルを上げるなどの、特殊なレベルの上げ方をする場合にはそういった操作をする必要がでてくるのかもしれませんね。
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトで経験値の増減を行う方法
*2016/2/26 コメントのご指摘により訂正しました。
ありがとうございます!
ツクールMVのスクリプトで経験値の増減を行うには以下の通りです。
$gameActors.actor(アクターID).changeExp($gameActors.actor(アクターID).currentExp()+変化量, レベルアップを表示するか[true or false])
changeExpの第1パラメータは経験値の総取得量を変更させます。
現在獲得している経験値は$gameActors.actor(アクターID).currentExp()で取得できます。
サンプルコード(アクターIDが1のアクターの経験値を1000増やす。レベルアップを表示)
$gameActors.actor(1).changeExp($gameActors.actor(1).currentExp()+1000, true)
パーティー全体に経験値の増減を行うなら以下の通りです。
サンプルコード(パーティー全体の経験値を500増やす。レベルアップを表示)
for(i = 1; i <= $gameParty.size(); i++){
$gameActors.actor(i).changeExp($gameActors.actor(i).currentExp()+500, true)
}
逆に経験値を吸収するような攻撃を加えたいときは変化量のパラメータをマイナスにすればできます。
攻撃されると経験値が削られる敵がいたら嫌ですね。
出会って速攻逃げます。
経験値を削る攻撃って、まるで今まで思い出を削られるような攻撃ってことですよね。
怖い。
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村ツクールMVのスクリプトでステートの変更を行う方法
ツクールMVのスクリプトでステートの変更を行うには以下の通りです。
$gameActors.actor(アクターID).addState(ステートID)
また、ステートを解除するには以下の通りです。
$gameActors.actor(アクターID).removeState(ステートID)
サンプルコード(アクターIDが1のアクターにステートIDが4のステートを付加・解除)
//毒を付加
$gameActors.actor(1).addState(4)
//毒を解除
$gameActors.actor(1).removeState(4)
パーティー全体にステートの付加・解除を行いたい場合は以下の通りです。
サンプルコード(毒のステート付加・解除)
for(i = 1; i <= $gameParty.size(); i++){
//毒を付加
$gameActors.actor(i).addState(4)
//毒を解除
$gameActors.actor(i).removeState(4)
}
ツクールMVではステートに防御があったり、魅了や激昂というVXにはなかったステートがデフォルトで入っています。
ステートとしての防御を強制というとなんだか遊戯王を思い出します。
ツクールMVスクリプトリファレンスwikiへ戻る

にほんブログ村
