public void RemovePhysicsComeponent(EHPhysics2D PhysicsComponent) { if (!PhysicsComponentSet.Remove(PhysicsComponent)) { Debug.LogWarning("This phsyics component was already added to our Physics Manager. Please be sure to only remove this component once."); return; } }
public void AddPhysicsComponent(EHPhysics2D PhysicsComponent) { if (!PhysicsComponentSet.Add(PhysicsComponent)) { Debug.LogWarning("This Physics was already added to our Physics manager list. Please be sure to only add this component once"); return; } }
private void Awake() { Health = MaxHealth; Physics2D = GetComponent <EHPhysics2D>(); AnimReference = GetComponent <Animator>(); AssociatedHitboxComponent = GetComponent <EHHitboxActorComponent>(); AnimReference.SetFloat(ANIM_HITSTUN, -1); }
private void Awake() { CharacterMovement = GetComponent <EHCharacterMovementComponent>(); CharacterCollider = GetComponent <EHBox2DCollider>(); Physics2D = GetComponent <EHPhysics2D>(); CharacterAnim = GetComponent <Animator>(); if (CharacterCollider) { CharacterCollider.OnCollision2DBegin += OnCharacterCollision; CharacterCollider.OnCollision2DEnd += OnCharacterCollisionEnd; } }
private void Awake() { MovementComponent = GetComponent <EHCharacterMovementComponent>(); DamageComponent = GetComponent <EHDamageableComponent>(); Physics2D = GetComponent <EHPhysics2D>(); CharacterAnim = GetComponent <Animator>(); MovementComponent.OnCharacterLanded += OnCharacterLanded; DashesRemaining = MaxDashesBeforeLanding; if (DamageComponent) { DamageComponent.OnCharacterHealthChanged += OnCharacterHealthChanged; } }
protected virtual void Awake() { ProjectileAnim = GetComponent <Animator>(); Physics2D = GetComponent <EHPhysics2D>(); HitboxActorComponent = GetComponent <EHHitboxActorComponent>(); }
protected virtual void Awake() { CharacterSpriteRenderer = GetComponentInChildren <SpriteRenderer>(); CharacterAnimator = GetComponent <Animator>(); Physics2D = GetComponent <EHPhysics2D>(); }
/// <summary> /// Coroutine that carries our our scene transition /// </summary> /// <param name="PlayerCharacter"></param> /// <param name="DoorToLoad"></param> /// <returns></returns> private IEnumerator SceneTransitionCoroutine(EHPlayerCharacter PlayerCharacter, DoorData DoorToLoad) { if (!PlayerCharacter) { Debug.LogWarning("The player that was passed in was null"); yield break; } if (!DoorToLoad) { Debug.LogWarning("The Door to load was null"); yield break; } bIsExecutingSceneTransition = true; Image_BlackScreen.color = Color.clear; Image_BlackScreen.gameObject.SetActive(true); PlayerCharacter.GetComponent <EHPlayerController>().enabled = false; float TimeThatHasPassed = 0; while (TimeThatHasPassed < TransitionTimeSeconds) { yield return(null); TimeThatHasPassed += EHTime.RealDeltaTime; Image_BlackScreen.color = new Color(0, 0, 0, TimeThatHasPassed / TransitionTimeSeconds); } Image_BlackScreen.color = Color.black; RoomActor CurrentlyLoadedRoom = BaseGameOverseer.Instance.CurrentlyLoadedRoom; if (CurrentlyLoadedRoom.GetAssociatedRoomData() != DoorToLoad.GetDoorRoom()) { if (CurrentlyLoadedRoom && CurrentlyLoadedRoom.GetAssociatedRoomData()) { print(CurrentlyLoadedRoom.GetAssociatedRoomData().RoomScene); yield return(SceneManager.UnloadSceneAsync(CurrentlyLoadedRoom.GetAssociatedRoomData().RoomScene)); } yield return(SceneManager.LoadSceneAsync(DoorToLoad.GetDoorRoom().RoomScene, LoadSceneMode.Additive)); } yield return(new WaitForSecondsRealtime(0.5f)); DoorActor DoorToSpawnFrom = BaseGameOverseer.Instance.CurrentlyLoadedRoom.GetRoomDoorTriggerFromDoorData(DoorToLoad); Vector3 CharacterSpawnPosition = Vector3.zero; if (DoorToSpawnFrom == null) { Debug.LogError("There was no associated door actor to spawn our character"); } else { CharacterSpawnPosition = DoorToSpawnFrom.GetSpawnPosition(); } PlayerCharacter.SetCharacterAtPosition(CharacterSpawnPosition); EHPhysics2D Physics2D = PlayerCharacter.GetComponent <EHPhysics2D>(); if (Physics2D) { Physics2D.Velocity = Vector2.zero; } BaseGameOverseer.Instance.MainGameCamera.FocusCameraImmediate(); PlayerCharacter.GetComponent <EHPlayerController>().enabled = true; TimeThatHasPassed = 0; bIsExecutingSceneTransition = false; while (TimeThatHasPassed < TransitionTimeSeconds && !bIsExecutingSceneTransition) { yield return(null); TimeThatHasPassed += EHTime.RealDeltaTime; Image_BlackScreen.color = new Color(0, 0, 0, 1 - (TimeThatHasPassed / TransitionTimeSeconds)); } Image_BlackScreen.color = Color.clear; }