示例#1
0
    private void Start()
    {
        //get interfaces
        _vision               = GetComponent <IVision>();
        _health               = GetComponent <IHealth>();
        _sfxController        = GetComponent <ISfxController>();
        _pathFinding          = GetComponent <IPathFinding>();
        _movement             = GetComponent <IMovement>();
        _rotation             = GetComponent <IRotation>();
        _damageDisplayManager = GetComponent <IDamageDisplayManager>();

        //get the animator
        if (animator == null)
        {
            animator = GetComponent <Animator>();
        }

        //initial properties
        _lastSeenPlayerPos = new Vector3();

        //initial
        _isAgro              = false;
        _hasLastPlayerPos    = false;
        _isAttacking         = false;
        _isAttackCoolingDown = false;
        invisible            = false;

        //register event listener
        EventSystem.Current.RegisterEventListener <BulletHitCtx>(OnBulletHit);
    }
示例#2
0
    private void Start()
    {
        //get the animator
        animator = GetComponent <Animator>();

        //get interfaces
        _vision        = GetComponent <IVision>();
        _health        = GetComponent <IHealth>();
        _sfxController = GetComponent <ISfxController>();
        _pathFinding   = GetComponent <IPathFinding>();
        _movement      = GetComponent <IMovement>();
        _rotation      = GetComponent <IRotation>();
        _simpleDamageDisplayManager = GetComponent <IDamageDisplayManager>();

        //initial properties
        _normalSpeed = _movement.GetSpeed();

        //initial states
        _isAgro              = false;
        _isAttacking         = false;
        _isAttackCoolingDown = false;
        invisible            = false;

        //register event listener
        EventSystem.Current.RegisterEventListener <BulletHitCtx>(OnBulletHit);
    }