dead-bunny/js/plugins/Nore_Ninshin.js
2025-01-12 01:21:39 -06:00

214 lines
5.3 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*:ja
* @target MZ
* @author ル
*
*
* @command taneoyaName
* @text 種親の名前を設定
* @des 種親の名前を設定
* @arg actorId
* @type number
* @text actorId
* @desc actorId
*
* @command taneoyaType
* @text 種親のタイプをキャラごとの変数に設定
* @des 種親のタイプをキャラごとの変数に設定
* @arg actorId
* @type number
* @text actorId
* @desc actorId
*/
var Nore;
(function (Nore) {
var pluginName = "Nore_Ninshin";
PluginManager.registerCommand(pluginName, "ninshin", function (args) {
var actorId = parseInt(args.actorId);
var actor = $gameActors.actor(actorId);
if (actor.isBote()) {
return;
}
var time = actor.calcNinshinTime();
var taneoyaId = $gameTemp.av.mainManId();
actor.ninshin(taneoyaId);
var e = new NinshinTimeGaugeEvent(actorId, time, taneoyaId);
$slg.addTimeGaugeEvent(e);
});
PluginManager.registerCommand(pluginName, "taneoyaName", function (args) {
var actorId = parseInt(args.actorId);
var actor = $gameActors.actor(actorId);
var ninshinCount = actor.babyList().length;
var baby = actor.lastBaby();
if ($gameSwitches.value(999)) {
// 回想中
baby = new Baby(actorId, 19);
ninshinCount = 2;
}
var taneoya = $gameActors.actor(baby.taneoyaId());
var taneoyaNameVar = 52;
var ninshinCountVar = 53;
var name = taneoya.name();
$gameVariables.setValue(taneoyaNameVar, name);
$gameVariables.setValue(ninshinCountVar, ninshinCount);
});
PluginManager.registerCommand(pluginName, "taneoyaType", function (args) {
var actorId = parseInt(args.actorId);
switch (actorId) {
case 4:
$gameVariables.setValue(144, taneoyaType4());
return;
case 8:
$gameVariables.setValue(145, taneoyaType8());
return;
case 9:
$gameVariables.setValue(143, taneoyaType9());
return;
case 13:
$gameVariables.setValue(142, taneoyaType13());
return;
case 17:
$gameVariables.setValue(141, taneoyaType17());
return;
default:
console.error(actorId + "の設定が見つかりません");
}
});
function taneoyaType4() {
var actor = $gameActors.actor(4);
var taneoyaId = actor.lastBaby().taneoyaId();
if (taneoyaId == 5) {
// レン
return 0;
}
if (taneoyaId == 20) {
// タロウ
return 1;
}
if (MAN_PARAMS[taneoyaId]) {
return 2;
}
return 3;
}
function taneoyaType8() {
var actor = $gameActors.actor(8);
var taneoyaId = actor.lastBaby().taneoyaId();
if (taneoyaId == 5) {
// レン
return 0;
}
return 1;
}
function taneoyaType9() {
var actor = $gameActors.actor(9);
var taneoyaId = actor.lastBaby().taneoyaId();
if (taneoyaId == 19) {
// ブスジマ
return 0;
}
if (MAN_PARAMS[taneoyaId]) {
return 1;
}
return 2;
}
function taneoyaType13() {
var actor = $gameActors.actor(13);
var taneoyaId = actor.lastBaby().taneoyaId();
if (taneoyaId == 16) {
// カスゾウ
return 0;
}
if (MAN_PARAMS[taneoyaId]) {
return 1;
}
return 2;
}
function taneoyaType17() {
var actor = $gameActors.actor(17);
var taneoyaId = actor.lastBaby().taneoyaId();
if (taneoyaId == 21) {
// オリバー
return 0;
}
if (MAN_PARAMS[taneoyaId]) {
return 1;
}
return 2;
}
})(Nore || (Nore = {}));
function getSenriNinshinScenarioId(actor) {
if (actor.dousei().isSkipBoteEvent()) {
return "センリ_妊娠スキップ_01";
}
switch (actor.countSyusan()) {
case 0:
return "センリ_妊娠_01";
default:
return "センリ_妊娠_02";
}
}
function getNonokaNinshinScenarioId(actor) {
if (actor.dousei().isSkipBoteEvent()) {
return "カ_妊娠スキップ_01";
}
switch (actor.countSyusan()) {
case 0:
return "カ_妊娠_01";
default:
return "カ_妊娠_02";
}
}
function getMarinaNinshinScenarioId(actor) {
if (actor.dousei().isSkipBoteEvent()) {
return "マリナ_妊娠スキップ_01";
}
switch (actor.countSyusan()) {
case 1:
return "マリナ_妊娠_01";
default:
return "マリナ_妊娠_02";
}
}
function getSakiNinshinScenarioId(actor) {
if (actor.dousei().isSkipBoteEvent()) {
return "サキ_妊娠スキップ_01";
}
switch (actor.countSyusan()) {
case 0:
return "サキ_妊娠_01";
default:
return "サキ_妊娠_02";
}
}
function getKokonaNinshinScenarioId(actor) {
if (actor.dousei().isSkipBoteEvent()) {
return "ココナ_妊娠スキップ_01";
}
switch (actor.countSyusan()) {
case 0:
return "ココナ_妊娠_01";
default:
return "ココナ_妊娠_02";
}
}
function getMiyuNinshinScenarioId(actor) {
if (actor.dousei().isSkipBoteEvent()) {
return "ミユ_妊娠スキップ_01";
}
switch (actor.countSyusan()) {
case 0:
return "ミユ_妊娠_01";
default:
return "ミユ_妊娠_02";
}
}
function getKanamiNinshinScenarioId(actor) {
if (actor.dousei().isSkipBoteEvent()) {
return "カナミ_妊娠スキップ_01";
}
switch (actor.countSyusan()) {
case 0:
return "カナミ_妊娠_01";
default:
return "カナミ_妊娠_02";
}
}