Esempio n. 1
0
        public override void Live()
        {
            if (Satiety <= 0 || Dead)
            {
                Dead = true;
            }
            else if (GlobalMap.CheckTime())
            {
                CurrentBirthCooldown--;
                Sleep();
            }
            else if (Satiety <= SatTreshold)
            {
                CurrentBirthCooldown--;

                FindFood();

                Eat();
            }
            else if (FoundPartner == null)
            {
                RandomMove();
                CurrentBirthCooldown--;
                if (CurrentBirthCooldown < BirthCooldown)
                {
                    FindPartner();
                }
            }
            else if (FoundPartner != null)
            {
                MoveTo(DateX, DateY);
                ProduceNewUnit();
            }
        }
Esempio n. 2
0
        public override void Live()
        {
            if (Satiety <= 0 || Dead)
            {
                Dead = true;
            }
            else if (GlobalMap.CheckTime())
            {
                CurrentBirthCooldown--;
                Sleep();
            }
            else if (Satiety <= SatTreshold)
            {
                CurrentBirthCooldown--;

                if (MyHouse != null)
                {
                    if (MyHouse.CheckStorage())
                    {
                        EatFromStorage();
                    }
                    else
                    {
                        FindFood();
                        Eat();
                    }
                }
            }
            else if (Gender == GameObjectType.Female && MyHouse != null)
            {
                if (!MyHouse.CheckStorage())
                {
                    Gathering();
                }
            }
            else if (FoundPartner == null)
            {
                RandomMove();
                CurrentBirthCooldown--;
                if (CurrentBirthCooldown < BirthCooldown)
                {
                    FindPartner();
                }
            }
            else if (FoundPartner != null && CurrentBirthCooldown < BirthCooldown)
            {
                if (MyHouse == null)
                {
                    if (Gender == GameObjectType.Male)
                    {
                        LocateBuilding();
                    }
                    MoveTo(DateX, DateY);
                }
                else
                {
                    MoveTo(MyHouse.X, MyHouse.Y);
                }

                CreateFamily();
            }
            else
            {
                StayHome();
            }
        }