Added Accessors for the GameManager to get the Score, Cores and Level values

Added a Score to the Game
Added an actual blackhole material and shader to the black hole
Added a new Main menu and How to Play menu system
Added Beam swords to all ships (replacing the light saber things the player had)
Added a pause menu
Overhauled the UI for the game scene
Added List to hold the amount of core energy needed for each level
Added the URP package for better rendering (apparently)
Added a GameState enum to set which part of the game the player is in
Added Magnet powerup to game
Changed the way powerups are spawned, enemies now have a loot table
Changed cores to core energy which is a percentage needed to pass a level
Changed all the Ints to Hidden Value ints to maybe stop cheat engine users finding the important values
Changed all level loads to use sceneloadasync
Updated all of the materials to use URP shaders
Removed Junk Files from external sources
Rearranged the folders inside the unity project to try and reduce some name length issues
This commit is contained in:
iDunnoDev
2022-06-30 01:09:48 +01:00
committed by iDunnoDev
parent 0360907df1
commit 3ab4b78a79
277 changed files with 62218 additions and 58494 deletions

View File

@ -0,0 +1,25 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class LifePowerUpEffect : PowerUpEffect
{
public int lifeIncreaseAmount;
// Start is called before the first frame update
void Start()
{
}
public override void ApplyEffect()
{
GameManager.Instance.AddLife(lifeIncreaseAmount);
}
// Update is called once per frame
void Update()
{
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 38843c78ccdea3f468613761e6ca170f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,94 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MagnetEmbedPowerUpEffect : PowerUpEffect
{
private GameObject _player;
private PlayerObjectShared _playerObjectShared;
public float magnetPowerForce;
public float magnetPowerRange;
public float magnetPowerCooldown;
private bool _magnetPowerCooldown;
private TimerHelper _magnetPowerCooldownTimer;
// Start is called before the first frame update
void Start()
{
_player = GameEngine.mainPlayer;
_playerObjectShared = _player.GetComponent<PlayerObjectShared>();
_magnetPowerCooldown = false;
_magnetPowerCooldownTimer = new TimerHelper(magnetPowerCooldown, false);
}
public override void OnPickUp()
{
}
public override void ApplyEffect()
{
}
public override bool OnUseEffect()
{
if (!_magnetPowerCooldown)
{
foreach (BlackHoleForce currentBHF in BlackHoleManager.blackHoleForceObjects)
{
GameObject currentObject = currentBHF.gameObject;
if (currentObject.tag != "Player")
{
Vector3 directionToObject = gameObject.transform.position - currentObject.transform.position;
float distanceToObject = directionToObject.magnitude;
if (distanceToObject <= magnetPowerRange)
{
Rigidbody currentRigidBody = currentObject.GetComponent<Rigidbody>();
if (currentRigidBody != null)
{
currentRigidBody.AddForce(directionToObject * magnetPowerForce, ForceMode.VelocityChange);
}
}
}
}
_magnetPowerCooldown = true;
_magnetPowerCooldownTimer.RestartTimer();
return true;
}
else
{
return false;
}
}
public override float CooldownStatus()
{
return _magnetPowerCooldownTimer.Position;
}
public override bool PowerUpReady()
{
if (_magnetPowerCooldown)
{
return false;
}
else
{
return true;
}
}
// Update is called once per frame
void Update()
{
if (_magnetPowerCooldown)
{
if (_magnetPowerCooldownTimer.HasTicked(Time.deltaTime))
{
_magnetPowerCooldown = false;
}
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0b99a08d84424e940ba294b1935e85aa
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,48 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MagnetPowerUpEffect : PowerUpEffect
{
private GameObject _player;
private PlayerObjectShared _playerObjectShared;
public GameObject coredVersionGO;
// Start is called before the first frame update
void Start()
{
_player = GameEngine.mainPlayer;
_playerObjectShared = _player.GetComponent<PlayerObjectShared>();
}
public override void OnPickUp()
{
Transform coreHolder = _player.transform.Find("PlayerModel/CoreHolder");
for (int i = 0; i < coreHolder.transform.childCount; i++)
{
Destroy(coreHolder.GetChild(i).gameObject);
}
GameObject newSpecialCore = Instantiate(coredVersionGO, coreHolder);
PowerUpEffect newMagnetEffect = newSpecialCore.GetComponent<MagnetEmbedPowerUpEffect>();
_playerObjectShared.AttachPickUp(newMagnetEffect);
}
public override void ApplyEffect()
{
}
public override bool OnUseEffect()
{
return false;
}
public override float CooldownStatus()
{
return 0.0f;
}
public override bool PowerUpReady()
{
return false;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e91865b301eca594f92d1768cbfa74ec
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,35 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PowerUpEffect : MonoBehaviour
{
public string powerUpName;
public string powerUpDesc;
public GameObject powerUpModel;
public virtual void OnPickUp()
{
ApplyEffect();
}
public virtual void ApplyEffect()
{
}
public virtual bool OnUseEffect()
{
return false;
}
public virtual float CooldownStatus()
{
return 1.0f;
}
public virtual bool PowerUpReady()
{
return false;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 181a54eb9a6eb354d893a404c3543c3a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,33 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ShieldPowerUpEffect : PowerUpEffect
{
public float immunityLength;
private GameObject _player;
// Start is called before the first frame update
void Start()
{
_player = GameEngine.mainPlayer;
}
public override void ApplyEffect()
{
if (_player != null)
{
PlayerColliderManager currentPCM = _player.GetComponent<PlayerColliderManager>();
if (currentPCM != null)
{
currentPCM.SetImmune(immunityLength);
}
}
}
// Update is called once per frame
void Update()
{
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: b8a8ce1843264e04d9d1caed1f1ce82b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: