/*:ja * @target MZ * @author ル * * @command makeAv * @text AVを作成 * @des AVを作成 * @arg actorId * @type number * @text actorId * @desc actorId * @arg itemId * @type number * @text itemId * @desc itemId * * @command recordAv * @text AVのコモンイベント実行 * @des AVのコモンイベント実行 * * @command mainActorVar55 * @text 変数55にメイン男優IDを入れる * */ var Nore; (function (Nore) { var pluginName = "Nore_Av"; PluginManager.registerCommand(pluginName, "makeAv", function (args) { $gameAvJacketList.clear(); var actorId = parseInt(args.actorId); var itemId = parseInt(args.itemId); var av = new Av(actorId, itemId); av.make(99); $gameTemp.av = av; $gameParty.setMenuActorId(actorId); var avInfo = $slg.avInfo(); avInfo.addAv(av); }); PluginManager.registerCommand(pluginName, "recordAv", function (args) { var avItemId = $gameVariables.value(24); var item = $dataItems[avItemId]; if (!item) { console.error("Avアイテムが存在しません:" + avItemId); return; } var commonEventId = parseInt(item.meta["common"]); var actorId = parseInt(item.meta["actorId"]); if (isNaN(commonEventId)) { console.error("コモンイベントが存在しません:" + avItemId); return; } p("recordAv commonEvent:" + commonEventId); $gameTemp.inRecordAv = true; //$gameTemp.reserveCommonEvent(commonEventId); //$gameMap._interpreter.setupReservedCommonEvent() var commonEvent = $dataCommonEvents[commonEventId]; $gameSwitches.setValue(18, true); $gameMap._interpreter.setupChild(commonEvent.list, 0); }); PluginManager.registerCommand(pluginName, "mainActorVar55", function (args) { if (!$gameTemp.av) { console.error("Avが存在しません"); return; } $gameVariables.setValue(55, $gameTemp.av.mainManId()); }); var AvParamInfo = /** @class */ (function () { function AvParamInfo(_type, _iconIndex) { this._type = _type; this._iconIndex = _iconIndex; } AvParamInfo.prototype.type = function () { return this._type; }; AvParamInfo.prototype.iconIndex = function () { return this._iconIndex; }; AvParamInfo.prototype.name = function () { return getAvParamType(this._type); }; return AvParamInfo; })(); Nore.AvParamInfo = AvParamInfo; var AvParamManager = /** @class */ (function () { function AvParamManager() { this._paramArray = []; this._paramArray.push(new AvParamInfo(AvRequired.kiss, Icon.kiss)); this._paramArray.push(new AvParamInfo(AvRequired.chichi, Icon.chichi)); this._paramArray.push(new AvParamInfo(AvRequired.cri, Icon.cri)); this._paramArray.push(new AvParamInfo(AvRequired.manko, Icon.manko)); this._paramArray.push(new AvParamInfo(AvRequired.anal, Icon.anal)); this._paramArray.push(new AvParamInfo(AvRequired.sm, Icon.sm)); } AvParamManager.prototype.findIconIndex = function (type) { for (var _i = 0, _a = this._paramArray; _i < _a.length; _i++) { var data = _a[_i]; if (data.type() == type) { return data.iconIndex(); } } return 1; }; AvParamManager.prototype.list = function () { return this._paramArray.concat(); }; return AvParamManager; })(); Nore.$avParamManager = new AvParamManager(); })(Nore || (Nore = {})); var SHOTA_SW = 254; var AvInfo = /** @class */ (function () { function AvInfo() { this._resultEvent = []; this._avList = []; } AvInfo.prototype.allList = function () { return this._avList; }; AvInfo.prototype.pushResultAv = function (avId, id) { this._resultEvent.push(avId); //$gameSwitches.setValue(7, true); $gameVariables.setValue(8, this.findAv(avId).reward()); $gameParty.addCommonEvent(211, id); }; AvInfo.prototype.nextResultAv = function () { if (this._resultEvent.length == 0) { return null; } var avId = this._resultEvent.shift(); return this.findAv(avId); }; AvInfo.prototype.addAv = function (av) { this._avList.push(av); }; AvInfo.prototype.avReward = function () { var n = 0; for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; n += av.reward(); } return n; }; AvInfo.prototype.onReward = function () { for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; av.onReward(av.reward()); } }; AvInfo.prototype.makeAvList = function (actor) { switch (actor.actorId()) { case 8: return this.makeActor8AvList(); case 9: return this.makeActor9AvList(); } return []; }; AvInfo.prototype.makeActor8AvList = function () { var result = []; if (!this.hasAv(101)) { result.push(new Av(8, 101)); } else { if (!this.hasAv(102) && !this.hasAv(103)) { result.push(new Av(8, 102)); result.push(new Av(8, 103)); } } return result; }; AvInfo.prototype.makeActor9AvList = function () { var result = []; if (!this.hasAv(121)) { result.push(new Av(9, 121)); return result; } if (!this.hasAv(122)) { result.push(new Av(9, 122)); } var actor = $gameActors.actor(9); if (actor.boteId >= 1) { result.push(new Av(9, 124)); } return result; }; AvInfo.prototype.hasAv = function (itemId) { for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; if (av.itemId() == itemId) { return true; } } return false; }; AvInfo.prototype.currentAvList = function () { return this._avList; }; AvInfo.prototype.totalAvCount = function () { return this._avList.length; }; AvInfo.prototype.actorAvList = function (actorId) { var result = []; for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; if (av.actorId() == actorId) { result.push(av); } if (actorId == 8) { if (av.actorId() == 5) { // センリとレンのイベント result.push(av); } } } return result; }; AvInfo.prototype.actorLastShowResultAv = function (actorId) { for (var i = 0; i < this._avList.length; i++) { var index = this._avList.length - i - 1; var av = this._avList[index]; if (av.actorId() == actorId) { if (av.isShowResult()) { return av; } } } return null; }; AvInfo.prototype.actorLastAv = function (actorId) { for (var i = 0; i < this._avList.length; i++) { var index = this._avList.length - i - 1; var av = this._avList[index]; if (av.actorId() == actorId) { return av; } } return null; }; AvInfo.prototype.actorAvCount = function (actorId) { var result = 0; for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; if (av.actorId() == actorId) { result++; } } return result; }; AvInfo.prototype.findAv = function (avId) { for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; if (av.id() == avId) { return av; } } console.error("IDが" + avId + "のAVが見つかりません"); return null; }; AvInfo.prototype.findAvByItemId = function (itemId) { for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; if (av.itemId() == itemId) { return av; } } console.error("item IDが" + itemId + "のAVが見つかりません"); return null; }; AvInfo.prototype.countAv = function (itemId) { var n = 0; for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; if (av.itemId() == itemId) { n++; } } return n; }; AvInfo.prototype.lastAv = function (itemId) { var n = 0; for (var i = 0; i < this._avList.length; i++) { var av = this._avList[this._avList.length - 1 - i]; if (av.itemId() == itemId) { return av; } } return null; }; AvInfo.prototype.noPhotoTexture = function () { return PIXI.utils.TextureCache["no_photo" + ".png"]; }; AvInfo.prototype.findBeforeAv = function (av) { for (var i = 0; i < this._avList.length; i++) { var a = this._avList[this._avList.length - 1 - i]; if (av.itemId() == a.itemId()) { if (av != a) { return a; } } } return null; }; AvInfo.prototype.finishedAvCount = function () { var n = 0; for (var _i = 0, _a = this._avList; _i < _a.length; _i++) { var av = _a[_i]; if (av.isDone()) { n++; } } return n; }; return AvInfo; })(); var Av = /** @class */ (function () { function Av(actorId, itemId) { this._elapsedCount = 0; this._totalReward = 0; this._review = new AvReview(); this._screenShotList = []; this._id = $slg.nextAvId(); this._actorId = actorId; this._itemId = itemId; this._mainManId = this.eroParam().mainMan; this._nakadashi = this.eroParam().nakadashi; this._anal = this.eroParam().anal; this._fela = this.eroParam().fela; this._subMan1Id = 0; this._subMan2Id = 0; this._imageIndex = 1; this._showResult = false; this._avCount = $slg.avInfo().countAv(this._itemId) + 1; } Av.prototype.id = function () { return this._id; }; Av.prototype.avCount = function () { return this._avCount; }; Av.prototype.avCountTotal = function () { var list = $slg.avInfo().actorAvList(this._actorId); return list.indexOf(this) + 1; }; Av.prototype.make = function (beforeAvDay) { this.calcFan(beforeAvDay); this.makeReview(); this.calcSales(); this.calcPlusFan(); this.calcReward(); }; Av.prototype.reviewList = function () { return this._review.reviewList(); }; Av.prototype.calcFan = function (beforeAvDay) { var fan = $slg.fan(); fan *= this.fanRepeatRate(); this._fan = Math.round(fan); }; Av.prototype.calcPlusFan = function () { var firstFan = 100 + Math.randomInt(260); this._plusFan = Math.round( firstFan * this.newFanRate() * this.facilityFanBonus() ); }; Av.prototype.plusFan = function () { return this._plusFan; }; Av.prototype.newFanRate = function () { switch (this.popularityLevel()) { case 0: return 0.09; case 1: return 0.1; case 2: return 0.12; case 3: return 0.14; case 4: return 0.16; case 5: return 0.21; case 6: return 0.25; default: return 0.3; } }; Av.prototype.facilityFanBonus = function () { if ($slg.facilityInfo().hasFacility(62)) { return 1.1; } return 1; }; Av.prototype.popularityLevel = function () { var avCount = Math.floor($slg.avInfo().totalAvCount() / 3); return avCount; }; Av.prototype.fanRepeatRate = function () { return 0.8; }; Av.prototype.fan = function () { return this._fan; }; Av.prototype.sales = function () { return this._sales; }; Av.prototype.realSales = function () { return this._sales * 20 + this.salesOnesPlace(); }; Av.prototype.makeReview = function () { this._review = new AvReview(); this._review.makeReview(this); }; Av.prototype.hpCost = function () { var hp = this.item().meta["hp"]; if (isNaN(hp)) { console.error("AVにHPが見つかりません"); return 10; } hp *= this.hpDebuff(); if (hp >= 9999) { hp = 9999; } if (this.isSyusan() && $slg.facilityInfo().hasFacility(69)) { hp = Math.floor(hp / 3); } else if (this.isSyusan() && $slg.facilityInfo().hasFacility(68)) { hp = Math.floor((hp / 3) * 2); } return hp; }; Av.prototype.hpDebuff = function () { return 1; /*const count = $slg.avInfo().countAv(this.itemId()); switch (count) { case 0: return 1; case 1: return 1.5; default: return 2; }*/ }; Av.prototype.setUpEroInfo = function (upEroInfo) { this._upEroInfo = upEroInfo; }; Av.prototype.upEroInfo = function () { return this._upEroInfo; }; Av.prototype.calcReward = function () { var base = this.rewardBase(); var bonus = 1; if ($gameSwitches.value(SHOTA_SW)) { bonus = 1.05; } this._reward = Math.round(((base * this.sales()) / 100) * bonus); p("reward:" + this._reward); $gameVariables.setValue(8, this._reward); }; Av.prototype.rewardBase = function () { return 26; }; Av.prototype.gainReward = function () { $gameParty.gainGold(this._reward); }; Av.prototype.calcSales = function () { var base = 500; var rate = this.calcPopularityRate(this.popularityLevel()); var paramRate = this.paramRate(); var difficultyRate = this.difficultyRate(); var countDebuff = this.countDebuff(); this._salesParamRate = paramRate; this._salesPopuRate = rate; this._salesDifficultyRate = difficultyRate; this._countDebuff = countDebuff; var skillBonusRate = this.skillBonusRate(); p( "popuRate:" + rate + " paramRate:" + paramRate + " difficultyRate:" + difficultyRate + " countDebuff:" + countDebuff + " skillBonusRate:" + skillBonusRate ); this._sales = Math.round( base * rate * paramRate * difficultyRate * countDebuff + this._fan / 2.5 ); p("sales:" + this._sales); }; Av.prototype.countDebuff = function () { if (!this.isSyusan()) { return 1; } var count = $slg.avInfo().countAv(this.itemId()); switch (count) { case 0: return 1; case 1: return 0.5; default: return 0.3; } }; Av.prototype.difficultyRate = function () { var list = this.avParamList(); var qualify = 0; for (var _i = 0, list_1 = list; _i < list_1.length; _i++) { var param = list_1[_i]; qualify += param.value(); } qualify /= list.length; if (qualify <= 30) { return 0.5; } if (qualify <= 40) { return 0.6; } if (qualify <= 50) { return 0.7; } if (qualify <= 60) { return 0.8; } if (qualify <= 70) { return 0.9; } if (qualify <= 80) { return 1; } if (qualify <= 90) { return 1.1; } if (qualify <= 100) { return 1.2; } if (qualify <= 110) { return 1.3; } return 1.4; }; Av.prototype.paramRate = function () { var list = this.avParamList(); var qualify = 0; var value = 0; for (var _i = 0, list_2 = list; _i < list_2.length; _i++) { var param = list_2[_i]; qualify += param.value(); value += param.total(); } return (value / qualify - 1) / 3 + 1; }; Av.prototype.calcPopularityRate = function (level) { switch (level) { case 0: return 1; case 1: return 1.1; case 2: return 1.2; case 3: return 1.4; case 4: return 1.6; case 5: return 1.9; case 6: return 2.2; case 7: return 2.6; case 8: return 3.0; case 9: return 3.5; case 10: return 4.0; } return 4; }; Av.prototype.actorId = function () { return this._actorId; }; Av.prototype.actor = function () { return $gameActors.actor(this.actorId()); }; Av.prototype.reward = function () { return Math.round( ((this._reward * this.currentRewardRate()) / 100) * $slg.avRewardRate() ); }; Av.prototype.currentRewardRate = function () { return this.rewardRate(this._elapsedCount); }; Av.prototype.isDone = function () { return this._done; }; Av.prototype.cost = function () { return 0; }; Av.prototype.energyCost = function () { return this.item().price; }; Av.prototype.isShowMan = function () { return this.item().meta["showMan"] != null; }; Av.prototype.item = function () { return $dataItems[this._itemId]; }; Av.prototype.onReward = function (n) { this._totalReward += n; this._elapsedCount++; }; Av.prototype.name = function () { switch (ConfigManager.language) { case "en": if (this.item().meta["nameEn"]) { return this.item().meta["nameEn"]; } break; case "ch": case "jp": break; } if (this._avCount > 1) { return TextManager.avCount.format(this.item().name, this._avCount); } return this.item().name; }; Av.prototype.jacketTitle = function () { if (this._avJacket) { return this._avJacket.title(); } return this.name(); }; Av.prototype.jacketSubTitle = function () { if (this._avJacket) { return this._avJacket.subTitle(); } return ""; }; Av.prototype.itemId = function () { return this._itemId; }; Av.prototype.rewardRate = function (elapsedDay) { switch (elapsedDay) { case 0: return 100; } var rate = 100 - elapsedDay * 4 - 20; if (rate < 0) { return 0; } return rate; }; Av.prototype.totalReward = function () { return this._totalReward; }; Av.prototype.param = function (requiredType) { var n = 0; switch (requiredType) { case AvRequired.manko: n = this.chitsuParam(); break; case AvRequired.chichi: n = this.chichiParam(); break; case AvRequired.cri: n = this.criParam(); break; case AvRequired.anal: n = this.analParam(); break; case AvRequired.kiss: n = this.kissParam(); break; case AvRequired.sm: n = this.smParam(); break; } return Math.floor(n / 10); }; Av.prototype.chitsuParam = function () { var actor = this.actor(); return actor.eroParam(AvRequired.manko); }; Av.prototype.analParam = function () { var actor = this.actor(); return actor.eroParam(AvRequired.anal); }; Av.prototype.chichiParam = function () { var actor = this.actor(); return actor.eroParam(AvRequired.chichi); }; Av.prototype.criParam = function () { var actor = this.actor(); return actor.eroParam(AvRequired.cri); }; Av.prototype.kissParam = function () { var actor = this.actor(); return actor.eroParam(AvRequired.kiss); }; Av.prototype.smParam = function () { var actor = this.actor(); return actor.eroParam(AvRequired.sm); }; Av.prototype.requiredSkills = function () { var list = []; if ($gameSystem.difficulty() == Difficulty.easy) { return list; } var eroParam = this.eroParam(); this.addSkill(list, this.findSkill(eroParam.skill1)); this.addSkill(list, this.findSkill(eroParam.skill2)); this.addSkill(list, this.findSkill(eroParam.skill3)); return list; }; Av.prototype.effectiveSkills = function () { var list = []; var eroParam = this.eroParam(); this.addSkill(list, this.findSkill(eroParam.skill4)); this.addSkill(list, this.findSkill(eroParam.skill5)); this.addSkill(list, this.findSkill(eroParam.skill6)); return list; }; Av.prototype.addSkill = function (list, item) { if (item) { list.push(item); } }; Av.prototype.findSkill = function (name) { if (name == "") { return null; } for (var i = 11; i < 40; i++) { var item = $dataSkills[i]; if (item.name == name) { return item; } } console.error(name + "が見つかりません"); return null; }; Av.prototype.requiredManko = function () { var param = this.eroParam(); if (param.av1 == AvRequired.manko) { return param.av1_param; } if (param.av2 == AvRequired.manko) { return param.av2_param; } if (param.av3 == AvRequired.manko) { return param.av3_param; } return 0; }; Av.prototype.requiredCri = function () { var param = this.eroParam(); if (param.av1 == AvRequired.cri) { return param.av1_param; } if (param.av2 == AvRequired.cri) { return param.av2_param; } if (param.av3 == AvRequired.cri) { return param.av3_param; } return 0; }; Av.prototype.eroParam = function () { var key = this._actorId + "_" + this._itemId; var param = ERO_PARAMS[key]; if (!param) { console.error("key " + key + " のエロパラメーターが見つかりません"); } return param; }; Av.prototype.containsType = function (type) { if (this.av1() == type) { return true; } if (this.av2() == type) { return true; } if (this.av3() == type) { return true; } return false; }; Av.prototype.avParamList = function () { var result = []; var param = this.eroParam(); var rate = this.avParamRate() * $gameSystem.difficultyAvParamRate(); if (param.av1_param > 0) { var av1 = this.av1(); result.push( new AvParam( av1, param.av1_param, this.param(av1), this.countManParam(av1), rate ) ); } if (param.av2_param > 0) { var av2 = this.av2(); result.push( new AvParam( av2, param.av2_param, this.param(av2), this.countManParam(av2), rate ) ); } if (param.av3_param > 0) { var av3 = this.av3(); result.push( new AvParam( av3, param.av3_param, this.param(av3), this.countManParam(av3), rate ) ); } result = result.sort(function (a, b) { return a.sortType() - b.sortType(); }); return result; }; Av.prototype.avParamRate = function () { if (this.isSyusan()) { return 1; } if (this.isGeneralAv()) { return 1; } switch (this.avCount()) { case 1: return 1; case 2: return 1.2; } return 1.2; }; Av.prototype.isGeneralAv = function () { switch (this._itemId) { case 153: case 186: case 288: case 319: return true; } return false; }; Av.prototype.av1 = function () { var param = this.eroParam(); return this.toAvRequired(param.av1); }; Av.prototype.av2 = function () { var param = this.eroParam(); return this.toAvRequired(param.av2); }; Av.prototype.av3 = function () { var param = this.eroParam(); return this.toAvRequired(param.av3); }; Av.prototype.toAvRequired = function (required) { switch (required) { case AvRequired.manko: return AvRequired.manko; case AvRequired.chichi: return AvRequired.chichi; case AvRequired.cri: return AvRequired.cri; case AvRequired.anal: return AvRequired.anal; case AvRequired.kiss: return AvRequired.kiss; case AvRequired.sm: return AvRequired.sm; } }; Av.prototype.mainMan = function () { if (this.mainManId()) { return $gameActors.actor(this.mainManId()); } return null; }; Av.prototype.subMan1 = function () { if (this.subMan1Id()) { return $gameActors.actor(this.subMan1Id()); } return null; }; Av.prototype.subMan2 = function () { if (this.subMan2Id()) { return $gameActors.actor(this.subMan2Id()); } return null; }; Av.prototype.mainManId = function () { return this._mainManId; }; Av.prototype.subMan1Id = function () { return this._subMan1Id; }; Av.prototype.subMan2Id = function () { return this._subMan2Id; }; Av.prototype.isMainManFixed = function () { return this.eroParam().mainMan > 0; }; Av.prototype.mainManName = function () { var mainManId = this.mainManId(); if (mainManId == 0) { return ""; } return $gameActors.actor(mainManId).name(); }; Av.prototype.mainManIconIndex = function () { var mainManId = this.mainManId(); if (mainManId == 0) { return -1; } return $gameActors.actor(mainManId).iconIndex(); }; Av.prototype.subMan1Name = function () { if (this._subMan1Id == 0) { return ""; } return $gameActors.actor(this._subMan1Id).name(); }; Av.prototype.subMan1IconIndex = function () { if (this._subMan1Id == 0) { return -1; } return $gameActors.actor(this._subMan1Id).iconIndex(); }; Av.prototype.subMan2Name = function () { if (this._subMan2Id == 0) { return ""; } return $gameActors.actor(this._subMan2Id).name(); }; Av.prototype.subMan2IconIndex = function () { if (this._subMan2Id == 0) { return -1; } return $gameActors.actor(this._subMan2Id).iconIndex(); }; Av.prototype.setMainMan = function (n) { this.resetMan(n); this._mainManId = n; }; Av.prototype.setSubMan1 = function (n) { this.resetMan(n); this._subMan1Id = n; }; Av.prototype.setSubMan2 = function (n) { this.resetMan(n); this._subMan2Id = n; }; Av.prototype.resetMan = function (n) { if (this._mainManId == n) { this._mainManId = 0; } if (this._subMan1Id == n) { this._subMan1Id = 0; } if (this._subMan2Id == n) { this._subMan2Id = 0; } }; Av.prototype.countManParam = function (param) { var n = 0; if (this._mainManId > 0) { var mainMan = $gameActors.actor(this._mainManId); n += mainMan.eroParam(param); } if (this._subMan1Id > 0) { var subMan1 = $gameActors.actor(this._subMan1Id); n += Math.floor(subMan1.eroParam(param) / 2); } if (this._subMan2Id > 0) { var subMan2 = $gameActors.actor(this._subMan2Id); n += Math.floor(subMan2.eroParam(param) / 2); } return n; }; Av.prototype.isEnabled = function () { if (this._mainManId == 0) { return false; } if (!this.isEnabledParam()) { return false; } if (!this.isEnabledSkill()) { return false; } return true; }; Av.prototype.isEnabledParam = function () { var list = this.avParamList(); for (var i = 0; i < list.length; i++) { var avParam = list[i]; var param = this.param(avParam.requiredType()); var requiredValue = avParam.value(); if (param + avParam.plus() < requiredValue) { return false; } } return true; }; Av.prototype.isEnabledSkill = function () { var allSkills = this.allSkills(); var skills = this.requiredSkills(); for (var _i = 0, skills_1 = skills; _i < skills_1.length; _i++) { var skill = skills_1[_i]; if (!allSkills.contains(skill)) { return false; } } return true; }; Av.prototype.isDisplayMode = function () { return this._itemId == 1; }; Av.prototype.isMatchParam = function (type) { if (this.isDisplayMode()) { return true; } var list = this.avParamList(); for (var _i = 0, list_3 = list; _i < list_3.length; _i++) { var param = list_3[_i]; if (param.requiredType() == type) { return true; } } return false; }; Av.prototype.done = function () { this._done = true; }; Av.prototype.allSkills = function () { var result = []; var main = this.mainMan(); if (main) { var manParam = MAN_PARAMS[main.actorId()]; this.addSkill(result, this.findSkill(manParam.skill1)); this.addSkill(result, this.findSkill(manParam.skill2)); this.addSkill(result, this.findSkill(manParam.skill3)); } var sub1 = this.subMan1(); if (sub1) { var manParam = MAN_PARAMS[sub1.actorId()]; this.addSkill(result, this.findSkill(manParam.skill1)); this.addSkill(result, this.findSkill(manParam.skill2)); this.addSkill(result, this.findSkill(manParam.skill3)); } var sub2 = this.subMan2(); if (sub2) { var manParam = MAN_PARAMS[sub2.actorId()]; this.addSkill(result, this.findSkill(manParam.skill1)); this.addSkill(result, this.findSkill(manParam.skill2)); this.addSkill(result, this.findSkill(manParam.skill3)); } return result; }; Av.prototype.isRequiredSkill = function (skill) { if (this.isDisplayMode()) { return true; } return this.requiredSkills().contains(skill); }; Av.prototype.isEffectiveSkill = function (skill) { return this.effectiveSkills().contains(skill); }; Av.prototype.containsMan = function (actorId) { if (this._mainManId == actorId) { return true; } if (this._subMan1Id == actorId) { return true; } if (this._subMan2Id == actorId) { return true; } return false; }; Av.prototype.showResult = function () { this._showResult = true; }; Av.prototype.isShowResult = function () { return this._showResult; }; Av.prototype.screenShot = function () { if (!this._avJacket) { return null; } return this._avJacket.screenShot(); }; Av.prototype.setAvJacket = function (jacket) { this._avJacket = jacket; }; Av.prototype.avJacket = function () { return this._avJacket; }; Av.prototype.defaultJacket = function () { var ss; if (this.actor().boteId > 0) { ss = this.item().meta["ssBote"]; if (!ss) { ss = this.defaultJacketSs(); } } else { ss = this.defaultJacketSs(); } if (!ss) { console.error(this.itemId() + "のssデータが存在しません"); } var list = JsonEx.parse(ss); var result = []; for (var _i = 0, list_4 = list; _i < list_4.length; _i++) { var s = list_4[_i]; result.push(s + ".png"); } return new AvScreenShot(result); }; Av.prototype.defaultJacketSs = function () { if ($gameSwitches.value(51)) { var ss = this.item().meta["ss1"]; if (ss) { return ss; } } return this.item().meta["ss"]; }; Av.prototype.defaultJacket2 = function () { var ss; if (this.actor().boteId > 0) { ss = this.item().meta["ssBote2"]; if (!ss) { ss = this.item().meta["ss2"]; } } else { ss = this.item().meta["ss2"]; } if (!ss) { return null; } var list = JsonEx.parse(ss); var result = []; for (var _i = 0, list_5 = list; _i < list_5.length; _i++) { var s = list_5[_i]; result.push(s + ".png"); } return new AvScreenShot(result); }; Av.prototype.nakadashi = function () { return this._nakadashi; }; Av.prototype.anal = function () { return this._anal; }; Av.prototype.isFela = function () { return this._fela > 0; }; Av.prototype.isSyusan = function () { return this.item().meta["syusan"] != null; }; Av.prototype.auto = function () { if (!this.isMainManFixed()) { } }; Av.prototype.isBote = function () { var avActor = this._avJacket.avActor(); if (!avActor) { return false; } return avActor.cos().boteId() > 0; }; Av.prototype.screenShotList = function () { return this._screenShotList; }; Av.prototype.setScreenShotList = function (list) { this._screenShotList = list; }; Av.prototype.commonEventId = function () { var commonEventId = parseInt(this.item().meta["common"]); return commonEventId; }; Av.prototype.skillBonusRate = function () { var bonus = 0; var skills = this.effectiveSkills(); var allSkills = this.allSkills(); for (var _i = 0, skills_2 = skills; _i < skills_2.length; _i++) { var skill = skills_2[_i]; if (allSkills.contains(skill)) { bonus += 15; } } return bonus; }; Av.prototype.salesOnesPlace = function () { if (this._onesPlace === undefined) { this._onesPlace = Math.randomInt(10); } return this._onesPlace; }; Av.prototype.isNinshin = function () {}; Av.prototype.canContraception = function () { if (this.nakadashi() == 0) { // 避妊の必要なし return false; } return true; }; Av.prototype.setContraception = function (b) { this._contraception = b; }; Av.prototype.isContraception = function () { return this._contraception; }; Av.prototype.taii = function () { var param = this.eroParam(); return param.taii; }; Av.prototype.finishSale = function () { this._finishSale = true; }; Av.prototype.isFinishSale = function () { return this._finishSale; }; Av.prototype.isFavorite = function () { return this._favorite; }; Av.prototype.setFavorite = function (b) { this._favorite = b; }; Av.prototype.setAuto = function () { this._auto = true; }; Av.prototype.isAuto = function () { return this._auto; }; return Av; })(); var AvParam = /** @class */ (function () { function AvParam(required, value, woman, plus, rate) { this._required = required; this._value = value; this._woman = woman; this._plus = plus; this._rate = rate; } AvParam.prototype.requiredType = function () { return this._required; }; AvParam.prototype.value = function () { return Math.round(this._value * this._rate); }; AvParam.prototype.woman = function () { return this._woman; }; AvParam.prototype.name = function () { return getAvParamType(this._required); }; AvParam.prototype.iconIndex = function () { return Nore.$avParamManager.findIconIndex(this._required); }; AvParam.prototype.plus = function () { return this._plus; }; AvParam.prototype.total = function () { return this.plus() + this.woman(); }; AvParam.prototype.sortType = function () { switch (this._required) { case AvRequired.kiss: return 0; case AvRequired.chichi: return 1; case AvRequired.cri: return 2; case AvRequired.manko: return 3; case AvRequired.anal: return 4; case AvRequired.sm: return 5; } }; return AvParam; })();