コード例 #1
0
        public static float MaximumAttribute(string attributeName)
        {
            float max = 0;

            foreach (MinionIdentity identity in Components.MinionIdentities)
            {
                MinionModifiers modifiers = identity.GetComponent <MinionModifiers>();
                if (modifiers == null)
                {
                    continue;
                }
                Klei.AI.AttributeInstance attributeInstance = modifiers.attributes.AttributeTable.Where(p => p.Name == attributeName).FirstOrDefault();
                if (attributeInstance == null)
                {
                    continue;
                }

                float value = attributeInstance.GetTotalValue();
                if (value > max)
                {
                    max = value;
                }
            }
            return(max);
        }
コード例 #2
0
        public static int DuplicantsWithMorale(int morale)
        {
            int count = 0;

            foreach (MinionIdentity identity in Components.MinionIdentities)
            {
                //MinionModifiers modifiers = identity.GetComponent<MinionModifiers>();
                //if (modifiers == null)
                //continue;

                Klei.AI.AttributeInstance attributeInstance = Db.Get().Attributes.QualityOfLife.Lookup((Component)identity.gameObject.GetComponent <MinionModifiers>());
                if (attributeInstance == null)
                {
                    continue;
                }

                float value = attributeInstance.GetTotalValue();
                if (value >= morale)
                {
                    count++;
                }
            }
            return(count);
        }