-
Notifications
You must be signed in to change notification settings - Fork 11
/
MNKR_RandomActorNameMZ.js
109 lines (102 loc) · 9.74 KB
/
MNKR_RandomActorNameMZ.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
/*
* --------------------------------------------------
* MNKR_RandomActorNameMZ.js
* Ver.0.0.1
* Copyright (c) 2021 Munokura
* This software is released under the MIT license.
* http://opensource.org/licenses/mit-license.php
* --------------------------------------------------
*/
/*:
* @target MZ
* @url https://raw.githubusercontent.com/munokura/MNKR-MZ-plugins/master/MNKR_RandomActorNameMZ.js
* @plugindesc アクターの名前をランダムに変更します。
* @author munokura
*
* @help
* アクターの名前をランダムに変更します。
* プラグインコマンドから呼び出して、使用します。
*
* プラグインパラメーターに入力したものが、選択候補になります。
*
*
* 利用規約:
* MITライセンスです。
* https://licenses.opensource.jp/MIT/MIT.html
* 作者に無断で改変、再配布が可能で、
* 利用形態(商用、18禁利用等)についても制限はありません。
*
*
* @param variableId
* @text 名前保存変数
* @desc ランダムに設定された名前を保存する変数を指定してください。無指定の場合、保存しません。
* @type variable
* @default 0
*
* @param nameLists
* @text 名前リスト
* @desc 名前リストを設定します。
* @type struct<nameList>[]
* @default ["{\"listName\":\"list1\",\"actorNames\":\"[\\\"アーサー\\\",\\\"アーネスト\\\",\\\"アーノルド\\\",\\\"アービン\\\",\\\"アーロン\\\",\\\"アイザック\\\",\\\"アイバン\\\",\\\"アシュトン\\\",\\\"アドルフ\\\",\\\"アラスター\\\",\\\"アラステア\\\",\\\"アリエル\\\",\\\"アリスター\\\",\\\"アルバート\\\",\\\"アルビン\\\",\\\"アレクシス\\\",\\\"アレックス\\\",\\\"アンガス\\\",\\\"アンソニー\\\",\\\"アントン\\\",\\\"イーサン\\\",\\\"イーノック\\\",\\\"ウィリアム\\\",\\\"ウェスリー\\\",\\\"ウォーレン\\\",\\\"ウォルター\\\",\\\"エイブラム\\\",\\\"エイベル\\\",\\\"エグバート\\\",\\\"エドウィン\\\",\\\"エドガー\\\",\\\"エドワード\\\",\\\"エリアル\\\",\\\"エリオット\\\",\\\"エルトン\\\",\\\"エルビス\\\",\\\"オーウェン\\\",\\\"オーガスト\\\",\\\"オーブリー\\\",\\\"オスニエル\\\",\\\"オズワルド\\\",\\\"カーティス\\\",\\\"ガドフリー\\\",\\\"カルビン\\\",\\\"キャルビン\\\",\\\"ギルバート\\\",\\\"クラーク\\\",\\\"クライド\\\",\\\"クラレンス\\\",\\\"クリフトン\\\",\\\"グレアム\\\",\\\"グレゴリー\\\",\\\"ゴードン\\\",\\\"コンラッド\\\",\\\"サイモン\\\",\\\"サイラス\\\",\\\"サミュエル\\\",\\\"サンディー\\\",\\\"ジェイコブ\\\",\\\"ジェイソン\\\",\\\"ジェームズ\\\",\\\"ジェラルド\\\",\\\"シミオン\\\",\\\"ジャクソン\\\",\\\"ジャスパー\\\",\\\"ジュード\\\",\\\"ジュリアン\\\",\\\"ジョエル\\\",\\\"ジョージ\\\",\\\"ショーン\\\",\\\"ジョシュア\\\",\\\"ジョスリン\\\",\\\"ジョナサン\\\",\\\"スコット\\\",\\\"スタンリー\\\",\\\"スティーブ\\\",\\\"スペンサー\\\",\\\"セオドア\\\",\\\"ソロモン\\\",\\\"ダグラス\\\",\\\"ダスティン\\\",\\\"ダニエル\\\",\\\"ダライアス\\\",\\\"ダンカン\\\",\\\"チェスター\\\",\\\"チャールズ\\\",\\\"ディーン\\\",\\\"ディック\\\",\\\"デービッド\\\",\\\"デクスター\\\",\\\"デズモンド\\\",\\\"デューク\\\",\\\"デリック\\\",\\\"テレンス\\\",\\\"ドウェイン\\\",\\\"トーマス\\\",\\\"ドミニク\\\",\\\"トラビス\\\",\\\"トリスタン\\\",\\\"ナイジェル\\\",\\\"ニコラス\\\",\\\"ネイサン\\\",\\\"ノーマン\\\",\\\"バーナード\\\",\\\"ハーバート\\\",\\\"ハーベイ\\\",\\\"ハーマン\\\",\\\"バイロン\\\",\\\"パスカル\\\",\\\"パトリック\\\",\\\"ハミルトン\\\",\\\"ハリソン\\\",\\\"ハロルド\\\",\\\"ハワード\\\",\\\"ハンフリー\\\",\\\"ビクター\\\",\\\"ヒューゴー\\\",\\\"ビンセント\\\",\\\"フィリップ\\\",\\\"ブライアン\\\",\\\"ブランドン\\\",\\\"ブルース\\\",\\\"ブレンダン\\\",\\\"ブレント\\\",\\\"ブレンドン\\\",\\\"ベイジル\\\",\\\"ヘイデン\\\",\\\"マーカス\\\",\\\"マーティン\\\",\\\"マイケル\\\",\\\"マイルズ\\\",\\\"マックス\\\",\\\"マヌエル\\\",\\\"マルコム\\\",\\\"メイナード\\\",\\\"メルビン\\\",\\\"メレディス\\\",\\\"モーガン\\\",\\\"モーリス\\\",\\\"モンタギュー\\\",\\\"ユーイン\\\",\\\"ユリシーズ\\\",\\\"ライオネル\\\",\\\"ライナス\\\",\\\"ラッセル\\\",\\\"ラフェエル\\\",\\\"ランドル\\\",\\\"リーアム\\\",\\\"リーバイ\\\",\\\"リチャード\\\",\\\"ルーカス\\\",\\\"ルーシャン\\\",\\\"ルーパート\\\",\\\"ルーファス\\\",\\\"ルシアン\\\",\\\"ルパート\\\",\\\"レイモンド\\\",\\\"レックス\\\",\\\"レナード\\\",\\\"ロードリック\\\",\\\"ローマン\\\",\\\"ローランド\\\",\\\"ローレンス\\\",\\\"ロナルド\\\",\\\"ロバート\\\"]\"}","{\"listName\":\"list2\",\"actorNames\":\"[\\\"アイリーン\\\",\\\"アイリス\\\",\\\"アヴリル\\\",\\\"アグネス\\\",\\\"アデライン\\\",\\\"アドレイド\\\",\\\"アニータ\\\",\\\"アマンダ\\\",\\\"アメーリア\\\",\\\"アラベラ\\\",\\\"アリエル\\\",\\\"アリシア\\\",\\\"アレクシア\\\",\\\"アンジェラ\\\",\\\"アンソニア\\\",\\\"イーディス\\\",\\\"イーデン\\\",\\\"イザベル\\\",\\\"イボーン\\\",\\\"イライザ\\\",\\\"イレイン\\\",\\\"ウェンディ\\\",\\\"エイリーン\\\",\\\"エステル\\\",\\\"エディス\\\",\\\"エノーラ\\\",\\\"エミリア\\\",\\\"エリアル\\\",\\\"エリザベス\\\",\\\"エレノーラ\\\",\\\"オーレリア\\\",\\\"オリビア\\\",\\\"カトリーナ\\\",\\\"キャサリン\\\",\\\"キャメロン\\\",\\\"キャロル\\\",\\\"クラリス\\\",\\\"クリスティン\\\",\\\"グレイス\\\",\\\"グレンダ\\\",\\\"グロリア\\\",\\\"コーデリア\\\",\\\"サブリナ\\\",\\\"サマンサ\\\",\\\"サンドラ\\\",\\\"ジェーン\\\",\\\"ジェシカ\\\",\\\"シェリル\\\",\\\"シオドーラ\\\",\\\"ジャスミン\\\",\\\"ジャネット\\\",\\\"シャロン\\\",\\\"ジューン\\\",\\\"ジュディ\\\",\\\"ジュリアン\\\",\\\"ジョアンナ\\\",\\\"ショーナ\\\",\\\"シルビア\\\",\\\"シンシア\\\",\\\"スーザン\\\",\\\"スザンナ\\\",\\\"セオドーラ\\\",\\\"セシリア\\\",\\\"セリーナ\\\",\\\"ソフィア\\\",\\\"ダイアナ\\\",\\\"ディアドラ\\\",\\\"ディアナ\\\",\\\"テリーサ\\\",\\\"ドリーン\\\",\\\"ドロシア\\\",\\\"ナタリア\\\",\\\"ナディア\\\",\\\"ニコール\\\",\\\"ネイオミ\\\",\\\"ノーリーン\\\",\\\"バーバラ\\\",\\\"パトリシア\\\",\\\"ビクトリア\\\",\\\"ビビアン\\\",\\\"フィオナ\\\",\\\"フィリス\\\",\\\"フェリシア\\\",\\\"フランシス\\\",\\\"プリシラ\\\",\\\"ブレンダ\\\",\\\"フローラ\\\",\\\"ベアトリス\\\",\\\"ヘイゼル\\\",\\\"ベネッサ\\\",\\\"ベリンダ\\\",\\\"ヘロイーズ\\\",\\\"ベロニカ\\\",\\\"ポーリーン\\\",\\\"マーゴット\\\",\\\"マーシャ\\\",\\\"マーリーン\\\",\\\"マチルダ\\\",\\\"マデリン\\\",\\\"マドライン\\\",\\\"マライア\\\",\\\"マリアン\\\",\\\"マリリン\\\",\\\"マルビナ\\\",\\\"ミッシェル\\\",\\\"ミランダ\\\",\\\"ミリアム\\\",\\\"メイベル\\\",\\\"メリッサ\\\",\\\"メリンダ\\\",\\\"メレディス\\\",\\\"メロディ\\\",\\\"モーリーン\\\",\\\"モニーク\\\",\\\"ユーニス\\\",\\\"ヨランダ\\\",\\\"ラモーナ\\\",\\\"リオノーラ\\\",\\\"リディア\\\",\\\"リネット\\\",\\\"リリアン\\\",\\\"ルイーズ\\\",\\\"ルーシャ\\\",\\\"ルシール\\\",\\\"ルシンダ\\\",\\\"レイチェル\\\",\\\"レオノーラ\\\",\\\"レジーナ\\\",\\\"レベッカ\\\",\\\"ロレッタ\\\"]\"}"]
*
*
* @command changeName
* @text 名前の変更
* @desc アクターの名前を変更します。
*
* @arg actorId
* @text アクター
* @desc 名前を変更するアクターを指定します。
* @type actor
* @default 0
*
* @arg selectListName
* @text リスト名
* @desc 名前を変更する候補リスト名を指定します。
* @type string
* @default
*/
/*~struct~nameList:
* @param listName
* @text リスト名
* @type string
* @default list1
* @desc 名前の候補リストのリスト名。重複しない名前にしてください。
*
* @param actorNames
* @text 名前候補
* @type string[]
* @default
* @desc 候補になる名前を入れてください。
*/
(() => {
"use strict";
const pluginName = document.currentScript.src.split("/").pop().replace(/\.js$/, "");
const pluginParameters = PluginManager.parameters(pluginName);
const variableId = Number(pluginParameters['variableId'] || 0);
const settings = {
nameLists: JSON.parse(pluginParameters.nameLists || '[]').map((e) => {
return ((parameter) => {
const parsed = JSON.parse(parameter);
return {
listName: String(parsed.listName || ''),
actorNames: JSON.parse(parsed.actorNames || '[]').map((e) => {
return String(e || '');
}),
};
})(e || '{}');
}),
};
PluginManager.registerCommand(pluginName, "changeName", args => {
const actorId = Number(args.actorId);
const selectListName = String(args.selectListName);
const arr = settings.nameLists;
const filterArr = arr.filter(e => e.listName === selectListName);
const arrNames = filterArr[0].actorNames;
const changeName = arrNames[Math.floor(Math.random() * arrNames.length)];
if (variableId > 0) {
$gameVariables.setValue(variableId, changeName);
}
$gameActors.actor(actorId).setName(changeName);
});
})();