/// <summary> /// Initializes a new Minimap class. /// </summary> /// <param name="entityComposer">The EntityComposer.</param> public Minimap(EntityComposer entityComposer) { _enemyPositions = new List<Vector2>(); _currentEntityComposer = entityComposer; _projectilePositions = new List<Vector2>(); _magicNumberX = 800/Width; _magicNumberY = 800/Height; Visible = true; _minimap = SGL.QueryComponents<ContentManager>().Load<Texture2D>("minimap.png"); }
/// <summary> /// Initializes a new Minimap class. /// </summary> /// <param name="entityComposer">The EntityComposer.</param> public Minimap(EntityComposer entityComposer) { _enemyPositions = new List <Vector2>(); _currentEntityComposer = entityComposer; _projectilePositions = new List <Vector2>(); _magicNumberX = 800 / Width; _magicNumberY = 800 / Height; Visible = true; _minimap = SGL.QueryComponents <ContentManager>().Load <Texture2D>("minimap.png"); }
/// <summary> /// Initializes a new DebugDisplay class. /// </summary> /// <param name="entityComposer">The EntityComposer.</param> public DebugDisplay(EntityComposer entityComposer) { _currentEntityComposer = entityComposer; _gameLoop = SGL.QueryComponents<GameLoop>(); _font = new Font("Segoe UI", 12, TypefaceStyle.Regular); _cpuWatcher = new CpuWatcher(); _memoryWatcher = new MemoryWatcher(); _threadWatcher = new ThreadWatcher(); _display = new Rectangle(0, 0, 800, 480); _debugMessage = "Query information ..."; _pen = new Pen(Color.Green, 1); _pen2 = new Pen(Color.Red, 1); _pen3 = new Pen(Color.Blue, 1); _cpuWatcher.Start(); _memoryWatcher.Start(); _threadWatcher.Start(); }
/// <summary> /// Initializes a new DebugDisplay class. /// </summary> /// <param name="entityComposer">The EntityComposer.</param> public DebugDisplay(EntityComposer entityComposer) { _currentEntityComposer = entityComposer; _gameLoop = SGL.QueryComponents <GameLoop>(); _font = new Font("Segoe UI", 12, TypefaceStyle.Regular); _cpuWatcher = new CpuWatcher(); _memoryWatcher = new MemoryWatcher(); _threadWatcher = new ThreadWatcher(); _display = new Rectangle(0, 0, 800, 480); _debugMessage = "Query information ..."; _pen = new Pen(Color.Green, 1); _pen2 = new Pen(Color.Red, 1); _pen3 = new Pen(Color.Blue, 1); _cpuWatcher.Start(); _memoryWatcher.Start(); _threadWatcher.Start(); }
/// <summary> /// Called if the scene is activated. /// </summary> public override void OnSceneActivated() { _entityComposer = new EntityComposer(); _scoreBoard = new Scoreboard(); _debugDisplay = new DebugDisplay(_entityComposer) { Visible = false }; _minimap = new Minimap(_entityComposer); _blackBlend = new BlackBlend { FadeIn = true }; //load achievements var xmlManager = new XmlManager <AchievementManager>(); try { _entityComposer.AchievementManager = xmlManager.Load(Path.Combine(Environment.CurrentDirectory, "achievements.xml")); } catch { _entityComposer.AchievementManager = new AchievementManager(); _entityComposer.AchievementManager.Achievements.Add(new EnemyDestroyedAchievement()); _entityComposer.AchievementManager.Achievements.Add(new ScoreAchievement()); _entityComposer.AchievementManager.Achievements.Add(new SustainAchievement()); _entityComposer.AchievementManager.Achievements.Add(new LasterTimeAchievement()); System.Diagnostics.Debug.WriteLine("Unable to load achievements."); } _achievementControl = new AchievementControl(UIManager); _achievementControl.Visible = false; _achievementsOpen = false; _achievementControl.AchievementManager = _entityComposer.AchievementManager; #if AUDIO_ENABLED //AudioManager.Instance.Sound.Play(SGL.QueryResource<Sound>("gameMusic.mp3"), PlayMode.Loop); #endif }
private GameObject prefabCell; // Префаб клетки public void Spawn(int width, int height, int countHouse = 2) { float offsetX = width / 2; float offsetZ = height / 2; // List<Point> indexHouses = RandomPoint(height, width, countHouse); List <Position> indexHouses = new List <Position>() { new Position(0, 0), new Position(3, 3) }; for (int z = 0; z < height; z++) { for (int x = 0; x < width; x++) { // Создание игровой клетки var actor = this.Populate <Actor>(Pool.Entities, prefabCell, new Vector3(x - offsetX, 0, z - offsetZ)); actor.selfTransform.name = "Cell z:" + z + " x:" + x; if (indexHouses.Count <= 0) { continue; } Position point = new Position(z, x); if (indexHouses.Contains(point)) { // Добавление компонента к сущности var composer = new EntityComposer(actor.entity, 1); composer.Add <ComponentHouse>(); composer.Deploy(); } } } }
/// <summary> /// Called if the scene is activated. /// </summary> public override void OnSceneActivated() { _entityComposer = new EntityComposer(); _scoreBoard = new Scoreboard(); _debugDisplay = new DebugDisplay(_entityComposer) {Visible = false}; _minimap = new Minimap(_entityComposer); _blackBlend = new BlackBlend {FadeIn = true}; //load achievements var xmlManager = new XmlManager<AchievementManager>(); try { _entityComposer.AchievementManager = xmlManager.Load(Path.Combine(Environment.CurrentDirectory, "achievements.xml")); } catch { _entityComposer.AchievementManager = new AchievementManager(); _entityComposer.AchievementManager.Achievements.Add(new EnemyDestroyedAchievement()); _entityComposer.AchievementManager.Achievements.Add(new ScoreAchievement()); _entityComposer.AchievementManager.Achievements.Add(new SustainAchievement()); _entityComposer.AchievementManager.Achievements.Add(new LasterTimeAchievement()); System.Diagnostics.Debug.WriteLine("Unable to load achievements."); } _achievementControl = new AchievementControl(UIManager); _achievementControl.Visible = false; _achievementsOpen = false; _achievementControl.AchievementManager = _entityComposer.AchievementManager; #if AUDIO_ENABLED //AudioManager.Instance.Sound.Play(SGL.QueryResource<Sound>("gameMusic.mp3"), PlayMode.Loop); #endif }