Пример #1
0
    public override void Move(MovementKM movement)
    {
        movement.MoveX(_moveSpeed * movement.FacingDirection, true);
        Vector3 newPosition = transform.right * _moveSpeed * Time.deltaTime;

        transform.position += newPosition;
    }
Пример #2
0
    public FlyerReturningState(FlyerFSM stateMachine, Flyer flyer)
    {
        _stateMachine = stateMachine;
        _flyer        = flyer;

        _movement = flyer.Movement;
    }
    public PlayerWallAttackState(PlayerFSM stateMachine, Player player)
    {
        _stateMachine = stateMachine;
        _player       = player;

        _movement     = player.Movement;
        _weaponSystem = player.WeaponSystem;
    }
    public PlayerLedgeClimbState(PlayerFSM stateMachine, Player player)
    {
        _stateMachine = stateMachine;

        _movement = player.Movement;
        _data     = player.Data;
        _sfx      = player.SFX;
    }
Пример #5
0
    public FlyerChasingState(FlyerFSM stateMachine, Flyer flyer)
    {
        _stateMachine = stateMachine;
        _flyer        = flyer;

        _playerInRange = flyer.PlayerDetector.PlayerInRange;
        _movement      = flyer.Movement;
    }
    private void OnTriggerExit2D(Collider2D collision)
    {
        MovementKM movement = collision.gameObject.GetComponent <MovementKM>();

        if (movement != null)
        {
            _passengers.Remove(movement);
        }
    }
    public Patroller_SearchState(PatrollerFSM stateMachine, Patroller patroller)
    {
        _stateMachine = stateMachine;
        _patroller    = patroller;
        _data         = patroller.Data;

        _movement  = patroller.Movement;
        _playerLOS = patroller.PlayerDetector.PlayerLOS;
    }
Пример #8
0
    private void OnCollisionEnter2D(Collision2D collision)
    {
        _otherOverlappedMover = collision.rigidbody.GetComponent <MovementKM>();

        if (_otherOverlappedMover != null)
        {
            _otherOverlappedMover.MoveOutOfCollider(collision.otherCollider);
        }
    }
    public Patroller_HitState(PatrollerFSM stateMachine, Patroller patroller)
    {
        _stateMachine = stateMachine;
        _patroller    = patroller;

        _movement   = patroller.Movement;
        _playerLOS  = patroller.PlayerDetector.PlayerLOS;
        _receiveHit = patroller.ReceiveHit;
    }
Пример #10
0
    public PlayerMoveState(PlayerFSM stateMachine, Player player) : base(stateMachine, player)
    {
        _stateMachine = stateMachine;

        _movement = player.Movement;
        _data     = player.Data;
        _input    = player.Input;
        _animator = player.PlayerAnimator;
    }
Пример #11
0
    public override void TriggerEntered(Collider2D otherCollider)
    {
        MovementKM movement = otherCollider.GetComponent <MovementKM>();

        if (movement != null)
        {
            _passengers.Add(movement);
        }
    }
Пример #12
0
    public override void TriggerEntered(Collider2D otherCollider)
    {
        // if it's the player, do player specific things
        MovementKM movement = otherCollider.gameObject.GetComponent <MovementKM>();

        if (movement != null)
        {
            movement.Push(transform.up, _bounceAmount, _bounceDuration);
        }
    }
Пример #13
0
    public CrawlerMoveState(CrawlerFSM stateMachine, Crawler crawler)
    {
        _stateMachine = stateMachine;
        _crawler      = crawler;

        _kinematicObject       = crawler.Movement;
        _wallDetector          = crawler.EnvironmentDetector.WallDetector;
        _groundDetector        = crawler.EnvironmentDetector.GroundDetector;
        _groundInFrontDetector = crawler.EnvironmentDetector.GroundInFrontDetector;
    }
Пример #14
0
    public PlayerBounceAttackState(PlayerFSM stateMachine, Player player)
    {
        _stateMachine = stateMachine;
        _animator     = player.PlayerAnimator;

        _movement     = player.Movement;
        _data         = player.Data;
        _weaponSystem = player.WeaponSystem;
        _input        = player.Input;
    }
    public Patroller_AttackState(PatrollerFSM stateMachine, Patroller patroller)
    {
        _stateMachine = stateMachine;
        _patroller    = patroller;
        _data         = patroller.Data;

        _movement        = patroller.Movement;
        _playerLOS       = patroller.PlayerDetector.PlayerLOS;
        _hitVolume       = patroller.HitVolume;
        _detectedGraphic = patroller.DetectedGraphic;
    }
Пример #16
0
    public PlayerWallGrab(PlayerFSM stateMachine, Player player) : base(stateMachine, player)
    {
        _stateMachine = stateMachine;
        _player       = player;
        _animator     = player.PlayerAnimator;

        _movement = player.Movement;
        _input    = player.Input;
        _data     = player.Data;
        _sfx      = player.SFX;
    }
Пример #17
0
    public PlayerWallClimbState(PlayerFSM stateMachine, Player player) : base(stateMachine, player)
    {
        _stateMachine = stateMachine;
        _player       = player;

        _movement          = player.Movement;
        _data              = player.Data;
        _input             = player.Input;
        _aboveWallDetector = player.EnvironmentDetector.AboveWallDetector;
        _wallDetector      = player.EnvironmentDetector.WallDetector;
    }
Пример #18
0
    public PlayerCrouchState(PlayerFSM stateMachine, Player player) : base(stateMachine, player)
    {
        _stateMachine = stateMachine;
        _player       = player;

        _movement        = player.Movement;
        _input           = player.Input;
        _data            = player.Data;
        _playerAnimator  = player.PlayerAnimator;
        _ceilingDetector = player.EnvironmentDetector.CeilingDetector;
    }
Пример #19
0
    public PlayerWallSlideState(PlayerFSM stateMachine, Player player) : base(stateMachine, player)
    {
        _stateMachine = stateMachine;
        _player       = player;
        _animator     = player.PlayerAnimator;

        _movement = player.Movement;
        _data     = player.Data;
        _input    = player.Input;
        _jumpDust = player.Visuals.JumpDust;
    }
Пример #20
0
    protected override void TriggerExited(Collider2D otherCollider)
    {
        base.TriggerExited(otherCollider);

        MovementKM movement = otherCollider.GetComponent <MovementKM>();

        if (movement != null)
        {
            _passengers.Remove(movement);
        }
    }
Пример #21
0
    public PlayerWallSuperState(PlayerFSM stateMachine, Player player)
    {
        _stateMachine = stateMachine;
        _player       = player;

        _data           = player.Data;
        _movement       = player.Movement;
        _input          = player.Input;
        _groundDetector = player.EnvironmentDetector.GroundDetector;
        _wallDetector   = player.EnvironmentDetector.WallDetector;
        _dashSystem     = player.DashSystem;
    }
Пример #22
0
    public Patroller_MoveState(PatrollerFSM stateMachine, Patroller patroller)
    {
        _stateMachine = stateMachine;
        _patroller    = patroller;
        _data         = patroller.Data;

        _movement              = patroller.Movement;
        _playerLOS             = patroller.PlayerDetector.PlayerLOS;
        _wallDetector          = patroller.EnvironmentDetector.WallDetector;
        _groundDetector        = patroller.EnvironmentDetector.GroundDetector;
        _groundInFrontDetector = patroller.EnvironmentDetector.GroundInFrontDetector;
    }
Пример #23
0
    public PlayerGroundAttackState(PlayerFSM stateMachine, Player player)
    {
        _stateMachine = stateMachine;
        _animator     = player.PlayerAnimator;

        _movement       = player.Movement;
        _data           = player.Data;
        _input          = player.Input;
        _weaponSystem   = player.WeaponSystem;
        _dashSystem     = player.DashSystem;
        _weaponData     = player.WeaponSystem.EquippedWeapon;
        _groundDetector = player.EnvironmentDetector.GroundDetector;
    }
Пример #24
0
    public PlayerJumpState(PlayerFSM stateMachine, Player player)
    {
        _stateMachine = stateMachine;
        _player       = player;
        _animator     = player.PlayerAnimator;

        _movement       = player.Movement;
        _input          = player.Input;
        _data           = player.Data;
        _groundDetector = player.EnvironmentDetector.GroundDetector;
        _dashSystem     = player.DashSystem;
        _sfx            = player.SFX;
        _jumpDust       = player.Visuals.JumpDust;
    }
Пример #25
0
    public PlayerFallingState(PlayerFSM stateMachine, Player player)
    {
        _stateMachine = stateMachine;
        _player       = player;
        _animator     = player.PlayerAnimator;

        _movement          = player.Movement;
        _data              = player.Data;
        _input             = player.Input;
        _groundDetector    = player.EnvironmentDetector.GroundDetector;
        _wallDetector      = player.EnvironmentDetector.WallDetector;
        _aboveWallDetector = player.EnvironmentDetector.AboveWallDetector;

        _dashSystem = player.DashSystem;
    }
Пример #26
0
    public override void TriggerEntered(Collider2D otherCollider)
    {
        MovementKM movement = otherCollider.GetComponent <MovementKM>();

        if (movement != null)
        {
            if (_exitParticles != null)
            {
                ParticleSystem exitParticles = Instantiate
                                                   (_exitParticles, _exitTransform.position, Quaternion.identity);
                exitParticles.Play();
            }

            movement.MovePositionInstant(_exitTransform.position);
        }
    }
Пример #27
0
 private void OnCollisionExit2D(Collision2D collision)
 {
     _otherOverlappedMover = null;
 }
Пример #28
0
 public abstract void Move(MovementKM movement);