mirror of
https://github.com/unanmed/HumanBreak.git
synced 2026-11-05 03:14:31 +08:00
重构怪物属性定义
This commit is contained in:
1 parent
93fad2f637
commit
9bab089a14
18 files changed
+250
-610
No files matched your search
Vendored
+1
-79
@@ -242,7 +242,7 @@ interface BookEnemyInfo extends Enemy, EnemyInfo {
|
||||
/**
|
||||
* 怪物模块
|
||||
*/
|
||||
interface Enemys extends EnemyData {
|
||||
interface Enemys {
|
||||
/**
|
||||
* 所有的怪物信息
|
||||
*/
|
||||
@@ -250,11 +250,6 @@ interface Enemys extends EnemyData {
|
||||
[P in EnemyIds]: Enemy<P>;
|
||||
};
|
||||
|
||||
/**
|
||||
* 脚本编辑的怪物相关
|
||||
*/
|
||||
readonly enemydata: EnemyData;
|
||||
|
||||
/**
|
||||
* 获得所有怪物原始数据的一个副本
|
||||
*/
|
||||
@@ -262,51 +257,6 @@ interface Enemys extends EnemyData {
|
||||
[P in EnemyIds]: Enemy<P>;
|
||||
};
|
||||
|
||||
/**
|
||||
* 获得某种敌人的全部特殊属性名称
|
||||
* @example core.getSpecialText('greenSlime') // ['先攻', '3连击', '破甲', '反击']
|
||||
* @param enemy 敌人id或敌人对象,如core.material.enemys.greenSlime
|
||||
* @returns 字符串数组
|
||||
*/
|
||||
getSpecialText(enemy: EnemyIds | Enemy): string[];
|
||||
|
||||
/**
|
||||
* 获得所有特殊属性的颜色
|
||||
* @param enemy 敌人id或敌人对象,如core.material.enemys.greenSlime
|
||||
*/
|
||||
getSpecialColor(enemy: EnemyIds | Enemy): Color[];
|
||||
|
||||
/**
|
||||
* 获得所有特殊属性的额外标记
|
||||
* @param enemy 敌人id或敌人对象,如core.material.enemys.greenSlime
|
||||
*/
|
||||
getSpecialFlag(enemy: EnemyIds | Enemy): number[];
|
||||
|
||||
/**
|
||||
* 获得某种敌人的某种特殊属性的介绍
|
||||
* @example core.getSpecialHint('bat', 1) // '先攻:怪物首先攻击'
|
||||
* @param enemy 敌人id或敌人对象,用于确定属性的具体数值
|
||||
* @param special 属性编号,可以是该敌人没有的属性
|
||||
* @returns 属性的介绍,以属性名加中文冒号开头
|
||||
*/
|
||||
getSpecialHint(enemy: EnemyIds | Enemy, special: number): string;
|
||||
|
||||
/**
|
||||
* 获得某个敌人的某项属性值
|
||||
* @param enemy 敌人id或敌人对象
|
||||
* @param name 获取的敌人属性
|
||||
* @param x 敌人的横坐标
|
||||
* @param y 敌人的纵坐标
|
||||
* @param floorId 敌人所在楼层
|
||||
*/
|
||||
getEnemyValue<K extends keyof Enemy>(
|
||||
enemy: EnemyIds | Enemy,
|
||||
name: K,
|
||||
x?: number,
|
||||
y?: number,
|
||||
floorId?: FloorIds
|
||||
): Enemy[K];
|
||||
|
||||
/**
|
||||
* 判定主角当前能否打败某只敌人
|
||||
* @example core.canBattle('greenSlime',0,0,'MT0') // 能否打败主塔0层左上角的绿头怪(假设有)
|
||||
@@ -322,34 +272,6 @@ interface Enemys extends EnemyData {
|
||||
floorId?: FloorIds,
|
||||
dir?: Dir | 'none' | (Dir | 'none')[]
|
||||
): boolean;
|
||||
|
||||
/**
|
||||
* 获得某只敌人对主角的总伤害
|
||||
* @example core.getDamage('greenSlime',0,0,'MT0') // 绿头怪的总伤害
|
||||
* @param enemy 敌人id或敌人对象
|
||||
* @param x 敌人的横坐标
|
||||
* @param y 敌人的纵坐标
|
||||
* @param floorId 敌人所在的地图
|
||||
* @returns 总伤害,如果因为没有破防或无敌怪等其他原因无法战斗,则返回null
|
||||
*/
|
||||
getDamage(
|
||||
enemy: EnemyIds | Enemy,
|
||||
x?: number,
|
||||
y?: number,
|
||||
floorId?: FloorIds
|
||||
): number;
|
||||
|
||||
/**
|
||||
* 检查某些楼层是否还有漏打的(某种)敌人
|
||||
* @example core.hasEnemyLeft('greenSlime', ['sample0', 'sample1']) // 样板0层和1层是否有漏打的绿头怪
|
||||
* @param enemyId 敌人id,可选,默认为任意敌人
|
||||
* @param floorId 地图id或其数组,可选,默认为当前地图
|
||||
* @returns true表示有敌人被漏打,false表示敌人已死光
|
||||
*/
|
||||
hasEnemyLeft(
|
||||
enemyId?: EnemyIds | EnemyIds[],
|
||||
floorId?: FloorIds | FloorIds[]
|
||||
): boolean;
|
||||
}
|
||||
|
||||
declare const enemys: new () => Enemys;
|
||||
Vendored
-24
@@ -52,25 +52,6 @@ interface ControlData {
|
||||
parallelDo(time: number): void;
|
||||
}
|
||||
|
||||
interface EnemyData {
|
||||
/**
|
||||
* 获得所有特殊属性定义
|
||||
*/
|
||||
getSpecials(): EnemySpecialDeclaration[];
|
||||
|
||||
/**
|
||||
* 判定某种特殊属性的有无
|
||||
* @example core.hasSpecial('greenSlime', 1) // 判定绿头怪有无先攻属性
|
||||
* @param special 敌人id或敌人对象或正整数数组或自然数
|
||||
* @param test 待检查的属性编号
|
||||
* @returns 若special为数组或数且含有test或相等、或special为敌人id或对象且具有此属性,则返回true
|
||||
*/
|
||||
hasSpecial(
|
||||
special: number | number[] | EnemyIds | Enemy,
|
||||
test: number
|
||||
): boolean;
|
||||
}
|
||||
|
||||
interface UiData {
|
||||
/**
|
||||
* 数据统计界面统计的道具数量
|
||||
@@ -184,11 +165,6 @@ interface FunctionsData {
|
||||
*/
|
||||
control: ControlData;
|
||||
|
||||
/**
|
||||
* 怪物信息
|
||||
*/
|
||||
enemys: EnemyData;
|
||||
|
||||
/**
|
||||
* ui信息
|
||||
*/
|
||||
|
||||
Reference in new issue
Block a user