45 lines
1.0 KiB
TypeScript
Raw Normal View History

2023-10-31 01:52:46 +08:00
import GSkillCrazySquirrel from "./RoleSkill/疯狂松鼠/GSkillCrazySquirrel";
import GSkillBulbasaurDoubleHit from "./RoleSkill/妙蛙种子/GSkillBulbasaurDoubleHit";
2023-11-01 02:01:35 +08:00
import GRoleDefault from "../base/role/GRoleDefault";
2023-12-13 19:33:57 +08:00
import { TB } from "../../config/data/schema";
2023-12-18 09:31:13 +08:00
import GSkillCDNormal from "./RoleSkill/通用技能/GSkillCDNormal";
2023-10-30 02:34:11 +08:00
//技能状态
export enum GSkillState{
NoRelease,//不可释放
Releasable,//可释放
Releasing,//释放中
}
//技能基类
export interface GSkillBase {
//设置
2023-11-06 02:25:02 +08:00
bind(role:GRoleDefault,info:TB.TbGRoleSkill):GSkillBase;
2023-10-30 02:34:11 +08:00
//是否允许释放
isRelease():boolean;
//释放技能
release():boolean;
//技能状态
state():GSkillState;
2023-10-30 18:53:21 +08:00
//技能更新
onUpdate(dt:number);
//返回进度条
getProgress():number;
2023-10-30 02:34:11 +08:00
}
//技能方式
export const GSkill:{[key:string]:(new () => GSkillBase)} = {
["GSkillCrazySquirrel"]:GSkillCrazySquirrel,
2023-10-31 01:52:46 +08:00
["GSkillBulbasaurDoubleHit"]:GSkillBulbasaurDoubleHit,
2023-12-18 09:31:13 +08:00
["GSkillCDNormal"]:GSkillCDNormal,
2023-10-30 02:34:11 +08:00
}