Faction Test 100.4.0.0
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
using Barotrauma.Tutorials;
|
||||
using Segment = Barotrauma.ObjectiveManager.Segment;
|
||||
|
||||
namespace Barotrauma;
|
||||
|
||||
partial class CheckObjectiveAction : BinaryOptionAction
|
||||
{
|
||||
public enum CheckType
|
||||
{
|
||||
Added,
|
||||
Completed
|
||||
}
|
||||
|
||||
[Serialize(CheckType.Completed, IsPropertySaveable.Yes)]
|
||||
public CheckType Type { get; set; }
|
||||
|
||||
[Serialize("", IsPropertySaveable.Yes)]
|
||||
public Identifier Identifier { get; set; }
|
||||
|
||||
partial void DetermineSuccessProjSpecific(ref bool success)
|
||||
{
|
||||
success = false;
|
||||
if (Identifier.IsEmpty)
|
||||
{
|
||||
success = ObjectiveManager.AllActiveObjectivesCompleted();
|
||||
}
|
||||
else if (ObjectiveManager.GetObjective(Identifier) is Segment segment)
|
||||
{
|
||||
success = Type switch
|
||||
{
|
||||
CheckType.Added => true,
|
||||
CheckType.Completed => segment.IsCompleted,
|
||||
_ => false
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user