// TODO: Refactor private IEnumerable <IGameObject> CreateLobbyGameObjects(IGameScene gameScene) { // Guardian Game Object #1 { var id = idGenerator.GenerateId(); var position = new Vector2(-14.24f, -2.025f); var guardian = new GuardianGameObject(id, position, new IComponent[] { new PresenceMapProvider(gameScene), new GuardianIdleBehaviour(text: "Hello", time: 1) }); yield return(guardian); } // Portal Game Object #2 { var id = idGenerator.GenerateId(); var position = new Vector2(-17.125f, -1.5f); var portal = new PortalGameObject(id, position, new IComponent[] { new PresenceMapProvider(gameScene), new PortalData(map: (byte)Map.TheDarkForest) }); yield return(portal); } }
// TODO: Refactor private IEnumerable <IGameObject> CreateTheDarkForestGameObjects(IGameScene gameScene) { // Blue Snail Game Object #1 { var id = idGenerator.GenerateId(); var position = new Vector2(-2f, -8.2f); var coroutineRunner = gameScene.PhysicsExecutor.GetCoroutineRunner(); var physicsWorldManager = gameScene.PhysicsWorldManager; var blueSnail = new BlueSnailGameObject(id, position, new IComponent[] { new PresenceMapProvider(gameScene), new BlueSnailMoveBehaviour(coroutineRunner, physicsWorldManager) }); var bodyData = blueSnail.CreateBodyData(); gameScene.PhysicsWorldManager.AddBody(bodyData); yield return(blueSnail); } // Portal Game Object #2 { var id = idGenerator.GenerateId(); var position = new Vector2(12.5f, -1.125f); var portal = new PortalGameObject(id, position, new IComponent[] { new PresenceMapProvider(gameScene), new PortalData(map: (byte)Map.Lobby) }); yield return(portal); } }