Files
ZYZ/shared/consts/consts.ts
2020-12-26 12:15:40 +08:00

419 lines
13 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
export const TURBO_CORE_URL = 'https://coresrv.tgamebox.cn';
export const APP_ID = 'AXaXmIHPs9eONvzrBesD8aSKQNXYdALF';
export const TURBO_PARM_SECRET = 'ipqw05du6ob4x130w89t31yrqd6xs005zzltcmg2zpqnvrjp1s';
export const ENCRYPT_IV = 'f7182j5f04e377ux';
export const ENCRYPT_KEY = 'fiqaxijabbantusmprc234fj';
export const AUTH_SMS_CNT_PER_DAY = 8;
export const COUNTER = {
UID: {name:'uid',def:1},
GMUID: {name:'gmuid',def:1},
API: {name:'api',def:1},
GM_GROUP: {name:'gmgroup',def:1},
HID: {name:'hid',def:10000},
EID: {name:'eid',def:1},
ROLE: {name:'role',def:1}
};
export const ACTION_POIN = {
MAX: 100000,
PER: 6 * 60 * 1000
};
//武将养成系统分类
export const HERO_SYSTEM_TYPE = {
STAR: 1,
TRAIN: 5,
STAGEUP:6,
SKIN:7,
FAVOUR:8,
CONNECT:9
};
export const BATTLE_REWARD_TYPE = {
FIX_REWARD: 1,
CONDITION_REWARD: 2,
RANDOM_REWARD: 3
};
export const IT_TYPE = {
BLUEPRT: 28
}
export const GOOD_QUALITY = [1, 2, 3, 4, 5];
// 大类型,区分存到哪张表里
export const GOOD_TYPE = {
EQUIP: 1,
CONSUMES: 2,
SCRIPT: 3
};
// 存到消耗品表内显示的类型
export const CONSUME_TYPE = {
CONSUME: 1, // 消耗品
SOUL: 2, // 将魂
BLUEPRT: 3, // 藏宝图
POINT: 4, // 远征币等
EXP: 5, // 经验书
FAVOUR: 6, // 好感度道具
SKIN: 7, // 好感度道具
PIECE: 8, // 装备碎片
JEWEL: 9,//宝石
};
const itid_array = [
{ id: 1, name: '剑', goodType: GOOD_TYPE.EQUIP },
{ id: 2, name: '枪', goodType: GOOD_TYPE.EQUIP },
{ id: 3, name: '刀', goodType: GOOD_TYPE.EQUIP },
{ id: 4, name: '弓', goodType: GOOD_TYPE.EQUIP },
{ id: 5, name: '拳', goodType: GOOD_TYPE.EQUIP },
{ id: 6, name: '扇', goodType: GOOD_TYPE.EQUIP },
{ id: 7, name: '宝剑', goodType: GOOD_TYPE.EQUIP },
{ id: 8, name: '权杖', goodType: GOOD_TYPE.EQUIP },
{ id: 9, name: '头盔', goodType: GOOD_TYPE.EQUIP },
{ id: 10, name: '帽子', goodType: GOOD_TYPE.EQUIP },
{ id: 11, name: '头巾', goodType: GOOD_TYPE.EQUIP },
{ id: 12, name: '铠甲(衣)', goodType: GOOD_TYPE.EQUIP },
{ id: 13, name: '战袍(衣)', goodType: GOOD_TYPE.EQUIP },
{ id: 14, name: '法衣(衣)', goodType: GOOD_TYPE.EQUIP },
{ id: 15, name: '铠甲(裤)', goodType: GOOD_TYPE.EQUIP },
{ id: 16, name: '战袍(裤)', goodType: GOOD_TYPE.EQUIP },
{ id: 17, name: '法衣(裤)', goodType: GOOD_TYPE.EQUIP },
{ id: 18, name: '重靴', goodType: GOOD_TYPE.EQUIP },
{ id: 19, name: '战靴', goodType: GOOD_TYPE.EQUIP },
{ id: 20, name: '布鞋', goodType: GOOD_TYPE.EQUIP },
{ id: 21, name: '饰品', goodType: GOOD_TYPE.EQUIP },
{ id: 22, name: '消耗类物品(图纸类)', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.CONSUME },
{ id: 35, name: '消耗类物品(经验书)', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.EXP },
{ id: 36, name: '消耗类物品(好感道具)', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.FAVOUR },
{ id: 23, name: '消耗类物品(材料类)', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.CONSUME },
{ id: 24, name: '消耗类物品(宝箱类)', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.CONSUME },
{ id: 26, name: '武将碎片', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.SOUL },
{ id: 27, name: '货币', goodType: GOOD_TYPE.CONSUMES, isCurrency: true },
{ id: 28, name: '藏宝图', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.BLUEPRT },
{ id: 29, name: '礼器', goodType: GOOD_TYPE.EQUIP },
{ id: 30, name: '宝甲', goodType: GOOD_TYPE.EQUIP },
{ id: 31, name: '名驹', goodType: GOOD_TYPE.EQUIP },
{ id: 32, name: '典籍', goodType: GOOD_TYPE.EQUIP },
{ id: 33, name: '神兵', goodType: GOOD_TYPE.EQUIP },
{ id: 34, name: '代币', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.POINT },
{ id: 39, name: '时装', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.SKIN },
{ id: 41, name: '装备碎片', goodType: GOOD_TYPE.CONSUMES, type: CONSUME_TYPE.PIECE }
];
export const ITID = new Map<number, {id: number, name: string, goodType: number, type?: number, isCurrency?: boolean}>();
for(let obj of itid_array) {
ITID.set(obj.id, obj);
}
export const CURRENCY_TYPE = {
GOLD: "gold",
COIN: "coin",
ACTION_POINT: "ap",
TREASURE_POINT: "treasurePoint",
EXPEDITION_POINT: "expeditionPoint",
DUNGEON_POINT: "dungeonPoint",
FRIEND_POINT: "friendPoint"
}
const currencyArr = [
{ "gid": 31001, "name": "铜钱", "type": CURRENCY_TYPE.COIN },
{ "gid": 31002, "name": "元宝", "type": CURRENCY_TYPE.GOLD },
{ "gid": 31003, "name": "体力", "type": CURRENCY_TYPE.ACTION_POINT },
{ "gid": 40001, "name": "远征币", "type": CURRENCY_TYPE.EXPEDITION_POINT },
{ "gid": 40002, "name": "寻宝币", "type": CURRENCY_TYPE.TREASURE_POINT },
{ "gid": 40003, "name": "情谊点", "type": CURRENCY_TYPE.FRIEND_POINT },
{ "gid": 40004, "name": "秘境币", "type": CURRENCY_TYPE.DUNGEON_POINT },
];
export const CURRENCY = new Map<number, {gid: number, name: string, type: string}>();
export const CURRENCY_BY_TYPE = new Map<string, number>();
for(let obj of currencyArr) {
CURRENCY.set(obj.gid, obj);
CURRENCY_BY_TYPE.set(obj.type, obj.gid);
}
export function getCurNameById(gid) {
let currency = CURRENCY.get(gid);
if (!currency) {
return;
}
if (currency.type == CURRENCY_TYPE.COIN) {
return 'coin';
} else if (currency.type == CURRENCY_TYPE.GOLD) {
return 'gold';
} else if (currency.type == CURRENCY_TYPE.ACTION_POINT) {
return 'ap';
} else if (currency.type == CURRENCY_TYPE.FRIEND_POINT) {
return 'frdCnt';
} else if (currency.type == CURRENCY_TYPE.EXPEDITION_POINT) {
return 'expeditionPoint';
}
}
export const WAR_TYPE = {
NORMAL: 1, // 主线本
VESTIGE: 2, // 遗迹本
EVENT: 3, // 事件本
DAILY: 4, // 每日
EXPEDITION: 5, // 远征
MYSTERY: 6, // 秘境
WARLOARDS: 7, // 群雄
TOWER: 8, // 天梯
PVP: 9, // PVP
GUILD_TIMER: 10, // 军团定时副本
GUILD_WEEKLY: 11, // 军团周副本
MAIN_ELITE: 12, // 主线精英
MYSTERY_ELITE: 13 // 秘境精英
};
// 藏宝图掉落参数
export const BLUEPRT_CONST = {
REFRESH_TIME: 5, // 每天几点刷新
DAILY_CNT: 5, // 每天最多掉落多少张
PER_AP: 15 // 每多少体力掉落1张藏宝图
};
// 事件,是否开启保存随机记录方式
export const EVENT_RANDOM_TYPE_ONE_OPEN = false;
// 奇遇事件每次刷新几个
export const EVENT_REFRESH_NUM = 3;
// 奇遇事件开启等级
export const EVENT_START_LV = 1;
// 存于用户Role表事件开启状态
export const EVENT_STATUS = {
WAITING: 0, // 未开启
STARTING: 1, // 初步触发,等到挑战完成
OPEN: 2 // 开启
};
// 奇遇事件状态
export const EVENT_RECORD_STATUS = {
WAITING: 0, // 初始状态
BATTLE_SUCCESS: 1, // 挑战成功,待领取成功奖励
BATTLE_FAIL: 2, // 挑战失败,可领取失败奖励
SUCCESS_RECEIVED: 3, // 领取成功奖励
FAIL_RECEIVED: 4 // 领取了失败奖励
};
// 奇遇事件类型
export const EVENT_TYPE = {
BOX: 1, // 宝箱
QUIZ: 2, // 答题
BATTLE: 3 // 战斗
};
export const EVENT_ANSWER_STATUS = {
WAITING: 0,
CORRECT: 1,
WRONG: 2
};
export const EXPEDITION_WAR_RECORD_STATUS = {
HIDE: -1,
WAITING: 0,
SUCCESS: 1,
FAIL: 2
};
export const EVENT_START_BATTLE = 101;
export const HANG_UP_CONSTS = {
ENABLE_LV: 2, // 第几层开始可以挂机
UNIT_TIME: 10 * 60 * 1000, // 每几分钟能有一次收益
MAX_TIME: 24 * 60 * 60 * 1000, // 最多可储存24小时收益
MAX_SPD_UP_CNT: 2, // 每天可以收取多少次
REFRESH_TIME: 5, // 每天的几点刷新
SPD_UP_REC_TIME: 6 * 60 * 60 * 1000 // 加速直接获得6小时收益
}
export const TOWER_TASK_CONST = {
REFRESH_TIME: 5, // 每天几点刷新
RAND_CNT: 8, // 每次刷新多少个任务
MAX_TASK_REF_CNT: 8, // 完成的派遣任务数最多多少个
MAX_HEROES_NUM: 3, // 每个任务最大派遣武将数
COST_GOLD: 50 // 每次刷新花费的元宝
}
export const DAILY_CONST = {
REFRESH_TIME: 5 // 每天加点刷新
}
export const DUNGEON_CONST = {
REFRESH_TIME: 5, // 每天加点刷新
MAX_CNT: 10, // 最大挑战次数
MAX_BUY_CNT: 10 // 最大购买次数
}
export const EXPEDITION_CONST = {
REFRESH_TIME: 5, // 重置次数刷新时间
INCREASE_POINT: 1, // 远征每成功一次累计的点数
RESET_CNT: 1 // 可以免费重置的次数
}
export const EVENT_QUIZ_NUM = 3;
export const DEFAULT_HEROES = [12, 14, 11, 9, 15];
export const FIX_SMS_CODE_TELS = ['18855953630', '13911134885', '15167549151', '15618654010', '15167549151', '18342915387'];
export const GONGSHI = {
"TOWER_HANG_UP_SPEED_COST": "50",
"TOWER_TASK_REF_COST": "200",
"DAILY_REFRESH_NUM_COST": "50*num"
};
/**
* 计算元宝和次数相关的系数
* 公式: A * num + B
*/
export const GOLD_COST_RATIO = {
"TOWER_HANG_SPDUP": { "A": 0, "B": 50 }, // 天梯挂机加速花费
"TOWER_TASK_REF": { "A": 0, "B": 50 }, // 天梯派遣刷新花费
"DAILY_REF_NUM": { "A": 50, "B": 0 }, // 每日购买次数花费
"DUNGRON_BUY_NUM": { "A": 0, "B": 50 } // 秘境购买次数花费
}
export const EXPRESSION = {
"CE": "1*hp+2*atk+2*matk+2*def+2*mdef+2*agi+2*luk+0*hit+0*cri+0*flee+0*antCri+0*damageIncrease+0*damageDecrease+0*defIngnore+0*bloodSuck"
}
// 寻宝(共斗)相关
export const COM_TEAM_STATUS = {
DEFAULT: 0,
FIGHTING: 1,
WIN: 2,
LOOSE: 3
}
// 寻宝配置常量
export const COM_BTL_CONST = {
ENABLE_LV: 1, // 功能开启等级
ASSIST_DROP_RATE: 0.5, // 助战掉落占队长掉落的比例
BLUEPRT_DROP_PER_AP: 10, // 藏宝图伪随机所需体力
BTL_TIME_LMT: 10 * 60 * 1000, // 每局时长限制
ROBOT_HURT_RAND_RATE: 0.05, // 每个机器人消耗 boss 血量百分比浮动范围
FRDCNT_DROP: 10, // 每场情谊点掉落
ROBOT_CE_RATIO: 0.2, // 机器人战力上下浮动百分比
ASSIST_TIME: 60 * 1000, // 助战匹配机器人的等待时长
CAP_TIME: 60 * 1000, // 队长匹配机器人的等待时长
CAP_START_TIME: 60 * 1000, // 人齐后队长开始时长倒计时
ROBOT_RND_LMT: 10, // 机器人输出伤害的回合数
ROBOT_HURT_RATIO: 0.2, // 单个机器人输出总伤害占 boss 血量比重
ROBOT_HURT_CH_RATIO: 0.1, // 机器人伤害上下浮动的比例
ASSIST_REWARD_RATIO: 0.5, // 队员奖励比例
}
// 机器人名字随机
export const COM_BATTLE_ROBOT_ID_NAME = [
{robotRoleId: 'cd9h0iy8', robotRoleName: '徐埋农'},
{robotRoleId: 'rtdgr4oz', robotRoleName: '简普瞳'},
{robotRoleId: 'rv96unin', robotRoleName: '邛瑛'},
{robotRoleId: 'b33u625l', robotRoleName: '嵇晁伊'},
{robotRoleId: 'l6wopj9p', robotRoleName: '颜校'},
{robotRoleId: '6wdqcumj', robotRoleName: '吉辉娇'}
];
export const REDIS_KEY = {
USER_INFO: "userInfo", // 玩家缓存信息
TOWER_RANK: "towerRank", // 天梯排行榜
COM_TEAM_SEARCH_PRE: 'comTeamSerQ', // 匹配中的玩家,按品质分
}
export const FUNC_OPT_TYPE = {
LEVEL_UP: 1,
BATTLE_END: 2
}
export const FUNCS_ID = {
EVENT: 1
}
export const FRIEND_DROP_TYPE = {
COM_BATTLE: 1
}
// 每日情谊点上限
export const FRIEND_DROP_MAX = {
COM_BTL: 150
}
// 武将上限
export const HERO_GROW_MAX = {
STAR: 6,
COLORSTAR: 6,
QUALITY: 3
}
export const JOB_TYPE = {
PHYSIC: 1,
MAGIC: 2
}
export const TERAPH_RANDOM = {
MIN: 2,
MAX: 4
}
export const SPECIAL_ATTR = {
WAR_ID: 1,
TREASURE_ID: 2,
TREASURE_TYPE: 3
}
export const FILENAME = {
DIC_BLUEPRT_COMPOSE: 'dic_blueprt_compose',
DIC_BLUEPRT_POSSIBILITY: 'dic_blueprt_possibility',
DIC_EXPEDITION: 'dic_expedition',
DIC_EXPEDITION_POINT: 'dic_expedition_point',
DIC_FUNC_SWITCH: 'dic_func_switch',
DIC_GOODS: 'dic_goods',
DIC_CHAREXP: 'dic_zyz_charexp',
DIC_DAILY: 'dic_zyz_daily',
DIC_EVENT: 'dic_zyz_event',
DIC_FASHIONS: 'dic_zyz_fashions',
DIC_FRIEND_SHIP: 'dic_zyz_friend_ship',
DIC_FRIEND_SHIP_LEVEL: 'dic_zyz_friend_ship_level',
DIC_GACHA: 'dic_gacha',
DIC_GK_BRANCH: 'dic_zyz_gk_branch',
DIC_GK_DAILY: 'dic_zyz_gk_daily',
DIC_GK_DUNGEON: 'dic_zyz_gk_dungeon',
DIC_GK_DUNGEON_ELITE: 'dic_zyz_gk_dungeonElite',
DIC_GK_EVENT: 'dic_zyz_gk_event',
DIC_GK_EXPEDITION: 'dic_zyz_gk_expedition',
DIC_GK_MAIN: 'dic_zyz_gk_main',
DIC_GK_MAIN_ELITE: 'dic_zyz_gk_mainElite',
DIC_GK_TOWER: 'dic_zyz_gk_tower',
DIC_GK_TREASURE: 'dic_zyz_gk_Treasure',
DIC_HERO: 'dic_zyz_hero',
DIC_HERO_QUALITY_UP: 'dic_zyz_hero_quality_up',
DIC_HERO_STAR: 'dic_zyz_hero_star',
DIC_HERO_WAKE: 'dic_zyz_hero_wake',
DIC_HERO_SKILL: 'dic_zyz_heroskill',
DIC_JOB: 'dic_zyz_job',
DIC_KING_EXP: 'dic_zyz_kingexp',
DIC_CHAR_EXP: 'dic_zyz_charexp',
DIC_SE: 'dic_zyz_se',
DIC_TOWER_TASK: 'dic_zyz_search',
DIC_TOWER: 'dic_zyz_tower',
DIC_XUNBAO: 'dic_zyz_xunbao',
DIC_QUESTION: 'Questions',
}
export const WAR_RELATE_TABLES = [
FILENAME.DIC_GK_BRANCH,
FILENAME.DIC_GK_DAILY,
FILENAME.DIC_GK_DUNGEON,
FILENAME.DIC_GK_DUNGEON_ELITE,
FILENAME.DIC_GK_EVENT,
FILENAME.DIC_GK_EXPEDITION,
FILENAME.DIC_GK_MAIN,
FILENAME.DIC_GK_MAIN_ELITE,
FILENAME.DIC_GK_TOWER,
FILENAME.DIC_GK_TREASURE
]