Skip to content

Commit

Permalink
No.2 SOLID GameState Fix References Solution (bad-way)
Browse files Browse the repository at this point in the history
- Solution 1 Bad Way
- Each get, set its own findObject, GetComp instead one Field Global for the class otherwise this was throwing Null and it was half-working
  • Loading branch information
michailmarkou1995 committed Aug 1, 2022
1 parent 981f5af commit b573baf
Show file tree
Hide file tree
Showing 65 changed files with 1,773 additions and 1,068 deletions.
159 changes: 112 additions & 47 deletions Assets/Prefabs/_managers/Level Starter.prefab
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,13 @@ GameObject:
m_Component:
- component: {fileID: 4200383187230866}
- component: {fileID: 114750208195470174}
- component: {fileID: 9213773268289219142}
- component: {fileID: 8664226275268435725}
- component: {fileID: 6261290678525385038}
- component: {fileID: 2612591450176041130}
- component: {fileID: 4672400234462731894}
- component: {fileID: 6533670772227153969}
m_Layer: 0
m_Name: Level Manager
m_Name: LevelManager
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
Expand Down Expand Up @@ -77,28 +81,63 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 73fb07ac7d5f744a48fe6c56ff43ae1b, type: 3}
m_Name:
m_EditorClassIdentifier:
hurryUp: 0
marioSize: 0
lives: 0
coins: 0
scores: 0
timeLeft: 0
isInvinciblePowerdown: 0
isInvincibleStarman: 0
--- !u!114 &8664226275268435725
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1004064948157000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a4c34187099f4992aa4100a92a21daa4, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &6261290678525385038
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1004064948157000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6ade286070354de3b9d0016e59d3514c, type: 3}
m_Name:
m_EditorClassIdentifier:
scoreText: {fileID: 114097602158662608}
coinText: {fileID: 114108165712623676}
timeText: {fileID: 114793167711461314}
floatingTextEffect: {fileID: 1196479104050882, guid: 1ad1e9f06ef1b47b0ba83ef5484e63cf, type: 3}
coinBonus: 200
powerupBonus: 1000
starmanBonus: 1000
oneupBonus: 0
breakBlockBonus: 50
--- !u!114 &2612591450176041130
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1004064948157000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a9f7b0b9f0004af8ac05a3f1a1615857, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &4672400234462731894
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1004064948157000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4aec0917187d4d6da4e3b666d4c9f5b0, type: 3}
m_Name:
m_EditorClassIdentifier:
stompBounceVelocity: {x: 0, y: 15}
gamePaused: 0
timerPaused: 0
musicPaused: 0
--- !u!114 &9213773268289219142
isPoweringDown: 0
isInvinciblePowerdown: 0
isInvincibleStarman: 0
--- !u!114 &6533670772227153969
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
Expand All @@ -107,36 +146,9 @@ MonoBehaviour:
m_GameObject: {fileID: 1004064948157000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3f47bb3869c463547a55f8a109a25243, type: 3}
m_Script: {fileID: 11500000, guid: ec26d0a421514f7494efe4820aef7735, type: 3}
m_Name:
m_EditorClassIdentifier:
musicSource: {fileID: 82793086007151078}
soundSource: {fileID: 82989831986403836}
effectsSource: {fileID: 807602078252860291}
pauseSoundSource: {fileID: 82006143512131390}
levelMusic: {fileID: 8300000, guid: a396fb5db437f453d89c54963e7b9719, type: 3}
levelMusicHurry: {fileID: 8300000, guid: 980db8ff7fdfd4de9b676bef749ea0a7, type: 3}
starmanMusic: {fileID: 8300000, guid: fe80c79237cc34e99babbc6d54016d93, type: 3}
starmanMusicHurry: {fileID: 8300000, guid: f1d4bda1392ad4f6cb3bb8e494af8eb5, type: 3}
levelCompleteMusic: {fileID: 8300000, guid: 632e293310a2b4c088dd51fdeaa9d8b8, type: 3}
castleCompleteMusic: {fileID: 8300000, guid: 6dbea1eceaa2e48b6aa7c92fac4fbafe, type: 3}
oneUpSound: {fileID: 8300000, guid: cdc43de50f4574c75afcc7e74975b29a, type: 3}
bowserFallSound: {fileID: 8300000, guid: 04c05e6a635a94c57ba4f3a3f3aaa89f, type: 3}
bowserFireSound: {fileID: 8300000, guid: de02ec0c771a0476cb3609ebf94653a8, type: 3}
breakBlockSound: {fileID: 8300000, guid: c738f1c61166b40e19d4d970e7b9c9df, type: 3}
bumpSound: {fileID: 8300000, guid: 6f487163c53194893952b1f457060b86, type: 3}
coinSound: {fileID: 8300000, guid: d885ffc842af744d89f7d595ffcc176a, type: 3}
deadSound: {fileID: 8300000, guid: 90ceef20da9a84d9891da3179ede4177, type: 3}
fireballSound: {fileID: 8300000, guid: 7016dd03d29e64aa18bc6f1ae5bd8bec, type: 3}
flagpoleSound: {fileID: 8300000, guid: 45ea427b60eb04afe8cc4c33f225da7a, type: 3}
jumpSmallSound: {fileID: 8300000, guid: bc5ca5e0703c54692a186434e1149ccd, type: 3}
jumpSuperSound: {fileID: 8300000, guid: 7988561719a0c40049ae5a3c2870d1e7, type: 3}
kickSound: {fileID: 8300000, guid: 96f7a44168f114e6ba76d5c1bef36f86, type: 3}
pipePowerdownSound: {fileID: 8300000, guid: b520e6b32619c490a934225b9b162dc2, type: 3}
powerupSound: {fileID: 8300000, guid: 26301d2e86e99420599e315297a825df, type: 3}
powerupAppearSound: {fileID: 8300000, guid: 97a450c65284a4a3094ba5c2221a492b, type: 3}
stompSound: {fileID: 8300000, guid: d84415726495b4d46b5a557ed2a97cfa, type: 3}
warningSound: {fileID: 8300000, guid: c0ea6c25686884e1a9547efdebf43492, type: 3}
--- !u!1 &1006136692691096
GameObject:
m_ObjectHideFlags: 0
Expand Down Expand Up @@ -2462,6 +2474,8 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 1667618895872265512}
- component: {fileID: 1336133381744637994}
- component: {fileID: 6470472101489442007}
m_Layer: 0
m_Name: SoundManager
m_TagString: SoundManager
Expand All @@ -2488,6 +2502,57 @@ Transform:
m_Father: {fileID: 4200383187230866}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1336133381744637994
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 350106262282576655}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3f47bb3869c463547a55f8a109a25243, type: 3}
m_Name:
m_EditorClassIdentifier:
musicSource: {fileID: 82793086007151078}
soundSource: {fileID: 82989831986403836}
effectsSource: {fileID: 807602078252860291}
pauseSoundSource: {fileID: 82006143512131390}
levelMusic: {fileID: 8300000, guid: a396fb5db437f453d89c54963e7b9719, type: 3}
levelMusicHurry: {fileID: 8300000, guid: 980db8ff7fdfd4de9b676bef749ea0a7, type: 3}
starmanMusic: {fileID: 8300000, guid: fe80c79237cc34e99babbc6d54016d93, type: 3}
starmanMusicHurry: {fileID: 8300000, guid: f1d4bda1392ad4f6cb3bb8e494af8eb5, type: 3}
levelCompleteMusic: {fileID: 8300000, guid: 632e293310a2b4c088dd51fdeaa9d8b8, type: 3}
castleCompleteMusic: {fileID: 8300000, guid: 6dbea1eceaa2e48b6aa7c92fac4fbafe, type: 3}
oneUpSound: {fileID: 8300000, guid: cdc43de50f4574c75afcc7e74975b29a, type: 3}
bowserFallSound: {fileID: 8300000, guid: 04c05e6a635a94c57ba4f3a3f3aaa89f, type: 3}
bowserFireSound: {fileID: 8300000, guid: de02ec0c771a0476cb3609ebf94653a8, type: 3}
breakBlockSound: {fileID: 8300000, guid: c738f1c61166b40e19d4d970e7b9c9df, type: 3}
bumpSound: {fileID: 8300000, guid: 6f487163c53194893952b1f457060b86, type: 3}
coinSound: {fileID: 8300000, guid: d885ffc842af744d89f7d595ffcc176a, type: 3}
deadSound: {fileID: 8300000, guid: 90ceef20da9a84d9891da3179ede4177, type: 3}
fireballSound: {fileID: 8300000, guid: 7016dd03d29e64aa18bc6f1ae5bd8bec, type: 3}
flagpoleSound: {fileID: 8300000, guid: 45ea427b60eb04afe8cc4c33f225da7a, type: 3}
jumpSmallSound: {fileID: 8300000, guid: bc5ca5e0703c54692a186434e1149ccd, type: 3}
jumpSuperSound: {fileID: 8300000, guid: 7988561719a0c40049ae5a3c2870d1e7, type: 3}
kickSound: {fileID: 8300000, guid: 96f7a44168f114e6ba76d5c1bef36f86, type: 3}
pipePowerdownSound: {fileID: 8300000, guid: b520e6b32619c490a934225b9b162dc2, type: 3}
powerupSound: {fileID: 8300000, guid: 26301d2e86e99420599e315297a825df, type: 3}
powerupAppearSound: {fileID: 8300000, guid: 97a450c65284a4a3094ba5c2221a492b, type: 3}
stompSound: {fileID: 8300000, guid: d84415726495b4d46b5a557ed2a97cfa, type: 3}
warningSound: {fileID: 8300000, guid: c0ea6c25686884e1a9547efdebf43492, type: 3}
--- !u!114 &6470472101489442007
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 350106262282576655}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b08dd87c3e2f4e6085d0ed5d145c09cf, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &2281765797751069528
GameObject:
m_ObjectHideFlags: 0
Expand Down
14 changes: 0 additions & 14 deletions Assets/Scenes/Main Menu.unity
Original file line number Diff line number Diff line change
Expand Up @@ -1443,7 +1443,6 @@ GameObject:
- component: {fileID: 693547088}
- component: {fileID: 693547089}
- component: {fileID: 693547090}
- component: {fileID: 693547091}
m_Layer: 0
m_Name: SoundManager
m_TagString: SoundManager
Expand Down Expand Up @@ -1518,19 +1517,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 16df295c1140448a9440ab3d732d3e2a, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &693547091
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 693547087}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 411fe83d26391384bbc5244f7de427bc, type: 3}
m_Name:
m_EditorClassIdentifier:
soundTest: {fileID: 8300000, guid: a396fb5db437f453d89c54963e7b9719, type: 3}
--- !u!1 &819667513
GameObject:
m_ObjectHideFlags: 0
Expand Down
19 changes: 9 additions & 10 deletions Assets/Scripts/Abilities/NPC/BowserFire.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,15 @@
namespace Abilities.NPC
{
public class BowserFire : Enemy {
private LevelManager t_LevelManager;
private Rigidbody2D m_Rigidbody2D;
private LevelManager _levelManager;
private Rigidbody2D _rigidbody2D;

private float absSpeedX = 18;
public float directionX = -1; // 1 for right, -1 for left

// Use this for initialization
void Start () {
t_LevelManager = FindObjectOfType<LevelManager> ();
m_Rigidbody2D = FindObjectOfType<Rigidbody2D> ();
_levelManager = FindObjectOfType<LevelManager> ();
_rigidbody2D = FindObjectOfType<Rigidbody2D> ();
transform.localScale = new Vector3 (directionX, 1, 1); // orient sprite

starmanBonus = 0;
Expand All @@ -24,8 +23,8 @@ public class BowserFire : Enemy {
stompBonus = 0;
}

void Update() {
m_Rigidbody2D.velocity = new Vector2 (absSpeedX * directionX, m_Rigidbody2D.velocity.y);
private void Update() {
_rigidbody2D.velocity = new Vector2 (absSpeedX * directionX, _rigidbody2D.velocity.y);
}

public override void TouchedByStarmanMario() {
Expand All @@ -43,9 +42,9 @@ public class BowserFire : Enemy {
public override void StompedByMario() {
}

void OnTriggerEnter2D(Collider2D other) {
if (other.tag == "Player") {
t_LevelManager.MarioPowerDown ();
private void OnTriggerEnter2D(Collider2D other) {
if (other.CompareTag("Player")) {
_levelManager.GetPlayerAbilities.MarioPowerDown ();
}
}
}
Expand Down
5 changes: 3 additions & 2 deletions Assets/Scripts/Abilities/Pickups/BlockCoin.cs
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
using Core.Managers;
using Interfaces.Core.Managers;
using UnityEngine;

namespace Abilities.Pickups
{
public class BlockCoin : MonoBehaviour
{
private LevelManager _levelManager;
private ILevelManager _levelManager;

private void Start()
{
_levelManager = FindObjectOfType<LevelManager>();
_levelManager.AddCoin(transform.position + Vector3.down);
_levelManager.GetPlayerPickUpAbilities.AddCoin(transform.position + Vector3.down);
}
}
}
67 changes: 33 additions & 34 deletions Assets/Scripts/Abilities/Pickups/CollectibleBlock.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@

namespace Abilities.Pickups {
public class CollectibleBlock : MonoBehaviour {
private Animator m_Animator;
private LevelManager t_LevelManager;
private Animator _animator;
private LevelManager _levelManager;

public bool isPowerupBlock;
public GameObject objectToSpawn;
Expand All @@ -21,52 +21,51 @@ public class CollectibleBlock : MonoBehaviour {
public Vector3 spawnPositionOffset;

private float WaitBetweenBounce = .25f;
private bool isActive;
private float time1, time2;
private bool _isActive;
private float _time1, _time2;

public List<GameObject> enemiesOnTop = new List<GameObject> ();

// Use this for initialization
void Start () {
m_Animator = GetComponent<Animator> ();
t_LevelManager = FindObjectOfType<LevelManager> ();
time1 = Time.time;
isActive = true;
private void Start () {
_animator = GetComponent<Animator> ();
_levelManager = FindObjectOfType<LevelManager> ();
_time1 = Time.time;
_isActive = true;
}

void OnTriggerEnter2D(Collider2D other) {
time2 = Time.time;
if (other.tag == "Player" && time2 - time1 >= WaitBetweenBounce) {
t_LevelManager.GetSoundManager.SoundSource.PlayOneShot (t_LevelManager.GetSoundManager.BumpSound);
_time2 = Time.time;
if (!other.CompareTag("Player") || !(_time2 - _time1 >= WaitBetweenBounce)) return;
_levelManager.GetSoundManager.SoundSource.PlayOneShot (_levelManager.GetSoundManager.BumpSound);

if (isActive) {
m_Animator.SetTrigger ("bounce");
if (_isActive) {
_animator.SetTrigger ("bounce");

// Hit any enemy on top
foreach (GameObject enemyObj in enemiesOnTop) {
t_LevelManager.BlockHitEnemy (enemyObj.GetComponent<Enemy> ());
}
// Hit any enemy on top
foreach (GameObject enemyObj in enemiesOnTop) {
_levelManager.GetPlayerAbilities.BlockHitEnemy (enemyObj.GetComponent<Enemy> ());
}

if (timesToSpawn > 0) {
if (isPowerupBlock) { // spawn mushroom or fireflower depending on Mario's size
if (t_LevelManager.marioSize == 0) {
objectToSpawn = bigMushroom;
} else {
objectToSpawn = fireFlower;
}
if (timesToSpawn > 0) {
if (isPowerupBlock) { // spawn mushroom or fireflower depending on Mario's size
if (_levelManager.GetGameStateManager.PlayerSize == 0) {
objectToSpawn = bigMushroom;
} else {
objectToSpawn = fireFlower;
}
Instantiate (objectToSpawn, transform.position + spawnPositionOffset, Quaternion.identity);
timesToSpawn--;

if (timesToSpawn == 0) {
m_Animator.SetTrigger ("deactivated");
isActive = false;
}
}
}
Instantiate (objectToSpawn, transform.position + spawnPositionOffset, Quaternion.identity);
timesToSpawn--;

time1 = Time.time;
if (timesToSpawn == 0) {
_animator.SetTrigger ("deactivated");
_isActive = false;
}
}
}

_time1 = Time.time;
}


Expand Down
Loading

0 comments on commit b573baf

Please sign in to comment.