mirror of
https://gitee.com/jisol/jisol-game/
synced 2025-09-27 02:36:14 +00:00
提交妙蛙种子
This commit is contained in:
@@ -54,6 +54,10 @@ export default class GFSMBase{
|
||||
this.isClose = true;
|
||||
}
|
||||
|
||||
open(){
|
||||
this.isClose = false;
|
||||
}
|
||||
|
||||
//执行流程
|
||||
execute(process:GFSMProcessInfo,dt:number){
|
||||
if(!process) return;
|
||||
|
@@ -10,7 +10,6 @@ export enum GFSMBattleAminEnum {
|
||||
Walk = "walk", //移动
|
||||
Attack = "atk", //攻击
|
||||
Fly = "jifei", //击飞
|
||||
Skill = "jifei", //技能
|
||||
}
|
||||
|
||||
//动画流程信息
|
||||
|
@@ -75,6 +75,16 @@ export default abstract class GRoleBase<T> extends GObject<T>{
|
||||
this.fsmAnim.isDie = value;
|
||||
}
|
||||
|
||||
//受击回调
|
||||
hitCallbacks:Function[] = [];
|
||||
//添加受击回调
|
||||
addHitCallback(fun:Function){this.hitCallbacks.push(fun)};
|
||||
|
||||
//攻击回调
|
||||
attackCallbacks:Function[] = [];
|
||||
//添加受击回调
|
||||
addAttackCallback(fun:Function){this.attackCallbacks.push(fun)};
|
||||
|
||||
get():GRoleBase<T>{
|
||||
if(this.isDie) return null;
|
||||
return this;
|
||||
@@ -180,9 +190,11 @@ export default abstract class GRoleBase<T> extends GObject<T>{
|
||||
|
||||
//攻击
|
||||
onAttack(){
|
||||
if(!this.fsm.enemy) return;
|
||||
//敌人扣血
|
||||
let info = TableGRoleAttack.getConfig(this.role.id);
|
||||
(new GAttack[info.attackWay]()).attack(this,info);
|
||||
this.attackCallbacks.forEach(fun => fun());
|
||||
}
|
||||
|
||||
//释放技能 每一次只能释放一次
|
||||
@@ -203,6 +215,7 @@ export default abstract class GRoleBase<T> extends GObject<T>{
|
||||
onHit(){
|
||||
// return;
|
||||
this.blood -= 10;
|
||||
this.hitCallbacks.forEach(fun => fun());
|
||||
//检测是否死亡
|
||||
if(this.blood <= 0){
|
||||
//关闭状态机
|
||||
|
Reference in New Issue
Block a user