예제 #1
0
        public void LayEgg()
        {
            NoiseMaker.MakeNoise("Lay Egg", AI.Position, true, 1.0f);

            // Todo: Egg resource type and the baby made need to be in the species.
            if (!Library.DoesResourceTypeExist(Stats.CurrentClass.Name + " Egg") || !EntityFactory.EnumerateEntityTypes().Contains(Stats.CurrentClass.Name + " Egg Resource"))
            {
                var newEggResource = Library.CreateResourceType(Library.GetResourceType("Egg"));
                newEggResource.Name = Stats.CurrentClass.Name + " Egg";
                Library.AddResourceType(newEggResource);
            }

            var parent = EntityFactory.CreateEntity <GameComponent>(Stats.CurrentClass.Name + " Egg Resource", Physics.Position);

            parent.AddChild(new Egg(parent, Stats.Species.BabyType, Manager, Physics.Position, AI.PositionConstraint));
        }
예제 #2
0
        public void LayEgg()
        {
            NoiseMaker.MakeNoise("Lay Egg", AI.Position, true, 1.0f);

            if (ResourceLibrary.GetResourceByName(Species + " Egg") == null ||
                !EntityFactory.EnumerateEntityTypes().Contains(Species + " Egg Resource"))
            {
                Resource newEggResource =
                    new Resource(ResourceLibrary.GetResourceByName(ResourceType.Egg));
                newEggResource.Name = Species + " Egg";
                ResourceLibrary.Add(newEggResource);
            }
            var parent = EntityFactory.CreateEntity <Body>(this.Species + " Egg Resource", Physics.Position);

            parent.AddChild(new Egg(parent, this.Species, Manager, Physics.Position, AI.PositionConstraint));
        }
예제 #3
0
파일: Egg.cs 프로젝트: johan74/dwarfcorp
        public Egg(string adult, ComponentManager manager, Vector3 position, BoundingBox positionConstraint) :
            base(manager)
        {
            PositionConstrain = positionConstraint;
            Adult             = adult;
            Birthday          = Manager.World.Time.CurrentDate + new TimeSpan(0, 12, 0, 0);

            if (ResourceLibrary.GetResourceByName(adult + " Egg") == null ||
                !EntityFactory.EnumerateEntityTypes().Contains(adult + " Egg Resource"))
            {
                Resource newEggResource =
                    new Resource(ResourceLibrary.GetResourceByName(ResourceType.Egg));
                newEggResource.Name = adult + " Egg";
                ResourceLibrary.Add(newEggResource);
            }

            ParentBody = EntityFactory.CreateEntity <Body>(adult + " Egg Resource", position);
            ParentBody.AddChild(this);
        }