public FactionDisplay(FactionInteraction factionInteraction, UnityObjectManager objectManager, FactionsInteractionManager interactionManager, MapInteraction mapInteraction) { _objectManager = objectManager; _mapInteraction = mapInteraction; _unityObject = objectManager.GetUnityObject(factionInteraction.Faction);; Faction = _unityObject.Faction; _unityObject.Text.text = Faction.Name; _unityObject.Text.color = Faction.Color; _interactionManager = interactionManager; _factionInteraction = factionInteraction; _orderIndicators = objectManager.GetOrderIndicatorsFor(factionInteraction.Faction).ToList().AsReadOnly(); }
private ReadOnlyDictionary <Faction, FactionUnityObject> MakeFactionObjects(Canvas hudCanvas, GameObject factionsPrefab, IEnumerable <PlayerSetup> playerSetups) { Dictionary <Faction, FactionUnityObject> ret = new Dictionary <Faction, FactionUnityObject>(); int indexer = 0; foreach (PlayerSetup playerSetup in playerSetups) { GameObject gameObject = GameObject.Instantiate(factionsPrefab, hudCanvas.transform); FactionUnityObject obj = gameObject.GetComponent <FactionUnityObject>(); obj.Faction = playerSetup.Faction; gameObject.name = playerSetup.Faction.Name + " hud"; ((RectTransform)gameObject.transform).offsetMax = new Vector2(0, -indexer * 10); ret.Add(playerSetup.Faction, obj); indexer++; } return(new ReadOnlyDictionary <Faction, FactionUnityObject>(ret)); }