diff options
Diffstat (limited to 'Client/Assembly-CSharp/DivertPowerTask.cs')
-rw-r--r-- | Client/Assembly-CSharp/DivertPowerTask.cs | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/Client/Assembly-CSharp/DivertPowerTask.cs b/Client/Assembly-CSharp/DivertPowerTask.cs new file mode 100644 index 0000000..f970ae3 --- /dev/null +++ b/Client/Assembly-CSharp/DivertPowerTask.cs @@ -0,0 +1,51 @@ +using System; +using System.Linq; +using System.Text; + +public class DivertPowerTask : NormalPlayerTask +{ + public SystemTypes TargetSystem; + + public override bool ValidConsole(global::Console console) + { + return (console.Room == this.TargetSystem && console.ValidTasks.Any((TaskSet set) => this.TaskType == set.taskType && set.taskStep.Contains(this.taskStep))) || (this.taskStep == 0 && console.TaskTypes.Contains(this.TaskType)); + } + + public override void AppendTaskText(StringBuilder sb) + { + if (this.taskStep > 0) + { + if (this.IsComplete) + { + sb.Append("[00DD00FF]"); + } + else + { + sb.Append("[FFFF00FF]"); + } + } + if (this.taskStep == 0) + { + sb.Append(DestroyableSingleton<TranslationController>.Instance.GetString(this.StartAt)); + sb.Append(": "); + sb.Append(DestroyableSingleton<TranslationController>.Instance.GetString(StringNames.DivertPowerTo, Array.Empty<object>())); + sb.Append(" "); + sb.Append(DestroyableSingleton<TranslationController>.Instance.GetString(this.TargetSystem)); + } + else + { + sb.Append(DestroyableSingleton<TranslationController>.Instance.GetString(this.TargetSystem)); + sb.Append(": "); + sb.Append(DestroyableSingleton<TranslationController>.Instance.GetString(StringNames.AcceptDivertedPower, Array.Empty<object>())); + } + sb.Append(" ("); + sb.Append(this.taskStep); + sb.Append("/"); + sb.Append(this.MaxStep); + sb.AppendLine(")"); + if (this.taskStep > 0) + { + sb.Append("[]"); + } + } +} |