import { _decorator, Component, Node, Vec3 } from 'cc';
import { Role } from '../Role';
import { LevelData, RoleData } from '../../../DataItem/ItemData';
import { LifeBar } from './LifeBar';
const { ccclass, property } = _decorator;

@ccclass('Enemy')
export class Enemy extends Role {
    private _lifeBar: LifeBar = null;
    private _roles: Node = null;
    protected onLoad(): void {
        this._lifeBar = this.node.getComponent(LifeBar);
        this._roles = this.node.parent.parent.getChildByPath("Road/Roles");
    }
    init(name: string, pos: Vec3, data: RoleData[], dir?: number) {
        super.init(name, pos, data, dir);
        this._initLifeBar();
    }

    //初始化血条
    private _initLifeBar(){
        this._lifeBar._curHp = this.hp;
        this._lifeBar._totalHp = this.hp;
    }
    update(deltaTime: number) {
        if (!this.isStop) {
            this.move(deltaTime)
        }
        this.stop();
        if(!this.isAttacking){
            super.getEnemiesAhead(this._roles);
        }
    }

    stop(): void {
        if (this.node.getWorldPosition().x <= 200) {
            this.isStop = true;
        }
    }
}


