Round end cinematic, CoroutineManager deltatime
This commit is contained in:
Binary file not shown.
@@ -121,8 +121,9 @@
|
|||||||
<Compile Include="Source\Map\Levels\LevelRenderer.cs" />
|
<Compile Include="Source\Map\Levels\LevelRenderer.cs" />
|
||||||
<Compile Include="Source\Map\Levels\WrappingWall.cs" />
|
<Compile Include="Source\Map\Levels\WrappingWall.cs" />
|
||||||
<Compile Include="Source\Map\Lights\LightSource.cs" />
|
<Compile Include="Source\Map\Lights\LightSource.cs" />
|
||||||
<Compile Include="Source\Map\LocationType.cs" />
|
<Compile Include="Source\Map\Map\LocationType.cs" />
|
||||||
<Compile Include="Source\Map\SubmarineBody.cs" />
|
<Compile Include="Source\Map\SubmarineBody.cs" />
|
||||||
|
<Compile Include="Source\Map\TransitionCinematic.cs" />
|
||||||
<Compile Include="Source\Networking\BanList.cs" />
|
<Compile Include="Source\Networking\BanList.cs" />
|
||||||
<Compile Include="Source\Networking\NetConfig.cs" />
|
<Compile Include="Source\Networking\NetConfig.cs" />
|
||||||
<Compile Include="Source\Networking\NetStats.cs" />
|
<Compile Include="Source\Networking\NetStats.cs" />
|
||||||
@@ -200,8 +201,8 @@
|
|||||||
<Compile Include="Source\Map\Levels\Level.cs" />
|
<Compile Include="Source\Map\Levels\Level.cs" />
|
||||||
<Compile Include="Source\Map\Lights\ConvexHull.cs" />
|
<Compile Include="Source\Map\Lights\ConvexHull.cs" />
|
||||||
<Compile Include="Source\Map\Lights\LightManager.cs" />
|
<Compile Include="Source\Map\Lights\LightManager.cs" />
|
||||||
<Compile Include="Source\Map\Location.cs" />
|
<Compile Include="Source\Map\Map\Location.cs" />
|
||||||
<Compile Include="Source\Map\Map.cs" />
|
<Compile Include="Source\Map\Map\Map.cs" />
|
||||||
<Compile Include="Source\Map\Md5Hash.cs" />
|
<Compile Include="Source\Map\Md5Hash.cs" />
|
||||||
<Compile Include="Source\Map\Levels\Voronoi.cs" />
|
<Compile Include="Source\Map\Levels\Voronoi.cs" />
|
||||||
<Compile Include="Source\Map\Levels\VoronoiElements.cs" />
|
<Compile Include="Source\Map\Levels\VoronoiElements.cs" />
|
||||||
@@ -239,7 +240,7 @@
|
|||||||
<Compile Include="Source\Map\Submarine.cs" />
|
<Compile Include="Source\Map\Submarine.cs" />
|
||||||
<Compile Include="Source\Map\Structure.cs" />
|
<Compile Include="Source\Map\Structure.cs" />
|
||||||
<Compile Include="Source\Map\StructurePrefab.cs" />
|
<Compile Include="Source\Map\StructurePrefab.cs" />
|
||||||
<Compile Include="Source\Map\WaterRenderer.cs" />
|
<Compile Include="Source\Map\Levels\WaterRenderer.cs" />
|
||||||
<Compile Include="Source\Map\WayPoint.cs" />
|
<Compile Include="Source\Map\WayPoint.cs" />
|
||||||
<Compile Include="Source\Networking\GameClient.cs" />
|
<Compile Include="Source\Networking\GameClient.cs" />
|
||||||
<Compile Include="Source\Networking\GameServer.cs" />
|
<Compile Include="Source\Networking\GameServer.cs" />
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
linkable="true"
|
linkable="true"
|
||||||
pickdistance="150">
|
pickdistance="150">
|
||||||
|
|
||||||
<Sprite texture ="railgunbase.png"/>
|
<Sprite texture ="railgunbase.png" depth = "0.01"/>
|
||||||
|
|
||||||
<Turret barrelsprite="railgunbarrel.png" canbeselected = "true" linkable="true" origin="0.5, 0.85" barrelpos="128, 128"
|
<Turret barrelsprite="railgunbarrel.png" canbeselected = "true" linkable="true" origin="0.5, 0.85" barrelpos="128, 128"
|
||||||
rotationlimits="180,360"
|
rotationlimits="180,360"
|
||||||
|
|||||||
@@ -1108,11 +1108,11 @@ namespace Barotrauma
|
|||||||
float timer = 0.0f;
|
float timer = 0.0f;
|
||||||
|
|
||||||
Color prevAmbientLight = GameMain.LightManager.AmbientLight;
|
Color prevAmbientLight = GameMain.LightManager.AmbientLight;
|
||||||
Color darkLight = new Color(0.2f,0.2f,0.2f, 1.0f);
|
Color darkLight = new Color(0.2f, 0.2f, 0.2f, 1.0f);
|
||||||
|
|
||||||
while (timer < dimDuration)
|
while (timer < dimDuration)
|
||||||
{
|
{
|
||||||
timer += 1.0f / 60.0f;
|
timer += CoroutineManager.DeltaTime;
|
||||||
|
|
||||||
if (controlled == this)
|
if (controlled == this)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ namespace Barotrauma
|
|||||||
{
|
{
|
||||||
static List<IEnumerator<object>> Coroutines = new List<IEnumerator<object>>();
|
static List<IEnumerator<object>> Coroutines = new List<IEnumerator<object>>();
|
||||||
|
|
||||||
|
public static float DeltaTime;
|
||||||
|
|
||||||
// Starting a coroutine just means adding an enumerator to the list.
|
// Starting a coroutine just means adding an enumerator to the list.
|
||||||
// You might also want to be able to stop coroutines or delete them,
|
// You might also want to be able to stop coroutines or delete them,
|
||||||
// which might mean putting them into a dictionary
|
// which might mean putting them into a dictionary
|
||||||
@@ -42,6 +44,8 @@ namespace Barotrauma
|
|||||||
// Updating just means stepping through all the coroutines
|
// Updating just means stepping through all the coroutines
|
||||||
public static void Update(float deltaTime)
|
public static void Update(float deltaTime)
|
||||||
{
|
{
|
||||||
|
DeltaTime = deltaTime;
|
||||||
|
|
||||||
for (int i = Coroutines.Count-1; i>=0; i--)
|
for (int i = Coroutines.Count-1; i>=0; i--)
|
||||||
{
|
{
|
||||||
if (Coroutines[i].Current != null)
|
if (Coroutines[i].Current != null)
|
||||||
|
|||||||
@@ -20,12 +20,12 @@ namespace Barotrauma
|
|||||||
{
|
{
|
||||||
public static GUIStyle Style;
|
public static GUIStyle Style;
|
||||||
|
|
||||||
static Texture2D t;
|
private static Texture2D t;
|
||||||
public static SpriteFont Font, SmallFont, LargeFont;
|
public static SpriteFont Font, SmallFont, LargeFont;
|
||||||
|
|
||||||
private static Sprite cursor;
|
private static Sprite cursor;
|
||||||
|
|
||||||
private static GraphicsDevice graphicsDevice;
|
private static GraphicsDevice graphicsDevice;
|
||||||
|
|
||||||
private static List<GUIMessage> messages = new List<GUIMessage>();
|
private static List<GUIMessage> messages = new List<GUIMessage>();
|
||||||
|
|
||||||
@@ -34,6 +34,8 @@ namespace Barotrauma
|
|||||||
private static bool pauseMenuOpen;
|
private static bool pauseMenuOpen;
|
||||||
private static GUIFrame pauseMenu;
|
private static GUIFrame pauseMenu;
|
||||||
|
|
||||||
|
public static Color ScreenOverlayColor;
|
||||||
|
|
||||||
public static void Init(ContentManager content)
|
public static void Init(ContentManager content)
|
||||||
{
|
{
|
||||||
GUI.Font = ToolBox.TryLoadFont("SpriteFont1", content);
|
GUI.Font = ToolBox.TryLoadFont("SpriteFont1", content);
|
||||||
@@ -60,8 +62,7 @@ namespace Barotrauma
|
|||||||
|
|
||||||
// create 1x1 texture for line drawing
|
// create 1x1 texture for line drawing
|
||||||
t = new Texture2D(graphicsDevice, 1, 1);
|
t = new Texture2D(graphicsDevice, 1, 1);
|
||||||
t.SetData<Color>(
|
t.SetData(new Color[] { Color.White });// fill the texture with white
|
||||||
new Color[] { Color.White });// fill the texture with white
|
|
||||||
|
|
||||||
Style = new GUIStyle("Content/UI/style.xml");
|
Style = new GUIStyle("Content/UI/style.xml");
|
||||||
}
|
}
|
||||||
@@ -294,6 +295,14 @@ namespace Barotrauma
|
|||||||
|
|
||||||
public static void Draw(float deltaTime, SpriteBatch spriteBatch, Camera cam)
|
public static void Draw(float deltaTime, SpriteBatch spriteBatch, Camera cam)
|
||||||
{
|
{
|
||||||
|
if (ScreenOverlayColor.A>0.0f)
|
||||||
|
{
|
||||||
|
DrawRectangle(
|
||||||
|
spriteBatch,
|
||||||
|
new Rectangle(0, 0, GameMain.GraphicsWidth, GameMain.GraphicsHeight),
|
||||||
|
ScreenOverlayColor, true);
|
||||||
|
}
|
||||||
|
|
||||||
spriteBatch.DrawString(Font,
|
spriteBatch.DrawString(Font,
|
||||||
"FPS: " + (int)GameMain.FrameCounter.AverageFramesPerSecond,
|
"FPS: " + (int)GameMain.FrameCounter.AverageFramesPerSecond,
|
||||||
new Vector2(10, 10), Color.White);
|
new Vector2(10, 10), Color.White);
|
||||||
|
|||||||
@@ -234,10 +234,25 @@ namespace Barotrauma
|
|||||||
|
|
||||||
private bool EndShift(GUIButton button, object obj)
|
private bool EndShift(GUIButton button, object obj)
|
||||||
{
|
{
|
||||||
End("");
|
var cinematic = new TransitionCinematic(Submarine.Loaded, GameMain.GameScreen.Cam);
|
||||||
|
|
||||||
|
CoroutineManager.StartCoroutine(EndCinematic(cinematic));
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private IEnumerable<object> EndCinematic(TransitionCinematic cinematic)
|
||||||
|
{
|
||||||
|
while (cinematic.Running)
|
||||||
|
{
|
||||||
|
yield return CoroutineStatus.Running;
|
||||||
|
}
|
||||||
|
|
||||||
|
End("");
|
||||||
|
|
||||||
|
yield return CoroutineStatus.Success;
|
||||||
|
}
|
||||||
|
|
||||||
public void Save(XElement element)
|
public void Save(XElement element)
|
||||||
{
|
{
|
||||||
//element.Add(new XAttribute("day", day));
|
//element.Add(new XAttribute("day", day));
|
||||||
|
|||||||
@@ -87,6 +87,12 @@ namespace Barotrauma
|
|||||||
private set;
|
private set;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Body[] ShaftBodies
|
||||||
|
{
|
||||||
|
get;
|
||||||
|
private set;
|
||||||
|
}
|
||||||
|
|
||||||
public Level(string seed, float difficulty, int width, int height, int siteInterval)
|
public Level(string seed, float difficulty, int width, int height, int siteInterval)
|
||||||
{
|
{
|
||||||
this.seed = seed;
|
this.seed = seed;
|
||||||
@@ -333,14 +339,14 @@ namespace Barotrauma
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ShaftBodies = new Body[2];
|
||||||
for (int i = 0; i < 2; i++)
|
for (int i = 0; i < 2; i++)
|
||||||
{
|
{
|
||||||
Body shaftBody = BodyFactory.CreateRectangle(GameMain.World, 100.0f, 10.0f, 5.0f);
|
ShaftBodies[i] = BodyFactory.CreateRectangle(GameMain.World, 100.0f, 10.0f, 5.0f);
|
||||||
shaftBody.BodyType = BodyType.Kinematic;
|
ShaftBodies[i].BodyType = BodyType.Static;
|
||||||
shaftBody.CollisionCategories = Physics.CollisionLevel;
|
ShaftBodies[i].CollisionCategories = Physics.CollisionLevel;
|
||||||
shaftBody.SetTransform(ConvertUnits.ToSimUnits((i == 0) ? startPosition : endPosition), 0.0f);
|
ShaftBodies[i].SetTransform(ConvertUnits.ToSimUnits((i == 0) ? startPosition : endPosition), 0.0f);
|
||||||
shaftBody.SleepingAllowed = false;
|
bodies.Add(ShaftBodies[i]);
|
||||||
bodies.Add(shaftBody);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (VoronoiCell cell in cells)
|
foreach (VoronoiCell cell in cells)
|
||||||
|
|||||||
@@ -175,13 +175,11 @@ namespace Barotrauma
|
|||||||
basicEffect.TextureEnabled = false;
|
basicEffect.TextureEnabled = false;
|
||||||
basicEffect.CurrentTechnique = basicEffect.Techniques["BasicEffect_VertexColor"];
|
basicEffect.CurrentTechnique = basicEffect.Techniques["BasicEffect_VertexColor"];
|
||||||
basicEffect.CurrentTechnique.Passes[0].Apply();
|
basicEffect.CurrentTechnique.Passes[0].Apply();
|
||||||
|
|
||||||
|
|
||||||
graphicsDevice.DrawPrimitives(PrimitiveType.TriangleList, 0, (int)Math.Floor(bodyVertices.VertexCount / 3.0f));
|
graphicsDevice.DrawPrimitives(PrimitiveType.TriangleList, 0, (int)Math.Floor(bodyVertices.VertexCount / 3.0f));
|
||||||
|
|
||||||
for (int side = 0; side < 2; side++)
|
for (int side = 0; side < 2; side++)
|
||||||
{
|
{
|
||||||
|
|
||||||
for (int i = 0; i < 2; i++)
|
for (int i = 0; i < 2; i++)
|
||||||
{
|
{
|
||||||
graphicsDevice.SetVertexBuffer(level.WrappingWalls[side, i].BodyVertices);
|
graphicsDevice.SetVertexBuffer(level.WrappingWalls[side, i].BodyVertices);
|
||||||
@@ -189,7 +187,6 @@ namespace Barotrauma
|
|||||||
graphicsDevice.DrawPrimitives(
|
graphicsDevice.DrawPrimitives(
|
||||||
PrimitiveType.TriangleList, 0,
|
PrimitiveType.TriangleList, 0,
|
||||||
(int)Math.Floor(level.WrappingWalls[side, i].BodyVertices.VertexCount / 3.0f));
|
(int)Math.Floor(level.WrappingWalls[side, i].BodyVertices.VertexCount / 3.0f));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,73 @@
|
|||||||
|
using FarseerPhysics;
|
||||||
|
using Microsoft.Xna.Framework;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace Barotrauma
|
||||||
|
{
|
||||||
|
class TransitionCinematic
|
||||||
|
{
|
||||||
|
public bool Running
|
||||||
|
{
|
||||||
|
get;
|
||||||
|
private set;
|
||||||
|
}
|
||||||
|
|
||||||
|
public TransitionCinematic(Submarine submarine, Camera cam)
|
||||||
|
{
|
||||||
|
Vector2 targetPos = submarine.Position;
|
||||||
|
|
||||||
|
if (submarine.AtEndPosition)
|
||||||
|
{
|
||||||
|
targetPos = Level.Loaded.EndPosition + Vector2.UnitY * 500.0f;
|
||||||
|
}
|
||||||
|
else if (submarine.AtStartPosition)
|
||||||
|
{
|
||||||
|
targetPos = Level.Loaded.StartPosition + Vector2.UnitY * 500.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
Running = true;
|
||||||
|
CoroutineManager.StartCoroutine(UpdateTransitionCinematic(submarine, cam, targetPos));
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerable<object> UpdateTransitionCinematic(Submarine sub, Camera cam, Vector2 targetPos)
|
||||||
|
{
|
||||||
|
Character.Controlled = null;
|
||||||
|
GameMain.LightManager.LosEnabled = false;
|
||||||
|
|
||||||
|
Vector2 diff = targetPos - sub.Position;
|
||||||
|
float targetSpeed = 10.0f;
|
||||||
|
|
||||||
|
Level.Loaded.ShaftBodies[0].Enabled = false;
|
||||||
|
Level.Loaded.ShaftBodies[1].Enabled = false;
|
||||||
|
|
||||||
|
cam.TargetPos = Vector2.Zero;
|
||||||
|
float duration = 5.0f;
|
||||||
|
float timer = 0.0f;
|
||||||
|
|
||||||
|
while (timer < duration)
|
||||||
|
{
|
||||||
|
Vector2 cameraPos = sub.Position;
|
||||||
|
cameraPos.Y = ConvertUnits.ToDisplayUnits(Level.Loaded.ShaftBodies[0].Position.Y) - cam.WorldView.Height/2.0f;
|
||||||
|
|
||||||
|
GUI.ScreenOverlayColor = Color.Lerp(Color.TransparentBlack, Color.Black, timer/duration);
|
||||||
|
|
||||||
|
cam.Translate((cameraPos - cam.Position) * CoroutineManager.DeltaTime);
|
||||||
|
|
||||||
|
cam.Zoom = Math.Max(0.2f, cam.Zoom - CoroutineManager.DeltaTime * 0.1f);
|
||||||
|
sub.ApplyForce((Vector2.Normalize(diff) * targetSpeed - sub.Velocity) * 500.0f);
|
||||||
|
|
||||||
|
timer -= CoroutineManager.DeltaTime;
|
||||||
|
|
||||||
|
yield return CoroutineStatus.Running;
|
||||||
|
}
|
||||||
|
|
||||||
|
Running = false;
|
||||||
|
|
||||||
|
yield return CoroutineStatus.Success;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -19,7 +19,7 @@ namespace Barotrauma
|
|||||||
public const Category CollisionLevel = Category.Cat7;
|
public const Category CollisionLevel = Category.Cat7;
|
||||||
|
|
||||||
public static double accumulator;
|
public static double accumulator;
|
||||||
public static double step = 1.0f/60.0f;
|
public static double step = 1.0/60.0;
|
||||||
|
|
||||||
public const float DisplayToSimRation = 100.0f;
|
public const float DisplayToSimRation = 100.0f;
|
||||||
|
|
||||||
|
|||||||
@@ -153,6 +153,8 @@ namespace Barotrauma
|
|||||||
{
|
{
|
||||||
base.Select();
|
base.Select();
|
||||||
|
|
||||||
|
GUI.ScreenOverlayColor = Color.Transparent;
|
||||||
|
|
||||||
gameMode = GameMain.GameSession.gameMode as SinglePlayerMode;
|
gameMode = GameMain.GameSession.gameMode as SinglePlayerMode;
|
||||||
|
|
||||||
foreach (GUIComponent component in topPanel.children)
|
foreach (GUIComponent component in topPanel.children)
|
||||||
@@ -163,8 +165,6 @@ namespace Barotrauma
|
|||||||
button.Enabled = GameMain.GameSession.Map.CurrentLocation.Type.HasHireableCharacters;
|
button.Enabled = GameMain.GameSession.Map.CurrentLocation.Type.HasHireableCharacters;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
//hireButton.Enabled = location.Type.HasHireableCharacters;
|
|
||||||
|
|
||||||
|
|
||||||
UpdateCharacterLists();
|
UpdateCharacterLists();
|
||||||
}
|
}
|
||||||
@@ -201,11 +201,7 @@ namespace Barotrauma
|
|||||||
c.Salary.ToString(),
|
c.Salary.ToString(),
|
||||||
null, null,
|
null, null,
|
||||||
Alignment.TopRight, GUI.Style, frame);
|
Alignment.TopRight, GUI.Style, frame);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//(topPanel.FindChild(PanelTab.CurrentLocation) as GUIButton).Enabled = false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -282,8 +282,8 @@ namespace Barotrauma
|
|||||||
public override void Select()
|
public override void Select()
|
||||||
{
|
{
|
||||||
GameMain.LightManager.LosEnabled = false;
|
GameMain.LightManager.LosEnabled = false;
|
||||||
|
|
||||||
//infoFrame.ClearChildren();
|
GUI.ScreenOverlayColor = Color.Transparent;
|
||||||
|
|
||||||
textBox.Select();
|
textBox.Select();
|
||||||
|
|
||||||
@@ -297,8 +297,7 @@ namespace Barotrauma
|
|||||||
serverMessage.Enabled = GameMain.Server != null;
|
serverMessage.Enabled = GameMain.Server != null;
|
||||||
autoRestartBox.Enabled = GameMain.Server != null;
|
autoRestartBox.Enabled = GameMain.Server != null;
|
||||||
ServerName = (GameMain.Server==null) ? "Server" : GameMain.Server.Name;
|
ServerName = (GameMain.Server==null) ? "Server" : GameMain.Server.Name;
|
||||||
|
|
||||||
|
|
||||||
infoFrame.RemoveChild(infoFrame.children.Find(c => c.UserData as string == "startButton"));
|
infoFrame.RemoveChild(infoFrame.children.Find(c => c.UserData as string == "startButton"));
|
||||||
infoFrame.RemoveChild(infoFrame.children.Find(c => c.UserData as string == "settingsButton"));
|
infoFrame.RemoveChild(infoFrame.children.Find(c => c.UserData as string == "settingsButton"));
|
||||||
infoFrame.RemoveChild(infoFrame.children.Find(c => c.UserData as string == "spectateButton"));
|
infoFrame.RemoveChild(infoFrame.children.Find(c => c.UserData as string == "spectateButton"));
|
||||||
|
|||||||
@@ -197,13 +197,13 @@ namespace Barotrauma
|
|||||||
|
|
||||||
public void Draw(SpriteBatch spriteBatch, Vector2 pos, Color color, Vector2 origin, float rotate, Vector2 scale, SpriteEffects spriteEffect = SpriteEffects.None, float? depth = null)
|
public void Draw(SpriteBatch spriteBatch, Vector2 pos, Color color, Vector2 origin, float rotate, Vector2 scale, SpriteEffects spriteEffect = SpriteEffects.None, float? depth = null)
|
||||||
{
|
{
|
||||||
//for (int x = -1; x < 3; x+=2 )
|
//for (int x = -1; x < 3; x += 2)
|
||||||
//{
|
//{
|
||||||
// for (int y = -1; y < 3; y+=2 )
|
// for (int y = -1; y < 3; y += 2)
|
||||||
// {
|
// {
|
||||||
|
|
||||||
// spriteBatch.Draw(texture, pos + offset + new Vector2(x, y)*1.0f, sourceRect, Color.Black, rotation + rotate, origin, scale, spriteEffect, (depth == null ? this.depth : (float)depth)+0.0001f);
|
// spriteBatch.Draw(texture, pos + offset + new Vector2(x, y) * 1.0f, sourceRect, Color.Black, rotation + rotate, origin, scale, spriteEffect, (depth == null ? this.depth : (float)depth) + 0.0001f);
|
||||||
// }
|
// }
|
||||||
//}
|
//}
|
||||||
|
|
||||||
spriteBatch.Draw(texture, pos + offset, sourceRect, color, rotation + rotate, origin, scale, spriteEffect, depth == null ? this.depth : (float)depth);
|
spriteBatch.Draw(texture, pos + offset, sourceRect, color, rotation + rotate, origin, scale, spriteEffect, depth == null ? this.depth : (float)depth);
|
||||||
|
|||||||
Reference in New Issue
Block a user