Example #1
0
        public override void CreateCustom()
        {
            IList <Waypoint> wp = Root.Instance.Scene.FindEntitiesByType <Waypoint>();

            Waypoint[] waypoints = new Waypoint[wp.Count];
            for (int i = 0; i < wp.Count; ++i)
            {
                waypoints[i] = wp[i];
            }

            Array.Sort <Waypoint>(waypoints, new Comparison <Waypoint>(delegate(Waypoint wp1, Waypoint wp2)
            {
                return(string.Compare(wp1.Name, wp2.Name));
            }));

            SpaceWar2006.Ships.BorgCube e = new SpaceWar2006.Ships.BorgCube();
            e.Position = waypoints[0].Position;
            Spawn(e, false);

            if (Root.Instance.IsAuthoritive)
            {
                Ai.SpaceShipBotControl ai = new SpaceWar2006.Ai.SpaceShipBotControl(e);
                ai.ChangeTask(new Ai.Patrol(e, waypoints));
                Root.Instance.LocalObjects.Add(ai);

                Mission             = new SpaceWar2006.Rules.Mission();
                Mission.Missions    = new SpaceWar2006.Rules.SingleMission[2];
                Mission.Missions[0] = new SpaceWar2006.Rules.SingleMission(
                    new SpaceWar2006.Rules.Objective[] {
                    new SpaceWar2006.Rules.DestroyObjective("Destroy the Borg cube", new Actor[] { e })
                });
                Mission.Missions[1] = new SpaceWar2006.Rules.SingleMission(
                    new SpaceWar2006.Rules.Objective[] {
                    new SpaceWar2006.Rules.EscortObjective("Escort the Borg cube", new Actor[] { e })
                });
                Mission.TimeLimit = 60;
            }
            //Mission.SecondaryObjectives = new SpaceWar2006.Rules.Objective[] { };

            Light l = new Light();

            l.directional = true;
            l.Position    = Vector3Extensions.GetUnit(new Vector3(-1, 3, 4));
            Spawn(l, true);
        }
Example #2
0
        public override void CreateCustom()
        {
            IList<Waypoint> wp = Root.Instance.Scene.FindEntitiesByType<Waypoint>();
            Waypoint[] waypoints = new Waypoint[wp.Count];
            for (int i = 0; i < wp.Count; ++i)
                waypoints[i] = wp[i];

            Array.Sort<Waypoint>(waypoints, new Comparison<Waypoint>(delegate(Waypoint wp1, Waypoint wp2)
            {
                return string.Compare(wp1.Name, wp2.Name);
            }));

            SpaceWar2006.Ships.BorgCube e = new SpaceWar2006.Ships.BorgCube();
            e.Position = waypoints[0].Position;
            Spawn(e, false);

            if (Root.Instance.IsAuthoritive)
            {
                Ai.SpaceShipBotControl ai = new SpaceWar2006.Ai.SpaceShipBotControl(e);
                ai.ChangeTask(new Ai.Patrol(e, waypoints));
                Root.Instance.LocalObjects.Add(ai);

                Mission = new SpaceWar2006.Rules.Mission();
                Mission.Missions = new SpaceWar2006.Rules.SingleMission[2];
                Mission.Missions[0]=new SpaceWar2006.Rules.SingleMission(
                    new SpaceWar2006.Rules.Objective[]{
                new SpaceWar2006.Rules.DestroyObjective("Destroy the Borg cube",new Actor[]{e})
            });
                Mission.Missions[1] = new SpaceWar2006.Rules.SingleMission(
                    new SpaceWar2006.Rules.Objective[]{
                new SpaceWar2006.Rules.EscortObjective("Escort the Borg cube",new Actor[]{e})
            });
                Mission.TimeLimit = 60;
            }
            //Mission.SecondaryObjectives = new SpaceWar2006.Rules.Objective[] { };

            Light l = new Light();
            l.directional = true;
            l.Position = Vector3Extensions.GetUnit(new Vector3(-1, 3, 4));
            Spawn(l, true);
        }