Entities that are behind other entities can be selected using a listbox that appears when hovering the cursor over them, itemcomponent GUIFrames aren't added to GUIUpdateList in sub editor (unless in character mode)

This commit is contained in:
Regalis
2016-11-28 21:27:36 +02:00
parent d035d3bfb2
commit 0b03b78606
9 changed files with 196 additions and 61 deletions
@@ -177,7 +177,7 @@ namespace Barotrauma.Items.Components
Item targetItem;
if ((targetStructure = (targetBody.UserData as Structure)) != null)
{
if (!fixableEntities.Contains(targetStructure.Name)) return;
if (!fixableEntities.Contains("structure") && !fixableEntities.Contains(targetStructure.Name)) return;
if (targetStructure.IsPlatform) return;
int sectionIndex = targetStructure.FindSectionIndex(ConvertUnits.ToDisplayUnits(pickedPosition));
+20 -11
View File
@@ -1145,23 +1145,32 @@ namespace Barotrauma
public override void AddToGUIUpdateList()
{
if (condition <= 0.0f)
{
FixRequirement.AddToGUIUpdateList();
return;
}
if (HasInGameEditableProperties)
if (Screen.Selected is EditMapScreen)
{
if (editingHUD != null) editingHUD.AddToGUIUpdateList();
}
foreach (ItemComponent ic in components)
else
{
ic.AddToGUIUpdateList();
if (HasInGameEditableProperties)
{
if (editingHUD != null) editingHUD.AddToGUIUpdateList();
}
}
if (Screen.Selected is EditMapScreen && editingHUD != null) editingHUD.AddToGUIUpdateList();
if (Character.Controlled!=null && Character.Controlled.SelectedConstruction == this)
{
if (condition <= 0.0f)
{
FixRequirement.AddToGUIUpdateList();
return;
}
foreach (ItemComponent ic in components)
{
ic.AddToGUIUpdateList();
}
}
}
public virtual void UpdateHUD(Camera cam, Character character)