hero 升级
This commit is contained in:
@@ -11,21 +11,21 @@ export enum UIID {
|
||||
/** 资源加载界面 */
|
||||
Loading = 1,
|
||||
/** 弹窗界面 */
|
||||
Window,
|
||||
// Window,
|
||||
/** 加载与延时提示界面 */
|
||||
Netinstable,
|
||||
/** 角色控制 */
|
||||
Role_Controller,
|
||||
// /** 提示窗 */
|
||||
// Toast,
|
||||
HeroInfo,
|
||||
Shop_page,
|
||||
Hero_page,
|
||||
}
|
||||
|
||||
/** 打开界面方式的配置数据 */
|
||||
export var UIConfigData: { [key: number]: UIConfig } = {
|
||||
[UIID.Loading]: { layer: LayerType.UI, prefab: "loading/prefab/loading", bundle: "resources" },
|
||||
[UIID.Netinstable]: { layer: LayerType.PopUp, prefab: "common/prefab/netinstable" },
|
||||
[UIID.Window]: { layer: LayerType.Dialog, prefab: "common/prefab/window" },
|
||||
// [UIID.Window]: { layer: LayerType.Dialog, prefab: "common/prefab/window" },
|
||||
[UIID.Role_Controller]: { layer: LayerType.UI, prefab: "gui/role_controller" },
|
||||
[UIID.HeroInfo]: { layer: LayerType.UI, prefab: "gui/Hinfo" },
|
||||
// [UIID.Toast]: { layer: LayerType.PopUp, prefab: "common/prefab/toast" },
|
||||
|
||||
@@ -359,3 +359,76 @@ export const getMultipleHeroStatsByLevel = (
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// 升级资源配置
|
||||
export const UpgradeResourceConfig = {
|
||||
// 经验值配置
|
||||
experience: {
|
||||
base: 100, // 初始值:1级升2级所需经验
|
||||
growth: 1.5, // 增长值:每级增长倍数
|
||||
bonus: 0.2 // 增长值提升比例:5级倍数提升20%
|
||||
},
|
||||
|
||||
// 金币配置
|
||||
gold: {
|
||||
base: 50, // 初始值:1级升2级所需金币
|
||||
growth: 1.3, // 增长值:每级增长倍数
|
||||
bonus: 0.15 // 增长值提升比例:5级倍数提升15%
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取指定等级升级所需的经验值
|
||||
* @param level 当前等级
|
||||
* @returns 升级所需经验值
|
||||
*/
|
||||
export const getUpgradeExperience = (level: number): number => {
|
||||
if (level <= 0) return 0;
|
||||
|
||||
const config = UpgradeResourceConfig.experience;
|
||||
let result = config.base * Math.pow(config.growth, level - 1);
|
||||
|
||||
// 5级倍数提升
|
||||
if (level % 5 === 0) {
|
||||
result = result * (1 + config.bonus);
|
||||
}
|
||||
|
||||
return Math.floor(result);
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取指定等级升级所需的金币
|
||||
* @param level 当前等级
|
||||
* @returns 升级所需金币
|
||||
*/
|
||||
export const getUpgradeGold = (level: number): number => {
|
||||
if (level <= 0) return 0;
|
||||
|
||||
const config = UpgradeResourceConfig.gold;
|
||||
let result = config.base * Math.pow(config.growth, level - 1);
|
||||
|
||||
// 5级倍数提升
|
||||
if (level % 5 === 0) {
|
||||
result = result * (1 + config.bonus);
|
||||
}
|
||||
|
||||
return Math.floor(result);
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取指定等级升级所需的所有资源
|
||||
* @param level 当前等级
|
||||
* @returns 升级资源信息 {experience, gold}
|
||||
*/
|
||||
export const getUpgradeResources = (level: number) => {
|
||||
return {
|
||||
experience: getUpgradeExperience(level),
|
||||
gold: getUpgradeGold(level)
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user