Example #1
0
    public override void _Ready()
    {
        GD.Randomize();

        stats = GetNode <Stats>("Stats");
        stats.OnZeroHealth += Death;

        hurtbox = GetNode <Hurtbox>("Hurtbox");
        hurtbox.OnInvincibilityEnded   += BlinkStop;
        hurtbox.OnInvincibilityStarted += BlinkStart;

        playerZone = GetNode <PlayerDetection>("PlayerDetection");
        batSprite  = GetNode <AnimatedSprite>("AnimatedSprite");

        softCollision = GetNode <SoftCollision>("SoftCollision");

        wanderController = GetNode <WanderController>("WanderController");

        rng = new RandomNumberGenerator();

        stateArray = new List <AIState> {
            AIState.IDLE, AIState.WANDER
        };

        state = PickRandomState(stateArray);

        animPlayer = GetNode <AnimationPlayer>("AnimationPlayer");
    }
Example #2
0
 public override void _Ready()
 {
     _stats               = GetNode <Stats>("Stats");
     _hurtBox             = GetNode <HurtBox>("HurtBox");
     _playerDetectionZone = GetNode <PlayerDetectionZone>("PlayerDetectionZone");
     _animatedSprite      = GetNode <AnimatedSprite>("AnimatedSprite");
     _softCollision       = GetNode <SoftCollision>("SoftCollision");
     _wanderController    = GetNode <WanderController>("WanderController");
 }
Example #3
0
 public override void _Ready()
 {
     stats = (Stats)GetNode("Stats");
     playerDetectionZone = (PlayerDetectionZone)GetNode("PlayerDetectionZone");
     animationPlayer     = (AnimationPlayer)GetNode("AnimationPlayer");
     batSprite           = (AnimatedSprite)GetNode("AnimatedSprite");
     softCollision       = (SoftCollision)GetNode("SoftCollision");
     wanderController    = (WanderController)GetNode("WanderController");
     state = pickRandomState(new Global.BehaviorState[] { Global.BehaviorState.STATE_IDLE, Global.BehaviorState.STATE_WANDER });
 }
Example #4
0
    public override void _Ready()
    {
        stats = GetNode <Stats>("Stats");
        playerDetectionZone  = GetNode <PlayerDetectionZone>("PlayerDetectionZone");
        animatedSprite       = GetNode <AnimatedSprite>("BatAnimatedSprite");
        hurtbox              = GetNode <Hurtbox>("Hurtbox");
        softCollision        = GetNode <SoftCollision>("SoftCollision");
        wanderController     = GetNode <WanderController>("WanderController");
        blinkAnimationPlayer = GetNode <AnimationPlayer>("BlinkAnimationPlayer");
        packedBatDeathEffect = GD.Load <PackedScene>("res://Effects/EnemyDeathEffect.tscn");
        rng.Randomize();
        state = pickRandomState(randomStates);

        healthBar = GetNode <Healthbar>("Healthbar");
        healthBar.setMaxHealth(stats.getMaxHealth());
        healthBar.setHealth(stats.getCurrentHealth());
    }