Dragging bodies up stairs, attempt to fix legs going through torso, fixe GuiComponent.MouseOn getting stuck when switching to edit screen
This commit is contained in:
@@ -565,9 +565,15 @@
|
|||||||
<Content Include="Content\Lights\visioncircle.png">
|
<Content Include="Content\Lights\visioncircle.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
|
<Content Include="Content\Map\beaconbackground.jpg">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
<Content Include="Content\Map\beaconSymbol.png">
|
<Content Include="Content\Map\beaconSymbol.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
|
<Content Include="Content\Map\citybackground.jpg">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
<Content Include="Content\Map\citySymbol.png">
|
<Content Include="Content\Map\citySymbol.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
@@ -586,6 +592,9 @@
|
|||||||
<Content Include="Content\Map\locationNames.txt">
|
<Content Include="Content\Map\locationNames.txt">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
|
<Content Include="Content\Map\militarybackground.jpg">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
<Content Include="Content\Map\militarySymbol.png">
|
<Content Include="Content\Map\militarySymbol.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
@@ -597,6 +606,7 @@
|
|||||||
</Content>
|
</Content>
|
||||||
<Content Include="Content\Map\locationTypes.xml">
|
<Content Include="Content\Map\locationTypes.xml">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
<SubType>Designer</SubType>
|
||||||
</Content>
|
</Content>
|
||||||
<Content Include="Content\Particles\fire.png">
|
<Content Include="Content\Particles\fire.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
|||||||
@@ -91,13 +91,13 @@
|
|||||||
<joint limb1="4" limb1anchor="0,-16" limb2="5" limb2anchor="-2,19" lowerlimit="0" upperlimit="170"/>
|
<joint limb1="4" limb1anchor="0,-16" limb2="5" limb2anchor="-2,19" lowerlimit="0" upperlimit="170"/>
|
||||||
|
|
||||||
<!-- body to left leg -->
|
<!-- body to left leg -->
|
||||||
<joint limb1="12" limb1anchor="0,-1" limb2="6" limb2anchor="0,14" lowerlimit="-30" upperlimit="140"/>
|
<joint limb1="12" limb1anchor="0,-1" limb2="6" limb2anchor="0,14" lowerlimit="-30" upperlimit="120"/>
|
||||||
<joint limb1="6" limb1anchor="0,-15" limb2="7" limb2anchor="0,20" lowerlimit="-140" upperlimit="0"/>
|
<joint limb1="6" limb1anchor="0,-15" limb2="7" limb2anchor="0,20" lowerlimit="-120" upperlimit="0"/>
|
||||||
<joint limb1="7" limb1anchor="-3,-21" limb2="8" limb2anchor="5,7" lowerlimit="20" upperlimit="90"/>
|
<joint limb1="7" limb1anchor="-3,-21" limb2="8" limb2anchor="5,7" lowerlimit="20" upperlimit="90"/>
|
||||||
|
|
||||||
<!-- body to right leg -->
|
<!-- body to right leg -->
|
||||||
<joint limb1="12" limb1anchor="0,-1" limb2="9" limb2anchor="0,14" lowerlimit="-30" upperlimit="140"/>
|
<joint limb1="12" limb1anchor="0,-1" limb2="9" limb2anchor="0,14" lowerlimit="-30" upperlimit="120"/>
|
||||||
<joint limb1="9" limb1anchor="0,-15" limb2="10" limb2anchor="0,20" lowerlimit="-140" upperlimit="0"/>
|
<joint limb1="9" limb1anchor="0,-15" limb2="10" limb2anchor="0,20" lowerlimit="-120" upperlimit="0"/>
|
||||||
<joint limb1="10" limb1anchor="-3,-21" limb2="11" limb2anchor="5,7" lowerlimit="20" upperlimit="90"/>
|
<joint limb1="10" limb1anchor="-3,-21" limb2="11" limb2anchor="5,7" lowerlimit="20" upperlimit="90"/>
|
||||||
|
|
||||||
</ragdoll>
|
</ragdoll>
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 536 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 382 KiB |
@@ -1,7 +1,8 @@
|
|||||||
<locationtypes>
|
<locationtypes>
|
||||||
<None
|
<None
|
||||||
commonness="3"
|
commonness="3"
|
||||||
symbol="Content/Map/beaconSymbol.png">
|
symbol="Content/Map/beaconSymbol.png"
|
||||||
|
background="Content/Map/beaconbackground.jpg">
|
||||||
<nameformats
|
<nameformats
|
||||||
f0="[name]"
|
f0="[name]"
|
||||||
f1="[name]"
|
f1="[name]"
|
||||||
@@ -12,7 +13,8 @@
|
|||||||
<City
|
<City
|
||||||
commonness="3"
|
commonness="3"
|
||||||
hireablecharacters="true"
|
hireablecharacters="true"
|
||||||
symbol="Content/Map/citySymbol.png">
|
symbol="Content/Map/citySymbol.png"
|
||||||
|
background="Content/Map/citybackground.jpg">
|
||||||
<nameformats
|
<nameformats
|
||||||
f0="The City of [name]"
|
f0="The City of [name]"
|
||||||
f1="[name] City"
|
f1="[name] City"
|
||||||
@@ -23,7 +25,8 @@
|
|||||||
<Military
|
<Military
|
||||||
commonness="1"
|
commonness="1"
|
||||||
hireablecharacters="true"
|
hireablecharacters="true"
|
||||||
symbol="Content/Map/militarySymbol.png">
|
symbol="Content/Map/militarySymbol.png"
|
||||||
|
background="Content/Map/militarybackground.jpg">
|
||||||
<nameformats
|
<nameformats
|
||||||
f0="[name] Outpost"
|
f0="[name] Outpost"
|
||||||
f1="[name] Facility"
|
f1="[name] Facility"
|
||||||
@@ -34,7 +37,8 @@
|
|||||||
<Research
|
<Research
|
||||||
commonness="1"
|
commonness="1"
|
||||||
hireablecharacters="true"
|
hireablecharacters="true"
|
||||||
symbol="Content/Map/researchSymbol.png">
|
symbol="Content/Map/researchSymbol.png"
|
||||||
|
background="Content/Map/citybackground.jpg">
|
||||||
<nameformats
|
<nameformats
|
||||||
f0="[name] Research Facility"
|
f0="[name] Research Facility"
|
||||||
f1="[name] Research Center"
|
f1="[name] Research Center"
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 276 KiB |
@@ -2,7 +2,7 @@
|
|||||||
<style>
|
<style>
|
||||||
<GUIFrame
|
<GUIFrame
|
||||||
padding="40.0, 40.0, 40.0, 40.0"
|
padding="40.0, 40.0, 40.0, 40.0"
|
||||||
color="1.0, 1.0, 1.0, 1.0"
|
color="0.0, 0.0, 0.0, 0.7"
|
||||||
|
|
||||||
textcolor="0.0, 0.0, 0.0, 1.0"
|
textcolor="0.0, 0.0, 0.0, 1.0"
|
||||||
|
|
||||||
@@ -11,8 +11,6 @@
|
|||||||
|
|
||||||
outlinecolor="0.5, 0.57, 0.6, 1.0">
|
outlinecolor="0.5, 0.57, 0.6, 1.0">
|
||||||
|
|
||||||
<Sprite texture="Content/UI/uiBackground.png" size="0.0, 0.0" sourcerect ="0.0, 90.0, 0.0, 100.0"/>
|
|
||||||
<Sprite texture="Content/UI/uiBackground.png" size="0.0, 1.0" sourcerect ="0.0, 0.0, 0.0, 90.0"/>
|
|
||||||
</GUIFrame>
|
</GUIFrame>
|
||||||
|
|
||||||
<GUIButton
|
<GUIButton
|
||||||
|
|||||||
@@ -214,6 +214,22 @@ namespace Barotrauma
|
|||||||
|
|
||||||
Vector2 colliderPos = new Vector2(torso.SimPosition.X, floorY);
|
Vector2 colliderPos = new Vector2(torso.SimPosition.X, floorY);
|
||||||
|
|
||||||
|
if (Math.Abs(TargetMovement.X) > 1.0f)
|
||||||
|
{
|
||||||
|
int limbsInWater = 0;
|
||||||
|
foreach (Limb limb in Limbs)
|
||||||
|
{
|
||||||
|
if (limb.inWater) limbsInWater++;
|
||||||
|
}
|
||||||
|
|
||||||
|
float slowdownFactor = (float)limbsInWater / (float)Limbs.Count();
|
||||||
|
|
||||||
|
float maxSpeed = Math.Max(TargetMovement.Length() - slowdownFactor, 1.0f);
|
||||||
|
if (character.SelectedCharacter!=null) maxSpeed = Math.Min(maxSpeed, 1.0f);
|
||||||
|
|
||||||
|
TargetMovement = Vector2.Normalize(TargetMovement) * maxSpeed;
|
||||||
|
}
|
||||||
|
|
||||||
float walkPosX = (float)Math.Cos(walkPos);
|
float walkPosX = (float)Math.Cos(walkPos);
|
||||||
float walkPosY = (float)Math.Sin(walkPos);
|
float walkPosY = (float)Math.Sin(walkPos);
|
||||||
float runningModifier = (float)Math.Max(Math.Min(Math.Abs(TargetMovement.X),3.0f) / 1.5f, 1.0);
|
float runningModifier = (float)Math.Max(Math.Min(Math.Abs(TargetMovement.X),3.0f) / 1.5f, 1.0);
|
||||||
@@ -224,31 +240,38 @@ namespace Barotrauma
|
|||||||
|
|
||||||
float footMid = waist.SimPosition.X;// (leftFoot.SimPosition.X + rightFoot.SimPosition.X) / 2.0f;
|
float footMid = waist.SimPosition.X;// (leftFoot.SimPosition.X + rightFoot.SimPosition.X) / 2.0f;
|
||||||
|
|
||||||
if (Math.Abs(TargetMovement.X)>1.0f)
|
|
||||||
{
|
|
||||||
int limbsInWater = 0;
|
|
||||||
foreach (Limb limb in Limbs)
|
|
||||||
{
|
|
||||||
if (limb.inWater) limbsInWater++;
|
|
||||||
}
|
|
||||||
|
|
||||||
float slowdownFactor = (float)limbsInWater / (float)Limbs.Count();
|
|
||||||
|
|
||||||
TargetMovement = Vector2.Normalize(TargetMovement) * Math.Max(TargetMovement.Length() - slowdownFactor, 1.0f);
|
|
||||||
}
|
|
||||||
|
|
||||||
movement = MathUtils.SmoothStep(movement, TargetMovement, movementLerp);
|
movement = MathUtils.SmoothStep(movement, TargetMovement, movementLerp);
|
||||||
movement.Y = 0.0f;
|
movement.Y = 0.0f;
|
||||||
|
|
||||||
bool legsUp = false;
|
bool legsUp = false;
|
||||||
for (int i = 0; i < 2; i++)
|
for (int i = 0; i < 2; i++)
|
||||||
{
|
{
|
||||||
Limb leg = GetLimb((i == 0) ? LimbType.LeftThigh : LimbType.RightThigh);// : leftLeg;
|
Limb leg = GetLimb((i == 0) ? LimbType.LeftLeg : LimbType.RightLeg);// : leftLeg;
|
||||||
|
|
||||||
if (leg.SimPosition.Y < torso.SimPosition.Y) continue;
|
float shortestAngle = leg.Rotation - torso.Rotation;
|
||||||
|
|
||||||
leg.body.ApplyTorque(Dir * leg.Mass * 10.0f);
|
if (Math.Abs(shortestAngle)<2.5f) continue;
|
||||||
legsUp = true;
|
//leg = GetLimb((i == 0) ? LimbType.LeftLeg : LimbType.RightLeg);
|
||||||
|
leg.body.ApplyTorque(-shortestAngle*10.0f);
|
||||||
|
|
||||||
|
// float torsoRot = MathHelper.WrapAngle(torso.Rotation);
|
||||||
|
// torsoRot = MathHelper.ToDegrees(torsoRot);
|
||||||
|
|
||||||
|
//float torque = Math.Sign(torso.SimPosition.X - leg.SimPosition.X) * leg.Mass * 10.0f;
|
||||||
|
//leg.body.ApplyTorque(torque);
|
||||||
|
|
||||||
|
|
||||||
|
//leg.body.ApplyTorque(torque);
|
||||||
|
// if (Math.Sign(Dir)==Math.Sign(torsoRot))
|
||||||
|
// {
|
||||||
|
//leg.body.ApplyTorque(-leg.Mass * 100.0f);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// leg.body.ApplyTorque(leg.Mass * 100.0f);
|
||||||
|
// }
|
||||||
|
|
||||||
|
//legsUp = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (legsUp || LowestLimb == null) return;
|
if (legsUp || LowestLimb == null) return;
|
||||||
@@ -766,17 +789,25 @@ namespace Barotrauma
|
|||||||
leftHand.Disabled = true;
|
leftHand.Disabled = true;
|
||||||
rightHand.Disabled = true;
|
rightHand.Disabled = true;
|
||||||
|
|
||||||
Limb targetLimb = target.AnimController.GetLimb(LimbType.LeftHand);
|
for (int i = 0; i < 2; i++ )
|
||||||
|
{
|
||||||
|
LimbType type = i == 0 ? LimbType.RightHand : LimbType.LeftHand;
|
||||||
|
Limb targetLimb = target.AnimController.GetLimb(type);
|
||||||
|
|
||||||
leftHand.pullJoint.Enabled = true;
|
Limb pullLimb = GetLimb(type);
|
||||||
leftHand.pullJoint.WorldAnchorB = targetLimb.SimPosition;
|
|
||||||
rightHand.pullJoint.Enabled = true;
|
pullLimb.pullJoint.Enabled = true;
|
||||||
rightHand.pullJoint.WorldAnchorB = targetLimb.SimPosition;
|
pullLimb.pullJoint.WorldAnchorB = targetLimb.SimPosition;
|
||||||
|
pullLimb.pullJoint.MaxForce = 500.0f;
|
||||||
|
|
||||||
|
targetLimb.pullJoint.Enabled = true;
|
||||||
|
targetLimb.pullJoint.WorldAnchorB = pullLimb.SimPosition;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
targetLimb.pullJoint.Enabled = true;
|
|
||||||
targetLimb.pullJoint.WorldAnchorB = leftHand.SimPosition;
|
|
||||||
|
|
||||||
target.AnimController.IgnorePlatforms = IgnorePlatforms;
|
target.AnimController.IgnorePlatforms = IgnorePlatforms;
|
||||||
|
target.AnimController.TargetMovement = TargetMovement;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void HoldItem(float deltaTime, Item item, Vector2[] handlePos, Vector2 holdPos, Vector2 aimPos, bool aim, float holdAngle)
|
public override void HoldItem(float deltaTime, Item item, Vector2[] handlePos, Vector2 holdPos, Vector2 aimPos, bool aim, float holdAngle)
|
||||||
|
|||||||
@@ -306,7 +306,16 @@ namespace Barotrauma
|
|||||||
float stairPosY = structure.StairDirection == Direction.Right ?
|
float stairPosY = structure.StairDirection == Direction.Right ?
|
||||||
lowestLimb.Position.X - structure.Rect.X : structure.Rect.Width - (lowestLimb.Position.X - structure.Rect.X);
|
lowestLimb.Position.X - structure.Rect.X : structure.Rect.Width - (lowestLimb.Position.X - structure.Rect.X);
|
||||||
|
|
||||||
if (lowestLimb.Position.Y < structure.Rect.Y - structure.Rect.Height + stairPosY) return false;
|
|
||||||
|
if (character.IsDead)
|
||||||
|
{
|
||||||
|
if (lowestLimb.Position.Y < structure.Rect.Y - structure.Rect.Height + stairPosY - 10.0f) return false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (lowestLimb.Position.Y < structure.Rect.Y - structure.Rect.Height + stairPosY) return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (targetMovement.Y < 0.5f)
|
if (targetMovement.Y < 0.5f)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -230,7 +230,7 @@ namespace Barotrauma
|
|||||||
|
|
||||||
pullJoint = new FixedMouseJoint(body.FarseerBody, jointPos);
|
pullJoint = new FixedMouseJoint(body.FarseerBody, jointPos);
|
||||||
pullJoint.Enabled = false;
|
pullJoint.Enabled = false;
|
||||||
pullJoint.MaxForce = 150.0f * body.Mass;
|
pullJoint.MaxForce = ((type == LimbType.LeftHand || type == LimbType.RightHand) ? 400.0f : 150.0f) * body.Mass;
|
||||||
|
|
||||||
GameMain.World.AddJoint(pullJoint);
|
GameMain.World.AddJoint(pullJoint);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,6 +59,8 @@ namespace Barotrauma
|
|||||||
set;
|
set;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool TileSprites;
|
||||||
|
|
||||||
private GUITextBlock toolTipBlock;
|
private GUITextBlock toolTipBlock;
|
||||||
|
|
||||||
//protected float alpha;
|
//protected float alpha;
|
||||||
@@ -96,7 +98,7 @@ namespace Barotrauma
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected List<Sprite> sprites;
|
public List<Sprite> sprites;
|
||||||
//public Alignment SpriteAlignment { get; set; }
|
//public Alignment SpriteAlignment { get; set; }
|
||||||
//public bool RepeatSpriteX, RepeatSpriteY;
|
//public bool RepeatSpriteX, RepeatSpriteY;
|
||||||
|
|
||||||
@@ -152,6 +154,8 @@ namespace Barotrauma
|
|||||||
{
|
{
|
||||||
Visible = true;
|
Visible = true;
|
||||||
|
|
||||||
|
TileSprites = true;
|
||||||
|
|
||||||
OutlineColor = Color.Transparent;
|
OutlineColor = Color.Transparent;
|
||||||
|
|
||||||
Font = GUI.Font;
|
Font = GUI.Font;
|
||||||
@@ -231,13 +235,24 @@ namespace Barotrauma
|
|||||||
{
|
{
|
||||||
foreach (Sprite sprite in sprites)
|
foreach (Sprite sprite in sprites)
|
||||||
{
|
{
|
||||||
Vector2 startPos = new Vector2(rect.X, rect.Y);
|
if (TileSprites)
|
||||||
Vector2 size = new Vector2(Math.Min(sprite.SourceRect.Width,rect.Width), Math.Min(sprite.SourceRect.Height,rect.Height));
|
{
|
||||||
|
Vector2 startPos = new Vector2(rect.X, rect.Y);
|
||||||
|
Vector2 size = new Vector2(Math.Min(sprite.SourceRect.Width,rect.Width), Math.Min(sprite.SourceRect.Height,rect.Height));
|
||||||
|
|
||||||
if (sprite.size.X == 0.0f) size.X = rect.Width;
|
if (sprite.size.X == 0.0f) size.X = rect.Width;
|
||||||
if (sprite.size.Y == 0.0f) size.Y = rect.Height;
|
if (sprite.size.Y == 0.0f) size.Y = rect.Height;
|
||||||
|
|
||||||
sprite.DrawTiled(spriteBatch, startPos, size, currColor * (currColor.A / 255.0f));
|
sprite.DrawTiled(spriteBatch, startPos, size, currColor * (currColor.A / 255.0f));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
float scale = (float)(rect.Width) / sprite.SourceRect.Width;
|
||||||
|
|
||||||
|
spriteBatch.Draw(sprite.Texture, rect,
|
||||||
|
new Rectangle(sprite.SourceRect.X, sprite.SourceRect.Y, (int)(sprite.SourceRect.Width), (int)(rect.Height / scale)),
|
||||||
|
currColor * (currColor.A / 255.0f), 0.0f, Vector2.Zero, SpriteEffects.None, 0.0f);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -278,7 +293,6 @@ namespace Barotrauma
|
|||||||
if (rect.Contains(PlayerInput.MousePosition))
|
if (rect.Contains(PlayerInput.MousePosition))
|
||||||
{
|
{
|
||||||
MouseOn = this;
|
MouseOn = this;
|
||||||
//ToolTip = this.ToolTip;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -339,7 +353,7 @@ namespace Barotrauma
|
|||||||
selectedColor = style.SelectedColor;
|
selectedColor = style.SelectedColor;
|
||||||
|
|
||||||
padding = style.Padding;
|
padding = style.Padding;
|
||||||
sprites = style.Sprites;
|
sprites = new List<Sprite>(style.Sprites);
|
||||||
|
|
||||||
OutlineColor = style.OutlineColor;
|
OutlineColor = style.OutlineColor;
|
||||||
|
|
||||||
|
|||||||
@@ -141,6 +141,8 @@ namespace Barotrauma
|
|||||||
|
|
||||||
CrewManager.Draw(spriteBatch);
|
CrewManager.Draw(spriteBatch);
|
||||||
|
|
||||||
|
if (Level.Loaded == null) return;
|
||||||
|
|
||||||
if (Level.Loaded.AtEndPosition)
|
if (Level.Loaded.AtEndPosition)
|
||||||
{
|
{
|
||||||
endShiftButton.Text = "Enter " + Map.SelectedLocation.Name;
|
endShiftButton.Text = "Enter " + Map.SelectedLocation.Name;
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using System;
|
using Microsoft.Xna.Framework;
|
||||||
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
@@ -19,7 +20,9 @@ namespace Barotrauma
|
|||||||
|
|
||||||
private List<string> nameFormats;
|
private List<string> nameFormats;
|
||||||
|
|
||||||
private Sprite sprite;
|
private Sprite symbolSprite;
|
||||||
|
|
||||||
|
private Sprite backGround;
|
||||||
|
|
||||||
public bool HasHireableCharacters
|
public bool HasHireableCharacters
|
||||||
{
|
{
|
||||||
@@ -39,7 +42,12 @@ namespace Barotrauma
|
|||||||
|
|
||||||
public Sprite Sprite
|
public Sprite Sprite
|
||||||
{
|
{
|
||||||
get { return sprite; }
|
get { return symbolSprite; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public Sprite Background
|
||||||
|
{
|
||||||
|
get { return backGround; }
|
||||||
}
|
}
|
||||||
|
|
||||||
private LocationType(XElement element)
|
private LocationType(XElement element)
|
||||||
@@ -58,7 +66,10 @@ namespace Barotrauma
|
|||||||
}
|
}
|
||||||
|
|
||||||
string spritePath = ToolBox.GetAttributeString(element, "symbol", "Content/Map/beaconSymbol.png");
|
string spritePath = ToolBox.GetAttributeString(element, "symbol", "Content/Map/beaconSymbol.png");
|
||||||
sprite = new Sprite(spritePath, new Microsoft.Xna.Framework.Vector2(0.5f, 0.5f));
|
symbolSprite = new Sprite(spritePath, new Vector2(0.5f, 0.5f));
|
||||||
|
|
||||||
|
string backgroundPath = ToolBox.GetAttributeString(element, "background", "");
|
||||||
|
backGround = new Sprite(backgroundPath, Vector2.Zero);
|
||||||
//sprite.Origin = ;
|
//sprite.Origin = ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -257,7 +257,7 @@ namespace Barotrauma
|
|||||||
Vector2 rectCenter = new Vector2(rect.Center.X, rect.Center.Y);
|
Vector2 rectCenter = new Vector2(rect.Center.X, rect.Center.Y);
|
||||||
Vector2 offset = -currentLocation.MapPosition;
|
Vector2 offset = -currentLocation.MapPosition;
|
||||||
|
|
||||||
iceTexture.DrawTiled(spriteBatch, new Vector2(rect.X, rect.Y), new Vector2(rect.Width, rect.Height), Vector2.Zero, Color.White);
|
iceTexture.DrawTiled(spriteBatch, new Vector2(rect.X, rect.Y), new Vector2(rect.Width, rect.Height), Vector2.Zero, Color.White*0.8f);
|
||||||
GUI.DrawRectangle(spriteBatch, rect, Color.White);
|
GUI.DrawRectangle(spriteBatch, rect, Color.White);
|
||||||
//spriteBatch.Draw(iceTexture, offset, rect, null, null, 0f, null, Color.White, SpriteEffects.None, 0.0f);
|
//spriteBatch.Draw(iceTexture, offset, rect, null, null, 0f, null, Color.White, SpriteEffects.None, 0.0f);
|
||||||
|
|
||||||
|
|||||||
@@ -12,8 +12,8 @@ namespace Barotrauma
|
|||||||
{
|
{
|
||||||
enum PanelTab { Crew = 0, Map = 1, CurrentLocation = 2, Store = 3 }
|
enum PanelTab { Crew = 0, Map = 1, CurrentLocation = 2, Store = 3 }
|
||||||
|
|
||||||
private GUIFrame leftPanel;
|
private GUIFrame topPanel;
|
||||||
private GUIFrame[] rightPanel;
|
private GUIFrame[] bottomPanel;
|
||||||
|
|
||||||
private GUIButton startButton;
|
private GUIButton startButton;
|
||||||
|
|
||||||
@@ -63,33 +63,30 @@ namespace Barotrauma
|
|||||||
{
|
{
|
||||||
Rectangle panelRect = new Rectangle(
|
Rectangle panelRect = new Rectangle(
|
||||||
40, 40,
|
40, 40,
|
||||||
GameMain.GraphicsWidth < 1000 ? 140 : 180,
|
GameMain.GraphicsWidth - 80,
|
||||||
GameMain.GraphicsHeight - 80);
|
100);
|
||||||
|
|
||||||
leftPanel = new GUIFrame(panelRect, GUI.Style);
|
topPanel = new GUIFrame(panelRect, GUI.Style);
|
||||||
leftPanel.Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
topPanel.Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
||||||
|
|
||||||
//new GUITextBlock(new Rectangle(0, 0, 200, 25),
|
GUITextBlock moneyText = new GUITextBlock(new Rectangle(0, 0, 0, 25), "", GUI.Style,
|
||||||
// save, Color.Transparent, Color.White, Alignment.Left, GUI.Style, leftPanel);
|
Alignment.BottomLeft, Alignment.BottomLeft, topPanel);
|
||||||
|
|
||||||
GUITextBlock moneyText = new GUITextBlock(new Rectangle(0, 30, 0, 25), "", GUI.Style,
|
|
||||||
Alignment.TopLeft, Alignment.TopLeft, leftPanel);
|
|
||||||
moneyText.TextGetter = GetMoney;
|
moneyText.TextGetter = GetMoney;
|
||||||
|
|
||||||
GUIButton button = new GUIButton(new Rectangle(0, 70, 100, 30), "Map", null, Alignment.TopCenter, GUI.Style, leftPanel);
|
GUIButton button = new GUIButton(new Rectangle(-360, 0, 100, 30), "Map", null, Alignment.BottomRight, GUI.Style, topPanel);
|
||||||
button.UserData = PanelTab.Map;
|
button.UserData = PanelTab.Map;
|
||||||
button.OnClicked = SelectRightPanel;
|
button.OnClicked = SelectRightPanel;
|
||||||
SelectRightPanel(button, button.UserData);
|
SelectRightPanel(button, button.UserData);
|
||||||
|
|
||||||
button = new GUIButton(new Rectangle(0, 110, 100, 30), "Crew", null, Alignment.TopCenter, GUI.Style, leftPanel);
|
button = new GUIButton(new Rectangle(-240, 0, 100, 30), "Crew", null, Alignment.BottomRight, GUI.Style, topPanel);
|
||||||
button.UserData = PanelTab.Crew;
|
button.UserData = PanelTab.Crew;
|
||||||
button.OnClicked = SelectRightPanel;
|
button.OnClicked = SelectRightPanel;
|
||||||
|
|
||||||
button = new GUIButton(new Rectangle(0, 150, 100, 30), "Hire", null, Alignment.TopCenter, GUI.Style, leftPanel);
|
button = new GUIButton(new Rectangle(-120, 0, 100, 30), "Hire", null, Alignment.BottomRight, GUI.Style, topPanel);
|
||||||
button.UserData = PanelTab.CurrentLocation;
|
button.UserData = PanelTab.CurrentLocation;
|
||||||
button.OnClicked = SelectRightPanel;
|
button.OnClicked = SelectRightPanel;
|
||||||
|
|
||||||
button = new GUIButton(new Rectangle(0, 190, 100, 30), "Store", null, Alignment.TopCenter, GUI.Style, leftPanel);
|
button = new GUIButton(new Rectangle(0, 0, 100, 30), "Store", null, Alignment.BottomRight, GUI.Style, topPanel);
|
||||||
button.UserData = PanelTab.Store;
|
button.UserData = PanelTab.Store;
|
||||||
button.OnClicked = SelectRightPanel;
|
button.OnClicked = SelectRightPanel;
|
||||||
|
|
||||||
@@ -97,61 +94,62 @@ namespace Barotrauma
|
|||||||
//---------------------------------------------------------------
|
//---------------------------------------------------------------
|
||||||
|
|
||||||
panelRect = new Rectangle(
|
panelRect = new Rectangle(
|
||||||
panelRect.X + panelRect.Width + 40,
|
|
||||||
40,
|
40,
|
||||||
GameMain.GraphicsWidth - panelRect.Width - 120,
|
panelRect.Bottom + 40,
|
||||||
GameMain.GraphicsHeight - 80);
|
panelRect.Width,
|
||||||
|
GameMain.GraphicsHeight - 120 - panelRect.Height);
|
||||||
|
|
||||||
rightPanel = new GUIFrame[4];
|
bottomPanel = new GUIFrame[4];
|
||||||
|
|
||||||
rightPanel[(int)PanelTab.Crew] = new GUIFrame(panelRect, GUI.Style);
|
bottomPanel[(int)PanelTab.Crew] = new GUIFrame(panelRect, GUI.Style);
|
||||||
rightPanel[(int)PanelTab.Crew].Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
bottomPanel[(int)PanelTab.Crew].Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
||||||
|
|
||||||
new GUITextBlock(new Rectangle(0, 0, 200, 25), "Crew:", Color.Transparent, Color.White, Alignment.Left, GUI.Style, rightPanel[(int)PanelTab.Crew]);
|
//new GUITextBlock(new Rectangle(0, 0, 200, 25), "Crew:", Color.Transparent, Color.White, Alignment.Left, GUI.Style, bottomPanel[(int)PanelTab.Crew]);
|
||||||
|
|
||||||
int crewColumnWidth = Math.Min(300, (panelRect.Width - 40) / 2);
|
int crewColumnWidth = Math.Min(300, (panelRect.Width - 40) / 2);
|
||||||
characterList = new GUIListBox(new Rectangle(0, 30, crewColumnWidth, 0), GUI.Style, rightPanel[(int)PanelTab.Crew]);
|
characterList = new GUIListBox(new Rectangle(0, 0, crewColumnWidth, 0), GUI.Style, bottomPanel[(int)PanelTab.Crew]);
|
||||||
characterList.OnSelected = SelectCharacter;
|
characterList.OnSelected = SelectCharacter;
|
||||||
|
|
||||||
//---------------------------------------
|
//---------------------------------------
|
||||||
|
|
||||||
rightPanel[(int)PanelTab.Map] = new GUIFrame(panelRect, GUI.Style);
|
bottomPanel[(int)PanelTab.Map] = new GUIFrame(panelRect, GUI.Style);
|
||||||
rightPanel[(int)PanelTab.Map].Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
bottomPanel[(int)PanelTab.Map].Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
||||||
|
|
||||||
startButton = new GUIButton(new Rectangle(0, 0, 100, 30), "Start",
|
startButton = new GUIButton(new Rectangle(0, 0, 100, 30), "Start",
|
||||||
Alignment.BottomRight, GUI.Style, rightPanel[(int)PanelTab.Map]);
|
Alignment.BottomRight, GUI.Style, bottomPanel[(int)PanelTab.Map]);
|
||||||
startButton.OnClicked = StartShift;
|
startButton.OnClicked = StartShift;
|
||||||
startButton.Enabled = false;
|
startButton.Enabled = false;
|
||||||
|
|
||||||
//---------------------------------------
|
//---------------------------------------
|
||||||
|
|
||||||
rightPanel[(int)PanelTab.CurrentLocation] = new GUIFrame(panelRect, GUI.Style);
|
bottomPanel[(int)PanelTab.CurrentLocation] = new GUIFrame(panelRect, GUI.Style);
|
||||||
|
bottomPanel[(int)PanelTab.CurrentLocation].Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
||||||
|
|
||||||
//---------------------------------------
|
//---------------------------------------
|
||||||
|
|
||||||
rightPanel[(int)PanelTab.Store] = new GUIFrame(panelRect, GUI.Style);
|
bottomPanel[(int)PanelTab.Store] = new GUIFrame(panelRect, GUI.Style);
|
||||||
rightPanel[(int)PanelTab.Store].Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
bottomPanel[(int)PanelTab.Store].Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
||||||
|
|
||||||
int sellColumnWidth = (panelRect.Width - 40) / 2 - 20;
|
int sellColumnWidth = (panelRect.Width - 40) / 2 - 20;
|
||||||
|
|
||||||
selectedItemList = new GUIListBox(new Rectangle(0, 0, sellColumnWidth, 400), Color.White * 0.7f, GUI.Style, rightPanel[(int)PanelTab.Store]);
|
selectedItemList = new GUIListBox(new Rectangle(0, 0, sellColumnWidth, 400), Color.White * 0.7f, GUI.Style, bottomPanel[(int)PanelTab.Store]);
|
||||||
selectedItemList.OnSelected = DeselectItem;
|
selectedItemList.OnSelected = DeselectItem;
|
||||||
|
|
||||||
var costText = new GUITextBlock(new Rectangle(0, 0, 100, 25), "Cost: ", GUI.Style, Alignment.BottomLeft, Alignment.TopLeft, rightPanel[(int)PanelTab.Store]);
|
var costText = new GUITextBlock(new Rectangle(0, 0, 100, 25), "Cost: ", GUI.Style, Alignment.BottomLeft, Alignment.TopLeft, bottomPanel[(int)PanelTab.Store]);
|
||||||
costText.TextGetter = CostTextGetter;
|
costText.TextGetter = CostTextGetter;
|
||||||
|
|
||||||
buyButton = new GUIButton(new Rectangle(sellColumnWidth+20, 0, 100, 25), "Buy", Alignment.Bottom, GUI.Style, rightPanel[(int)PanelTab.Store]);
|
buyButton = new GUIButton(new Rectangle(sellColumnWidth+20, 0, 100, 25), "Buy", Alignment.Bottom, GUI.Style, bottomPanel[(int)PanelTab.Store]);
|
||||||
buyButton.OnClicked = BuyItems;
|
buyButton.OnClicked = BuyItems;
|
||||||
|
|
||||||
itemList = new GUIListBox(new Rectangle(0, 0, sellColumnWidth, 400), Color.White * 0.7f, Alignment.TopRight, GUI.Style, rightPanel[(int)PanelTab.Store]);
|
itemList = new GUIListBox(new Rectangle(0, 0, sellColumnWidth, 400), Color.White * 0.7f, Alignment.TopRight, GUI.Style, bottomPanel[(int)PanelTab.Store]);
|
||||||
itemList.OnSelected = SelectItem;
|
itemList.OnSelected = SelectItem;
|
||||||
|
|
||||||
foreach (MapEntityPrefab ep in MapEntityPrefab.list)
|
foreach (MapEntityPrefab ep in MapEntityPrefab.list)
|
||||||
{
|
{
|
||||||
if (ep.Price == 0) continue;
|
if (ep.Price == 0) continue;
|
||||||
|
|
||||||
CreateItemFrame(ep, itemList);
|
CreateItemFrame(ep, itemList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Select()
|
public override void Select()
|
||||||
@@ -167,18 +165,44 @@ namespace Barotrauma
|
|||||||
|
|
||||||
private void UpdateLocationTab(Location location)
|
private void UpdateLocationTab(Location location)
|
||||||
{
|
{
|
||||||
rightPanel[(int)PanelTab.CurrentLocation] = new GUIFrame(rightPanel[(int)PanelTab.CurrentLocation].Rect, GUI.Style);
|
topPanel.RemoveChild(topPanel.FindChild("locationtitle"));
|
||||||
rightPanel[(int)PanelTab.CurrentLocation].UserData = location;
|
|
||||||
|
var locationTitle = new GUITextBlock(new Rectangle(0, 0, 200, 25),
|
||||||
|
"Location: "+location.Name, Color.Transparent, Color.White, Alignment.TopLeft, GUI.Style, topPanel);
|
||||||
|
locationTitle.UserData = "locationtitle";
|
||||||
|
locationTitle.Font = GUI.LargeFont;
|
||||||
|
|
||||||
|
bottomPanel[(int)PanelTab.CurrentLocation].ClearChildren();
|
||||||
//rightPanel[(int)PanelTab.Hire].Padding = GUI.style.smallPadding;
|
//rightPanel[(int)PanelTab.Hire].Padding = GUI.style.smallPadding;
|
||||||
|
|
||||||
new GUITextBlock(new Rectangle(0, 0, 200, 25),
|
//for (int i = 0; i < Enum.GetNames(typeof(PanelTab)).Length; i++ )
|
||||||
"Location: "+location.Name, GUI.Style, rightPanel[(int)PanelTab.CurrentLocation]);
|
//{
|
||||||
new GUITextBlock(new Rectangle(0, 20, 200, 25),
|
|
||||||
"("+location.Type.Name+")", GUI.Style, rightPanel[(int)PanelTab.CurrentLocation]);
|
// float size = Math.Max(
|
||||||
|
// (float)GameMain.GraphicsWidth / (float)location.Type.Background.SourceRect.Width,
|
||||||
|
// (float)GameMain.GraphicsHeight / (float)location.Type.Background.SourceRect.Height);
|
||||||
|
// location.Type.Background.size = new Vector2(
|
||||||
|
// location.Type.Background.SourceRect.Width*size,
|
||||||
|
// location.Type.Background.SourceRect.Height*size);
|
||||||
|
|
||||||
|
|
||||||
|
// topPanel.sprites.Clear();
|
||||||
|
// topPanel.TileSprites = false;
|
||||||
|
// topPanel.sprites.Add(location.Type.Background);
|
||||||
|
|
||||||
|
// bottomPanel[i].sprites.Clear();
|
||||||
|
// bottomPanel[i].TileSprites = false;
|
||||||
|
// bottomPanel[i].sprites.Add(location.Type.Background);
|
||||||
|
//}
|
||||||
|
|
||||||
|
//new GUITextBlock(new Rectangle(0, 0, 200, 25),
|
||||||
|
// "Location: "+location.Name, GUI.Style, bottomPanel[(int)PanelTab.CurrentLocation]);
|
||||||
|
//new GUITextBlock(new Rectangle(0, 20, 200, 25),
|
||||||
|
// "("+location.Type.Name+")", GUI.Style, bottomPanel[(int)PanelTab.CurrentLocation]);
|
||||||
|
|
||||||
if (location.HireManager != null)
|
if (location.HireManager != null)
|
||||||
{
|
{
|
||||||
hireList = new GUIListBox(new Rectangle(0, 60, 300, 0), GUI.Style, Alignment.Left, rightPanel[(int)PanelTab.CurrentLocation]);
|
hireList = new GUIListBox(new Rectangle(0, 0, 300, 0), GUI.Style, Alignment.Left, bottomPanel[(int)PanelTab.CurrentLocation]);
|
||||||
hireList.OnSelected = SelectCharacter;
|
hireList.OnSelected = SelectCharacter;
|
||||||
|
|
||||||
hireList.ClearChildren();
|
hireList.ClearChildren();
|
||||||
@@ -196,6 +220,10 @@ namespace Barotrauma
|
|||||||
Alignment.TopRight, GUI.Style, textBlock);
|
Alignment.TopRight, GUI.Style, textBlock);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//(topPanel.FindChild(PanelTab.CurrentLocation) as GUIButton).Enabled = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -208,11 +236,11 @@ namespace Barotrauma
|
|||||||
|
|
||||||
public void SelectLocation(Location location, LocationConnection connection)
|
public void SelectLocation(Location location, LocationConnection connection)
|
||||||
{
|
{
|
||||||
GUIComponent locationPanel = rightPanel[(int)PanelTab.Map].GetChild("selectedlocation");
|
GUIComponent locationPanel = bottomPanel[(int)PanelTab.Map].GetChild("selectedlocation");
|
||||||
|
|
||||||
if (locationPanel != null) rightPanel[(int)PanelTab.Map].RemoveChild(locationPanel);
|
if (locationPanel != null) bottomPanel[(int)PanelTab.Map].RemoveChild(locationPanel);
|
||||||
|
|
||||||
locationPanel = new GUIFrame(new Rectangle(0, 0, 200, 190), Color.Transparent, Alignment.TopRight, null, rightPanel[(int)PanelTab.Map]);
|
locationPanel = new GUIFrame(new Rectangle(0, 0, 200, 190), Color.Transparent, Alignment.TopRight, null, bottomPanel[(int)PanelTab.Map]);
|
||||||
locationPanel.UserData = "selectedlocation";
|
locationPanel.UserData = "selectedlocation";
|
||||||
|
|
||||||
if (location == null) return;
|
if (location == null) return;
|
||||||
@@ -339,8 +367,8 @@ namespace Barotrauma
|
|||||||
{
|
{
|
||||||
base.Update(deltaTime);
|
base.Update(deltaTime);
|
||||||
|
|
||||||
leftPanel.Update((float)deltaTime);
|
topPanel.Update((float)deltaTime);
|
||||||
rightPanel[selectedRightPanel].Update((float)deltaTime);
|
bottomPanel[selectedRightPanel].Update((float)deltaTime);
|
||||||
|
|
||||||
mapZoom += PlayerInput.ScrollWheelSpeed / 1000.0f;
|
mapZoom += PlayerInput.ScrollWheelSpeed / 1000.0f;
|
||||||
mapZoom = MathHelper.Clamp(mapZoom, 1.0f, 4.0f);
|
mapZoom = MathHelper.Clamp(mapZoom, 1.0f, 4.0f);
|
||||||
@@ -357,24 +385,29 @@ namespace Barotrauma
|
|||||||
|
|
||||||
graphics.Clear(Color.CornflowerBlue);
|
graphics.Clear(Color.CornflowerBlue);
|
||||||
|
|
||||||
GameMain.GameScreen.DrawMap(graphics, spriteBatch);
|
//GameMain.GameScreen.DrawMap(graphics, spriteBatch);
|
||||||
|
|
||||||
spriteBatch.Begin();
|
spriteBatch.Begin();
|
||||||
|
|
||||||
leftPanel.Draw(spriteBatch);
|
Sprite backGround = GameMain.GameSession.Map.CurrentLocation.Type.Background;
|
||||||
|
spriteBatch.Draw(backGround.Texture, Vector2.Zero, null, Color.White, 0.0f, Vector2.Zero,
|
||||||
|
Math.Max((float)GameMain.GraphicsWidth / backGround.SourceRect.Width, (float)GameMain.GraphicsHeight / backGround.SourceRect.Width), SpriteEffects.None, 0.0f);
|
||||||
|
|
||||||
rightPanel[selectedRightPanel].Draw(spriteBatch);
|
|
||||||
|
topPanel.Draw(spriteBatch);
|
||||||
|
|
||||||
|
bottomPanel[selectedRightPanel].Draw(spriteBatch);
|
||||||
|
|
||||||
if (selectedRightPanel == (int)PanelTab.Map)
|
if (selectedRightPanel == (int)PanelTab.Map)
|
||||||
{
|
{
|
||||||
GameMain.GameSession.Map.Draw(spriteBatch, new Rectangle(
|
GameMain.GameSession.Map.Draw(spriteBatch, new Rectangle(
|
||||||
rightPanel[selectedRightPanel].Rect.X + 20,
|
bottomPanel[selectedRightPanel].Rect.X + 20,
|
||||||
rightPanel[selectedRightPanel].Rect.Y + 20,
|
bottomPanel[selectedRightPanel].Rect.Y + 20,
|
||||||
rightPanel[selectedRightPanel].Rect.Width - 280,
|
bottomPanel[selectedRightPanel].Rect.Width - 280,
|
||||||
rightPanel[selectedRightPanel].Rect.Height - 40), mapZoom);
|
bottomPanel[selectedRightPanel].Rect.Height - 40), mapZoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rightPanel[(int)selectedRightPanel].UserData as Location != GameMain.GameSession.Map.CurrentLocation)
|
if (bottomPanel[(int)selectedRightPanel].UserData as Location != GameMain.GameSession.Map.CurrentLocation)
|
||||||
{
|
{
|
||||||
UpdateLocationTab(GameMain.GameSession.Map.CurrentLocation);
|
UpdateLocationTab(GameMain.GameSession.Map.CurrentLocation);
|
||||||
}
|
}
|
||||||
@@ -397,7 +430,7 @@ namespace Barotrauma
|
|||||||
if (button != null)
|
if (button != null)
|
||||||
{
|
{
|
||||||
button.Selected = true;
|
button.Selected = true;
|
||||||
foreach (GUIComponent child in leftPanel.children)
|
foreach (GUIComponent child in topPanel.children)
|
||||||
{
|
{
|
||||||
GUIButton otherButton = child as GUIButton;
|
GUIButton otherButton = child as GUIButton;
|
||||||
if (otherButton == null || otherButton == button) continue;
|
if (otherButton == null || otherButton == button) continue;
|
||||||
@@ -423,9 +456,9 @@ namespace Barotrauma
|
|||||||
|
|
||||||
if (previewFrame == null || previewFrame.UserData != characterInfo)
|
if (previewFrame == null || previewFrame.UserData != characterInfo)
|
||||||
{
|
{
|
||||||
previewFrame = new GUIFrame(new Rectangle(rightPanel[(int)PanelTab.Crew].Rect.Width/2, 60, Math.Min(300,rightPanel[(int)PanelTab.Crew].Rect.Width/2 - 40), 300),
|
previewFrame = new GUIFrame(new Rectangle(bottomPanel[(int)PanelTab.Crew].Rect.Width/2, 60, Math.Min(300,bottomPanel[(int)PanelTab.Crew].Rect.Width/2 - 40), 300),
|
||||||
new Color(0.0f, 0.0f, 0.0f, 0.8f),
|
new Color(0.0f, 0.0f, 0.0f, 0.8f),
|
||||||
Alignment.Top, GUI.Style, rightPanel[selectedRightPanel]);
|
Alignment.Top, GUI.Style, bottomPanel[selectedRightPanel]);
|
||||||
previewFrame.Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
previewFrame.Padding = new Vector4(20.0f, 20.0f, 20.0f, 20.0f);
|
||||||
previewFrame.UserData = characterInfo;
|
previewFrame.UserData = characterInfo;
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user