public UnitInTileUI(Condition cond) { InitializeComponent(); condition = cond as UnitInTile; xTextBox.Text = condition.CoordinateX.ToString(CultureInfo.InvariantCulture); yTextBox.Text = condition.CoordinateY.ToString(CultureInfo.InvariantCulture); runCountTextBox.Text = condition.RunCount.ToString(CultureInfo.InvariantCulture); }
/// <summary> /// Quand tu cliques sur une unité /// </summary> public void Select() { //Lorsque le joueur choisit une unité if (GameManager.Instance.ChooseUnitForEvent) { if (_unitInTile != null) { if (GameManager.Instance.SelectableUnit.Contains(UnitInTile)) { if (!GameManager.Instance.IllusionStratégique) { GameManager.Instance.AddUnitToList(_unitInTile); } //Pour la carte événement Illusion Stratégique else { if (GameManager.Instance.UnitChooseList.Count > 0) { //est ce qu'il y avait déjà une unité dans la liste if (GameManager.Instance.UnitChooseList[0].GetComponent <UnitScript>().UnitSO.IsInRedArmy == _unitInTile.GetComponent <UnitScript>().UnitSO.IsInRedArmy) { GameManager.Instance.AddUnitToList(_unitInTile); } else { } } else { GameManager.Instance.AddUnitToList(_unitInTile); } } } } } //lorsque le joueur choisit une case else if (GameManager.Instance.ChooseTileForEvent) { if (_tile != null) { GameManager.Instance.AddTileToList(_tile); } } //lorsque le joueur peut cliquer sur les unités normalement else { //Si le mouvement n'a pas été lancé if (GameManager.Instance.ActualTurnPhase == MYthsAndSteel_Enum.PhaseDeJeu.ActionJ1 || GameManager.Instance.ActualTurnPhase == MYthsAndSteel_Enum.PhaseDeJeu.ActionJ2) { if (_actualUnitSelected == UnitInTile && !Mouvement.Instance.MvmtRunning && Attaque.Instance.IsInAttack) { Mouvement.Instance.StopMouvement(true); Attaque.Instance.StopAttack(); _actualTileSelected = null; _actualUnitSelected = null; } else if (!Mouvement.Instance.Selected && !Attaque.Instance.Selected && UnitInTile != null) { UnitScript currentUnitScript = UnitInTile.GetComponent <UnitScript>(); if (CanUseUnitWhenClic(currentUnitScript)) { _actualTileSelected = _tile; _actualUnitSelected = _unitInTile; Mouvement.Instance.StartMvmtForSelectedUnit(); Attaque.Instance.StartAttackSelectionUnit(); } } else if (Mouvement.Instance.Selected) { if (Mouvement.Instance.IsInMouvement && !Mouvement.Instance.MvmtRunning) { if (_tile != _actualTileSelected) { Mouvement.Instance.AddMouvement(TilesManager.Instance.TileList.IndexOf(_tile)); } else { Mouvement.Instance.StopMouvement(true); UIInstance.Instance.ActivationUnitPanel.CloseMovementPanel(); } } } } else if (GameManager.Instance.ActualTurnPhase == MYthsAndSteel_Enum.PhaseDeJeu.OrgoneJ1 || GameManager.Instance.ActualTurnPhase == MYthsAndSteel_Enum.PhaseDeJeu.OrgoneJ2) { if (GameManager.Instance.IsPlayerRedTurn && _tile == PlayerScript.Instance.RedPlayerInfos.TileCentreZoneOrgone) { OrgoneManager.Instance.StartToMoveZone(); } else if (!GameManager.Instance.IsPlayerRedTurn && _tile == PlayerScript.Instance.BluePlayerInfos.TileCentreZoneOrgone) { OrgoneManager.Instance.StartToMoveZone(); } } } }