コード例 #1
0
    public ConstituentState GetState(string name)
    {
        ConstituentState existingState = States.Find(s => s.Name == name);

        if (existingState == null)
        {
            return(null);                                               // No match found.
        }
        return(existingState);                                          // Successful.
    }
コード例 #2
0
    public bool AddState(ConstituentState state)
    {
        ConstituentState existingState = States.Find(s => s == state);

        if (existingState != null)
        {
            return(false);                                              // Already exists.
        }
        States.Insert(0, state);
        return(true);                                                    // Successful.
    }
コード例 #3
0
    public static bool AddConstituent(ConstituentData constituent, ConstituentState state)
    {
        ConstituentData constituentData = Constituents.Find(c => c == constituent);

        if (constituentData != null)
        {
            return(false);                         // Duplicate ConstituentData found.
        }
        ConstituentState constituentState = constituentData.States.Find(s => s == state);

        if (constituentState != null)
        {
            return(false);                          // Duplicate ConstituentState found.
        }
        return(true);
    }
コード例 #4
0
    public static ConstituentState GetConstituent(string constituentName, string stateName)
    {
        if (Constituents.Count == 0)
        {
            return(null);                         // No ConstituentData stored yet.
        }
        ConstituentData constituentData = Constituents.Find(c => c.Name == constituentName);

        if (constituentData == null)
        {
            return(null);                         // No matching ConstituentData.
        }
        ConstituentState constituentState = constituentData.States.Find(s => s.Name == stateName);

        if (constituentState == null)
        {
            return(null);                          // No matching ConstituentState.
        }
        return(constituentState);
    }
コード例 #5
0
 // Constructors
 public Constituent(ConstituentState constituentState, byte amount)
 {
     ConstituentState = constituentState;
     this.amount      = 1; // Sets it to 0 so that it can be bitshifted to whatever 'amount' is.
     this.amount    <<= amount;
 }
コード例 #6
0
 public void AddConstituent(ConstituentState constituentState, byte amount = 1)
 {
     Constituents.Insert(0, new Constituent(constituentState, amount));
     //return Constituents[0].AddAmount(amount);
 }