private void moveCharacterToTile(GameObject playerWhosTurnItIs, int tileID) { CharacterController myCharacterController = playerWhosTurnItIs.GetComponent <CharacterController>(); CharacterMovementController myCharacterMovementController = playerWhosTurnItIs.GetComponent <CharacterMovementController>(); if (myCharacterController.getCurrentActionPoints() < 2 && currentState == GameState.IN_COMBAT) { return; } List <Node> path = new List <Node>(); Node savedNode = myTileController.getLastTraversalPath(); while (savedNode != null) { if (savedNode.getDistanceFromStart() < myCharacterController.getMovementSpeed()) { path.Insert(0, savedNode); } else { myTileController.getTileFromID(savedNode.getID()).GetComponent <Tile>().setCurrentState(Tile.TileState.NOT_SELECTED); } savedNode = savedNode.getPreviousNode(); } if (path.Count >= 0) { myCharacterMovementController.setPath(path); if (currentState == GameState.IN_COMBAT) { myCharacterController.decrementActionPointsByMovement(); } } }
private void Awake() { m_MovementController = GetComponent <CharacterMovementController>(); m_Input = GetComponent <CharacterInputBase>(); m_GraphicsController = GetComponent <GraphicsController>(); m_DefeatableBase = GetComponent <DefeatableBase>(); }
public void Start() { effectGO = GameObject.Find("Effects"); if (effectGO == null) { effectGO = new GameObject("Effects"); } animator = GetComponent <Animator>(); movementController = GetComponent <CharacterMovementController>(); camerascript = GameObject.FindObjectOfType <Cam>(); idleState = new IdleState(); preJumpIdleState = new PreJumpIdleState(); jumpStartIdleState = new JumpStartIdleState(); preJumpRunningState = new PreJumpRunningState(); jumpStartRunningState = new JumpStartRunningState(); fallingState = new FallingState(); landIdleState = new LandIdleState(); landRunningState = new LandRunningState(); landRollingState = new LandRollingState(); runningState = new RunningState(); stoppingState = new StoppingState(); duckingState = new DuckingState(); duckingUpState = new DuckingUpState(); climbingState = new ClimbingState(); attackingHeavyState = new AttackingHeavyState(); attackingCombo1State = new AttackingCombo1State(); attackingCombo2State = new AttackingCombo2State(); currentState = idleState; currentDirectionX = 1; }
void InitIfNeeded() { if (!_characterModel) { _characterModel = GetComponentInChildren <CharacterModel>(); } if (!_characterHealthController) { _characterHealthController = GetComponentInChildren <CharacterHealthController>(); _characterHealthController.onHealthChanged += (float oldHealth, float health) => { if (health < oldHealth) { if (isChargingSpirit) { CancelSpiritCharge(); } } }; } if (!_characterInputController) { _characterInputController = GetComponentInChildren <CharacterInputController>(); } if (!_characterMovementController) { _characterMovementController = GetComponentInChildren <CharacterMovementController>(); } }
private void MoveX(PlayerStateMachine stateMachine, CharacterMovementController playerController, float accelerationTime, float moveFactor) { float directionX = Input.GetAxisRaw("Horizontal"); stateMachine.FlipSprite(directionX); playerController.OnMoving(directionX, accelerationTime, moveFactor); }
public bool highlightTraversalPathFromCharacterToTile(GameObject character, int tileIndex) { if (character == null || tileIndex < 0) { return(false); } resetLastPath(); CharacterController myCharacterController = character.GetComponent <CharacterController>(); CharacterMovementController myCharacterMovementController = character.GetComponent <CharacterMovementController>(); Node[] traversalMap = myCharacterMovementController.getTraversalMap(); if (traversalMap != null) { Node selectedNode = traversalMap[tileIndex]; savedNode = traversalMap[tileIndex]; while (selectedNode != null) { int distanceFromStart = selectedNode.getDistanceFromStart(); if (distanceFromStart < myCharacterController.getMovementSpeed()) { getTileFromID(selectedNode.getID()).GetComponent <Tile>().setCurrentState(Tile.TileState.SELECTED_WITHIN_RANGE); } else { getTileFromID(selectedNode.getID()).GetComponent <Tile>().setCurrentState(Tile.TileState.SELECTED_OUTSIDE_RANGE); } selectedNode = selectedNode.getPreviousNode(); } return(true); } return(false); }
private void Awake() { characterMovement = GetComponent <CharacterMovementController>(); characterAnimation = GetComponent <CharacterAnimationController>(); characterCombat = GetComponent <CharacterCombat>(); health = GetComponent <Health>(); rigidBody2D = GetComponent <Rigidbody2D>(); }
public void Move(PlayerStateMachine stateMachine, CharacterMovementController playerController) { if (initialRunJumpDirectionX != Input.GetAxisRaw("Horizontal")) { moveMultiplierAir = MIN_MOVE_FACTOR_AIR; // wieder initialisieren da Initialrichtung gewechselt } MoveXAirborne(stateMachine, playerController, moveMultiplierAir); }
public OnTheMove(CharacterMovementController characterMovementController, Tile start, System.Action action) : base(characterMovementController) { _path = new List <Tile>() { start }; act = action; }
private void Awake() { mMovementController = GetComponent <CharacterMovementController>(); mOverrideController = GetComponent <CharacterOverrideController>(); mAbilityController = GetComponent <CharacterAbilityController>(); mFakePhysics = GetComponent <BSGFakePhysics>(); mTriggerable = GetComponent <Triggerable>(); }
// Use this for initialization public virtual void Start() { stateMachineInterface = GetComponent <IStateMachine>(); movementController = GetComponent <CharacterMovementController>(); spriteRenderer = GetComponent <SpriteRenderer>(); boxCollider = GetComponent <BoxCollider2D>(); health = GetComponent <HealthController>(); health.RefreshDisplay(); }
void Start() { movementController = this.GetComponent <CharacterMovementController>(); if (movementController != null) { movementController.jumpLengthInSeconds *= 3; movementController.jumpHeight *= 6; } Invoke("EndPowerUp", lifeTime); }
// Use this for initialization void Start() { _actorStates = GetComponentInParent <ActorStates>(); _moveController = GetComponentInParent <CharacterMovementController>(); inputManager = GameObject.FindObjectOfType <InputManager>(); cam = GetComponent <Camera>(); rotAroundX = transform.eulerAngles.x; rotAroundY = transform.eulerAngles.y; rotAroundZ = 0; _startLocalPosition = transform.localPosition; _currentPosition = transform.position; StartCoroutine(StartDelay()); }
public void Start() { spriteRenderer = GetComponent <SpriteRenderer>(); animator = GetComponent <Animator>(); observerController = GetComponent <ObserverController>(); movementController = GetComponent <CharacterMovementController>(); currentState = idleState; currentDirectionX = -1; // Enemies always initially face left if (!waypointLeft.Equals(Vector3.negativeInfinity) && !waypointRight.Equals(Vector3.negativeInfinity)) { globalWaypointLeft = waypointLeft + transform.position; globalWaypointRight = waypointRight + transform.position; waypointController = new WaypointController(globalWaypointLeft, globalWaypointRight); } }
void OnCollisionEnter(Collision collision) { if (IsMoving && collisionTime + collisionTimeInterval < Time.time && collision.collider.CompareTag("Player")) { collisionTime = Time.time; currentPathSegment = null; animator.SetTrigger(AnimatorPropertyName.GetInstance().Movement2StopTrigger); CharacterMovementController collisionMovementController = collision.transform.GetComponent <CharacterMovementController> (); if (collisionMovementController.IsMoving) { StartCoroutine(RepathForCurrentTarget(transform.GetInstanceID() > collision.transform.GetInstanceID())); } else { StartCoroutine(RepathForCurrentTarget(true)); } } }
public override AbstractState HandleUpdate(PlayerStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { if (animationHasStopped) { float directionX = Input.GetAxisRaw("Horizontal"); if (directionX == 0) { return(PlayerStateMachine.idleState); } else { return(PlayerStateMachine.runningState); } } return(null); }
public override void OnEnter(PlayerStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { animationHasStopped = false; animator.SetBool(AnimPlayerParameters.STOPPING, true); stateMachine.InstantiateEffect(dustEffect); }
public OnTheMove(CharacterMovementController characterMovementController, Tile start, System.Action action) : base(characterMovementController) { _path = new List<Tile>() {start}; act = action; }
public override AbstractState HandleUpdate(PlayerStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { if (animationHasStopped) { return(PlayerStateMachine.idleState); } return(null); }
void Start() { playerWeaponController = GetComponent<PlayerWeaponController>(); playerAnimationController = GetComponent<PlayerAnimationController>(); characterMovementController = GetComponent<CharacterMovementController>(); }
public override void OnExit(EnemyStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { animator.SetBool(AnimEnemyParameters.RUNNING, false); }
public override void Use(CharacterMovementController characterMovementController) { characterMovementController.SetMovementSpeedBoost(GlobalVariables.GlobalVariablesInstance.SPEED_UP_MOVEMENT_BONUS, GlobalVariables.GlobalVariablesInstance.SPEED_UP_DURATION, gameObject); }
public override AbstractState HandleUpdate(EnemyStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { AbstractState baseState = base.HandleUpdate(stateMachine, animator, playerController); if (baseState != null) { return(baseState); } if (!stateMachine.InAttackPosition()) { // Player out of reach return(stateMachine.runningState); } if (IsTimeToAttack(stateMachine)) { return(stateMachine.attackingState); } return(null); }
void Awake() { _physicsController = new CharacterPhysicsController(this); _statsController = new CharacterStatsController(this); _movementController = new CharacterMovementController(this); }
public Idle(CharacterMovementController characterMovementController) : base(characterMovementController) { }
public MovementState(CharacterMovementController characterMovementController) { CharacterMovementController = characterMovementController; }
void Awake() { refrence = this; }
// Use this for initialization void Start() { move = GetComponent <CharacterMovementController>(); anim = GetComponent <CharacterAnimorController>(); }
public override AbstractState HandleUpdate(EnemyStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { AbstractState baseState = base.HandleUpdate(stateMachine, animator, playerController); if (baseState != null) { return(baseState); } float directionX = 0; if (stateMachine.currentDetection.distance < 0) { // Kein Gegner gefunden if (stateMachine.waypointController.HasWaypoints()) { // run towards waypoint directionX = stateMachine.waypointController.GetDirectionXnextWaypoint(stateMachine.transform.position); } else { return(stateMachine.idleState); } } else { // Gegen gefunden if (stateMachine.InAttackPosition()) { return(stateMachine.attackIdleState); } else { // run towards player directionX = (stateMachine.currentDetection.right ? 1 : -1); } } MoveX(stateMachine, playerController, directionX); return(null); }
public override void OnEnter(PlayerStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { doubleTabInAnim = false; transitCombo = false; animationHasStopped = false; animator.SetBool(AnimPlayerParameters.ATTACKING_COMBO1, true); SoundManager.PlaySFX(stateMachine.sounds.baseAttack); }
public override void OnEnter(EnemyStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { base.OnEnter(stateMachine, animator, playerController); animator.SetBool(AnimEnemyParameters.RUNNING, true); }
public override AbstractState HandleUpdate(PlayerStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { if (!doubleTabInAnim) { doubleTabInAnim = stateMachine.inputController.IsDoubleTabAttack(); } if (transitCombo) { if (doubleTabInAnim) { return(PlayerStateMachine.attackingCombo2State); } } if (animationHasStopped) { return(PlayerStateMachine.idleState); } return(null); }
public override void OnEnter(PlayerStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { animationHasStopped = false; animator.SetBool(AnimPlayerParameters.ATTACKING_HEAVY, true); SoundManager.PlaySFX(stateMachine.sounds.heavyAttack); }
public override void OnEnter(PlayerStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { Debug.Log("In LAND RUNNING STATE!"); animationHasStopped = false; animator.SetBool(AnimPlayerParameters.LAND_RUNNING, true); stateMachine.InstantiateEffect(dustEffect); MoveXGrounded(stateMachine, playerController); }
public override void OnExit(PlayerStateMachine stateMachine, Animator animator, CharacterMovementController playerController) { animator.SetBool(AnimPlayerParameters.ATTACKING_HEAVY, false); }
public OnTheMove(CharacterMovementController characterController, List<Tile> path) : base(characterController) { _path = path; }