1139 lines
30 KiB
JavaScript
1139 lines
30 KiB
JavaScript
var __extends =
|
|
(this && this.__extends) ||
|
|
(function () {
|
|
var extendStatics = function (d, b) {
|
|
extendStatics =
|
|
Object.setPrototypeOf ||
|
|
({ __proto__: [] } instanceof Array &&
|
|
function (d, b) {
|
|
d.__proto__ = b;
|
|
}) ||
|
|
function (d, b) {
|
|
for (var p in b)
|
|
if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
|
|
};
|
|
return extendStatics(d, b);
|
|
};
|
|
return function (d, b) {
|
|
if (typeof b !== "function" && b !== null)
|
|
throw new TypeError(
|
|
"Class extends value " + String(b) + " is not a constructor or null"
|
|
);
|
|
extendStatics(d, b);
|
|
function __() {
|
|
this.constructor = d;
|
|
}
|
|
d.prototype =
|
|
b === null
|
|
? Object.create(b)
|
|
: ((__.prototype = b.prototype), new __());
|
|
};
|
|
})();
|
|
/*:ja
|
|
* @target MZ
|
|
* @author ル
|
|
*
|
|
*
|
|
*
|
|
* @command upEro
|
|
* @text エロステータスアップ
|
|
* @des エロステータスアップ
|
|
* @arg actorId
|
|
* @type number
|
|
* @arg type
|
|
* @type string
|
|
* @desc kiss, manko, chichi, cri, anal, sm
|
|
* @arg value
|
|
* @type number
|
|
*
|
|
* @command initActor4
|
|
* @text マリナの初期状態設定
|
|
*/
|
|
var NAKADASHI_RAKUGAKI_MAX = 20;
|
|
var Nore;
|
|
(function (Nore) {
|
|
var pluginName = "Nore_Actor";
|
|
PluginManager.registerCommand(pluginName, "upEro", function (args) {
|
|
var actorId = parseInt(args.actorId);
|
|
var value = parseInt(args.value);
|
|
var actor = $gameActors.actor(actorId);
|
|
actor.upEroParam(args.type, value);
|
|
});
|
|
PluginManager.registerCommand(pluginName, "initActor4", function (args) {
|
|
var actor = $gameActors.actor(4);
|
|
actor.upEroParam(AvRequired.kiss, 84);
|
|
actor.upEroParam(AvRequired.cri, 28);
|
|
actor.upEroParam(AvRequired.anal, 0);
|
|
actor.upEroParam(AvRequired.sm, 13);
|
|
actor.upEroParam(AvRequired.chichi, 49);
|
|
actor.ninshin(41);
|
|
actor.lastBaby().syusan();
|
|
actor.setBote(0);
|
|
actor.upEro(EroType.nakadashi, 27);
|
|
actor.upEro(EroType.acme, 2);
|
|
});
|
|
})(Nore || (Nore = {}));
|
|
Game_Actors.prototype.mainActor = function () {
|
|
if ($gameVariables.value(5) > 1) {
|
|
return this.actor($gameVariables.value(5));
|
|
}
|
|
return this.actor(1);
|
|
};
|
|
Game_Actors.prototype.actor = function (actorId) {
|
|
if ($dataActors[actorId]) {
|
|
if (!this._data[actorId]) {
|
|
this._data[actorId] = new Game_Actor2(actorId);
|
|
}
|
|
return this._data[actorId];
|
|
}
|
|
return null;
|
|
};
|
|
var BabyProgress;
|
|
(function (BabyProgress) {
|
|
BabyProgress["jusei"] = "jusei";
|
|
BabyProgress["bote"] = "bote";
|
|
BabyProgress["syusan"] = "syusan";
|
|
})(BabyProgress || (BabyProgress = {}));
|
|
var Baby = /** @class */ (function () {
|
|
function Baby(actorId, taneoyaId) {
|
|
this._time = 0;
|
|
this._type = 1;
|
|
this._actorId = actorId;
|
|
this._taneoyaId = taneoyaId;
|
|
this._progress = BabyProgress.jusei;
|
|
this._male = Math.randomInt(2) == 0;
|
|
this._type = Math.randomInt(2) + 1;
|
|
}
|
|
Baby.prototype.progress = function () {
|
|
return this._progress;
|
|
};
|
|
Baby.prototype.actorId = function () {
|
|
return this._actorId;
|
|
};
|
|
Baby.prototype.taneoyaId = function () {
|
|
return this._taneoyaId;
|
|
};
|
|
Baby.prototype.setBote = function () {
|
|
this._progress = BabyProgress.bote;
|
|
};
|
|
Baby.prototype.syusan = function () {
|
|
this._progress = BabyProgress.syusan;
|
|
this._time = $gameSystem.playtime();
|
|
};
|
|
Baby.prototype.isSyusan = function () {
|
|
return this._progress == BabyProgress.syusan;
|
|
};
|
|
Baby.prototype.isBote = function () {
|
|
return this._progress == BabyProgress.bote;
|
|
};
|
|
Baby.prototype.isJusei = function () {
|
|
return this._progress == BabyProgress.jusei;
|
|
};
|
|
Baby.prototype.isMale = function () {
|
|
return this._male;
|
|
};
|
|
Baby.prototype.taneoyaName = function () {
|
|
var taneoya = $gameActors.actor(this.taneoyaId());
|
|
if (!taneoya) {
|
|
console.error(this.taneoyaId() + " の種親が見つかりません");
|
|
return "";
|
|
}
|
|
return taneoya.name();
|
|
};
|
|
Baby.prototype.babyImageId = function () {
|
|
var imageIndex = this.imageIndex();
|
|
if (this.isBlack()) {
|
|
return "$baby_02_0" + imageIndex;
|
|
}
|
|
if (this.isMale()) {
|
|
return "$baby_01_ma_0" + imageIndex;
|
|
} else {
|
|
return "$baby_01_fe_0" + imageIndex;
|
|
}
|
|
};
|
|
Baby.prototype.isBlack = function () {
|
|
var taneyaParam = MAN_PARAMS[this.taneoyaId()];
|
|
if (!taneyaParam) {
|
|
return;
|
|
}
|
|
return taneyaParam.type == "外人";
|
|
};
|
|
Baby.prototype.imageIndex = function () {
|
|
return this._type || 1;
|
|
};
|
|
Baby.prototype.growth = function () {
|
|
if ($gameSystem.playtime() - this._time >= 5000) {
|
|
return 2;
|
|
}
|
|
if ($gameSystem.playtime() - this._time >= 2000) {
|
|
return 1;
|
|
}
|
|
return 0;
|
|
};
|
|
Baby.prototype.update = function () {
|
|
if (this.isSyusan()) {
|
|
this._time++;
|
|
}
|
|
};
|
|
Baby.prototype.loadImage = function () {
|
|
//p('loadImage:' + this.babyImageId())
|
|
ImageManager.loadCharacter(this.babyImageId());
|
|
};
|
|
return Baby;
|
|
})();
|
|
var BodyChangeLv = /** @class */ (function () {
|
|
function BodyChangeLv(level, equipAcce) {
|
|
this.level = level;
|
|
this.equipAcce = equipAcce;
|
|
}
|
|
return BodyChangeLv;
|
|
})();
|
|
var Game_Actor2 = /** @class */ (function (_super) {
|
|
__extends(Game_Actor2, _super);
|
|
function Game_Actor2() {
|
|
var _this = (_super !== null && _super.apply(this, arguments)) || this;
|
|
_this._lastCostumeList = [];
|
|
_this._abilityMap = {};
|
|
_this._fan = 0;
|
|
_this._popularity = 0;
|
|
_this._babyList = [];
|
|
_this._mankoKuroValue = 0;
|
|
_this._mankoHenkeiValue = 0;
|
|
_this._chikubiKuroValue = 0;
|
|
_this._mankoFaceId = 0;
|
|
_this._mankoHoppeId = 0;
|
|
_this._mankoNamidaId = 0;
|
|
return _this;
|
|
}
|
|
Game_Actor2.prototype.setup = function (actorId) {
|
|
_super.prototype.setup.call(this, actorId);
|
|
this.setupEroParams();
|
|
};
|
|
Game_Actor2.prototype.friendshipLevel = function (manId) {
|
|
var f = this.friendship(manId);
|
|
return this.friendshipLevelByValue(f);
|
|
};
|
|
Game_Actor2.prototype.friendshipLevelByValue = function (f) {
|
|
if (f < 15) {
|
|
return FriendshipLevel.E;
|
|
}
|
|
if (f < 30) {
|
|
return FriendshipLevel.D;
|
|
}
|
|
if (f < 50) {
|
|
return FriendshipLevel.C;
|
|
}
|
|
if (f < 75) {
|
|
return FriendshipLevel.B;
|
|
}
|
|
if (f < 100) {
|
|
return FriendshipLevel.A;
|
|
}
|
|
return FriendshipLevel.S;
|
|
};
|
|
Game_Actor2.prototype.maxFriendship = function (manId) {
|
|
if ($gameSystem.isRecollection()) {
|
|
return 100;
|
|
}
|
|
var n = this.countSyusanMan(manId);
|
|
switch (n) {
|
|
case 0:
|
|
return 75;
|
|
default:
|
|
return 100;
|
|
}
|
|
};
|
|
Game_Actor2.prototype.friendship = function (manId) {
|
|
this._friendshipMap = this._friendshipMap || {};
|
|
return Math.min(this._friendshipMap[manId] || 0, this.maxFriendship(manId));
|
|
};
|
|
Game_Actor2.prototype.addFriendship = function (manId, value, allowMax) {
|
|
this._friendshipMap = this._friendshipMap || {};
|
|
var current = this._friendshipMap[manId] || 0;
|
|
this._friendshipMap[manId] = Math.min(
|
|
current + value,
|
|
this.maxFriendship(manId)
|
|
);
|
|
if (current < 100) {
|
|
if (this._friendshipMap[manId] >= 100) {
|
|
if (!allowMax) {
|
|
// AV撮影などでは MAX にならない
|
|
this._friendshipMap[manId] = 99;
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
};
|
|
Game_Actor2.prototype.isNonokaDousei = function (makeAv) {
|
|
if (makeAv) {
|
|
return false;
|
|
}
|
|
if ($gameSwitches.value(252)) {
|
|
return false;
|
|
}
|
|
if (this.actorId() != 9) {
|
|
return false;
|
|
}
|
|
if (this.dousei().manId() != 19) {
|
|
return false;
|
|
}
|
|
return true;
|
|
};
|
|
Game_Actor2.prototype.canDousei = function (manId) {
|
|
if ($gameSwitches.value(263)) {
|
|
switch (this._actorId) {
|
|
case 4:
|
|
case 9:
|
|
case 13:
|
|
case 17:
|
|
return true;
|
|
}
|
|
}
|
|
var avList = $slg.avInfo().actorAvList(this.actorId());
|
|
for (var _i = 0, avList_1 = avList; _i < avList_1.length; _i++) {
|
|
var av = avList_1[_i];
|
|
if (av.mainManId() == manId) {
|
|
if (av.nakadashi() > 0) {
|
|
return true;
|
|
}
|
|
// アナルは対象外
|
|
/*if (av.anal() > 0) {
|
|
return true;
|
|
}*/
|
|
}
|
|
}
|
|
return false;
|
|
};
|
|
Game_Actor2.prototype.setBote = function (boteId) {
|
|
if (this._boteId == boteId) {
|
|
return;
|
|
}
|
|
this._boteId = boteId;
|
|
this.setCacheChanged();
|
|
};
|
|
Game_Actor2.prototype.canContraception = function () {
|
|
if (this.actorId() == 4) {
|
|
// マリナはレンを産んだ分がある
|
|
return this.countSyusan() >= 2;
|
|
} else {
|
|
return this.countSyusan() >= 1;
|
|
}
|
|
};
|
|
Game_Actor2.prototype.ninshin = function (taneoyaId) {
|
|
if (taneoyaId == 0) {
|
|
console.error("種親が設定されていません");
|
|
throw {};
|
|
}
|
|
if (this.lastBaby() && this.lastBaby().progress() != BabyProgress.syusan) {
|
|
console.error("今は妊娠できません");
|
|
return false;
|
|
}
|
|
var baby = new Baby(Math.trunc(this._actorId), taneoyaId);
|
|
this._babyList.push(baby);
|
|
return true;
|
|
};
|
|
Game_Actor2.prototype.lastBaby = function () {
|
|
if (this._babyList.length == 0) {
|
|
return null;
|
|
}
|
|
return this._babyList[this._babyList.length - 1];
|
|
};
|
|
Game_Actor2.prototype.setupEroParams = function () {
|
|
this._paramMap = {};
|
|
var params = MAN_PARAMS[this.actorId()];
|
|
if (!params) {
|
|
return;
|
|
}
|
|
this.upEroParam(AvRequired.kiss, params.kiss);
|
|
this.upEroParam(AvRequired.chichi, params.chichi);
|
|
this.upEroParam(AvRequired.cri, params.cri);
|
|
this.upEroParam(AvRequired.manko, params.manko);
|
|
this.upEroParam(AvRequired.anal, params.anal);
|
|
this.upEroParam(AvRequired.sm, params.sm);
|
|
};
|
|
Game_Actor2.prototype.makeCurrentActorParam = function () {
|
|
return new UpEroActorInfo(
|
|
this.eroParam(AvRequired.kiss),
|
|
this.eroParam(AvRequired.manko),
|
|
this.eroParam(AvRequired.anal),
|
|
this.eroParam(AvRequired.cri),
|
|
this.eroParam(AvRequired.chichi),
|
|
this.eroParam(AvRequired.sm)
|
|
);
|
|
};
|
|
Game_Actor2.prototype.upEroParams = function (info) {
|
|
this.upEroParam(AvRequired.kiss, info.kiss);
|
|
this.upEroParam(AvRequired.manko, info.manko);
|
|
this.upEroParam(AvRequired.anal, info.anal);
|
|
this.upEroParam(AvRequired.cri, info.cri);
|
|
this.upEroParam(AvRequired.chichi, info.chichi);
|
|
this.upEroParam(AvRequired.sm, info.sm);
|
|
};
|
|
Game_Actor2.prototype.eroParamRate = function () {
|
|
return 10;
|
|
};
|
|
Game_Actor2.prototype.saveBattle = function () {
|
|
this._savedHp = this._hp;
|
|
};
|
|
Game_Actor2.prototype.restoreBattle = function () {
|
|
this._hp = this._savedHp;
|
|
};
|
|
Game_Actor2.prototype.update = function () {
|
|
this.updateHp();
|
|
this.dousei().update();
|
|
this.refresh();
|
|
};
|
|
Game_Actor2.prototype.updateHp = function () {
|
|
var dousei = this.dousei();
|
|
var upHp = 0;
|
|
if (dousei.isEnabled() && dousei.isActive() && !dousei.isRest()) {
|
|
upHp += 2;
|
|
if ($slg.facilityInfo().findFacility(67)) {
|
|
upHp += 1;
|
|
}
|
|
} else {
|
|
upHp += 2;
|
|
if ($slg.facilityInfo().findFacility(67)) {
|
|
upHp += 1;
|
|
}
|
|
}
|
|
if (this._speedUp) {
|
|
upHp *= 5;
|
|
this._speedUp = false;
|
|
this._lastSpeedUp = true;
|
|
}
|
|
this._hp += upHp;
|
|
if (this._hp > this.mhp) {
|
|
this._hp = this.mhp;
|
|
}
|
|
};
|
|
Game_Actor2.prototype.recoverHpByDay = function () {
|
|
this._hp += 500;
|
|
if (this._hp > this.mhp) {
|
|
this._hp = this.mhp;
|
|
}
|
|
};
|
|
Game_Actor2.prototype.fan = function () {
|
|
return this._fan;
|
|
};
|
|
Game_Actor2.prototype.name = function () {
|
|
if (this.actorId() == 77) {
|
|
// 同棲相手
|
|
var realActorId = $gameVariables.value(55);
|
|
if (
|
|
realActorId >= 1 &&
|
|
realActorId != 77 &&
|
|
$gameActors.actor(realActorId)
|
|
) {
|
|
return $gameActors.actor(realActorId).name();
|
|
}
|
|
}
|
|
if (this.actorId() == 78) {
|
|
// AV男優
|
|
var realActorId = $gameVariables.value(55);
|
|
if (
|
|
realActorId >= 1 &&
|
|
realActorId != 78 &&
|
|
$gameActors.actor(realActorId)
|
|
) {
|
|
return $gameActors.actor(realActorId).name();
|
|
}
|
|
}
|
|
switch (ConfigManager.language) {
|
|
case "en":
|
|
if (this.actor().meta["nameEn"]) {
|
|
return this.actor().meta["nameEn"];
|
|
}
|
|
break;
|
|
case "ch":
|
|
case "jp":
|
|
break;
|
|
}
|
|
return this.actor().name;
|
|
};
|
|
Game_Actor2.prototype.onMakeAv = function (manId) {
|
|
this.addFriendship(manId, this.friendshipUpValue(manId), false);
|
|
};
|
|
Game_Actor2.prototype.friendshipUpValue = function (manId) {
|
|
return 10;
|
|
};
|
|
Game_Actor2.prototype.rate = function () {
|
|
return this.hpRate();
|
|
};
|
|
Game_Actor2.prototype.eroParam = function (param) {
|
|
this._paramMap[param] = this._paramMap[param] || 0;
|
|
return this._paramMap[param];
|
|
};
|
|
Game_Actor2.prototype.eroParam10 = function (param) {
|
|
this._paramMap[param] = this._paramMap[param] || 0;
|
|
return Math.floor(this._paramMap[param] / this.eroParamRate());
|
|
};
|
|
Game_Actor2.prototype.upEroParam = function (param, value) {
|
|
//p('upEroParam:' + param + ' ' + value)
|
|
this._paramMap[param] = this._paramMap[param] || 0;
|
|
this._paramMap[param] += value;
|
|
};
|
|
Game_Actor2.prototype.eroAbility = function (ability) {
|
|
this._abilityMap[ability] = this._abilityMap[ability] || 0;
|
|
return this._abilityMap[ability];
|
|
};
|
|
Game_Actor2.prototype.posByActor = function () {
|
|
switch (this.actorId()) {
|
|
case 1:
|
|
return 0;
|
|
case 3:
|
|
return 0;
|
|
case 4:
|
|
return 0;
|
|
case 8:
|
|
return -10;
|
|
case 9:
|
|
return -20;
|
|
case 10:
|
|
return -40;
|
|
case 11:
|
|
return -20;
|
|
case 13:
|
|
return -16;
|
|
case 17:
|
|
return -16;
|
|
}
|
|
return 0;
|
|
};
|
|
Game_Actor2.prototype.getFriendshipLevelText = function (level) {
|
|
switch (level) {
|
|
case FriendshipLevel.E:
|
|
return "E";
|
|
case FriendshipLevel.D:
|
|
return "D";
|
|
case FriendshipLevel.C:
|
|
return "C";
|
|
case FriendshipLevel.B:
|
|
return "B";
|
|
case FriendshipLevel.A:
|
|
return "A";
|
|
case FriendshipLevel.S:
|
|
return "S";
|
|
}
|
|
};
|
|
Game_Actor2.prototype.actorId = function () {
|
|
return Math.trunc(_super.prototype.actorId.call(this));
|
|
};
|
|
Game_Actor2.prototype.saveCostume = function (slot) {
|
|
this._lastCostumeList[slot] = new CostumeSaver(this.actorId());
|
|
};
|
|
Game_Actor2.prototype.restoreCostume = function (slot, includeAcce) {
|
|
if (!this._lastCostumeList[slot]) {
|
|
console.error("costume not found:" + slot);
|
|
return false;
|
|
}
|
|
this._lastCostumeList[slot].restoreCostume(null, includeAcce);
|
|
return true;
|
|
};
|
|
Game_Actor2.prototype.power = function () {
|
|
var n = 0;
|
|
n += this.mhp;
|
|
n += this.atk * 10;
|
|
return n;
|
|
};
|
|
Game_Actor2.prototype.atk2 = function () {
|
|
return this.atk;
|
|
};
|
|
Game_Actor2.prototype.def2 = function () {
|
|
return this.def;
|
|
};
|
|
Game_Actor2.prototype.dousei = function () {
|
|
this._dousei = this._dousei || new Dousei(this.actorId());
|
|
return this._dousei;
|
|
};
|
|
Game_Actor2.prototype.isJusei = function () {
|
|
var lastBaby = this.lastBaby();
|
|
if (!lastBaby) {
|
|
return false;
|
|
}
|
|
return lastBaby.isJusei();
|
|
};
|
|
Game_Actor2.prototype.isNinshin = function () {
|
|
if (this.boteId > 0) {
|
|
return false;
|
|
}
|
|
for (var _i = 0, _a = $slg.timeGaugeEventList(); _i < _a.length; _i++) {
|
|
var e = _a[_i];
|
|
if (e.type() == TimeGaugeEventType.bote) {
|
|
if (e.actorId() == this.actorId()) {
|
|
return true;
|
|
}
|
|
}
|
|
}
|
|
return false;
|
|
};
|
|
Game_Actor2.prototype.isBote = function () {
|
|
return this.boteId > 0;
|
|
};
|
|
Game_Actor2.prototype.calcNinshinTime = function () {
|
|
if ($slg.facilityInfo().hasFacility(57)) {
|
|
return 250;
|
|
}
|
|
return 800;
|
|
};
|
|
Game_Actor2.prototype.babyList = function () {
|
|
return this._babyList;
|
|
};
|
|
Game_Actor2.prototype.countSyusan = function () {
|
|
var result = 0;
|
|
for (var _i = 0, _a = this.babyList(); _i < _a.length; _i++) {
|
|
var baby = _a[_i];
|
|
if (baby.isSyusan()) {
|
|
result++;
|
|
}
|
|
}
|
|
return result;
|
|
};
|
|
Game_Actor2.prototype.countSyusanMan = function (manId) {
|
|
var result = 0;
|
|
for (var _i = 0, _a = this.babyList(); _i < _a.length; _i++) {
|
|
var baby = _a[_i];
|
|
if (baby.isSyusan() && baby.taneoyaId() == manId) {
|
|
result++;
|
|
}
|
|
}
|
|
return result;
|
|
};
|
|
Game_Actor2.prototype.isKaijin = function () {
|
|
return this.actorId() >= 101 && this.actorId() <= 140;
|
|
};
|
|
Game_Actor2.prototype.isZako = function () {
|
|
return this.actorId() >= 187;
|
|
};
|
|
Game_Actor2.prototype.isLoli = function () {
|
|
switch (this.actorId()) {
|
|
case 8:
|
|
case 10:
|
|
case 11:
|
|
case 17:
|
|
return true;
|
|
}
|
|
return false;
|
|
};
|
|
Game_Actor2.prototype.isStudent = function () {
|
|
switch (this.actorId()) {
|
|
case 9:
|
|
case 13:
|
|
return true;
|
|
}
|
|
return false;
|
|
};
|
|
Game_Actor2.prototype.iconIndex = function () {
|
|
switch (this.actorId()) {
|
|
case 8:
|
|
return 642; // センリ
|
|
case 9:
|
|
return 644; // ノノカ
|
|
case 10:
|
|
return 640; // カナミ
|
|
case 11:
|
|
return 641; // ミユ
|
|
case 13:
|
|
return 647; // サキ
|
|
case 15:
|
|
return 643; // リツコ
|
|
case 17:
|
|
return 648; // ココナ
|
|
case 4:
|
|
return 645; // マリナ
|
|
case 5:
|
|
return 646; // レン
|
|
case 18:
|
|
return 649; // ヨシオ
|
|
case 26:
|
|
return 650; // ミン
|
|
case 20:
|
|
return 651; // タロウ
|
|
case 19:
|
|
return 652; // ブスジマ
|
|
case 16:
|
|
return 654; // カスゾウ
|
|
case 21:
|
|
return 655; // オリバー
|
|
case 21:
|
|
return 655; //
|
|
case 48:
|
|
return 679; // クズオ
|
|
case 49:
|
|
return 680; // ガリオ
|
|
case 22:
|
|
return 678; // デブオ
|
|
case 50:
|
|
return 682; // 薬師丸 ヌマオ
|
|
case 51:
|
|
return 683; // シゲさん
|
|
case 52:
|
|
return 565; // 高橋 むなし
|
|
case 53:
|
|
return 685; // 織田ノッブ
|
|
case 54:
|
|
return 686; // 鈴木 ゴンゾウ
|
|
case 55:
|
|
return 687; // アナルのヤシチ
|
|
case 58:
|
|
return 560; // 盗撮以蔵
|
|
case 59:
|
|
return 561; // アナルじじい
|
|
case 61:
|
|
return 562; // 鉄橋下の帝王
|
|
case 62:
|
|
return 563; // 田吾作
|
|
case 24:
|
|
return 563; // 田吾作
|
|
case 3:
|
|
return 566; // ユヅキ
|
|
case 57:
|
|
return 567; // アンドレ
|
|
case 56:
|
|
return 568; // ゴンザレス
|
|
case 1:
|
|
return 569; // シン
|
|
case 2:
|
|
return 681; // タクオ
|
|
}
|
|
return -1;
|
|
};
|
|
Game_Actor2.prototype.onSyusan = function () {
|
|
this._ninshinDamage = 0;
|
|
this.dousei().setDouseiNinshin(false);
|
|
};
|
|
Game_Actor2.prototype.ninshinRate = function () {
|
|
this._ninshinDamage = this._ninshinDamage || 0;
|
|
return (100 - this._ninshinDamage) / 100;
|
|
};
|
|
Game_Actor2.prototype.ninshinDamage = function (
|
|
n,
|
|
manId,
|
|
canNinshin,
|
|
isDousei,
|
|
friendshipMax
|
|
) {
|
|
if (isDousei === void 0) {
|
|
isDousei = false;
|
|
}
|
|
if (friendshipMax === void 0) {
|
|
friendshipMax = false;
|
|
}
|
|
if (this.lastBaby() && !this.lastBaby().isSyusan()) {
|
|
return false;
|
|
}
|
|
this._ninshinDamage = this._ninshinDamage || 0;
|
|
this._ninshinDamage += n;
|
|
if (canNinshin) {
|
|
var juseiRate = this.juseiRate(friendshipMax);
|
|
//p('juseiRate:' + juseiRate);
|
|
if (Math.random() * 100 < juseiRate) {
|
|
if (isDousei) {
|
|
this.ninshin(manId);
|
|
} else {
|
|
Nore.ninshin(this, manId);
|
|
}
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
};
|
|
Game_Actor2.prototype.juseiRate = function (friendshipMax) {
|
|
if (this.lastBaby() && !this.lastBaby().isSyusan()) {
|
|
return 0;
|
|
}
|
|
if (this.hpRate() < 1) {
|
|
return 0;
|
|
}
|
|
if (Nore.isTaikenban()) {
|
|
if ($gameSwitches.value(1038)) {
|
|
return 0;
|
|
}
|
|
}
|
|
if (this.isDebugJusei()) {
|
|
return 100;
|
|
}
|
|
this._ninshinDamage = this._ninshinDamage || 0;
|
|
if (!$gameSwitches.value(1038)) {
|
|
this._ninshinDamage += 150;
|
|
}
|
|
var rate = this._ninshinDamage / 30 + 1;
|
|
if ($slg.facilityInfo().hasFacility(56)) {
|
|
rate *= 1.5;
|
|
}
|
|
if (friendshipMax) {
|
|
rate *= 2;
|
|
}
|
|
if (rate >= 90) {
|
|
return 90;
|
|
}
|
|
return rate;
|
|
};
|
|
Game_Actor2.prototype.isDebugJusei = function () {
|
|
var sw = -1;
|
|
switch (this._actorId) {
|
|
case 9:
|
|
sw = 961;
|
|
break;
|
|
case 4:
|
|
sw = 962;
|
|
break;
|
|
case 13:
|
|
sw = 963;
|
|
break;
|
|
case 17:
|
|
sw = 964;
|
|
break;
|
|
case 11:
|
|
sw = 965;
|
|
break;
|
|
}
|
|
return $gameSwitches.value(sw);
|
|
};
|
|
Game_Actor2.prototype.speedUp = function () {
|
|
this._speedUp = true;
|
|
};
|
|
Game_Actor2.prototype.clearLastSpeedUp = function () {
|
|
this._lastSpeedUp = false;
|
|
};
|
|
Game_Actor2.prototype.isLastSpeedUp = function () {
|
|
return this._lastSpeedUp;
|
|
};
|
|
Game_Actor2.prototype.mankoHenkeiValue = function () {
|
|
var mankoEro = this.eroParam(AvRequired.manko);
|
|
var syusanPoint = this.countSyusan() * 17;
|
|
return mankoEro + syusanPoint;
|
|
};
|
|
Game_Actor2.prototype.mankoHenkei100Value = function () {
|
|
var mankoEro = this.mankoHenkeiValue();
|
|
var max = (MANKO_ID_LIST[5] * 100) / 90;
|
|
return Math.min(Math.ceil((mankoEro / max) * 100), 100);
|
|
};
|
|
Game_Actor2.prototype.mankoHenkeiLv = function () {
|
|
var acceMap = {
|
|
1: 1122,
|
|
2: 1123,
|
|
3: 1124,
|
|
4: 1125,
|
|
5: 1126,
|
|
6: 1127,
|
|
7: 1128,
|
|
};
|
|
var acceBodyChange = this.calcAcceEquipLv(acceMap);
|
|
if (acceBodyChange) {
|
|
return acceBodyChange;
|
|
}
|
|
return this.realMankoHenkeiLv();
|
|
};
|
|
Game_Actor2.prototype.realMankoHenkeiLv = function () {
|
|
var mankoEro = this.mankoHenkeiValue();
|
|
return new BodyChangeLv(this.calcValueLv(MANKO_ID_LIST, mankoEro), false);
|
|
};
|
|
Game_Actor2.prototype.sikyuLv = function () {
|
|
var n = this.countSyusan();
|
|
switch (n) {
|
|
case 0:
|
|
return 1;
|
|
case 1:
|
|
case 2:
|
|
return 2;
|
|
case 3:
|
|
case 4:
|
|
return 3;
|
|
case 5:
|
|
case 6:
|
|
case 7:
|
|
case 8:
|
|
return 4;
|
|
case 9:
|
|
case 10:
|
|
case 11:
|
|
return 5;
|
|
case 12:
|
|
case 13:
|
|
case 14:
|
|
return 6;
|
|
default:
|
|
return 7;
|
|
}
|
|
};
|
|
Game_Actor2.prototype.analGaba100Value = function () {
|
|
var analTotal = this.eroParam(AvRequired.anal);
|
|
var max = (ANAL_ID_LIST[5] * 100) / 90;
|
|
return Math.min(Math.ceil((analTotal / max) * 100), 100);
|
|
};
|
|
Game_Actor2.prototype.analGabaLv = function () {
|
|
var acceMap = {
|
|
1: 1142,
|
|
3: 1143,
|
|
5: 1144,
|
|
6: 1145,
|
|
7: 1146,
|
|
};
|
|
var acceBodyChange = this.calcAcceEquipLv(acceMap);
|
|
if (acceBodyChange) {
|
|
return acceBodyChange;
|
|
}
|
|
return this.realAnalGabaLv();
|
|
};
|
|
Game_Actor2.prototype.realAnalGabaLv = function () {
|
|
var analTotal = this.eroParam(AvRequired.anal);
|
|
return new BodyChangeLv(this.calcValueLv(ANAL_ID_LIST, analTotal), false);
|
|
};
|
|
Game_Actor2.prototype.mankoKuroLv = function () {
|
|
return this.calcMankoKuroLv();
|
|
};
|
|
Game_Actor2.prototype.calcAcceEquipLv = function (acceMap) {
|
|
for (var key in acceMap) {
|
|
var value = acceMap[key];
|
|
if (this.hasAcce(value)) {
|
|
return new BodyChangeLv(parseInt(key), true);
|
|
}
|
|
}
|
|
return null;
|
|
};
|
|
Game_Actor2.prototype.calcValueLv = function (list, value) {
|
|
var result = 0;
|
|
for (var i = 0; i < list.length; i++) {
|
|
result++;
|
|
var n = list[i];
|
|
if (value <= n) {
|
|
return result;
|
|
}
|
|
}
|
|
return result;
|
|
};
|
|
Game_Actor2.prototype.calcMankoKuroLv = function () {
|
|
var acceMap = {
|
|
1: 1132,
|
|
2: 1133,
|
|
3: 1134,
|
|
4: 1135,
|
|
5: 1136,
|
|
6: 1137,
|
|
7: 1138,
|
|
};
|
|
var acceBodyChange = this.calcAcceEquipLv(acceMap);
|
|
if (acceBodyChange) {
|
|
return acceBodyChange;
|
|
}
|
|
return this.realMankoKuroLv();
|
|
};
|
|
Game_Actor2.prototype.realMankoKuroLv = function () {
|
|
var value = this.mankoKuroValue();
|
|
return new BodyChangeLv(this.calcValueLv(MANKO_ID_LIST, value), false);
|
|
};
|
|
Game_Actor2.prototype.depravityLv = function () {
|
|
var value = this.depravity();
|
|
return this.calcValueLv(DEPRAVITY_LIST, value);
|
|
};
|
|
Game_Actor2.prototype.reputationLv = function () {
|
|
var value = this.reputation();
|
|
return this.calcValueLv(REPUTATION_LIST, -value);
|
|
};
|
|
Game_Actor2.prototype.mankoKuroValue = function () {
|
|
this._mankoKuroValue = this._mankoKuroValue || 0;
|
|
var nakadashi = this.countEro(EroType.nakadashi);
|
|
var syusanPoint = this.countSyusan() * 10;
|
|
return this._mankoKuroValue + nakadashi * 3 + syusanPoint;
|
|
};
|
|
Game_Actor2.prototype.mankoKuro100Value = function () {
|
|
var value = this.mankoKuroValue();
|
|
var max = (MANKO_ID_LIST[5] * 100) / 90;
|
|
return Math.min(Math.ceil((value / max) * 100), 100);
|
|
};
|
|
Game_Actor2.prototype.chikubiKuroValue = function () {
|
|
this._chikubiKuroValue = this._chikubiKuroValue || 0;
|
|
var chichi = this.eroParam(AvRequired.chichi);
|
|
var syusanPoint = this.countSyusan() * 36;
|
|
return this._chikubiKuroValue + chichi * 2 + syusanPoint;
|
|
};
|
|
Game_Actor2.prototype.chikubiKuro100Value = function () {
|
|
var value = this.chikubiKuroValue();
|
|
var max = (MANKO_ID_LIST[5] * 100) / 90;
|
|
return Math.min(Math.ceil((value / max) * 100), 100);
|
|
};
|
|
Game_Actor2.prototype.chikubiKuroLv = function () {
|
|
var acceMap = {
|
|
1: 1152,
|
|
2: 1153,
|
|
3: 1154,
|
|
4: 1155,
|
|
5: 1156,
|
|
6: 1157,
|
|
7: 1158,
|
|
};
|
|
var acceBodyChange = this.calcAcceEquipLv(acceMap);
|
|
if (acceBodyChange) {
|
|
return acceBodyChange;
|
|
}
|
|
return this.realChikubiKuroLv();
|
|
};
|
|
Game_Actor2.prototype.realChikubiKuroLv = function () {
|
|
var value = this.chikubiKuroValue();
|
|
return new BodyChangeLv(this.calcValueLv(MANKO_ID_LIST, value), false);
|
|
};
|
|
Game_Actor2.prototype.abilityAcceList = function () {
|
|
var result = [];
|
|
var abilityAcceList = [1005, 1001, 1002, 1003, 1004, 1008];
|
|
for (
|
|
var _i = 0, abilityAcceList_1 = abilityAcceList;
|
|
_i < abilityAcceList_1.length;
|
|
_i++
|
|
) {
|
|
var acceId = abilityAcceList_1[_i];
|
|
if (this.hasAcce(acceId)) {
|
|
result.push(acceId);
|
|
}
|
|
}
|
|
return result;
|
|
};
|
|
Game_Actor2.prototype.mankoFaceId = function () {
|
|
return this._mankoFaceId || 1;
|
|
};
|
|
Game_Actor2.prototype.setMankoFaceId = function (n) {
|
|
this._mankoFaceId = n;
|
|
};
|
|
Game_Actor2.prototype.mankoHoppeId = function () {
|
|
return this._mankoHoppeId || 0;
|
|
};
|
|
Game_Actor2.prototype.setMankoHoppeId = function (n) {
|
|
this._mankoHoppeId = n;
|
|
};
|
|
Game_Actor2.prototype.mankoNamidaId = function () {
|
|
return this._mankoNamidaId || 0;
|
|
};
|
|
Game_Actor2.prototype.namidaOptionId = function (faceId) {
|
|
switch (this.actorId()) {
|
|
case 13:
|
|
return this.namidaOptionId13(faceId);
|
|
}
|
|
return 0;
|
|
};
|
|
Game_Actor2.prototype.namidaOptionId13 = function (faceId) {
|
|
switch (parseInt(faceId)) {
|
|
case 12:
|
|
case 13:
|
|
case 15:
|
|
return 1;
|
|
}
|
|
return 0;
|
|
};
|
|
Game_Actor2.prototype.setMankoNamidaId = function (n) {
|
|
this._mankoNamidaId = n;
|
|
};
|
|
Game_Actor2.prototype.mankoKuchiId = function () {
|
|
if (this.hasAcce(1062)) {
|
|
// 猿ぐつわ
|
|
return 1;
|
|
}
|
|
if (this.hasAcce(1060)) {
|
|
// ボールギャグ
|
|
return 2;
|
|
}
|
|
if (this.hasAcce(1061)) {
|
|
return 3;
|
|
}
|
|
return 0;
|
|
};
|
|
Game_Actor2.prototype.mankoMekakushiId = function () {
|
|
if (this.hasAcce(1065)) {
|
|
return 1;
|
|
}
|
|
return 0;
|
|
};
|
|
Game_Actor2.prototype.chikubiKuroImageAlpha = function () {
|
|
var level = this.chikubiKuroLv().level;
|
|
return (level - 1) / 6;
|
|
};
|
|
Game_Actor2.prototype.mankoKuroImageAlpha = function () {
|
|
var level = this.mankoKuroLv().level;
|
|
return (level - 1) / 6;
|
|
};
|
|
Game_Actor2.prototype.currentClass = function () {
|
|
return $dataClasses[this.actor().classId];
|
|
};
|
|
Game_Actor2.prototype.isShowOutline = function () {
|
|
if (this.showOutline) {
|
|
return true;
|
|
}
|
|
switch (this.actorId()) {
|
|
case 9:
|
|
return $gameSwitches.value(401);
|
|
case 10:
|
|
return $gameSwitches.value(402);
|
|
case 4:
|
|
return $gameSwitches.value(403);
|
|
case 5:
|
|
return $gameSwitches.value(404);
|
|
case 13:
|
|
return $gameSwitches.value(405);
|
|
case 17:
|
|
return $gameSwitches.value(406);
|
|
case 7:
|
|
return $gameSwitches.value(407);
|
|
case 6:
|
|
return $gameSwitches.value(408);
|
|
}
|
|
return false;
|
|
};
|
|
Game_Actor2.prototype.outlineColor = function () {
|
|
switch (this.actorId()) {
|
|
case 9:
|
|
return 0xffee66;
|
|
case 10:
|
|
return 0xee33dd;
|
|
case 89:
|
|
return 0xee33dd;
|
|
case 4:
|
|
return 0xffffff;
|
|
case 5:
|
|
return 0xffffff;
|
|
case 13:
|
|
return 0xaaaaff;
|
|
case 17:
|
|
return 0xff3333;
|
|
case 7:
|
|
return 0xee33dd;
|
|
case 6:
|
|
return 0x333333;
|
|
}
|
|
return 0;
|
|
};
|
|
Game_Actor2.prototype.isOverallCash = function () {
|
|
// 全体キャッシュが必要なアクセ
|
|
var cashAcce = [1060, 1061, 1062, 1063, 1064, 1065, 1065];
|
|
for (var _i = 0, cashAcce_1 = cashAcce; _i < cashAcce_1.length; _i++) {
|
|
var id = cashAcce_1[_i];
|
|
if (this.acceMap[id]) {
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
};
|
|
return Game_Actor2;
|
|
})(Game_EroActor);
|
|
Sprite_Actor.prototype.setupDamagePopup = function () {
|
|
if (this._battler.isDamagePopupRequested()) {
|
|
if (this._battler.isSpriteVisible()) {
|
|
this.createDamageSprite();
|
|
}
|
|
this._battler.clearDamagePopup();
|
|
this._battler.clearResult();
|
|
}
|
|
};
|
|
Sprite_Actor.prototype.updateBitmap = function () {
|
|
Sprite_Battler.prototype.updateBitmap.call(this);
|
|
var name = this._actor.battlerName();
|
|
if (this._battlerName !== name) {
|
|
this._battlerName = name;
|
|
}
|
|
};
|
|
Sprite_Actor.prototype.createShadowSprite = function () {
|
|
this._shadowSprite = new Sprite();
|
|
this.addChild(this._shadowSprite);
|
|
};
|
|
Sprite_Actor.prototype.stepForward = function () {};
|
|
Sprite_Actor.prototype.stepBack = function () {};
|