private void generateNewBackgroundObject() { BackgroundObject bgObject = new BackgroundObject(); bgObject.Texture = getRandomBGTexture(); bgObject.Width = bgObject.Texture.Width; bgObject.Height = bgObject.Texture.Height; bgObject.Color = defaultBGObjectColor; bgObject = placeOnRandomLayer(bgObject); bgObject.Active = true; bgSprites.Add(bgObject); }
private BackgroundObject placeOnRandomLayer(BackgroundObject bgObject) { // Layer 1 is the foremost, layer 3 is the furthest away int randomLayer = RandomHandler.GetRandomInt(1, 3); bgObject.Speed = 4 - randomLayer; float yPos = yCreationPos[3 - randomLayer], layerDepth = 1f; bgObject.Move(xCreationPos, yPos); switch (randomLayer) { case 1: layerDepth = 0.1f; break; case 2: layerDepth = 0.3f; break; case 3: layerDepth = 0.9f; break; } bgObject.LayerDepth = layerDepth + RandomHandler.GetRandomFloat(0.001f); //bgObject.ScaleFactor = scaleValues[randomLayer - 1]; /*float scaleFactor = 0f; switch (randomLayer) { case 1: scaleFactor = 0.75f; break; case 2: scaleFactor = 1f; break; case 3: scaleFactor = 1.25f; break; }*/ bgObject.ScaleToTheBeat = scaleValues[randomLayer - 1]; return bgObject; }
private void createFog() { for (int i = 0; i < 3; i++) { fog = new BackgroundObject(); fog.Texture = fogTextures[0]; fog.Width = fog.Texture.Width; fog.Height = Controller.TOTAL_HEIGHT; fog.Color = Color.White; fog.Active = true; float layerDepth = 0f; switch (i) { case 0: layerDepth = 0.19f; break; case 1: layerDepth = 0.59f; break; case 2: layerDepth = 0.99f; break; } fog.LayerDepth = layerDepth; fog.Speed = 0f; fog.ScaleFactor = 1f; fog.IsFog = true; fog.Move(0, 0); bgSprites.Add(fog); } }