战力计算,远征战力筛选

This commit is contained in:
luying
2020-11-12 18:21:05 +08:00
parent 40c16587b3
commit b0a0bbc71b
34 changed files with 22812 additions and 15964 deletions

View File

@@ -212,6 +212,7 @@ export class NormalBattleHandler {
let condition2 = await BattleRecordModel.getBattleRecordByIdAndStar(roleId, battleId, 3);
if(!condition2) warReward.setCondition(1, true);
}
if(towerReward) warReward.setFixReward(towerReward);
await updateWarStar(roleId, battleId, warInfo.warType, star);
}
@@ -235,7 +236,7 @@ export class NormalBattleHandler {
// towerStatus: false-本层未通过, true-本层已通过
return resResult(STATUS.SUCCESS, {
battleCode, battleId, status, towerStatus,
...reward, towerReward,
...reward,
apJson,
dailyNum,
heroes: curHeroes,

View File

@@ -1,6 +1,7 @@
import { ChatRemote } from '../remote/chatRemote';
import {Application, BackendSession} from 'pinus';
import { FrontendSession } from 'pinus';
import { HeroModel } from '../../../db/Hero';
import Actor from '../../../pubUtils/actor';
import { updateCe } from '../../../pubUtils/util';
export default function(app: Application) {
return new ChatHandler(app);
@@ -10,8 +11,15 @@ export class ChatHandler {
constructor(private app: Application) {
}
async test(msg: {content: string , target: string}, session: BackendSession) {
console.log('test')
async test(msg: {}, session: BackendSession) {
let roleId = session.get('roleId')
let hero = await HeroModel.find().limit(1000);
for(let h of hero) {
let actor = new Actor(h);
let ce = actor.calculateCE();
await updateCe(roleId, h);
}
return 'success'
}
/**
* Send messages to users

View File

@@ -10,6 +10,7 @@ import { resResult } from '../../../pubUtils/util';
import { startEvent } from '../../../services/eventSercive';
import { EVENT_START_LV } from '../../../consts/consts';
import { getAp } from '../../../services/actionPointService';
import Actor from '../../../pubUtils/actor';
export default function (app: Application) {
return new EntryHandler(app);
@@ -64,6 +65,7 @@ export class EntryHandler {
session.on('closed', this.onUserLeave.bind(this));
if(role.lv >= EVENT_START_LV && !role.eventStatus) {
startEvent(self.app, session);
}
@@ -79,6 +81,12 @@ export class EntryHandler {
// let users = await self.app.rpc.chat.chatRemote.add.route(session)(role.roleId, self.app.get('serverId'), rid, true);
let heros = await HeroModel.findByRole(role.roleId);
let equips = await EquipModel.findbyRole(role.roleId);
for(let hero of heros) {
let actor = new Actor(hero);
actor.calculateCE();
}
role['heros'] = heros;
role['equips'] = equips;
let apJson = await getAp(Date.now(), role.roleId);

View File

@@ -29,12 +29,14 @@ export class RoleHandler {
async initHeros(roleId: string, roleName: string) {
const seqId = await CounterModel.getNewCounter('hid');
let ce = calculateCE({hid: 1, lv: 1});
const heroInfo = {
roleId,
roleName,
hid: 1,
hName: '曹操',
seqId,
star: 0,
ce
}
await HeroModel.createHero(heroInfo);

View File

@@ -77,10 +77,7 @@ export async function towerBattleEnd(channelService: ChannelService, sid: string
}
const { reward } = getTowerDataByLv(towerLv);
if (reward) {
let result = await handleFixedReward(roleId, roleName, reward, 1);
towerReward = result.goods;
}
if (reward) towerReward = reward;
if (towerLv + 1 == HANG_UP_CONSTS.ENABLE_LV) {
await startHangUp(roleId, roleName);
channelService.pushMessageByUids('hangUpEnable', {code: 200, data: {enable: true}}, [{uid: roleId, sid}]);

View File

@@ -17,6 +17,9 @@ export class WarReward {
warInfo: any;
isSuccess: boolean;
rewards: Array<{type: number, gid: number, count: number, times: number}>;
fixReward: string;
conditionReward: string;
randomReward: string;
constructor(roleId: string, roleName: string, battleId: number, isSuccess: boolean) {
this.roleId = roleId;
@@ -24,6 +27,12 @@ export class WarReward {
this.battleId = battleId;
this.condition = new Map();
this.warInfo = getWarById(battleId);
let {fixReward = '', conditionReward = '', RandomReward = ''} = this.warInfo;
this.fixReward = fixReward;
this.conditionReward = conditionReward;
this.randomReward = RandomReward;
this.isSuccess = isSuccess;
}
@@ -31,34 +40,53 @@ export class WarReward {
this.condition.set(id, isOk);
}
private handleFixReward(num: number) {
if(this.isSuccess) { // 成功了才给固定奖励
let {fixReward = ''} = this.warInfo;
let reward = decodeStr('fixReward', fixReward);
for(let i = 0; i < num; i++) {
for(let obj of reward) {
this.rewards.push({type: BATTLE_REWARD_TYPE.FIX_REWARD, times: i +1, ...obj, count: obj.count });
}
public setFixReward(reward: string) {
let last = this.fixReward.substr(this.fixReward.length - 1, 1);
if(this.fixReward.length && last == '&') {
this.fixReward += reward;
} else {
this.fixReward += '&' + reward;
}
}
public setConditionReward(reward: string) {
let last = this.conditionReward.substr(this.fixReward.length - 1, 1);
if(last == '&') {
this.conditionReward += reward;
} else {
this.conditionReward += '&' + reward;
}
}
public setRandomReward(reward: string) {
let last = this.randomReward.substr(this.fixReward.length - 1, 1);
if(last == '&') {
this.randomReward += reward;
} else {
this.randomReward += '&' + reward;
}
}
private handleFixReward(num: number, fixReward: string) {
let reward = decodeStr('fixReward', fixReward);
for(let i = 0; i < num; i++) {
for(let obj of reward) {
this.rewards.push({type: BATTLE_REWARD_TYPE.FIX_REWARD, times: i +1, ...obj, count: obj.count });
}
}
}
private handleConditionReward(num: number) {
if(this.isSuccess) {
let {conditionReward = ''} = this.warInfo;
let reward = decodeStr('conditionReward', conditionReward);
for(let i = 0; i < num; i++) {
for(let obj of reward) {
if(this.condition.get(obj.condition)) {
this.rewards.push({type: BATTLE_REWARD_TYPE.CONDITION_REWARD, times: i +1, ...obj, count: obj.count});
}
private handleConditionReward(num: number, conditionReward: string) {
let reward = decodeStr('conditionReward', conditionReward);
for(let i = 0; i < num; i++) {
for(let obj of reward) {
if(this.condition.get(obj.condition)) {
this.rewards.push({type: BATTLE_REWARD_TYPE.CONDITION_REWARD, times: i +1, ...obj, count: obj.count});
}
}
}
}
private async handleRandomReward(num: number) {
if(this.isSuccess) {
let {RandomReward:randomReward = ''} = this.warInfo;
private async handleRandomReward(num: number, randomReward: string) {
let reward = decodeStr('randomReward', randomReward);
for(let obj of reward) {
@@ -86,16 +114,17 @@ export class WarReward {
getNum, allNum, getSum, allSum
});
}
}
}
public async saveReward(num: number) {
this.rewards = new Array();
// let warType = this.warInfo.warType;
this.handleFixReward(num);
this.handleConditionReward(num);
await this.handleRandomReward(num);
if(this.isSuccess) { // 成功了才给固定奖励
if(this.fixReward) this.handleFixReward(num, this.fixReward);
if(this.conditionReward) this.handleConditionReward(num, this.conditionReward);
if(this.randomReward) await this.handleRandomReward(num, this.randomReward);
}
let returnGoods = await handleReward(this.roleId, this.roleName, this.rewards);
return returnGoods;

View File

@@ -205,6 +205,7 @@ export default class GMUsers extends Service {
hName: dicHero.name,
seqId,
lv: hlv,
star: dicHero.quality,
ce
}
heroInfos.push(heroInfo);
@@ -215,7 +216,6 @@ export default class GMUsers extends Service {
}
try {
console.log
for(let heroInfo of heroInfos) {
await HeroModel.createHero(heroInfo);
}

View File

@@ -0,0 +1,54 @@
/**
* 属性 id
*/
export enum ABI_TYPE{
/**生命 */
ABI_HP = 1,
/**物攻 */
ABI_ATK = 2,
/**策攻 */
ABI_MATK = 3,
/**物防 */
ABI_DEF = 4,
/**策防 */
ABI_MDEF = 5,
/**敏捷 */
ABI_AGI = 6,
/**幸运 */
ABI_LUK = 7,
/**移动 */
ABI_SPEED = 8,
//主属性 end
/**命中 */
ABI_HIT = 9,
/**暴击等级 */
ABI_CRI = 10,
/**格挡等级 */
ABI_FLEE = 11,
/**抗暴等级 */
ABI_ANT_CRI = 12,
/**伤害加深等级 */
ABI_DAMAGE_INCREASE = 13,
/**伤害减免等级 */
ABI_DAMAGE_DECREASE = 14,
/**忽视防御等级 */
ABI_DEF_IGNORE = 15,
/**吸血等级 */
ABI_BLOOD_SUCK = 16,
/**怒气 */
ABI_AP = 17,
ABI_MAX,
}
export enum SEID_TYPE{
/**属性固定值加成(数值) */
TYPE101 = 101,
/**属性固定值加成(百分比) */
TYPE102 = 102,
}

View File

@@ -1,6 +1,7 @@
import BaseModel from './BaseModel';
import { index, getModelForClass, prop, Ref, mongoose } from '@typegoose/typegoose';
import Equip from './Equip';
import { updateCe } from '../pubUtils/util';
/**
* 英雄表
@@ -24,12 +25,14 @@ export default class Hero extends BaseModel {
exp: number; // 经验值
@prop({ required: true, default: 1 })
lv: number; // 武将等级
@prop({ required: true, default: 100 })
@prop({ required: true, default: 0 })
ce: number; // 武将战力
@prop({ required: true, default: 0 })
historyCe: number; // 武将历史最高战力
@prop({ required: true })
@prop({ required: true, default: 0 })
star: number; // 星级
@prop({ required: true })
@prop({ required: true, default: 0 })
fire: number; // 觉醒的火在满星了之后会继续进行觉醒显示类似6星1火
@prop({ required: true, default: 1 })
rank: number; // 阶数
@@ -70,26 +73,28 @@ export default class Hero extends BaseModel {
const hero = await HeroModel.findOneAndUpdate({ roleId, hid }, {$push: {equips: equipId}}, {new: true}).lean(lean);
if (hero) {
await Equip.putOn(hero.hid, equipId);
await updateCe(roleId, hero )
}
return hero;
}
public static async createHero(heroInfo: {roleId: string, roleName: string, hid: number, hName: string, seqId: number, lv?:number, ce: number}, lean = true) {
public static async createHero(heroInfo: {roleId: string, roleName: string, hid: number, star: number, hName: string, seqId: number, lv?:number, ce: number}, lean = true) {
const doc = new HeroModel();
const update = Object.assign(doc.toJSON(), heroInfo);
delete update._id;
const hero = await HeroModel.findOneAndUpdate({roleId: heroInfo.roleId, hid: heroInfo.hid}, update, {upsert: true, new: true}).lean(lean);
await updateCe(heroInfo.roleId, hero);
return hero;
}
public static async sumTopHeroCe(roleId: string, num: number) {
let ce = await HeroModel.aggregate([
{ $match : { roleId } },
{ $sort: {ce: -1} },
{ $sort: {historyCe: -1} },
{ $limit: num },
{ $group: { _id: null, ce: { $sum: '$ce' } } }
{ $group: { _id: null, historyCe: { $sum: '$historyCe' } } }
]);
return ce.length > 0?ce[0].ce:0;
return ce.length > 0?ce[0].historyCe:0;
}
public static async sumHeroCe(roleId: string) {
@@ -100,6 +105,11 @@ export default class Hero extends BaseModel {
return ce.length > 0?ce[0].ce:0;
}
public static async getTopHero(roleId: string, num: number, lean = true) {
const heroes = await HeroModel.find({roleId}).limit(num).sort({ce: -1}).lean(lean);
return heroes;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await HeroModel.deleteMany({roleId}).lean(lean);
return result||{};

View File

@@ -4,6 +4,13 @@ import { index, getModelForClass, prop } from '@typegoose/typegoose';
import User from './User';
import { shouldRefresh } from '../pubUtils/util';
class TopHero {
@prop({ required: true })
hid: number; // 武将id
@prop({ required: true })
ce: number; // 战力
}
/**
* 角色字段接口
*/
@@ -37,6 +44,10 @@ export default class Role extends BaseModel {
lv: number; // 主公等级
@prop({ required: true, default: 0 })
ce: number; // 总战力
@prop({ required: true, default: 0 })
topFiveCe: number; // 最强5人战力
@prop({ required: true, type: TopHero, default: [] })
topFive: Array<TopHero>; // 总战力
@prop({ required: true, default: 100 })
tili: number; // 体力值

440
shared/pubUtils/actor.ts Normal file
View File

@@ -0,0 +1,440 @@
import { getHeroInfoById, getStarRatio, getHeroSkillById, getSeidById, getOlySeidByType, getGoodById } from "./gamedata";
import { ABI_TYPE, SEID_TYPE } from "../consts/abilityConst";
export default class Actor {
private hid: number = 0;
private lv: number = 0;
private oldCe: number = 0;
private star: number = 0;
private fire: number = 0;
private equips: Array<any> = [];
private conections: Array<{id: number;name: string;valid: boolean;}> = [];
/**被动技能 */
private seidList:Array<any> = new Array<any>(3);
private effectList:Map<number,Array<any> > = new Map<number,Array<any> >();
constructor(hero: any) { // 从数据库拿到的hero
this.hid = hero.hid;
this.lv = hero.lv;
this.oldCe = hero.ce;
this.star = hero.star;
this.fire = hero.fire;
this.equips = hero.equips;
console.log(this.hid, this.lv, this.oldCe, this.star, this.fire, this.conections);
this.updateActorEffect();
}
updateActorEffect(){
//添加装备属性和效果
//添加技能
this.updateSkillInfo();
//添加被动效果1.0
for(let i = 0;i < this.seidList.length;i++){
if(this.seidList[i] && this.seidList[i].id > 0){
this.addSeidEffect(this.seidList[i].id,this.seidList[i].gainValueArr);
}
}
//添加被动效果 2.0
// for(let i = 0;i < this.seidList.length;i++){
// if(this.seidList[i]._id > 0){
// this.addSeidEffectNew(this.seidList[i]);
// }
// }
}
/**更新武将的被动技能 */
updateSkillInfo(){
let dicHero = getHeroInfoById(this.hid);
// console.log('updateSkillInfo', dicHero.skill, getHeroSkillById(dicHero.skill))
//被动技能
if(dicHero.skill){
let {seidLvUpArr} = getHeroSkillById(dicHero.skill);
for(let ii = 0;ii < seidLvUpArr.length;ii+=2){
if(this.lv >= seidLvUpArr[ii + 1]){
let dicSeid = getSeidById(seidLvUpArr[ii]);
// console.log('updateSkillInfo*', seidLvUpArr[ii], dicSeid)
if(dicSeid){
this.seidList[Math.floor(ii/2)] = dicSeid;
}
}
}
}
}
addSeidEffect(seidId:number, seidValue?:Array<number>){
// console.log('addSeidEffect', seidId, seidValue)
let curSeid = getSeidById(seidId);
if(!curSeid) {console.log("seidId not found:"+seidId);return;}
if(!seidValue) seidValue = curSeid.gainValueArr;
if(!seidValue) seidValue = [];
if(curSeid.type === 999){
for(let i = 0;i < seidValue.length;i++){
this.addSeidEffect(seidValue[i]);
}
return;
}
let olySeid = getOlySeidByType(curSeid.type);
if(!olySeid) {console.log("olySeidType not found:"+curSeid.type);return;}
if(olySeid.isSeid){ // 是被动
let el = this.effectList.get(curSeid.type);
if(!el || !el.length){
if(!el){
this.effectList.set(curSeid.type, [Object.assign({}, curSeid)]);
} else {
el.push(Object.assign({}, curSeid));
}
}
else{
let buffArr = this.effectList.get(curSeid.type)||[];
if(olySeid.olyType == 101){
let identical:boolean = true;
buffArr.forEach((value)=>{
if(value.type != curSeid.type||value.gainValueArr.length != seidValue?.length){
identical = false;
return;
}
value.gainValueArr.forEach((val,key)=>{
if(!seidValue) seidValue = [];
if(val!= seidValue[key]){
identical = false;
return;
}
})
});
if(!identical){
let el = this.effectList.get(curSeid.type);
if(!el){
this.effectList.set(curSeid.type, [Object.assign({}, curSeid)]);
} else {
el.push(Object.assign({}, curSeid));
}
}
}
else
{
let tBuff,startIndex:number = 0;
if(olySeid.olyType >= 103){
startIndex = 1;
let addSeid:boolean = true;
for(let k = 0;k < buffArr.length;k++){
tBuff = buffArr[k];
if(tBuff && tBuff.gainValueArr && tBuff.gainValueArr[0] == seidValue[0]){
addSeid = false;
break;
}
}
if(addSeid){
tBuff = null;
let el = this.effectList.get(curSeid.type);
if(!el){
this.effectList.set(curSeid.type, [Object.assign({}, curSeid)]);
} else {
el.push(Object.assign({}, curSeid));
}
}
}
else {
tBuff = buffArr[0];
}
if(tBuff){
for(let j = startIndex;j < seidValue.length;j++){
switch(olySeid.olyType){
case 100:
tBuff.gainValueArr[j] += seidValue[j];
break;
case 102:
tBuff.gainValueArr[j] = seidValue[j];
break;
case 103:
if(tBuff.gainValueArr[j] < seidValue[j]){
tBuff.gainValueArr[j] = seidValue[j];
}
break;
case 104:
if(tBuff.gainValueArr[j] > seidValue[j]){
tBuff.gainValueArr[j] = seidValue[j];
}
break;
default:
break;
}
}
}
}
// switch(olySeid._olyType){
// case 1://对比
// break;
// case 2://
// default:
// console.log("not found _olyType:"+olySeid._olyType);
// break;
// }
}
}
}
getGrowUp(abilityType:number):number{
const dicHero = getHeroInfoById(this.hid);
const dicStarRatio = getStarRatio(this.star)||0;
return dicHero.baseAbilityUpArr[abilityType] * dicStarRatio;
}
getBaseAbility(abilityType:number):number{
const dicHero = getHeroInfoById(this.hid);
// console.log('getBaseAbility', dicHero.baseAbilityArr[abilityType]);
// console.log('getBaseAbility', this.lv);
// console.log('getBaseAbility', this.getGrowUp(abilityType));
return dicHero.baseAbilityArr[abilityType] + (this.lv - 1)*this.getGrowUp(abilityType);
}
isHadSeid(type:number):boolean{
let el = this.effectList.get(type);
if(this.effectList.has(type) && el && el.length){
return true;
}
return false;
}
/**
* 获取武将效果
* @type 特技type
* returns Array<Array<Buff> > 0:特技 1buff 2:光环
* */
getSeidEffect(type:number):Array<Array<any> >{
let retArr:Array<Array<any> > = new Array<Array<any> >();
let el = this.effectList.get(type);
if(this.effectList.has(type) && el && el.length){
retArr.push(el);
}
return retArr;
}
/**获取seid 数值效果 */
getSeidAddAbilityNumByAbility(type:number,ability:number){ // type: 101/102等ability1-17代表hp,atk等
let ret:number = 0;
if(this.isHadSeid(type)){ // effectList, buffList
let buff = this.getSeidEffect(type);
for(let i = 0;i < buff.length;i++){
for(let j = 0;j < buff[i].length;j++){
// console.log(ability, buff[i][j].gainValueArr[0], buff[i][j].gainValueArr[1])
if(ability == buff[i][j].gainValueArr[0]){
ret += buff[i][j].gainValueArr[1];
}
}
}
}
// console.log('getSeidAddAbilityNumByAbility', type, ret)
return ret;
}
getRealAbility(abilityType: number) {
let baseAbility:number = 0;
if(abilityType <= ABI_TYPE.ABI_SPEED){
// console.log('getRealAbility', this.getBaseAbility(abilityType));
// console.log('getRealAbility', this.getSeidAddAbilityNumByAbility(SEID_TYPE.TYPE102,abilityType));
// console.log('getRealAbility', this.getSeidAddAbilityNumByAbility(SEID_TYPE.TYPE101,abilityType));
baseAbility = this.getBaseAbility(abilityType)*(100+this.getSeidAddAbilityNumByAbility(SEID_TYPE.TYPE102,abilityType))/100 + this.getSeidAddAbilityNumByAbility(SEID_TYPE.TYPE101,abilityType);
}
else{
baseAbility = this.getSeidAddAbilityNumByAbility(SEID_TYPE.TYPE101,abilityType);
}
return baseAbility
}
calculateCE() {
// 武将
const ceGongshi = '1*hp+2*atk+2*matk+2*def+2*mdef+2*agi+2*luk+1*hit+1*cri+1*flee+1*antCri+1.75*damageIncrease+1.75*damageDecrease+3.5*defIngnore+3.5*bloodSuck'
let hp = this.getRealAbility(ABI_TYPE.ABI_HP); console.log(this.hid, 'hp', hp);
let atk = this.getRealAbility(ABI_TYPE.ABI_ATK); console.log(this.hid, 'atk', atk);
let matk = this.getRealAbility(ABI_TYPE.ABI_MATK); console.log(this.hid, 'matk', matk);
let def = this.getRealAbility(ABI_TYPE.ABI_DEF); console.log(this.hid, 'def', def);
let mdef = this.getRealAbility(ABI_TYPE.ABI_MDEF); console.log(this.hid, 'mdef', mdef);
let agi = this.getRealAbility(ABI_TYPE.ABI_AGI); console.log(this.hid, 'agi', agi);
let speed = this.getRealAbility(ABI_TYPE.ABI_SPEED); console.log(this.hid, 'speed', speed);
let luk = this.getRealAbility(ABI_TYPE.ABI_LUK); console.log(this.hid, 'luk', luk);
let hit = this.getRealAbility(ABI_TYPE.ABI_HIT); console.log(this.hid, 'hit', hit);
let cri = this.getRealAbility(ABI_TYPE.ABI_CRI); console.log(this.hid, 'cri', cri);
let flee = this.getRealAbility(ABI_TYPE.ABI_FLEE); console.log(this.hid, 'flee', flee);
let antCri = this.getRealAbility(ABI_TYPE.ABI_ANT_CRI); console.log(this.hid, 'antCri', antCri);
let damageIncrease = this.getRealAbility(ABI_TYPE.ABI_DAMAGE_INCREASE); console.log(this.hid, 'damageIncrease', damageIncrease);
let damageDecrease = this.getRealAbility(ABI_TYPE.ABI_DAMAGE_DECREASE); console.log(this.hid, 'damageDecrease', damageDecrease);
let defIngnore = this.getRealAbility(ABI_TYPE.ABI_DEF_IGNORE); console.log(this.hid, 'defIngnore', defIngnore);
let bloodSuck = this.getRealAbility(ABI_TYPE.ABI_BLOOD_SUCK); console.log(this.hid, 'bloodSuck', bloodSuck);
let ce = eval(ceGongshi); console.log(this.hid, 'ce', ce);
// 装备
for(let equip of this.equips) {
let good = new HistoryGoods();
good.loadDataByJson(equip);
for(let i = ABI_TYPE.ABI_HP;i < ABI_TYPE.ABI_MAX;i++){
ce += good.getGoodsAddAbility(i);
}
}
console.log('ce2', ce)
return Math.floor(ce);
}
}
class HistoryGoods{
private _goodsId:number = 0;
private _serverGId:number = 0;
private _itid:number = 0;
private _quality:number = 0;
private _lv:number = 0;
/**物攻策攻数值浮动上下限变化率 */
private _randRange:number = 0;
/**装备的武将dataID */
private _equipActorDataId:number = 0;
/**装备属性 */
private _goodsAbility:Array<number> = new Array<number>();
/**装备属性 随机的百分比 */
private _goodsAbilityPre:Array<number> = new Array<number>();
resetAllData(){
this.setGoodsId(0);
this.setItid(0);
this.setEquipActorDataId(0);
for(let i = ABI_TYPE.ABI_HP;i < ABI_TYPE.ABI_MAX;i++){
this._goodsAbility[i] = 0;
this._goodsAbilityPre[i] = 0;
}
}
//加载
loadDataByJson(json){
// "_id": "5f841c27eb94a70b385beea4",
// "seqId": 8,
// "__v": 0,
// "createdAt": "2020-10-12T09:04:39.087Z",
// "eName": "青铜短剑",
// "eid": 1,
// "holes": [],
// "initHoleCnt": 0,
// "lv": 1,
// "randRange": 0,
// "randSe": [],
// "roleId": "1Emy2SnEaw",
// "roleName": "大蝈蝈",
// "type": 1,
// "updatedAt": "2020-10-12T09:04:39.087Z"
if(json.seqId){
this.setServerGId(json.seqId);
this.setGoodsId(json.eid);
this.setEquipActorDataId(json.hid);
//this.setQuality(json.quality);
this.setLevel(json.lv);
this.setRandRange(json.randRange);
let dicGoods = getGoodById(this.getGoodsId());
if(dicGoods){
this.setItid(dicGoods.itid);
}
}
}
//属性的获取方法///////////////
getGoodsId(){
return this._goodsId;
}
setGoodsId(goodsId:number){
this._goodsId = goodsId;
}
getServerGId(){
return this._serverGId;
}
setServerGId(serverGId:number){
this._serverGId = serverGId;
}
getItid(){
return this._itid;
}
setItid(itid:number){
this._itid = itid;
}
getQuality(){
return this._quality;
}
setQuality(quality:number){
this._quality = quality;
}
getLevel(){
return this._lv;
}
setLevel(lv:number){
this._lv = lv;
}
getRandRange(){
return this._randRange;
}
setRandRange(val:number){
this._randRange = val;
}
getEquipActorDataId(){
return this._equipActorDataId;
}
setEquipActorDataId(dataId:number){
this._equipActorDataId = dataId;
}
//属性的获取方法 end ////////////
constructor(){
for(let i = ABI_TYPE.ABI_HP;i < ABI_TYPE.ABI_MAX;i++){
this._goodsAbility[i] = 0;
this._goodsAbilityPre[i] = 0;
}
}
/**是否物品 */
isGoods(){
if(this.getGoodsId() > 0){
return true;
}
else{
return false;
}
}
/**是否装备 */
isEquipment(){
}
/**是否宝物 */
isTreasure(){
}
/**是否道具 */
isItem(){
}
getGoodsAddAbility(ability:number){
return Math.floor(this._goodsAbility[ability] * this._goodsAbilityPre[ability] / 100);
}
}

View File

@@ -1,5 +1,6 @@
import fs = require('fs');
import path = require('path');
import { ABI_TYPE } from '../consts/abilityConst';
let gamedata = {};
const wars = ['dic_zyz_gk_main', 'dic_zyz_gk_mainElite', 'dic_zyz_gk_daily', 'dic_zyz_gk_event', 'dic_zyz_gk_tower', 'dic_zyz_gk_expedition']; // 关卡相关的表
@@ -9,6 +10,10 @@ const towerTaskInfos = new Map<number, any>();
const heroInfos = new Map<number, any>();
const jobInfos = new Map<number, any>();
const levelInfos = new Map<number, {sum: number, cur: number}>();
const starRatioInfo = new Map<number, number>();
const heroSkillInfo = new Map<number, any>()
const seidInfo = new Map<number, any>();
const olySeidInfo = new Map<number, any>();
function parseWarData() {
let result = null;
@@ -48,6 +53,28 @@ function parseHeroData() {
const heroesData = gamedata['jsons'][heroFile] || [];
heroesData.forEach(elem => {
if (elem && elem.heroId) {
elem.baseAbilityArr = new Array<number>();
elem.baseAbilityUpArr = new Array<number>();
elem.baseAbilityArr[ABI_TYPE.ABI_HP] = elem.hp||0;
elem.baseAbilityArr[ABI_TYPE.ABI_ATK] = elem.atk||0;
elem.baseAbilityArr[ABI_TYPE.ABI_MATK] = elem.matk||0;
elem.baseAbilityArr[ABI_TYPE.ABI_DEF] = elem.def||0;
elem.baseAbilityArr[ABI_TYPE.ABI_MDEF] = elem.mdef||0;
elem.baseAbilityArr[ABI_TYPE.ABI_AGI] = elem.agi||0;
elem.baseAbilityArr[ABI_TYPE.ABI_LUK] = elem.luk||0;
elem.baseAbilityArr[ABI_TYPE.ABI_SPEED] = elem.speed||0;
elem.baseAbilityUpArr[ABI_TYPE.ABI_HP] = elem.hp_up||0;
elem.baseAbilityUpArr[ABI_TYPE.ABI_ATK] = elem.atk_up||0;
elem.baseAbilityUpArr[ABI_TYPE.ABI_MATK] = elem.matk_up||0;
elem.baseAbilityUpArr[ABI_TYPE.ABI_DEF] = elem.def_up||0;
elem.baseAbilityUpArr[ABI_TYPE.ABI_MDEF] = elem.mdef_up||0;
elem.baseAbilityUpArr[ABI_TYPE.ABI_AGI] = elem.agi_up||0;
elem.baseAbilityUpArr[ABI_TYPE.ABI_LUK] = elem.luk_up||0;
elem.baseAbilityUpArr[ABI_TYPE.ABI_SPEED] = elem.speed_up||0;
heroInfos.set(elem.heroId, elem);
}
});
@@ -76,6 +103,68 @@ function parseLevelInfo() {
});
}
function parseStarRatio() {
const file = 'dic_star_ratio';
const data = gamedata['jsons'][file] || [];
data.forEach(elem => {
if (elem && elem.star) {
starRatioInfo.set(elem.star, elem.ratio);
}
});
}
function parseHeroSkill() {
const file = 'dic_zyz_heroskill';
const data = gamedata['jsons'][file] || [];
data.forEach(elem => {
if (elem && elem.skillid) {
const seidLvUpArr = new Array<number>();
let skillArr = (elem.seid as string).split('&');
let lvUpArr = (elem.selv_up as string).split('&');
for(let i = 0;i < skillArr.length;i++){
if(skillArr[i]==="") continue;
seidLvUpArr.push(parseInt(skillArr[i]));
if(lvUpArr[i]){
seidLvUpArr.push(parseInt(lvUpArr[i]));
}
else{
seidLvUpArr.push(1000);
}
}
heroSkillInfo.set(elem.skillid, {seidLvUpArr});
}
});
}
function parseSeidList() {
const file = 'dic_zyz_se';
const data = gamedata['jsons'][file] || [];
data.forEach(elem => {
if (elem && elem.id) {
let {gainvalue} = elem;
let gainValueArr = (gainvalue as string).split('&');
elem.gainValueArr = new Array();
for(let g of gainValueArr) {
if(g === "") continue;
elem.gainValueArr.push(parseInt(g));
}
seidInfo.set(elem.id, elem);
}
});
}
function parseOlySeidList() {
const file = 'dic_zyz_se_add';
const data = gamedata['jsons'][file] || [];
data.forEach(elem => {
if (elem && elem.type) {
olySeidInfo.set(elem.type, elem);
}
});
}
function initData (folder: string) {
if(!gamedata.hasOwnProperty(folder)) {
gamedata[folder] = {};
@@ -107,6 +196,10 @@ function parseData() {
parseHeroData();
parseJobData();
parseLevelInfo();
parseStarRatio();
parseHeroSkill();
parseSeidList();
parseOlySeidList();
}
initData('jsons'); // 加载一般json
@@ -173,4 +266,20 @@ export function getLvByExp(exp: number) {
export function getExpByLv(lv: number) {
return levelInfos.get(lv);
}
export function getStarRatio(star: number) {
return starRatioInfo.get(star);
}
export function getHeroSkillById(skillId: number) {
return heroSkillInfo.get(skillId);
}
export function getSeidById(id: number) {
return seidInfo.get(id);
}
export function getOlySeidByType(type: number) {
return olySeidInfo.get(type);
}

View File

@@ -2,6 +2,9 @@ import { STATUS } from './../consts/statusCode';
import { getGamedata } from './gamedata';
import { HeroModel } from '../db/Hero';
import { RoleModel } from '../db/Role';
import { PvpDefenseModel } from '../db/PvpDefense';
import Actor from './actor';
const moment = require('moment');
@@ -26,6 +29,8 @@ const moment = require('moment');
}
export function decodeStrSingle(type, str) { //单层,返回对象而不是数组
let last = str.substr(str.length-1, 1);
if(last == '&') str = str.substr(0, str.length - 1);
if(str == '&'|| !str) {
return {}
} else {
@@ -320,4 +325,46 @@ export function setLocalHours(hour: number, curTime = new Date()) {
let localTime = new Date(curTime.getTime() + offset * 60 * 1000 + 8 * 60 * 60 * 1000); // 中国时间
localTime.setUTCHours(hour, 0, 0, 0); // 中国的几点
return localTime.getTime() - offset * 60 * 1000 - 8 * 60 * 60 * 1000; // 回到格林威治时间
}
export async function updateCe(roleId: string, hero: any ) {
let {hid, ce: oldCe, historyCe} = hero;
let actor = new Actor(hero);
let ce = actor.calculateCE();
if(ce != oldCe) {
// 更新总战力&最强五人战力
let role = await RoleModel.findByRoleId(roleId);
let distance = ce - oldCe;
let historyDistance = ce > historyCe ?ce - historyCe: 0;
let topFive = role?.topFive||new Array();
topFive.sort((a, b) => {return b.ce - a.ce}); // 0-5最大-最小
let index = topFive.findIndex(cur => cur.hid == hid);
if(index == -1) { // 不在最强列表
if(topFive.length < 5) { // 不满5人
topFive.push({hid, ce});
} else if(topFive.length == 5){
if(ce > topFive[topFive.length - 1].ce) { // 跻身最强6人
topFive.pop();
topFive.push({hid, ce});
} else {
topFive[index].ce = ce;
}
} else {
topFive.splice(5, topFive.length - 5);
}
} else { // 原来就是最强5人
if(ce < topFive[topFive.length - 1].ce) { // 滑出最强
let heroes = await HeroModel.getTopHero(roleId, 5);
topFive = heroes.map(cur => {return {hid: cur.hid, ce: cur.ce}});
} else {
topFive[index].ce = ce;
}
}
let topFiveCe = topFive.reduce((pre, cur) => {
return pre + cur.ce
}, 0);
await RoleModel.findOneAndUpdate({roleId}, { topFive, topFiveCe, $inc: {ce: distance} });
await PvpDefenseModel.findOneAndUpdate({roleId, 'heroes.actorId': hid}, {$inc: {ce: distance}});
await HeroModel.findOneAndUpdate({roleId, hid}, {$inc:{ce: distance, historyCe: historyDistance}})
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -93,5 +93,10 @@
"id": 19,
"titleName": "排行界面",
"content": "各种排行榜的集合"
},
{
"id": 20,
"titleName": "演武界面",
"content": "游戏的PVP功能采用多队伍积分赛制。每个角色都有自己的积分和rank, 奖励也分为角色奖励和队伍奖励角色奖励换角色的积分发放队伍奖励按玩家5个最高积分的人物的rank排名发放"
}
]

View File

@@ -5,7 +5,7 @@
"midCharId": 0,
"rightCharId": 53,
"bgId": 0,
"content": "&19\\n这地方真是不错山清水秀的说不定还有什么天材地宝呢。"
"content": "&19\n这地方真是不错山清水秀的说不定还有什么天材地宝呢。"
},
{
"dialogueId": 2,
@@ -13,7 +13,7 @@
"midCharId": 0,
"rightCharId": 1008,
"bgId": 0,
"content": "&53\\n又是黄巾贼!受死!"
"content": "&53\n又是黄巾贼!受死!"
},
{
"dialogueId": 3,
@@ -21,7 +21,7 @@
"midCharId": 1008,
"rightCharId": 0,
"bgId": 0,
"content": "&1008\\n女侠饶命啊\\n我愿意将所得财宝全部献给,从此回家安心务农。\\n还请女侠放我一马。"
"content": "&1008\n女侠饶命啊\n前日里被你们教训过后我已经知错了我愿将劫掠所得全部献给女侠,从此回家安心务农。\n还请女侠放我一马。"
},
{
"dialogueId": 4,
@@ -29,7 +29,7 @@
"midCharId": 1050,
"rightCharId": 0,
"bgId": 0,
"content": "&1050\\n少侠老夫看你骨骼惊奇,相貌堂堂,现有一场富贵送你。\\n收下吧。"
"content": "&1050\n后生仔今天有缘遇上了老夫。\n老夫看你骨骼惊奇,相貌堂堂,现有一场机缘送你。\n收下吧。"
},
{
"dialogueId": 5,
@@ -37,7 +37,7 @@
"midCharId": 1008,
"rightCharId": 0,
"bgId": 0,
"content": "&1008\\n太平军在此\\n尔等凡夫俗子快快将财宝献上饶你们一命\\n否则送你们去见黄天"
"content": "&1008\n太平军在此\n尔等凡夫俗子快快将财宝献上饶你们一命\n否则送你们去见黄天"
},
{
"dialogueId": 6,
@@ -45,7 +45,7 @@
"midCharId": 19,
"rightCharId": 0,
"bgId": 0,
"content": "&19\\n黄巾小贼劫掠百姓受死吧"
"content": "&19\n黄巾小贼劫掠百姓受死吧"
},
{
"dialogueId": 7,
@@ -53,7 +53,7 @@
"midCharId": 1008,
"rightCharId": 0,
"bgId": 0,
"content": "&1008\\n呸\\n看了几本传奇侠客就敢出来打抱不平。\\n还是回家喝奶去吧哈哈哈哈"
"content": "&1008\n呸\n看了几本传奇侠客就敢出来打抱不平。\n还是回家喝奶去吧哈哈哈哈"
},
{
"dialogueId": 8,
@@ -61,7 +61,7 @@
"midCharId": 0,
"rightCharId": 1008,
"bgId": 0,
"content": "&1048\\n救命啊有人劫色啊"
"content": "&1048\n救命啊有人劫色啊"
},
{
"dialogueId": 9,
@@ -69,7 +69,7 @@
"midCharId": 0,
"rightCharId": 53,
"bgId": 0,
"content": "&19\\n有人呼救我们赶紧去看看发生了什么"
"content": "&19\n有人呼救我们赶紧去看看发生了什么"
},
{
"dialogueId": 10,
@@ -77,7 +77,7 @@
"midCharId": 0,
"rightCharId": 1008,
"bgId": 0,
"content": "&1008\\n嘿嘿嘿小娘子~\\n安心和大爷一起去快活吧~"
"content": "&1008\n嘿嘿嘿小娘子~\n安心和大爷一起去快活吧~"
},
{
"dialogueId": 11,
@@ -85,7 +85,7 @@
"midCharId": 19,
"rightCharId": 0,
"bgId": 0,
"content": "&19\\n大胆色徒"
"content": "&19\n大胆色徒"
},
{
"dialogueId": 12,
@@ -93,7 +93,7 @@
"midCharId": 1048,
"rightCharId": 0,
"bgId": 0,
"content": "&1048\\n多谢公子相救不然妾身清白……呜呜呜"
"content": "&1048\n多谢公子相救不然妾身清白……呜呜呜"
},
{
"dialogueId": 13,
@@ -101,54 +101,174 @@
"midCharId": 1048,
"rightCharId": 0,
"bgId": 0,
"content": "&1048\\n妾身无以为报只能……以这些钱财报答少侠救命之恩还请不要推辞。"
"content": "&1048\n妾身无以为报只能……以这些钱财报答少侠救命之恩还请不要推辞。"
},
{
"dialogueId": 14,
"leftCharId": 0,
"midCharId": 1008,
"rightCharId": 0,
"bgId": 2,
"content": "&1008\\n哪来的小鬼敢坏大爷好事"
"bgId": 0,
"content": "&1008\n哪来的小鬼敢坏大爷好事"
},
{
"dialogueId": 15,
"leftCharId": 0,
"midCharId": 1008,
"rightCharId": 0,
"bgId": 6,
"content": "&1008\\n可恶那小娘子居然趁乱跑了……"
"bgId": 0,
"content": "&1008\n可恶那小娘子居然趁乱跑了……"
},
{
"dialogueId": 16,
"leftCharId": 0,
"midCharId": 14,
"rightCharId": 0,
"bgId": 7,
"content": "&14\\n行行重行行……\\n下一句该是什么呢…"
"bgId": 0,
"content": "&14\n这些问题……\n该如何回答呢…"
},
{
"dialogueId": 17,
"leftCharId": 19,
"midCharId": 0,
"rightCharId": 14,
"bgId": 6,
"content": "&14\\n啊这位兄台,不好意思打搅了。\\n观兄台相貌堂堂一表人才在下有些诗句尚未摸透\\n能否请兄台帮在下解答一二?"
"bgId": 0,
"content": "&14\n这位兄台,不好意思在下打扰了。\n前日里在下获得一本奇书内容十分高深玄妙于书中有些疑惑尚未解开。碰巧遇到了兄台。\n观兄台相貌堂堂一表人才能否请兄台帮在下解答一二"
},
{
"dialogueId": 18,
"leftCharId": 0,
"midCharId": 14,
"rightCharId": 0,
"bgId": 6,
"content": "&14\\n兄台好文采\\n在下收获颇多真是多谢兄台了。\\n区区心意敢接兄台点播,希望兄台能够接受。"
"bgId": 0,
"content": "&14\n兄台真是好文采!\n在下收获颇多多谢兄台了。\n在下有些薄礼相赠,感谢兄台,还望兄台能够接受。"
},
{
"dialogueId": 19,
"leftCharId": 0,
"midCharId": 14,
"rightCharId": 0,
"bgId": 6,
"content": "&14\\n哈哈,兄台思路清奇,不落窠臼,让在下有所心得。\\n区区薄礼以作打扰兄台之赔偿还请兄台收下。\\n在下先行离开了。"
"bgId": 0,
"content": "&14\n啊这……呵呵,兄台思路清奇,回答不落窠臼,真是让在下长见识了。\n区区薄礼以作打扰兄台之赔偿还请兄台收下。\n在下先行离开了,告辞。"
},
{
"dialogueId": 20,
"leftCharId": 0,
"midCharId": 12,
"rightCharId": 0,
"bgId": 0,
"content": "&12\n主公提的这些问题都好难啊我该怎么回答……\n好伤脑筋啊……"
},
{
"dialogueId": 21,
"leftCharId": 0,
"midCharId": 19,
"rightCharId": 0,
"bgId": 0,
"content": "&19\n啊是谁撞到我了"
},
{
"dialogueId": 22,
"leftCharId": 19,
"midCharId": 0,
"rightCharId": 12,
"bgId": 0,
"content": "&12\n啊不好意思少侠刚刚我在思考问题没有在意有人撞到了少侠还请少侠谅解。\n对了不知道少侠能不能帮我回答些问题我家主公出了些题目让我们回答可是我平日里没有什么积累希望少侠能够帮帮我。"
},
{
"dialogueId": 23,
"leftCharId": 19,
"midCharId": 0,
"rightCharId": 12,
"bgId": 0,
"content": "&19\n我我吗可是我……"
},
{
"dialogueId": 24,
"leftCharId": 19,
"midCharId": 0,
"rightCharId": 12,
"bgId": 0,
"content": "&12\n少侠不必多担心我也是死马当活马医了还希望少侠能够帮帮我才好。"
},
{
"dialogueId": 25,
"leftCharId": 0,
"midCharId": 12,
"rightCharId": 0,
"bgId": 0,
"content": "&12\n少侠的文采见识真是非凡比子建公子还厉害。\n有了少侠的帮助主公的考验一定不在话下。\n乘还记得答案我先回去了。\n这里有些东西是我在路途上获得的送给少侠就当做给少侠的谢礼了。"
},
{
"dialogueId": 26,
"leftCharId": 0,
"midCharId": 12,
"rightCharId": 0,
"bgId": 0,
"content": "&12\n这些答案……好像和主公所说的不一样啊。\n算了不去管这些谢谢少侠相助了。\n在下先行一步告辞了。"
},
{
"dialogueId": 27,
"leftCharId": 1050,
"midCharId": 0,
"rightCharId": 1041,
"bgId": 0,
"content": "&1002\n老匹夫给我走快点要是因为你一个人耽误了徭役老子给你们好看"
},
{
"dialogueId": 28,
"leftCharId": 1050,
"midCharId": 0,
"rightCharId": 1041,
"bgId": 0,
"content": "&1050\n军爷老朽老朽身体实在……"
},
{
"dialogueId": 29,
"leftCharId": 1049,
"midCharId": 0,
"rightCharId": 1041,
"bgId": 0,
"content": "&1049\n军爷我父亲再不休息就要撑不住了就让我们在这里歇一会儿吧。\n只要让我们缓一缓等休息好了我们一定加倍赶路。"
},
{
"dialogueId": 30,
"leftCharId": 1049,
"midCharId": 0,
"rightCharId": 1041,
"bgId": 0,
"content": "&1041\n给你们时间那谁给我们时间\n耽误了太师的郿坞徭役你有几条命赔\n这老废物要是走不动了那老子这就砍了他我看你们谁还敢再慢下来"
},
{
"dialogueId": 31,
"leftCharId": 0,
"midCharId": 19,
"rightCharId": 0,
"bgId": 0,
"content": "&19\n住手\n你们这些人竟然连老人家都不放过。\n看我收拾你们"
},
{
"dialogueId": 32,
"leftCharId": 1049,
"midCharId": 0,
"rightCharId": 19,
"bgId": 0,
"content": "&19\n好了现在已经没人再逼迫你们去服役了你赶紧带着父亲和乡亲们回去吧。"
},
{
"dialogueId": 33,
"leftCharId": 1049,
"midCharId": 0,
"rightCharId": 19,
"bgId": 0,
"content": "&1049\n多谢少侠多谢少侠救了我父亲一命。\n我这就带乡亲们回去。"
},
{
"dialogueId": 34,
"leftCharId": 19,
"midCharId": 0,
"rightCharId": 1041,
"bgId": 0,
"content": "&1041\n啊呸哪来的小毛孩敢挡大爷们的路不自量力。"
}
]

View File

@@ -3,8 +3,9 @@
"eventID": 1,
"eventType": 1,
"quality": 1,
"name": "天降宝箱*铜币",
"name": "天降宝箱",
"sSpineInUI": "gongbing",
"actorIDForQuestion": 0,
"winReward": "31002&50",
"loseReward": "31001&10",
"suitLevel": "1&20",
@@ -13,22 +14,15 @@
"movePointArray": "26&27&28&29",
"startDialogue": "1&4",
"winDialogue": "&",
"loseDialogue": "&",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "&"
},
{
"eventID": 2,
"eventType": 1,
"quality": 1,
"name": "天降宝箱*元宝",
"sSpineInUI": "gongbing",
"name": "逃兵献财",
"sSpineInUI": "huangjindao",
"actorIDForQuestion": 0,
"winReward": "31002&60",
"loseReward": "31001&10",
"suitLevel": "1&20",
@@ -37,22 +31,15 @@
"movePointArray": "26&27&28&29",
"startDialogue": "2&3",
"winDialogue": "&",
"loseDialogue": "&",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "&"
},
{
"eventID": 3,
"eventType": 1,
"quality": 1,
"name": "天降宝箱*材料",
"name": "老人奇遇",
"sSpineInUI": "gongbing",
"actorIDForQuestion": 0,
"winReward": "31001&500",
"loseReward": "31001&10",
"suitLevel": "1&20",
@@ -61,22 +48,15 @@
"movePointArray": "26&27&28&29",
"startDialogue": "1&4",
"winDialogue": "&",
"loseDialogue": "&",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "&"
},
{
"eventID": 4,
"eventType": 2,
"quality": 1,
"name": "答题*体力",
"name": "给贾诩解惑",
"sSpineInUI": "jiaxu",
"actorIDForQuestion": 14,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "1&20",
@@ -85,71 +65,50 @@
"movePointArray": "26&27&28&29",
"startDialogue": "16&17",
"winDialogue": "18&",
"loseDialogue": "19&",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "19&"
},
{
"eventID": 5,
"eventType": 2,
"quality": 1,
"name": "答题*将魂",
"name": "回答贾诩的考验",
"sSpineInUI": "jiaxu",
"actorIDForQuestion": 14,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "1&20",
"warId": 0,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "16&18",
"winDialogue": "19&",
"loseDialogue": "20&",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"startDialogue": "16&17",
"winDialogue": "18&",
"loseDialogue": "19&"
},
{
"eventID": 6,
"eventType": 2,
"quality": 1,
"name": "答题*经验书",
"sSpineInUI": "jiaxu",
"name": "帮助李典做题",
"sSpineInUI": "lidian",
"actorIDForQuestion": 12,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "1&20",
"warId": 0,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "16&19",
"winDialogue": "20&",
"loseDialogue": "21&",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"startDialogue": "20&21&22&23&24",
"winDialogue": "25&",
"loseDialogue": "26&"
},
{
"eventID": 7,
"eventType": 3,
"quality": 1,
"name": "山贼拦路*待定",
"name": "黄巾劫匪",
"sSpineInUI": "huangjindao",
"winReward": "31002&50",
"actorIDForQuestion": 0,
"winReward": "31002&50|5&1|16004&1",
"loseReward": "31001&10",
"suitLevel": "1&20",
"warId": 2001,
@@ -157,46 +116,32 @@
"movePointArray": "26&27&28&29",
"startDialogue": "5&6",
"winDialogue": "3&",
"loseDialogue": "7&",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "7&"
},
{
"eventID": 8,
"eventType": 3,
"quality": 1,
"name": "救援村落*待定",
"sSpineInUI": "huangjingong",
"winReward": "31002&60",
"name": "解救百姓",
"sSpineInUI": "qiangbing",
"actorIDForQuestion": 0,
"winReward": "31002&100|5&1|16004&1",
"loseReward": "31001&10",
"suitLevel": "1&20",
"warId": 2002,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "8&9&10&11",
"winDialogue": "12&13",
"loseDialogue": "14&15",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"startDialogue": "27&28&29&30&31",
"winDialogue": "32&33",
"loseDialogue": "34&"
},
{
"eventID": 9,
"eventType": 3,
"quality": 1,
"name": "比武切磋*待定",
"sSpineInUI": "bubing",
"name": "黄巾色将",
"sSpineInUI": "SL_huangjindao",
"actorIDForQuestion": 0,
"winReward": "31001&500",
"loseReward": "31001&10",
"suitLevel": "1&20",
@@ -205,15 +150,7 @@
"movePointArray": "26&27&28&29",
"startDialogue": "8&9&10&11",
"winDialogue": "12&13",
"loseDialogue": "14&15",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "14&15"
},
{
"eventID": 10,
@@ -221,6 +158,7 @@
"quality": 1,
"name": "天降宝箱*铜币2",
"sSpineInUI": "gongbing",
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "21&40",
@@ -229,15 +167,7 @@
"movePointArray": "26&27&28&29",
"startDialogue": "8&9&10&11",
"winDialogue": "12&13",
"loseDialogue": "14&15",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "14&15"
},
{
"eventID": 11,
@@ -245,6 +175,7 @@
"quality": 2,
"name": "天降宝箱*元宝2",
"sSpineInUI": "gongbing",
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "21&40",
@@ -253,15 +184,7 @@
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 12,
@@ -269,6 +192,7 @@
"quality": 2,
"name": "天降宝箱*材料2",
"sSpineInUI": "gongbing",
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "21&40",
@@ -277,15 +201,7 @@
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 13,
@@ -293,23 +209,16 @@
"quality": 2,
"name": "答题*体力2",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "31002&50",
"loseReward": "31001&10",
"suitLevel": "21&40",
"warId": 0,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 14,
@@ -317,23 +226,16 @@
"quality": 2,
"name": "答题*将魂2",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "31002&60",
"loseReward": "31001&10",
"suitLevel": "21&40",
"warId": 0,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 15,
@@ -341,23 +243,16 @@
"quality": 2,
"name": "答题*经验书2",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "31001&500",
"loseReward": "31001&10",
"suitLevel": "21&40",
"warId": 0,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 16,
@@ -365,23 +260,16 @@
"quality": 2,
"name": "山贼拦路*待定2",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "21&40",
"warId": 2001,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 17,
@@ -389,23 +277,16 @@
"quality": 2,
"name": "救援村落*待定2",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "21&40",
"warId": 2002,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 18,
@@ -413,23 +294,16 @@
"quality": 2,
"name": "比武切磋*待定2",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "21&40",
"warId": 2003,
"weight": 1,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 19,
@@ -437,23 +311,16 @@
"quality": 3,
"name": "天降宝箱*铜币3",
"sSpineInUI": "gongbing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "31002&50|5&1|16004&1",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 0,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 20,
@@ -461,23 +328,16 @@
"quality": 3,
"name": "天降宝箱*元宝3",
"sSpineInUI": "gongbing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "31002&100|5&1|16004&1",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 0,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 21,
@@ -485,23 +345,16 @@
"quality": 3,
"name": "天降宝箱*材料3",
"sSpineInUI": "gongbing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "31001&500",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 0,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 22,
@@ -509,23 +362,16 @@
"quality": 3,
"name": "答题*体力3",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 0,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 23,
@@ -533,23 +379,16 @@
"quality": 3,
"name": "答题*将魂3",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 0,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 24,
@@ -557,23 +396,16 @@
"quality": 3,
"name": "答题*经验书3",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 0,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 25,
@@ -581,23 +413,16 @@
"quality": 3,
"name": "山贼拦路*待定3",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "31002&50",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 2001,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 26,
@@ -605,23 +430,16 @@
"quality": 3,
"name": "救援村落*待定3",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "31002&60",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 2002,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 27,
@@ -629,23 +447,16 @@
"quality": 3,
"name": "比武切磋*待定3",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "31001&500",
"loseReward": "31001&10",
"suitLevel": "41&100",
"warId": 2003,
"weight": 2,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 28,
@@ -653,23 +464,16 @@
"quality": 4,
"name": "天降宝箱*铜币4",
"sSpineInUI": "gongbing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 0,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 29,
@@ -677,23 +481,16 @@
"quality": 4,
"name": "天降宝箱*元宝4",
"sSpineInUI": "gongbing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 0,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 30,
@@ -701,23 +498,16 @@
"quality": 4,
"name": "天降宝箱*材料4",
"sSpineInUI": "gongbing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 0,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 31,
@@ -725,23 +515,16 @@
"quality": 4,
"name": "答题*体力4",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "31002&50|5&1|16004&1",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 0,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 32,
@@ -749,23 +532,16 @@
"quality": 4,
"name": "答题*将魂4",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "31002&100|5&1|16004&1",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 0,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 33,
@@ -773,23 +549,16 @@
"quality": 4,
"name": "答题*经验书4",
"sSpineInUI": "jiaxu",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 14,
"winReward": "31001&500",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 0,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 34,
@@ -797,23 +566,16 @@
"quality": 4,
"name": "山贼拦路*待定4",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 2001,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 35,
@@ -821,23 +583,16 @@
"quality": 4,
"name": "救援村落*待定4",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 2002,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
},
{
"eventID": 36,
@@ -845,22 +600,15 @@
"quality": 4,
"name": "比武切磋*待定4",
"sSpineInUI": "daobing",
"winReward": 0,
"loseReward": 0,
"actorIDForQuestion": 0,
"winReward": "1&1|31002&50",
"loseReward": "31001&10",
"suitLevel": "61&100",
"warId": 2003,
"weight": 4,
"movePointArray": "26&27&28&29",
"startDialogue": "1&2",
"winDialogue": "1&2",
"loseDialogue": "1&2",
"__EMPTY": 0,
"fobiddenCharactor": 0,
"victoryInfoInUI": 0,
"loseInfoInUI": 0,
"starInfoInUI": 0,
"cost": 0,
"recommendedPower": 0,
"previousGk": 0
"loseDialogue": "1&2"
}
]

File diff suppressed because one or more lines are too long

View File

@@ -234,7 +234,7 @@
"dispatchJsonId": 3011,
"bg_img_id": 501,
"script_id": 0,
"fixReward": "10201&1|1&10|2&2|3&3",
"fixReward": "10205&1|1&10|2&2|3&3",
"warType": 4,
"gk_name": "每日&城池守卫",
"kingExp": 100,

View File

@@ -100,7 +100,7 @@
"fobiddenCharactor": "&",
"victoryInfoInUI": "消灭所有敌军",
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡\n2.在5回合内获得胜利",
"starInfoInUI": "1.我方无人撤退\n2.在3回合内获得胜利",
"cost": 2,
"iconInMap": "city&4",
"iconName": "真 定",
@@ -132,7 +132,7 @@
"cost": 2,
"iconInMap": "spine&huangjindao",
"iconName": "&",
"heroInUI": "1&1008|1&1045|1&1036",
"heroInUI": "1&1008|1&1045|1&1055",
"detailUIBg": "1_2",
"recommendedPower": 10010,
"previousGk": 107,
@@ -212,7 +212,7 @@
"fobiddenCharactor": "&",
"victoryInfoInUI": "消灭所有敌军",
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡\n2.在5回合内获得胜利",
"starInfoInUI": "1.我方撤退人数不超过1人\n2.在5回合内获得胜利",
"cost": 2,
"iconInMap": "city&2",
"iconName": "巨 鹿",
@@ -242,9 +242,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&yinbing",
"iconInMap": "spine&yinbingdao",
"iconName": "&",
"heroInUI": "1&1013|1&1001",
"heroInUI": "1&1013",
"detailUIBg": "1_3",
"recommendedPower": 10014,
"previousGk": 111,
@@ -270,9 +270,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&qiangbing",
"iconInMap": "spine&huangjindao",
"iconName": "&",
"heroInUI": "1&1026|1&1045|1008",
"heroInUI": "1&1013|1&1045|1&1008",
"detailUIBg": "1_3",
"recommendedPower": 10015,
"previousGk": 112,
@@ -298,9 +298,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&qiangbing",
"iconInMap": "spine&gongbing",
"iconName": "&",
"heroInUI": "1&1001|1&1004",
"heroInUI": "1&1001|1&1002|1&1004",
"detailUIBg": "1_3",
"recommendedPower": 10016,
"previousGk": 113,
@@ -324,11 +324,11 @@
"fobiddenCharactor": "&",
"victoryInfoInUI": "消灭所有敌军",
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡\n2.在5回合内获得胜利",
"starInfoInUI": "1.我方撤退人数不超过1人\n2.在7回合内获得胜利",
"cost": 2,
"iconInMap": "city&3",
"iconName": "河 间 ",
"heroInUI": "1&1001|1&1002|1&1004|1&1041",
"heroInUI": "1&1002|1&1004|1&1039",
"detailUIBg": "1_4",
"recommendedPower": 10017,
"previousGk": 114,
@@ -354,9 +354,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&caoren",
"iconInMap": "spine&SL_qiangbing",
"iconName": "&",
"heroInUI": "1&1001|1&1004|1&1002|1&1041",
"heroInUI": "1&1001|1&1004|1&1041",
"detailUIBg": "1_4",
"recommendedPower": 10018,
"previousGk": 115,
@@ -382,9 +382,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&caoren",
"iconInMap": "spine&SL_daobing",
"iconName": "&",
"heroInUI": "1&1001|1&1002|1&1004|1&1039",
"heroInUI": "1&1002|1&1004|1&1039",
"detailUIBg": "1_4",
"recommendedPower": 10019,
"previousGk": 116,
@@ -410,9 +410,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&caoren",
"iconInMap": "spine&SL_qibing",
"iconName": "&",
"heroInUI": "1&1001|1&1003|1&1002|1&1003",
"heroInUI": "1&1001|1&1002|1&1037",
"detailUIBg": "1_4",
"recommendedPower": 10020,
"previousGk": 117,
@@ -436,11 +436,11 @@
"fobiddenCharactor": "&",
"victoryInfoInUI": "消灭所有敌军",
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡\n2.在5回合内获得胜利",
"starInfoInUI": "1.我方撤退人数不超过2人\n2.在5回合内获得胜利",
"cost": 2,
"iconInMap": "city&1",
"iconName": "渤 海",
"heroInUI": "1&1003|2&1037",
"heroInUI": "1&1003|1&1011",
"detailUIBg": "1_5",
"recommendedPower": 10021,
"previousGk": 118,
@@ -466,9 +466,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&lidian",
"iconInMap": "spine&SL_gongbing",
"iconName": "&",
"heroInUI": "1&1001|1&1003|1&1002|1&1056",
"heroInUI": "1&1003|1&1002|1&1056",
"detailUIBg": "1_5",
"recommendedPower": 10022,
"previousGk": 119,
@@ -494,9 +494,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&lidian",
"iconInMap": "spine&SL_qiangbing",
"iconName": "&",
"heroInUI": "1&1001|1&1004|1&1003|1&1041",
"heroInUI": "1&1004|1&1003|1&1041",
"detailUIBg": "1_5",
"recommendedPower": 10023,
"previousGk": 120,
@@ -522,9 +522,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&lidian",
"iconInMap": "spine&SL_qibing",
"iconName": "&",
"heroInUI": "1&1001|1&1004|1&1002|1&1037",
"heroInUI": "1&1004|1&1002|1&1037",
"detailUIBg": "1_5",
"recommendedPower": 10024,
"previousGk": 121,
@@ -548,11 +548,11 @@
"fobiddenCharactor": "&",
"victoryInfoInUI": "消灭所有敌军",
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡\n2.在5回合内获得胜利",
"starInfoInUI": "1.我军出战人数不超过4人\n2.在10回合内获得胜利",
"cost": 2,
"iconInMap": "city&5",
"iconName": "界 桥",
"heroInUI": "1&1001|1&1004||1&1056|1&354",
"heroInUI": "1&1001|1&1056|1&354",
"detailUIBg": "1_7",
"recommendedPower": 10025,
"previousGk": 122,
@@ -580,7 +580,7 @@
"cost": 2,
"iconInMap": "spine&wenchou",
"iconName": "&",
"heroInUI": "1&1001|1&1004|1&354",
"heroInUI": "1&1041|1&1056|1&354",
"detailUIBg": "1_7",
"recommendedPower": 10026,
"previousGk": 123,
@@ -606,9 +606,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&lidian",
"iconInMap": "spine&SL_qiangbing",
"iconName": "&",
"heroInUI": "1&1001|1&1004|1&1041",
"heroInUI": "1&1039|1&1041|1&1056",
"detailUIBg": "1_7",
"recommendedPower": 10027,
"previousGk": 124,
@@ -634,9 +634,9 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "无",
"cost": 2,
"iconInMap": "spine&qibing",
"iconInMap": "spine&SL_qibing",
"iconName": "&",
"heroInUI": "1&1001|1&1004|1&1037",
"heroInUI": "1&1002|1&1056|1&1037",
"detailUIBg": "1_7",
"recommendedPower": 10028,
"previousGk": 125,
@@ -664,7 +664,7 @@
"cost": 2,
"iconInMap": "city&1",
"iconName": "邺 城",
"heroInUI": "1&1001|1&1004|1&312",
"heroInUI": "1&1039|1&355|1&1054",
"detailUIBg": "1_8",
"recommendedPower": 10029,
"previousGk": 126,

View File

@@ -18,7 +18,7 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡;\n2.在5回合内获得胜利",
"cost": 3,
"heroInUI": "1&1001|1&1004|2&312",
"heroInUI": "1&1001|1&1004|1&1036",
"detailUIBg": "1_2",
"recommendedPower": 20000,
"previousGk": 107,
@@ -33,7 +33,7 @@
"conditionReward": "16004&1&0|31002&50&0|31002&100&1",
"RandomReward": "17003&10&1|15013&1&3|17008&1&2",
"warType": 12,
"gk_name": "第一章&真定之战(精英)",
"gk_name": "第一章&巨鹿之战(精英)",
"kingExp": 100,
"lvLimted": 3,
"turnLimted": 30,
@@ -43,7 +43,7 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡;\n2.在5回合内获得胜利",
"cost": 3,
"heroInUI": "1&1001|1&1004|2&312",
"heroInUI": "1&1013|1&1008|1&1036",
"detailUIBg": "1_3",
"recommendedPower": 20000,
"previousGk": 111,
@@ -58,7 +58,7 @@
"conditionReward": "16004&1&0|31002&50&0|31002&100&1",
"RandomReward": "17003&10&1|15013&1&3|17008&1&2",
"warType": 12,
"gk_name": "第一章&真定之战(精英)",
"gk_name": "第一章&河间之战(精英)",
"kingExp": 100,
"lvLimted": 3,
"turnLimted": 30,
@@ -68,7 +68,7 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡;\n2.在5回合内获得胜利",
"cost": 3,
"heroInUI": "1&1001|1&1004|2&312",
"heroInUI": "1&1004|1&1041|1&1039",
"detailUIBg": "1_4",
"recommendedPower": 20000,
"previousGk": 115,
@@ -83,7 +83,7 @@
"conditionReward": "16004&1&0|31002&50&0|31002&100&1",
"RandomReward": "17003&10&1|15013&1&3|17008&1&2",
"warType": 12,
"gk_name": "第一章&真定之战(精英)",
"gk_name": "第一章&渤海之战(精英)",
"kingExp": 100,
"lvLimted": 3,
"turnLimted": 30,
@@ -93,7 +93,7 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡;\n2.在5回合内获得胜利",
"cost": 3,
"heroInUI": "1&1001|1&1004|2&312",
"heroInUI": "1&1003|1&1037|1&1011",
"detailUIBg": "1_5",
"recommendedPower": 20000,
"previousGk": 119,
@@ -108,7 +108,7 @@
"conditionReward": "16004&1&0|31002&50&0|31002&100&1",
"RandomReward": "17003&10&1|15013&1&3|17008&1&2",
"warType": 12,
"gk_name": "第一章&真定之战(精英)",
"gk_name": "第一章&界桥之战(精英)",
"kingExp": 100,
"lvLimted": 3,
"turnLimted": 30,
@@ -133,7 +133,7 @@
"conditionReward": "16004&1&0|31002&50&0|31002&100&1",
"RandomReward": "17003&10&1|15013&1&3|17008&1&2",
"warType": 12,
"gk_name": "第一章&真定之战(精英)",
"gk_name": "第一章&邺城之战(精英)",
"kingExp": 100,
"lvLimted": 3,
"turnLimted": 30,
@@ -143,7 +143,7 @@
"loseInfoInUI": "我方全部阵亡",
"starInfoInUI": "1.我方无人阵亡;\n2.在5回合内获得胜利",
"cost": 3,
"heroInUI": "1&1001|1&1004|2&312",
"heroInUI": "1&354|1&355|1&1054",
"detailUIBg": "1_8",
"recommendedPower": 20000,
"previousGk": 127,

View File

@@ -4,7 +4,7 @@
"dispatchJsonId": 10001,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13005&1|17002&10|17006&2|17006&3",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -27,7 +27,7 @@
"dispatchJsonId": 10002,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13005&1|17002&10|17006&2|17006&3",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -50,7 +50,7 @@
"dispatchJsonId": 10003,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13005&1|17002&10|17006&2|17006&3",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -73,7 +73,7 @@
"dispatchJsonId": 10004,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13005&1|17002&10|17006&2|17006&3",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -96,7 +96,7 @@
"dispatchJsonId": 10005,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13010&1|17003&30|17006&20|17006&20",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -119,7 +119,7 @@
"dispatchJsonId": 10006,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13010&1|17003&30|17006&20|17006&20",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -142,7 +142,7 @@
"dispatchJsonId": 10007,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13005&1|17002&10|17006&2|17006&8",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -165,7 +165,7 @@
"dispatchJsonId": 10008,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13005&1|17002&10|17006&2|17006&9",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -188,7 +188,7 @@
"dispatchJsonId": 10009,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13005&1|17002&10|17006&2|17006&10",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -211,7 +211,7 @@
"dispatchJsonId": 10010,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13005&1|17002&10|17006&2|17006&11",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -234,7 +234,7 @@
"dispatchJsonId": 10011,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13015&1|17004&30|17006&30|17006&30",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -257,7 +257,7 @@
"dispatchJsonId": 10012,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13015&1|17004&30|17006&30|17006&30",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,
@@ -280,7 +280,7 @@
"dispatchJsonId": 10013,
"bg_img_id": 504,
"script_id": 0,
"fixReward": "&",
"fixReward": "13015&1|17004&30|17006&30|17006&30",
"conditionReward": "&",
"RandomReward": "&",
"warType": 8,

View File

@@ -409,7 +409,7 @@
{
"heroId": 12,
"spineName": "lidian",
"rSpineName": "&",
"rSpineName": "LH_lidian",
"name": "李典",
"face_id": "lidian",
"quality": 2,
@@ -483,7 +483,7 @@
{
"heroId": 14,
"spineName": "jiaxu",
"rSpineName": "&",
"rSpineName": "LH_jiaxu",
"name": "贾诩",
"face_id": "jiaxu",
"quality": 2,
@@ -514,13 +514,13 @@
"retreat": "暂时先避其锋芒。",
"info": "我是低能",
"actorinfo": "物理职业的弓兵,勉强还行。",
"imgPosofDialog": "560&-358",
"imgPosofDialog": "560&-280",
"imgPosofInfo": 0
},
{
"heroId": 15,
"spineName": "xuchu",
"rSpineName": "&",
"rSpineName": "LH_xuchu",
"name": "许褚",
"face_id": "xuchu",
"quality": 2,
@@ -1814,7 +1814,7 @@
},
{
"heroId": 50,
"spineName": "zhaoyun",
"spineName": "SL_gongbing",
"rSpineName": "&",
"name": "麹义",
"face_id": "quyi",
@@ -1962,7 +1962,7 @@
},
{
"heroId": 54,
"spineName": "zhaoyun",
"spineName": "wenchou",
"rSpineName": "&",
"name": "文丑",
"face_id": "wenchou",
@@ -1999,7 +1999,7 @@
},
{
"heroId": 55,
"spineName": "zhaoyun",
"spineName": "yanliang",
"rSpineName": "&",
"name": "颜良",
"face_id": "yanliang",
@@ -2660,7 +2660,7 @@
"retreat": "暂时先避其锋芒。",
"info": "我是低能",
"actorinfo": "远程职业的法师,菜的一笔。",
"imgPosofDialog": "560&-358",
"imgPosofDialog": "560&-280",
"imgPosofInfo": 0
},
{
@@ -3960,7 +3960,7 @@
},
{
"heroId": 350,
"spineName": "zhaoyun",
"spineName": "SL_gongbing",
"rSpineName": "&",
"name": "麹义",
"face_id": "quyi",
@@ -4108,7 +4108,7 @@
},
{
"heroId": 354,
"spineName": "zhaoyun",
"spineName": "wenchou",
"rSpineName": "&",
"name": "文丑",
"face_id": "wenchou",
@@ -4145,7 +4145,7 @@
},
{
"heroId": 355,
"spineName": "zhaoyun",
"spineName": "yanliang",
"rSpineName": "&",
"name": "颜良",
"face_id": "yanliang",
@@ -4309,7 +4309,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4346,7 +4346,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4383,7 +4383,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4420,7 +4420,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4457,7 +4457,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4494,7 +4494,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4531,7 +4531,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4568,7 +4568,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4605,7 +4605,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4642,7 +4642,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4663,10 +4663,10 @@
},
{
"heroId": 1011,
"spineName": "qibing",
"spineName": "baimayicong",
"rSpineName": "&",
"name": "白马义从",
"face_id": "bubing",
"face_id": "tongyongjunguan",
"quality": 3,
"camp": 0,
"area": 0,
@@ -4679,7 +4679,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4700,7 +4700,7 @@
},
{
"heroId": 1012,
"spineName": "zhaoyun",
"spineName": "shanzeidao",
"rSpineName": "&",
"name": "山贼",
"face_id": "shanzei",
@@ -4716,7 +4716,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4753,7 +4753,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4790,7 +4790,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4827,7 +4827,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4864,7 +4864,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4901,7 +4901,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4938,7 +4938,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -4975,7 +4975,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5012,7 +5012,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5049,7 +5049,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5086,7 +5086,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5123,7 +5123,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5160,7 +5160,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5197,7 +5197,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5234,7 +5234,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5271,7 +5271,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5308,7 +5308,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5345,7 +5345,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5382,7 +5382,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5419,7 +5419,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5456,7 +5456,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5493,7 +5493,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5530,7 +5530,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5567,7 +5567,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5588,7 +5588,7 @@
},
{
"heroId": 1037,
"spineName": "qibing",
"spineName": "SL_qibing",
"rSpineName": "&",
"name": "骑兵将领",
"face_id": "tongyongjunguan",
@@ -5604,7 +5604,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5620,7 +5620,7 @@
"retreat": "复兴汉室的梦想破灭了!",
"info": "我是低能",
"actorinfo": "物理职业的弓兵,勉强还行。",
"imgPosofDialog": "596&-75",
"imgPosofDialog": "596&-141",
"imgPosofInfo": "&"
},
{
@@ -5641,7 +5641,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5662,7 +5662,7 @@
},
{
"heroId": 1039,
"spineName": "daobing",
"spineName": "SL_daobing",
"rSpineName": "&",
"name": "步兵将领",
"face_id": "tongyongjunguan",
@@ -5678,7 +5678,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5694,7 +5694,7 @@
"retreat": "复兴汉室的梦想破灭了!",
"info": "我是低能",
"actorinfo": "物理职业的步兵,强的一笔。",
"imgPosofDialog": "596&-75",
"imgPosofDialog": "596&-141",
"imgPosofInfo": "&"
},
{
@@ -5715,7 +5715,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5731,7 +5731,7 @@
"retreat": "复兴汉室的梦想破灭了!",
"info": "我是低能",
"actorinfo": "物理职业的弓兵,勉强还行。",
"imgPosofDialog": "650&-75",
"imgPosofDialog": "596&-141",
"imgPosofInfo": "&"
},
{
@@ -5752,7 +5752,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5768,12 +5768,12 @@
"retreat": "复兴汉室的梦想破灭了!",
"info": "我是低能",
"actorinfo": "远程职业的法师,菜的一笔。",
"imgPosofDialog": "596&-75",
"imgPosofDialog": "596&-141",
"imgPosofInfo": "&"
},
{
"heroId": 1042,
"spineName": "gongbing",
"spineName": "shangzeigong",
"rSpineName": "&",
"name": "山贼弓兵",
"face_id": "shanzei",
@@ -5789,7 +5789,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5826,7 +5826,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5863,7 +5863,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5900,7 +5900,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5937,7 +5937,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -5974,7 +5974,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6011,7 +6011,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6027,7 +6027,7 @@
"retreat": "复兴汉室的梦想破灭了!",
"info": "我是低能",
"actorinfo": "远程职业的法师,菜的一笔。",
"imgPosofDialog": "565&-113",
"imgPosofDialog": "565&-168",
"imgPosofInfo": "&"
},
{
@@ -6048,7 +6048,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6085,7 +6085,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6101,7 +6101,7 @@
"retreat": "复兴汉室的梦想破灭了!",
"info": "我是低能",
"actorinfo": "远程职业的法师,菜的一笔。",
"imgPosofDialog": "524&-113",
"imgPosofDialog": "524&-188",
"imgPosofInfo": "&"
},
{
@@ -6122,7 +6122,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6143,7 +6143,7 @@
},
{
"heroId": 1052,
"spineName": "qibing",
"spineName": "H_baimayicong",
"rSpineName": "&",
"name": "严纲",
"face_id": "bubingjiangling",
@@ -6159,7 +6159,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6196,7 +6196,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6212,7 +6212,7 @@
"retreat": "复兴汉室的梦想破灭了!",
"info": "我是低能",
"actorinfo": "物理职业的弓兵,勉强还行。",
"imgPosofDialog": "567&-67",
"imgPosofDialog": "533&-182",
"imgPosofInfo": "&"
},
{
@@ -6233,7 +6233,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6270,7 +6270,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6291,7 +6291,7 @@
},
{
"heroId": 1056,
"spineName": "gongbingjiangling",
"spineName": "SL_gongbing",
"rSpineName": "&",
"name": "弓兵将领",
"face_id": "tongyonggongbingjiangling",
@@ -6307,7 +6307,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6344,7 +6344,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6381,7 +6381,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6418,7 +6418,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6455,7 +6455,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6492,7 +6492,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6529,7 +6529,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6566,7 +6566,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6603,7 +6603,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6640,7 +6640,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6677,7 +6677,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6714,7 +6714,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6751,7 +6751,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6788,7 +6788,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6825,7 +6825,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6862,7 +6862,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6899,7 +6899,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6920,7 +6920,7 @@
},
{
"heroId": 2005,
"spineName": "H_qibing",
"spineName": "H_baimayicong",
"rSpineName": "&",
"name": "骑兵将领",
"face_id": "tongyongjunguan",
@@ -6936,7 +6936,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,
@@ -6957,7 +6957,7 @@
},
{
"heroId": 2006,
"spineName": "qibing",
"spineName": "H_baimayicong",
"rSpineName": "&",
"name": "严纲",
"face_id": "bubingjiangling",
@@ -6973,7 +6973,7 @@
"matk": 20,
"def": 120,
"mdef": 120,
"agi": 120,
"agi": 60,
"luk": 20,
"hp_up": 10,
"atk_up": 1,

View File

@@ -1,326 +1,326 @@
[
{
"id": 1,
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 1,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 2,
"30": 255,
"31": 1,
"32": 255,
"33": 2
},
{
"id": 2,
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 1,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 2,
"30": 255,
"31": 1,
"32": 255,
"33": 2
},
{
"id": 3,
"1": 1,
"2": 1,
"3": 2,
"4": 2,
"5": 3,
"6": 255,
"7": 2,
"8": 2,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 2,
"22": 2,
"23": 2,
"24": 3,
"25": 2,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 3
},
{
"id": 4,
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 1,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2
},
{
"id": 5,
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 1,
"11": 1,
"12": 1,
"13": 255,
"14": 1,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2
},
{
"id": 6,
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2
},
{
"id": 7,
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2
},
{
"id": 8,
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2
},
{
"id": 9,
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2
}
[
{
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 1,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 2,
"30": 255,
"31": 1,
"32": 255,
"33": 2,
"id": 1
},
{
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 1,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 2,
"30": 255,
"31": 1,
"32": 255,
"33": 2,
"id": 2
},
{
"1": 1,
"2": 1,
"3": 2,
"4": 2,
"5": 3,
"6": 255,
"7": 2,
"8": 2,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 2,
"22": 2,
"23": 2,
"24": 3,
"25": 2,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 3,
"id": 3
},
{
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 1,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2,
"id": 4
},
{
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 1,
"11": 1,
"12": 1,
"13": 255,
"14": 1,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2,
"id": 5
},
{
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2,
"id": 6
},
{
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2,
"id": 7
},
{
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2,
"id": 8
},
{
"1": 1,
"2": 1,
"3": 1,
"4": 1,
"5": 2,
"6": 255,
"7": 1,
"8": 1,
"9": 1,
"10": 2,
"11": 1,
"12": 2,
"13": 255,
"14": 2,
"15": 255,
"16": 255,
"17": 1,
"18": 255,
"19": 1,
"20": 1,
"21": 1,
"22": 1,
"23": 1,
"24": 2,
"25": 1,
"26": 255,
"27": 255,
"28": 255,
"29": 1,
"30": 255,
"31": 1,
"32": 255,
"33": 2,
"id": 9
}
]

View File

@@ -1,431 +1,431 @@
[
{
"mapid": 1,
"name": "平原",
"music": 0,
"type": 971,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的平原"
},
{
"mapid": 2,
"name": "草原",
"music": 2,
"type": 971,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的草原"
},
{
"mapid": 3,
"name": "树林",
"music": 2,
"type": 971,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的树林"
},
{
"mapid": 4,
"name": "荒地",
"music": 0,
"type": 973,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的荒地"
},
{
"mapid": 5,
"name": "山地",
"music": 0,
"type": 973,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的山地"
},
{
"mapid": 6,
"name": "岩山",
"music": 0,
"type": 973,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的岩山"
},
{
"mapid": 7,
"name": "沙漠",
"music": 0,
"type": 973,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的沙漠"
},
{
"mapid": 8,
"name": "雪原",
"music": 1,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的雪原"
},
{
"mapid": 9,
"name": "桥梁",
"music": 0,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的桥梁"
},
{
"mapid": 10,
"name": "浅滩",
"music": 3,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的浅滩"
},
{
"mapid": 11,
"name": "沼泽",
"music": 3,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的沼泽"
},
{
"mapid": 12,
"name": "池塘",
"music": 0,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的池塘"
},
{
"mapid": 13,
"name": "小河",
"music": 0,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的小河"
},
{
"mapid": 14,
"name": "大河",
"music": 4,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的大河"
},
{
"mapid": 15,
"name": "栅栏",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的栅栏"
},
{
"mapid": 16,
"name": "城墙",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的城墙"
},
{
"mapid": 17,
"name": "城内",
"music": 0,
"type": 974,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的城内"
},
{
"mapid": 18,
"name": "城门",
"music": 0,
"type": 974,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的城门"
},
{
"mapid": 19,
"name": "城池",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的城池"
},
{
"mapid": 20,
"name": "关隘",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的关隘"
},
{
"mapid": 21,
"name": "鹿砦",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的鹿砦"
},
{
"mapid": 22,
"name": "村庄",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的村庄"
},
{
"mapid": 23,
"name": "兵营",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的兵营"
},
{
"mapid": 24,
"name": "民居",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的民居"
},
{
"mapid": 25,
"name": "宝物库",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的宝物库"
},
{
"mapid": 26,
"name": "祭坛",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的祭坛"
},
{
"mapid": 27,
"name": "火",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的火"
},
{
"mapid": 28,
"name": "船",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的船"
},
{
"mapid": 29,
"name": "冰面",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的冰面"
},
{
"mapid": 30,
"name": "边界",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的边界"
},
{
"mapid": 31,
"name": "泉水",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的泉水"
},
{
"mapid": 32,
"name": "火堆",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的火堆"
},
{
"mapid": 33,
"name": "冰面",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的冰面"
}
{
"mapid": 1,
"name": "平原",
"music": 0,
"type": 971,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的平原"
},
{
"mapid": 2,
"name": "草原",
"music": 2,
"type": 971,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的草原"
},
{
"mapid": 3,
"name": "树林",
"music": 2,
"type": 971,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的树林"
},
{
"mapid": 4,
"name": "荒地",
"music": 0,
"type": 973,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的荒地"
},
{
"mapid": 5,
"name": "山地",
"music": 0,
"type": 973,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的山地"
},
{
"mapid": 6,
"name": "岩山",
"music": 0,
"type": 973,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的岩山"
},
{
"mapid": 7,
"name": "沙漠",
"music": 0,
"type": 973,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的沙漠"
},
{
"mapid": 8,
"name": "雪原",
"music": 1,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的雪原"
},
{
"mapid": 9,
"name": "桥梁",
"music": 0,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的桥梁"
},
{
"mapid": 10,
"name": "浅滩",
"music": 3,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的浅滩"
},
{
"mapid": 11,
"name": "沼泽",
"music": 3,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的沼泽"
},
{
"mapid": 12,
"name": "池塘",
"music": 0,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的池塘"
},
{
"mapid": 13,
"name": "小河",
"music": 0,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的小河"
},
{
"mapid": 14,
"name": "缓流",
"music": 4,
"type": 972,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的大河"
},
{
"mapid": 15,
"name": "栅栏",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的栅栏"
},
{
"mapid": 16,
"name": "城墙",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的城墙"
},
{
"mapid": 17,
"name": "城内",
"music": 0,
"type": 974,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的城内"
},
{
"mapid": 18,
"name": "城门",
"music": 0,
"type": 974,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的城门"
},
{
"mapid": 19,
"name": "城池",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的城池"
},
{
"mapid": 20,
"name": "关隘",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的关隘"
},
{
"mapid": 21,
"name": "鹿砦",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的鹿砦"
},
{
"mapid": 22,
"name": "村庄",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的村庄"
},
{
"mapid": 23,
"name": "兵营",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的兵营"
},
{
"mapid": 24,
"name": "民居",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的民居"
},
{
"mapid": 25,
"name": "宝物库",
"music": 0,
"type": 975,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 10,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的宝物库"
},
{
"mapid": 26,
"name": "祭坛",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的祭坛"
},
{
"mapid": 27,
"name": "火",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的火"
},
{
"mapid": 28,
"name": "船",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的船"
},
{
"mapid": 29,
"name": "冰面",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的冰面"
},
{
"mapid": 30,
"name": "边界",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的边界"
},
{
"mapid": 31,
"name": "泉水",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的泉水"
},
{
"mapid": 32,
"name": "火堆",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的火堆"
},
{
"mapid": 33,
"name": "冰面",
"music": 0,
"type": 976,
"int_hp": 0,
"int_mp": 0,
"percent_hp": 0,
"percent_mp": 0,
"seid": 0,
"effect": 0,
"description": "很平常的冰面"
}
]

View File

@@ -201,7 +201,7 @@
},
{
"pointId": 26,
"position": "-965&1687",
"position": "-962&1660",
"previousPoint": "3&",
"wayPoints": "&",
"chapater": 1,
@@ -209,7 +209,7 @@
},
{
"pointId": 27,
"position": "-368&1892",
"position": "-368&1875",
"previousPoint": "12&",
"wayPoints": "&",
"chapater": 1,
@@ -217,7 +217,7 @@
},
{
"pointId": 28,
"position": "-769&1158",
"position": "-758&1166",
"previousPoint": "7&",
"wayPoints": "&",
"chapater": 1,
@@ -225,7 +225,7 @@
},
{
"pointId": 29,
"position": "542&1289",
"position": "534&1260",
"previousPoint": "18&",
"wayPoints": "&",
"chapater": 1,

File diff suppressed because it is too large Load Diff

View File

@@ -1,308 +1,325 @@
[
{
"id": 1,
"name": "砍一刀",
"hurt_formula": "ownAtk*200%-oppoDef*100",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 2,
"strike_area": 2,
"object": 0,
"skill_class": 1,
"effect": "1&",
"actionName": "skill1",
"secondActionName": "&",
"skill_info": "大伤害技能",
"skilNameImage": 0,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 2,
"name": "无双画戟",
"hurt_formula": "ownAtk*200%-oppoDef*100",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 5,
"strike_area": 2,
"object": 0,
"skill_class": 1,
"effect": "3348&",
"actionName": "skill1",
"secondActionName": "skill1_B",
"skill_info": "猛击地面造成200%的范围伤害,范围内人数越多总伤害越高,同时给目标添加封怒的以及物攻下降效果,命中的目标会降低少量怒气",
"skilNameImage": 0,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 3,
"name": "温侯斩",
"hurt_formula": "ownAtk*200%-oppoDef*100",
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 1,
"strike_area": 1,
"object": 0,
"skill_class": 2,
"effect": "3352&",
"actionName": "skill2",
"secondActionName": "&",
"skill_info": "对敌人连续攻击两次每击造成200%的伤害",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 4,
"name": "长枪投射",
"hurt_formula": "ownAtk*200%-oppoDef*100",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 2,
"strike_area": 1,
"object": 0,
"skill_class": 1,
"effect": "3068&",
"actionName": "skill1",
"secondActionName": "skill1_B",
"skill_info": "远距离投射长枪对目标造成200%的伤害目标为策略职业时伤害提升20%并且给目标添加一个策略伤害加深降低10%的效果持续4回合",
"skilNameImage": 1,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 5,
"name": "赦免",
"hurt_formula": 0,
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 5,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3072&",
"actionName": "skill2",
"secondActionName": "&",
"skill_info": "回复自身10%生命值并且自身的策略伤害减免上升20%持续2回合",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 6,
"name": "连珠三箭",
"hurt_formula": "ownAtk*120%-oppoDef*100",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 4,
"strike_area": 4,
"object": 0,
"skill_class": 1,
"effect": "3092&",
"actionName": "skill1",
"secondActionName": "&",
"skill_info": "对范围内的多个目标最多3个造成120%的伤害被攻击目标有33%的概率获得一个物理伤害加深减少25%的减益效果持续4回合",
"skilNameImage": 2,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 7,
"name": "鼓舞",
"hurt_formula": 0,
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 2,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3096&",
"actionName": "skill2",
"secondActionName": "&",
"skill_info": "使我方指定目标获得幸运提升20%的效果持续4回合",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 8,
"name": "猛毒迷雾",
"hurt_formula": "ownMAtk*200%-oppoMDef*100",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 2,
"strike_area": 4,
"object": 0,
"skill_class": 1,
"effect": "3108&",
"actionName": "skill1",
"secondActionName": "&",
"skill_info": "对目标进行毒雾攻击造成200%伤害附加中毒效果造成每回合25%策攻伤害持续4回合对已有中毒效果的单位立即生成一段毒伤害同时降低目标20%的敏捷持续3回合",
"skilNameImage": 3,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 9,
"name": "投毒",
"hurt_formula": "ownMAtk*200%-oppoMDef*100",
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 2,
"strike_area": 1,
"object": 0,
"skill_class": 2,
"effect": "3112&",
"actionName": "skill2",
"secondActionName": "&",
"skill_info": "对目标下毒造成200%伤害附加中毒效果造成每回合25%策攻伤害持续4回合对已有中毒效果的单位立即生成一段毒伤害",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 10,
"name": "巨锤震击",
"hurt_formula": "ownAtk*200%-oppoDef*100",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 3,
"strike_area": 1,
"object": 0,
"skill_class": 1,
"effect": "3116&",
"actionName": "skill1",
"secondActionName": "skill1_B",
"skill_info": "造成200%物理伤害并且击退1格如果不能击退则这次攻击伤害加深提升20%",
"skilNameImage": 4,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 11,
"name": "虎痴",
"hurt_formula": 0,
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 5,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3120&",
"actionName": "skill2",
"secondActionName": "&",
"skill_info": "恢复自身10%攻击力的血量并且给自身附加伤害减免10%4回合内作用2次",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 12,
"name": "薤叶芸香",
"hurt_formula": "ownMAtk*100%",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 4,
"strike_area": 1,
"object": 1,
"skill_class": 1,
"effect": "3364&",
"actionName": "skill1",
"secondActionName": "&",
"skill_info": "不错的技能",
"skilNameImage": 0,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 13,
"name": "麻沸散",
"hurt_formula": "ownMAtk*100%",
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 4,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3368&",
"actionName": "skill2",
"secondActionName": "&",
"skill_info": "大伤害技能",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 14,
"name": "敌阵突破",
"hurt_formula": "ownAtk*200%-oppoDef*100",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 3,
"strike_area": 1,
"object": 0,
"skill_class": 1,
"effect": "3084&",
"actionName": "skill1",
"secondActionName": "&",
"skill_info": "向目标冲锋造成200%伤害同时会生成自身攻击30%的护盾持续4回合冲锋会位移到目标的身后",
"skilNameImage": 5,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 15,
"name": "坚壁",
"hurt_formula": 0,
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 2,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3088&",
"actionName": "skill2",
"secondActionName": "&",
"skill_info": "使我方指定目标获得物理伤害减免提升20%持续3回合",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 16,
"name": "回春",
"hurt_formula": "ownMAtk*60%",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 5,
"strike_area": 4,
"object": 1,
"skill_class": 1,
"effect": "3316&",
"actionName": "skill1",
"secondActionName": "&",
"skill_info": "垃圾技能",
"skilNameImage": 0,
"skillSceneSpine": "nuqiguochang"
},
{
"id": 17,
"name": "反馈",
"hurt_formula": "ownMAtk*100%",
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 4,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3320&",
"actionName": "skill2",
"secondActionName": "&",
"skill_info": "极品技能",
"skilNameImage": 0,
"skillSceneSpine": "&"
}
{
"id": 1,
"name": "砍一刀",
"hurt_formula": " (ownAtk*2*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 2,
"strike_area": 2,
"object": 0,
"skill_class": 1,
"effect": "1&",
"actionName": "skill1",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "大伤害技能",
"skilNameImage": 0,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 2,
"name": "无双画戟",
"hurt_formula": " (ownAtk*2*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 5,
"strike_area": 2,
"object": 0,
"skill_class": 1,
"effect": "3348&",
"actionName": "skill1",
"secondActionName": "skill1_B",
"oppoSecondActionName": "&",
"skill_info": "猛击地面造成200%的范围伤害,范围内人数越多总伤害越高,同时给目标添加封怒的以及物攻下降效果,命中的目标会降低少量怒气",
"skilNameImage": 0,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 3,
"name": "温侯斩",
"hurt_formula": " (ownAtk*2*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 1,
"strike_area": 1,
"object": 0,
"skill_class": 2,
"effect": "3352&",
"actionName": "skill2",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "对敌人连续攻击两次每击造成200%的伤害",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 4,
"name": "长枪投射",
"hurt_formula": " (ownAtk*2*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 2,
"strike_area": 1,
"object": 0,
"skill_class": 1,
"effect": "3068&",
"actionName": "skill1",
"secondActionName": "&",
"oppoSecondActionName": "skill1_B",
"skill_info": "远距离投射长枪对目标造成200%的伤害目标为策略职业时伤害提升20%并且给目标添加一个策略伤害加深降低10%的效果持续4回合",
"skilNameImage": 1,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 5,
"name": "赦免",
"hurt_formula": 0,
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 5,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3072&",
"actionName": "skill2",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "回复自身10%生命值并且自身的策略伤害减免上升20%持续2回合",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 6,
"name": "连珠三箭",
"hurt_formula": " (ownAtk*1.2*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 4,
"strike_area": 1,
"object": 0,
"skill_class": 1,
"effect": "3092&",
"actionName": "skill1",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "对范围内的多个目标最多3个造成120%的伤害被攻击目标有33%的概率获得一个减益效果攻击时物理伤害加深减少25%持续4回合",
"skilNameImage": 2,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 7,
"name": "鼓舞",
"hurt_formula": 0,
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 2,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3096&",
"actionName": "skill2",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "使我方指定目标获得幸运提升20%的效果持续4回合",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 8,
"name": "猛毒迷雾",
"hurt_formula": " (ownAtk*1*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 2,
"strike_area": 4,
"object": 0,
"skill_class": 1,
"effect": "3108&",
"actionName": "skill1",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "对范围内目标进行毒雾攻击造成100%伤害附加中毒效果造成每回合25%策攻伤害持续4回合对已有中毒效果的单位立即生成一段毒伤害同时降低目标20%的敏捷持续3回合",
"skilNameImage": 3,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 9,
"name": "投毒",
"hurt_formula": " (ownAtk*1.5*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 2,
"strike_area": 1,
"object": 0,
"skill_class": 2,
"effect": "3112&",
"actionName": "skill2",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "对目标下毒造成150%伤害附加中毒效果造成每回合25%策攻伤害持续4回合对已有中毒效果的单位立即生成一段毒伤害",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 10,
"name": "巨锤震击",
"hurt_formula": " (ownAtk*2*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 3,
"strike_area": 1,
"object": 0,
"skill_class": 1,
"effect": "3116&",
"actionName": "skill1",
"secondActionName": "skill1_B",
"oppoSecondActionName": "&",
"skill_info": "造成200%物理伤害并且击退1格如果不能击退则这次攻击伤害加深提升20%",
"skilNameImage": 5,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 11,
"name": "虎痴",
"hurt_formula": 0,
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 5,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3120&",
"actionName": "skill2",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "恢复自身10%攻击力的血量并且给自身附加伤害减免10%4回合内作用2次",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 12,
"name": "薤叶芸香",
"hurt_formula": "ownAtk*1",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 4,
"strike_area": 1,
"object": 1,
"skill_class": 1,
"effect": "3364&",
"actionName": "skill1",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "不错的技能",
"skilNameImage": 0,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 13,
"name": "麻沸散",
"hurt_formula": "ownAtk*1",
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 4,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3368&",
"actionName": "skill2",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "大伤害技能",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 14,
"name": "敌阵突破",
"hurt_formula": " (ownAtk*2*ownTerAddtion/100 - oppoDef*oppoTerAddtion/100)*(1 + ownDamInc/100000 - oppoDamDec/100000)",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 3,
"strike_area": 1,
"object": 0,
"skill_class": 1,
"effect": "3084&",
"actionName": "skill1",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "向目标冲锋造成200%伤害同时会生成自身攻击30%的护盾持续4回合冲锋会位移到目标的身后",
"skilNameImage": 4,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 15,
"name": "坚壁",
"hurt_formula": 0,
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 2,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3088&",
"actionName": "skill2",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "使我方指定目标获得物理伤害减免提升20%持续2回合",
"skilNameImage": 0,
"skillSceneSpine": "&"
},
{
"id": 16,
"name": "回春",
"hurt_formula": "ownAtk*0.6",
"gain_formula": "&",
"rage_cost": 100,
"cd": 0,
"attack_area": 5,
"strike_area": 4,
"object": 1,
"skill_class": 1,
"effect": "3316&",
"actionName": "skill1",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "垃圾技能",
"skilNameImage": 0,
"skillSceneSpine": "nuqijidonghuablue"
},
{
"id": 17,
"name": "反馈",
"hurt_formula": "ownAtk*1",
"gain_formula": "&",
"rage_cost": 0,
"cd": 3,
"attack_area": 4,
"strike_area": 1,
"object": 1,
"skill_class": 2,
"effect": "3320&",
"actionName": "skill2",
"secondActionName": "&",
"oppoSecondActionName": "&",
"skill_info": "极品技能",
"skilNameImage": 0,
"skillSceneSpine": "&"
}
]

File diff suppressed because it is too large Load Diff

View File

@@ -15,7 +15,7 @@
"towerFloor": 3,
"warArray": "10003&",
"reward": "13005&1|17002&10|17006&2|17006&3",
"rewardOfcollect": "13005&1|17002&1|17006&0.01"
"rewardOfcollect": "13005&1|17002&1"
},
{
"towerFloor": 4,

View File

@@ -150,6 +150,7 @@ export default class Auth extends Service {
hid: hid,
hName: dicHero.name,
seqId,
star: dicHero.star,
lv: 1,
ce: 100
}

View File

@@ -1,6 +0,0 @@
// This file is created by egg-ts-helper@1.25.8
// Do not modify this file!!!!!!!!!
import 'egg';
export * from 'egg';
export as namespace Egg;

View File

@@ -1,21 +0,0 @@
// This file is created by egg-ts-helper@1.25.8
// Do not modify this file!!!!!!!!!
import 'egg';
type AnyClass = new (...args: any[]) => any;
type AnyFunc<T = any> = (...args: any[]) => T;
type CanExportFunc = AnyFunc<Promise<any>> | AnyFunc<IterableIterator<any>>;
type AutoInstanceType<T, U = T extends CanExportFunc ? T : T extends AnyFunc ? ReturnType<T> : T> = U extends AnyClass ? InstanceType<U> : U;
import ExportAuth from '../../../app/service/Auth';
import ExportTest from '../../../app/service/Test';
import ExportTurboCore from '../../../app/service/TurboCore';
import ExportUtils from '../../../app/service/Utils';
declare module 'egg' {
interface IService {
auth: AutoInstanceType<typeof ExportAuth>;
test: AutoInstanceType<typeof ExportTest>;
turboCore: AutoInstanceType<typeof ExportTurboCore>;
utils: AutoInstanceType<typeof ExportUtils>;
}
}

View File

@@ -1,39 +0,0 @@
// This file is created by egg-ts-helper@1.25.8
// Do not modify this file!!!!!!!!!
import 'egg';
import 'egg-onerror';
import 'egg-session';
import 'egg-i18n';
import 'egg-watcher';
import 'egg-multipart';
import 'egg-security';
import 'egg-development';
import 'egg-logrotator';
import 'egg-schedule';
import 'egg-static';
import 'egg-jsonp';
import 'egg-view';
import 'egg-view-nunjucks';
import 'egg-cors';
import 'egg-alinode';
import { EggPluginItem } from 'egg';
declare module 'egg' {
interface EggPlugin {
onerror?: EggPluginItem;
session?: EggPluginItem;
i18n?: EggPluginItem;
watcher?: EggPluginItem;
multipart?: EggPluginItem;
security?: EggPluginItem;
development?: EggPluginItem;
logrotator?: EggPluginItem;
schedule?: EggPluginItem;
static?: EggPluginItem;
jsonp?: EggPluginItem;
view?: EggPluginItem;
nunjucks?: EggPluginItem;
cors?: EggPluginItem;
alinode?: EggPluginItem;
}
}