- Moved background sprites to the shared project. - The debug textures of physics bodies have a maximum size of 128x128 pixels to prevent large bodies from taking up excessive amounts of memory. - Attacks can be set to only affect humans.
51 lines
1.7 KiB
C#
51 lines
1.7 KiB
C#
using Microsoft.Xna.Framework;
|
|
using Microsoft.Xna.Framework.Graphics;
|
|
|
|
namespace Barotrauma
|
|
{
|
|
partial class Level
|
|
{
|
|
private LevelRenderer renderer;
|
|
|
|
private BackgroundCreatureManager backgroundCreatureManager;
|
|
|
|
public void DrawFront(SpriteBatch spriteBatch)
|
|
{
|
|
if (renderer == null) return;
|
|
renderer.Draw(spriteBatch);
|
|
|
|
if (GameMain.DebugDraw)
|
|
{
|
|
foreach (InterestingPosition pos in positionsOfInterest)
|
|
{
|
|
Color color = Color.Yellow;
|
|
if (pos.PositionType == PositionType.Cave)
|
|
{
|
|
color = Color.DarkOrange;
|
|
}
|
|
else if (pos.PositionType == PositionType.Ruin)
|
|
{
|
|
color = Color.LightGray;
|
|
}
|
|
|
|
|
|
GUI.DrawRectangle(spriteBatch, new Vector2(pos.Position.X - 15.0f, -pos.Position.Y - 15.0f), new Vector2(30.0f, 30.0f), color, true);
|
|
}
|
|
}
|
|
}
|
|
|
|
public void DrawBack(GraphicsDevice graphics, SpriteBatch spriteBatch, Camera cam, BackgroundCreatureManager backgroundCreatureManager = null)
|
|
{
|
|
float brightness = MathHelper.Clamp(50.0f + (cam.Position.Y - Size.Y) / 2000.0f, 10.0f, 40.0f);
|
|
|
|
float avgValue = (backgroundColor.R + backgroundColor.G + backgroundColor.G) / 3;
|
|
GameMain.LightManager.AmbientLight = new Color(backgroundColor * (brightness / avgValue), 1.0f);
|
|
|
|
graphics.Clear(backgroundColor);
|
|
|
|
if (renderer == null) return;
|
|
renderer.DrawBackground(spriteBatch, cam, backgroundSpriteManager, backgroundCreatureManager);
|
|
}
|
|
}
|
|
}
|