summaryrefslogtreecommitdiff
path: root/Thronefall_v1.0/Decompile/TutorialManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Thronefall_v1.0/Decompile/TutorialManager.cs')
-rw-r--r--Thronefall_v1.0/Decompile/TutorialManager.cs662
1 files changed, 662 insertions, 0 deletions
diff --git a/Thronefall_v1.0/Decompile/TutorialManager.cs b/Thronefall_v1.0/Decompile/TutorialManager.cs
new file mode 100644
index 0000000..681344f
--- /dev/null
+++ b/Thronefall_v1.0/Decompile/TutorialManager.cs
@@ -0,0 +1,662 @@
+using System.Collections.Generic;
+using I2.Loc;
+using Pathfinding.RVO;
+using UnityEngine;
+
+public class TutorialManager : MonoBehaviour
+{
+ public static TutorialManager instance;
+
+ private PlayerInteraction playerInteraction;
+
+ private DayNightCycle dayNightCycle;
+
+ private TooltipManager tooltipManager;
+
+ private TagManager tagManager;
+
+ private EnemySpawner enemySpawner;
+
+ private bool allowStartingTheNight = true;
+
+ private static readonly string LOCIDENTIFIER = "Tutorial/";
+
+ [SerializeField]
+ private Transform arrowMarkerTransform;
+
+ [SerializeField]
+ private ScreenMarker arrowMarker;
+
+ [SerializeField]
+ private Transform player;
+
+ [Header("When you're dead")]
+ [SerializeField]
+ private Hp playerHp;
+
+ [Header("Movement Tutorial")]
+ [SerializeField]
+ private RVOController playerRvo;
+
+ [SerializeField]
+ private float requiredMoveDist;
+
+ private bool playerHasLearnedHowToMove;
+
+ private bool destroyedPracticeTargets;
+
+ private bool playerDidSprint;
+
+ [Header("Build Castle Center")]
+ [SerializeField]
+ private BuildingInteractor caslteBuildInteractor;
+
+ private bool castleCenterBuilt;
+
+ private bool mayShowEnemySpawn;
+
+ [Header("Start The Night")]
+ private bool firstNightStarted;
+
+ [Header("First Night")]
+ [SerializeField]
+ private StabMA activeStabAttack;
+
+ [Header("Build Houses")]
+ [SerializeField]
+ private List<BuildSlot> houses;
+
+ private bool housesBuilt;
+
+ [Header("Start The 2nd Night")]
+ private bool secondNightStarted;
+
+ [Header("2nd Night")]
+ [Header("Collect Taxes")]
+ [SerializeField]
+ private List<BuildSlot> towers;
+
+ private bool towersBuilt;
+
+ [Header("Start The 3d Night")]
+ private bool thirdNightStarted;
+
+ [Header("Upgrade Castle Center")]
+ [SerializeField]
+ private BuildSlot caslteBuilSlot;
+
+ [SerializeField]
+ private GameObject royalTraining;
+
+ [SerializeField]
+ private GameObject buildersGuild;
+
+ private bool castleCenterUpgraded;
+
+ private bool fourthNightStarted;
+
+ [Header("It's up to you!")]
+ [SerializeField]
+ private BuildSlot barracks;
+
+ [SerializeField]
+ private CommandUnits command;
+
+ private bool commandingUnits;
+
+ private bool commandedUnits;
+
+ private bool triedHoldPosition;
+
+ [TextArea(1, 10)]
+ public string whileDead;
+
+ [TextArea(1, 10)]
+ public string howToMove;
+
+ [TextArea(1, 10)]
+ public string howToSprint;
+
+ [TextArea(1, 10)]
+ public string howToBuild;
+
+ [TextArea(1, 10)]
+ public string startTheNight;
+
+ [TextArea(1, 10)]
+ public string howToStartTheNight;
+
+ [TextArea(1, 10)]
+ public string tooExpensiveToBuild;
+
+ [TextArea(1, 10)]
+ public string tooExpensiveToUpgrade;
+
+ [TextArea(1, 10)]
+ public string tooExpensiveToUpgradeCastleCenter;
+
+ [TextArea(1, 10)]
+ public string firstNight;
+
+ [TextArea(1, 10)]
+ public string firstNightDone;
+
+ [TextArea(1, 10)]
+ public string buildHouses;
+
+ [TextArea(1, 10)]
+ public string startThe2ndNight;
+
+ [TextArea(1, 10)]
+ public string secondNight;
+
+ [TextArea(1, 10)]
+ public string buildTowers;
+
+ [TextArea(1, 10)]
+ public string startThe3ndNight;
+
+ [TextArea(1, 10)]
+ public string upgradeCastleCenter;
+
+ [TextArea(1, 10)]
+ public string howToUpgrade;
+
+ [TextArea(1, 10)]
+ public string chooseAnUpgrade;
+
+ [TextArea(1, 10)]
+ public string goodChoiceGeneric;
+
+ [TextArea(1, 10)]
+ public string goodChoiceRoyalTraining;
+
+ [TextArea(1, 10)]
+ public string goodChoiceBuildersGuild;
+
+ [TextArea(1, 10)]
+ public string itsUpToYou;
+
+ [TextArea(1, 10)]
+ public string maybeBuildBarracksSomeTime;
+
+ [TextArea(1, 10)]
+ public string tryToCommandYourUnits;
+
+ [TextArea(1, 10)]
+ public string makeThemHoldPosition;
+
+ [TextArea(1, 10)]
+ public string howToHeal;
+
+ [TextArea(1, 10)]
+ public string lastDay;
+
+ [TextArea(1, 10)]
+ public string lastNight;
+
+ private List<TaggedObject> findTaggedObjects = new List<TaggedObject>();
+
+ private List<TagManager.ETag> mustHaveTag = new List<TagManager.ETag>();
+
+ private List<TagManager.ETag> mayNotHaveTag = new List<TagManager.ETag>();
+
+ public static bool AllowStartingTheNight
+ {
+ get
+ {
+ if (!instance)
+ {
+ return true;
+ }
+ return instance.allowStartingTheNight;
+ }
+ }
+
+ public bool MayShowEnemySpawn => mayShowEnemySpawn;
+
+ private void SetArrowMarker(bool _enabled, Vector3 _pos, bool _offScreenOnly = false)
+ {
+ arrowMarkerTransform.gameObject.SetActive(_enabled);
+ arrowMarkerTransform.position = _pos + Vector3.up * 10f;
+ arrowMarker.showWhenOnScreen = !_offScreenOnly;
+ }
+
+ private void MarkNearestObjectWithTag(TagManager.ETag _tag, bool _offScreenOnly = false)
+ {
+ findTaggedObjects.Clear();
+ mustHaveTag.Clear();
+ mayNotHaveTag.Clear();
+ mustHaveTag.Add(_tag);
+ TagManager.instance.FindAllTaggedObjectsWithTags(findTaggedObjects, mustHaveTag, mayNotHaveTag);
+ if (findTaggedObjects.Count <= 0)
+ {
+ return;
+ }
+ TaggedObject taggedObject = null;
+ float num = float.MaxValue;
+ for (int i = 0; i < findTaggedObjects.Count; i++)
+ {
+ float magnitude = (player.transform.position - findTaggedObjects[i].transform.position).magnitude;
+ if (magnitude < num)
+ {
+ num = magnitude;
+ taggedObject = findTaggedObjects[i];
+ }
+ }
+ SetArrowMarker(_enabled: true, taggedObject.transform.position, _offScreenOnly);
+ }
+
+ private void MarkNearestUnbuiltBuilding(List<BuildSlot> _buildSlots)
+ {
+ List<BuildSlot> list = new List<BuildSlot>(_buildSlots);
+ for (int num = list.Count - 1; num >= 0; num--)
+ {
+ if (list[num].State == BuildSlot.BuildingState.Built)
+ {
+ list.RemoveAt(num);
+ }
+ else if (!list[num].gameObject.activeInHierarchy)
+ {
+ list.RemoveAt(num);
+ }
+ }
+ if (list.Count <= 0)
+ {
+ return;
+ }
+ BuildSlot buildSlot = null;
+ float num2 = float.MaxValue;
+ for (int i = 0; i < list.Count; i++)
+ {
+ float magnitude = (player.transform.position - list[i].transform.position).magnitude;
+ if (magnitude < num2)
+ {
+ num2 = magnitude;
+ buildSlot = list[i];
+ }
+ }
+ SetArrowMarker(_enabled: true, buildSlot.transform.position);
+ }
+
+ private void MarkNearestGoldCoin()
+ {
+ List<Coin> freeCoins = TagManager.instance.freeCoins;
+ if (freeCoins.Count <= 0)
+ {
+ return;
+ }
+ Coin coin = null;
+ float num = float.MaxValue;
+ for (int i = 0; i < freeCoins.Count; i++)
+ {
+ float magnitude = (player.transform.position - freeCoins[i].transform.position).magnitude;
+ if (magnitude < num)
+ {
+ num = magnitude;
+ coin = freeCoins[i];
+ }
+ }
+ SetArrowMarker(_enabled: true, coin.transform.position);
+ }
+
+ private void Awake()
+ {
+ instance = this;
+ }
+
+ private void OnEnable()
+ {
+ LocalizationManager.OnLocalizeEvent += FetchLocalizedTexts;
+ }
+
+ private void OnDisable()
+ {
+ LocalizationManager.OnLocalizeEvent -= FetchLocalizedTexts;
+ }
+
+ private void Start()
+ {
+ dayNightCycle = DayNightCycle.Instance;
+ tooltipManager = TooltipManager.instance;
+ tagManager = TagManager.instance;
+ playerInteraction = PlayerInteraction.instance;
+ enemySpawner = EnemySpawner.instance;
+ FetchLocalizedTexts();
+ }
+
+ private void Update()
+ {
+ if (SceneTransitionManager.instance.SceneTransitionIsRunning)
+ {
+ return;
+ }
+ SetArrowMarker(_enabled: false, Vector3.zero);
+ tooltipManager.SetTutorialOverride("");
+ tooltipManager.SetTutorialOverride("", _priorityText: false);
+ if (playerHp.KnockedOut)
+ {
+ tooltipManager.SetTutorialOverride(whileDead);
+ return;
+ }
+ if (!playerHasLearnedHowToMove)
+ {
+ MarkNearestObjectWithTag(TagManager.ETag.PracticeTargets);
+ tooltipManager.SetTutorialOverride(howToMove);
+ requiredMoveDist -= playerRvo.velocity.magnitude * Time.deltaTime;
+ if (requiredMoveDist < 0f)
+ {
+ playerHasLearnedHowToMove = true;
+ }
+ return;
+ }
+ if (!destroyedPracticeTargets)
+ {
+ MarkNearestObjectWithTag(TagManager.ETag.PracticeTargets);
+ if (tagManager.CountAllTaggedObjectsWithTag(TagManager.ETag.PracticeTargets) <= 0)
+ {
+ destroyedPracticeTargets = true;
+ }
+ return;
+ }
+ if (tagManager.freeCoins.Count > 0 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day && enemySpawner.Wavenumber == -1 && enemySpawner.Wavenumber <= 3)
+ {
+ MarkNearestGoldCoin();
+ return;
+ }
+ if (!castleCenterBuilt)
+ {
+ if (PlayerManager.Instance.RegisteredPlayers[0].Sprinting)
+ {
+ playerDidSprint = true;
+ }
+ if (playerInteraction.FocussedInteractor == caslteBuildInteractor)
+ {
+ tooltipManager.SetTutorialOverride(howToBuild);
+ }
+ else
+ {
+ tooltipManager.SetTutorialOverride(howToSprint);
+ if (playerDidSprint)
+ {
+ SetArrowMarker(_enabled: true, caslteBuildInteractor.transform.position);
+ }
+ }
+ if (tagManager.CountAllTaggedObjectsWithTag(TagManager.ETag.Building) > 0)
+ {
+ castleCenterBuilt = true;
+ mayShowEnemySpawn = true;
+ enemySpawner.EnemySpawnersHornUnFocussed();
+ }
+ return;
+ }
+ if (playerInteraction.FocussedInteractor != null && playerInteraction.FocussedInteractor.GetType() == typeof(BuildingInteractor))
+ {
+ BuildingInteractor buildingInteractor = (BuildingInteractor)playerInteraction.FocussedInteractor;
+ if (buildingInteractor.targetBuilding.CanBeUpgraded && playerInteraction.Balance + CostDisplay.currentlyFilledCoinsFromLastActiveDisplay < buildingInteractor.targetBuilding.NextUpgradeOrBuildCost && !buildingInteractor.UpgradeCueVisible)
+ {
+ if (buildingInteractor.targetBuilding.State == BuildSlot.BuildingState.Blueprint)
+ {
+ tooltipManager.SetTutorialOverride(tooExpensiveToBuild);
+ }
+ else if (buildingInteractor.targetBuilding.GetComponentInChildren<TaggedObject>().Tags.Contains(TagManager.ETag.CastleCenter))
+ {
+ tooltipManager.SetTutorialOverride(tooExpensiveToUpgradeCastleCenter);
+ }
+ else
+ {
+ tooltipManager.SetTutorialOverride(tooExpensiveToUpgrade);
+ }
+ return;
+ }
+ }
+ if (!firstNightStarted)
+ {
+ tooltipManager.SetTutorialOverride(startTheNight);
+ if (dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ firstNightStarted = true;
+ }
+ return;
+ }
+ if (enemySpawner.Wavenumber == 0 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ EnemySpawner.instance.InfinitelySpawning = activeStabAttack.TargetsStabeed < 3;
+ MarkNearestObjectWithTag(TagManager.ETag.EnemyOwned, _offScreenOnly: true);
+ allowStartingTheNight = false;
+ if (activeStabAttack.TargetsStabeed < 3)
+ {
+ tooltipManager.SetTutorialOverride(firstNight + " (" + activeStabAttack.TargetsStabeed + "/3)");
+ }
+ else
+ {
+ tooltipManager.SetTutorialOverride(firstNightDone);
+ }
+ return;
+ }
+ if (!housesBuilt && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day)
+ {
+ MarkNearestUnbuiltBuilding(houses);
+ int num = tagManager.CountAllTaggedObjectsWithTag(TagManager.ETag.Building);
+ int num2 = num - 1;
+ tooltipManager.SetTutorialOverride(buildHouses + " (" + num2 + "/3)");
+ if (playerInteraction.FocussedInteractor != null && playerInteraction.FocussedInteractor.GetType() == typeof(BuildingInteractor))
+ {
+ SetArrowMarker(_enabled: false, Vector3.zero);
+ if (num2 == 0)
+ {
+ tooltipManager.SetTutorialOverride(howToBuild);
+ }
+ }
+ if (num >= 4)
+ {
+ housesBuilt = true;
+ }
+ return;
+ }
+ if (!secondNightStarted && housesBuilt)
+ {
+ allowStartingTheNight = true;
+ tooltipManager.SetTutorialOverride(startThe2ndNight);
+ if (dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ secondNightStarted = true;
+ }
+ return;
+ }
+ if (enemySpawner.Wavenumber == 1 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ MarkNearestObjectWithTag(TagManager.ETag.EnemyOwned, _offScreenOnly: true);
+ allowStartingTheNight = false;
+ tooltipManager.SetTutorialOverride(secondNight);
+ return;
+ }
+ if (!towersBuilt && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day)
+ {
+ if (dayNightCycle.AfterSunrise)
+ {
+ MarkNearestUnbuiltBuilding(towers);
+ if (playerInteraction.FocussedInteractor != null && playerInteraction.FocussedInteractor.GetType() == typeof(BuildingInteractor))
+ {
+ SetArrowMarker(_enabled: false, Vector3.zero);
+ }
+ int num3 = tagManager.CountAllTaggedObjectsWithTag(TagManager.ETag.Building) - 4;
+ tooltipManager.SetTutorialOverride(buildTowers + " (" + num3 + "/2)");
+ if (num3 >= 2)
+ {
+ towersBuilt = true;
+ }
+ }
+ return;
+ }
+ if (!thirdNightStarted && towersBuilt)
+ {
+ allowStartingTheNight = true;
+ tooltipManager.SetTutorialOverride(startThe3ndNight);
+ if (dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ thirdNightStarted = true;
+ }
+ return;
+ }
+ if (ChoiceManager.instance.ChoiceCoroutineRunning)
+ {
+ tooltipManager.SetTutorialOverride(chooseAnUpgrade);
+ return;
+ }
+ if (thirdNightStarted && !castleCenterUpgraded && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day)
+ {
+ allowStartingTheNight = false;
+ if (!dayNightCycle.AfterSunrise)
+ {
+ return;
+ }
+ if (playerInteraction.FocussedInteractor == caslteBuildInteractor)
+ {
+ tooltipManager.SetTutorialOverride(howToUpgrade);
+ return;
+ }
+ SetArrowMarker(_enabled: true, caslteBuildInteractor.transform.position);
+ tooltipManager.SetTutorialOverride(upgradeCastleCenter);
+ if (caslteBuilSlot.Level == 2)
+ {
+ castleCenterUpgraded = true;
+ allowStartingTheNight = true;
+ }
+ return;
+ }
+ if (!fourthNightStarted && castleCenterUpgraded)
+ {
+ allowStartingTheNight = true;
+ if (royalTraining.activeInHierarchy)
+ {
+ tooltipManager.SetTutorialOverride(goodChoiceRoyalTraining);
+ }
+ else if (buildersGuild.activeInHierarchy)
+ {
+ tooltipManager.SetTutorialOverride(goodChoiceBuildersGuild);
+ }
+ else
+ {
+ tooltipManager.SetTutorialOverride(goodChoiceGeneric);
+ }
+ if (dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ fourthNightStarted = true;
+ }
+ return;
+ }
+ if (enemySpawner.Wavenumber == 3 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ allowStartingTheNight = false;
+ return;
+ }
+ if (barracks.State == BuildSlot.BuildingState.Built && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day)
+ {
+ if (!dayNightCycle.AfterSunrise)
+ {
+ return;
+ }
+ if (!commandedUnits)
+ {
+ if (command.commanding)
+ {
+ commandingUnits = true;
+ }
+ if (commandingUnits && !command.commanding)
+ {
+ commandedUnits = true;
+ }
+ tooltipManager.SetTutorialOverride(tryToCommandYourUnits);
+ return;
+ }
+ if (!triedHoldPosition)
+ {
+ foreach (TaggedObject playerUnit in TagManager.instance.PlayerUnits)
+ {
+ if (playerUnit.GetComponent<PathfindMovementPlayerunit>().HoldPosition)
+ {
+ triedHoldPosition = true;
+ }
+ }
+ tooltipManager.SetTutorialOverride(makeThemHoldPosition);
+ }
+ }
+ if (enemySpawner.Wavenumber == 3 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day)
+ {
+ if (dayNightCycle.AfterSunrise)
+ {
+ tooltipManager.SetTutorialOverride(itsUpToYou, _priorityText: false);
+ allowStartingTheNight = true;
+ }
+ }
+ else if (enemySpawner.Wavenumber == 4 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ tooltipManager.SetTutorialOverride(howToHeal);
+ }
+ else if (enemySpawner.Wavenumber >= 4 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day && barracks.State != BuildSlot.BuildingState.Built && playerInteraction.Balance + CostDisplay.currentlyFilledCoinsFromLastActiveDisplay >= 4)
+ {
+ if (dayNightCycle.AfterSunrise)
+ {
+ tooltipManager.SetTutorialOverride(maybeBuildBarracksSomeTime, _priorityText: false);
+ if (playerInteraction.FocussedInteractor == null)
+ {
+ SetArrowMarker(_enabled: true, barracks.transform.position + Vector3.up * 3f);
+ }
+ }
+ }
+ else if (enemySpawner.Wavenumber == 5 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ tooltipManager.SetTutorialOverride(howToHeal);
+ }
+ else if (enemySpawner.Wavenumber == 5 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day)
+ {
+ _ = dayNightCycle.AfterSunrise;
+ }
+ else if (enemySpawner.Wavenumber == 6 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ tooltipManager.SetTutorialOverride(howToHeal);
+ }
+ else if (enemySpawner.Wavenumber == 6 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Day)
+ {
+ tooltipManager.SetTutorialOverride(lastDay, _priorityText: false);
+ }
+ else if (enemySpawner.Wavenumber == 7 && dayNightCycle.CurrentTimestate == DayNightCycle.Timestate.Night)
+ {
+ tooltipManager.SetTutorialOverride(lastNight);
+ }
+ }
+
+ private void FetchLocalizedTexts()
+ {
+ whileDead = LocalizationManager.GetTranslation(LOCIDENTIFIER + "whileDead");
+ howToMove = LocalizationManager.GetTranslation(LOCIDENTIFIER + "howToMove");
+ howToSprint = LocalizationManager.GetTranslation(LOCIDENTIFIER + "howToSprint");
+ howToBuild = LocalizationManager.GetTranslation(LOCIDENTIFIER + "howToBuild");
+ startTheNight = LocalizationManager.GetTranslation(LOCIDENTIFIER + "startTheNight");
+ howToStartTheNight = LocalizationManager.GetTranslation(LOCIDENTIFIER + "howToStartTheNight");
+ tooExpensiveToBuild = LocalizationManager.GetTranslation(LOCIDENTIFIER + "tooExpensiveToBuild");
+ tooExpensiveToUpgrade = LocalizationManager.GetTranslation(LOCIDENTIFIER + "tooExpensiveToUpgrade");
+ tooExpensiveToUpgradeCastleCenter = LocalizationManager.GetTranslation(LOCIDENTIFIER + "tooExpensiveToUpgradeCastleCenter");
+ firstNight = LocalizationManager.GetTranslation(LOCIDENTIFIER + "firstNight");
+ firstNightDone = LocalizationManager.GetTranslation(LOCIDENTIFIER + "firstNightDone");
+ buildHouses = LocalizationManager.GetTranslation(LOCIDENTIFIER + "buildHouses");
+ startThe2ndNight = LocalizationManager.GetTranslation(LOCIDENTIFIER + "startThe2ndNight");
+ secondNight = LocalizationManager.GetTranslation(LOCIDENTIFIER + "secondNight");
+ buildTowers = LocalizationManager.GetTranslation(LOCIDENTIFIER + "buildTowers");
+ startThe3ndNight = LocalizationManager.GetTranslation(LOCIDENTIFIER + "startThe3ndNight");
+ upgradeCastleCenter = LocalizationManager.GetTranslation(LOCIDENTIFIER + "upgradeCastleCenter");
+ howToUpgrade = LocalizationManager.GetTranslation(LOCIDENTIFIER + "howToUpgrade");
+ chooseAnUpgrade = LocalizationManager.GetTranslation(LOCIDENTIFIER + "chooseAnUpgrade");
+ goodChoiceGeneric = LocalizationManager.GetTranslation(LOCIDENTIFIER + "goodChoiceGeneric");
+ goodChoiceRoyalTraining = LocalizationManager.GetTranslation(LOCIDENTIFIER + "goodChoiceRoyalTraining");
+ goodChoiceBuildersGuild = LocalizationManager.GetTranslation(LOCIDENTIFIER + "goodChoiceBuildersGuild");
+ itsUpToYou = LocalizationManager.GetTranslation(LOCIDENTIFIER + "itsUpToYou");
+ maybeBuildBarracksSomeTime = LocalizationManager.GetTranslation(LOCIDENTIFIER + "maybeBuildBarracksSomeTime");
+ tryToCommandYourUnits = LocalizationManager.GetTranslation(LOCIDENTIFIER + "tryToCommandYourUnits");
+ makeThemHoldPosition = LocalizationManager.GetTranslation(LOCIDENTIFIER + "makeThemHoldPosition");
+ howToHeal = LocalizationManager.GetTranslation(LOCIDENTIFIER + "howToHeal");
+ lastDay = LocalizationManager.GetTranslation(LOCIDENTIFIER + "lastDay");
+ lastNight = LocalizationManager.GetTranslation(LOCIDENTIFIER + "lastNight");
+ }
+}