fix: some thing for game to be built

This commit is contained in:
KOSMOGOR
2025-04-29 01:23:40 +03:00
parent cb7ec5c6b7
commit d8da83d8f2
6 changed files with 35 additions and 29 deletions
+5 -5
View File
@@ -44,20 +44,20 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 21512d898f67c404d9a7519c0b7dcba8, type: 3}
m_Name:
m_EditorClassIdentifier:
deployScene: {fileID: 102900000, guid: 3dbb8dbb9a7a2f2a0bd1311c83d35a6a, type: 3}
deploySceneName: DeployMenu
levels:
- scene: {fileID: 102900000, guid: a1fcdf91e546853e5b455db87068027d, type: 3}
- sceneName: Level1
hp: 0
maxHp: 100
factory: 0
- scene: {fileID: 102900000, guid: f5bbc8313924a074dbd2dad1bcb13fe1, type: 3}
- sceneName: Level2
hp: 0
maxHp: 100
factory: 1
- scene: {fileID: 102900000, guid: 32cdfc1d09a868fb29f15ecf4b9a69a9, type: 3}
- sceneName: Level3
hp: 0
maxHp: 100
factory: 2
factory: 3
enemies:
- prefab: {fileID: 3602081654026665026, guid: 7ab59219438e4a241affd5e9441d9d9f, type: 3}
weight: 1
+12
View File
@@ -534,6 +534,10 @@ PrefabInstance:
propertyPath: level
value:
objectReference: {fileID: 102900000, guid: f5bbc8313924a074dbd2dad1bcb13fe1, type: 3}
- target: {fileID: 6580383546006840890, guid: eb75319be3c428240ad8fa8f46e52a48, type: 3}
propertyPath: levelName
value: Level2
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
@@ -688,6 +692,10 @@ PrefabInstance:
propertyPath: level
value:
objectReference: {fileID: 102900000, guid: 32cdfc1d09a868fb29f15ecf4b9a69a9, type: 3}
- target: {fileID: 6580383546006840890, guid: eb75319be3c428240ad8fa8f46e52a48, type: 3}
propertyPath: levelName
value: Level3
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
@@ -986,6 +994,10 @@ PrefabInstance:
propertyPath: level
value:
objectReference: {fileID: 102900000, guid: a1fcdf91e546853e5b455db87068027d, type: 3}
- target: {fileID: 6580383546006840890, guid: eb75319be3c428240ad8fa8f46e52a48, type: 3}
propertyPath: levelName
value: Level1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
+3 -4
View File
@@ -1,12 +1,11 @@
using System.Linq;
using TMPro;
using UnityEditor;
using UnityEngine;
public class DeployButton : MonoBehaviour
{
public TMP_Text textField;
public SceneAsset level;
public string levelName;
DeployController dc;
@@ -15,11 +14,11 @@ public class DeployButton : MonoBehaviour
}
public void DeployFromButton() {
dc.Deploy(level.name);
dc.Deploy(levelName);
}
public void SetLevelInfoText() {
LevelInfo levelInfo = GameController.i.GetLevel(level.name);
LevelInfo levelInfo = GameController.i.GetLevel(levelName);
string s = $"HP: {levelInfo.hp}/{levelInfo.maxHp}\nEnemies: {levelInfo.enemies.Values.Sum(x => x)}\nBullet type: {GameController.GetBulletTypeString(levelInfo.factory)}";
textField.text = s;
}
+3 -4
View File
@@ -1,6 +1,5 @@
using System.Linq;
using TMPro;
using UnityEditor;
using UnityEngine;
using UnityEngine.SceneManagement;
@@ -12,11 +11,11 @@ public class DeployController : MonoBehaviour
public void Deploy(string sceneName) {
LevelInfo level = GameController.i.GetLevel(sceneName);
SceneManager.LoadScene(level.scene.name);
SceneManager.LoadScene(level.sceneName);
}
public void SetLevelInfoText(TMP_Text textField, SceneAsset level) {
LevelInfo levelInfo = GameController.i.GetLevel(level.name);
public void SetLevelInfoText(TMP_Text textField, string levelName) {
LevelInfo levelInfo = GameController.i.GetLevel(levelName);
string s = $"HP: {levelInfo.hp}/{levelInfo.maxHp}\nEnemies: {levelInfo.enemies.Values.Sum(x => x)}\nBullet type: {GameController.GetBulletTypeString(levelInfo.factory)}";
}
}
+12 -13
View File
@@ -1,7 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEditor;
using UnityEngine;
using UnityEngine.SceneManagement;
using Random = UnityEngine.Random;
@@ -9,7 +8,7 @@ using Random = UnityEngine.Random;
public class GameController : MonoBehaviour
{
public static GameController i;
public SceneAsset deployScene;
public string deploySceneName;
public List<LevelInfo> levels;
public List<EnemyInfo> enemies;
public Dictionary<BulletType, int> inventory = new();
@@ -24,7 +23,7 @@ public class GameController : MonoBehaviour
return li;
}).ToList();
levels.ForEach(li => {
AddEnemyInLevel(SelectEnemyWeighted().prefab, li.scene.name);
AddEnemyInLevel(SelectEnemyWeighted().prefab, li.sceneName);
});
foreach (BulletType i in Enum.GetValues(typeof(BulletType))) {
if (i == BulletType.None) continue;
@@ -33,25 +32,25 @@ public class GameController : MonoBehaviour
}
public Dictionary<GameObject, int> PopEnemies(string sceneName) {
LevelInfo li = levels.Find(x => x.scene.name == sceneName);
LevelInfo li = levels.Find(x => x.sceneName == sceneName);
Dictionary<GameObject, int> levelEnemies = new(li.enemies);
li.enemies.Clear();
return levelEnemies;
}
public void AddEnemyInLevel(GameObject enemy, string sceneName) {
Dictionary<GameObject, int> levelEnemies = levels.Find(x => x.scene.name == sceneName).enemies;
Dictionary<GameObject, int> levelEnemies = levels.Find(x => x.sceneName == sceneName).enemies;
if (levelEnemies.ContainsKey(enemy)) levelEnemies[enemy] += 1;
else levelEnemies[enemy] = 1;
}
public LevelInfo GetLevel(string sceneName) {
return levels.Find(x => x.scene.name == sceneName);
return levels.Find(x => x.sceneName == sceneName);
}
void RepairLevel(string sceneName) {
levels = levels.Select(li => {
if (li.scene.name == sceneName) {
if (li.sceneName == sceneName) {
li.hp = Math.Clamp(li.hp + 20, 0, li.maxHp);
}
return li;
@@ -60,7 +59,7 @@ public class GameController : MonoBehaviour
void DamageLevels(string sceneName, float timeSpent) {
levels = levels.Select(li => {
if (li.scene.name != sceneName && !IsLevelDestroyed(li.scene.name)) {
if (li.sceneName != sceneName && !IsLevelDestroyed(li.sceneName)) {
int damage = (int)(li.enemies.Values.Sum(x => x) * timeSpent / 10);
li.hp = Math.Clamp(li.hp - damage, 0, li.maxHp);
}
@@ -71,14 +70,14 @@ public class GameController : MonoBehaviour
void SpawnEnemies(string sceneName, float timeSpent) {
int enemiesToAdd = (int)(timeSpent / 10) + 1;
levels.ForEach(li => {
if (li.scene.name == sceneName || IsLevelDestroyed(li.scene.name)) return;
for (int i = 0; i < enemiesToAdd; ++i) AddEnemyInLevel(SelectEnemyWeighted().prefab, li.scene.name);
if (li.sceneName == sceneName || IsLevelDestroyed(li.sceneName)) return;
for (int i = 0; i < enemiesToAdd; ++i) AddEnemyInLevel(SelectEnemyWeighted().prefab, li.sceneName);
});
}
void AddBullets() {
levels.ForEach(li => {
if (!IsLevelDestroyed(li.scene.name) && li.factory != BulletType.None) inventory[li.factory] += 10;
if (!IsLevelDestroyed(li.sceneName) && li.factory != BulletType.None) inventory[li.factory] += 10;
});
}
@@ -108,7 +107,7 @@ public class GameController : MonoBehaviour
}
public void LoadDeployScene() {
SceneManager.LoadScene(deployScene.name);
SceneManager.LoadScene(deploySceneName);
}
public static void SetCursorState(bool locked) {
@@ -145,7 +144,7 @@ public class GameController : MonoBehaviour
[Serializable]
public struct LevelInfo {
public SceneAsset scene;
public string sceneName;
public int hp;
public int maxHp;
public BulletType factory;
@@ -5,9 +5,6 @@ EditorBuildSettings:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Scenes:
- enabled: 1
path: Assets/Scenes/Composing.unity
guid: 4be9044832449a14384b79b9da7005b1
- enabled: 1
path: Assets/Scenes/DeployMenu.unity
guid: 3dbb8dbb9a7a2f2a0bd1311c83d35a6a