Beispiel #1
0
    /// <summary>
    /// Est ce que l'unité qui a été cliquée fait partie de l'armée
    /// </summary>
    /// <param name="uniTouch"></param>
    /// <returns></returns>
    bool CanUseUnitWhenClic(UnitScript uniTouch)
    {
        if (uniTouch.IsActivationDone == false)
        {
            if (GameManager.Instance.IsPlayerRedTurn)
            {
                if (!PlayerStatic.CheckIsUnitArmy(uniTouch, true) && !uniTouch.UnitStatus.Contains(MYthsAndSteel_Enum.UnitStatut.Possédé))
                {
                    return(false);
                }
            }
            else
            {
                if (!PlayerStatic.CheckIsUnitArmy(uniTouch, false) && !uniTouch.UnitStatus.Contains(MYthsAndSteel_Enum.UnitStatut.Possédé))
                {
                    return(false);
                }
            }


            if (GameManager.Instance.ActualTurnPhase != MYthsAndSteel_Enum.PhaseDeJeu.ActionJ1 && GameManager.Instance.ActualTurnPhase != MYthsAndSteel_Enum.PhaseDeJeu.ActionJ2)
            {
                return(false);
            }

            bool isDeactivate = false;
            foreach (MYthsAndSteel_Enum.TypeUnite type in PlayerScript.Instance.DisactivateUnitType)
            {
                if (uniTouch.UnitSO.typeUnite == type)
                {
                    isDeactivate = true;
                }
            }

            if (isDeactivate)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
        else
        {
            return(false);
        }
    }
Beispiel #2
0
    /// <summary>
    /// Check si des ressources doivent être distribuées.
    /// </summary>
    public void CheckResources()
    {
        Debug.Log("Ressources");
        foreach (GameObject Tile in TilesManager.Instance.ResourcesList)
        {
            TileScript S = Tile.GetComponent <TileScript>();
            if (S.ResourcesCounter != 0)
            {
                if (S.Unit != null)
                {
                    UnitScript US = S.Unit.GetComponent <UnitScript>();
                    S.RemoveRessources(1, PlayerStatic.CheckIsUnitArmy(US.GetComponent <UnitScript>(), true) == true ? 1 : 2);
                }
            }

            if (S.ResourcesCounter == 0)
            {
                S.RemoveEffect(MYthsAndSteel_Enum.TerrainType.Point_de_ressource);
                S.TerrainEffectList.Remove(MYthsAndSteel_Enum.TerrainType.Point_de_ressource);
                S.TerrainEffectList.Add(MYthsAndSteel_Enum.TerrainType.Point_de_ressources_vide);
            }
        }
    }