private static void ParseInput() { var segments = (Console.ReadLine()).Split(' '); var N = Convert.ToInt32(segments[0]); var Q = Convert.ToInt32(segments[1]); var V = Convert.ToInt32(segments[2]); starFighters = new StarFighter[N]; for (int i = 0; i < N; i++) { segments = (Console.ReadLine()).Split(' '); var frequency = Convert.ToInt32(segments[2]); var sf = new StarFighter(Convert.ToInt32(segments[0]), Convert.ToInt32(segments[1]), frequency); starFighters[i] = sf; } queries = new int[Q][]; for (int i = 0; i < Q; i++) { segments = (Console.ReadLine()).Split(' '); queries[i] = new int[] { Convert.ToInt32(segments[0]), Convert.ToInt32(segments[1]), Convert.ToInt32(segments[2]), 0 }; } }
public void InitClient(string key) { var fighter = new StarFighter(Color.Red, new SizeF(10f, 10f), new Vector2F(200, 200), 0); fighter.Init(); gameObjects.Add(key, fighter); Console.WriteLine("sending " + key + " objects"); try { foreach (var obj in gameObjects) { string typeName = obj.Value.GetType().Name.ToString(); Console.WriteLine("sending to " + key + " " + " of type" + typeName + " " + obj.ToString()); var item = ((IGame2DProperties)obj.Value); var dat = key + "," + item.Location.X + "," + item.Location.Y; var type = (GameAction)Enum.Parse(typeof(GameAction), typeName); ServerSide.SendData(type, dat, PlayingClients[key].Ns); } ServerSide.SendCommand(GameAction.Done, PlayingClients[key].Ns); } catch { } PlayingClients[key].status = "loaded"; foreach (var obj in gameObjects) { obj.Value.Init(); } }
public Aeronautical() { Name = "Aeronautics and Space"; Description = "A fleet of pilots flying aircraft and spacecraft"; StandardIssueWeapon = new StarFighter(); Soldiers = new List <ICharacter>(); }
public override void Init() { base.Init(); BackColor = Color.Black; GameWindow.AudioPlayer.Item1.PlayTrack("background"); for (int i = 0; i < 15; i++) { var len = MathAssist.RandInt(15, 80); var size = new SizeF(len, len); var location = new Vector2F(MathAssist.RandInt(0, GameWindow.DisplaySize.Width), MathAssist.RandInt(0, GameWindow.DisplaySize.Height)); var angle = MathAssist.RandInt(0, 359); var velocity = MathAssist.RandInt(1, 3); var asteroid = new Asteroid(Color.Gray, size, location, angle, velocity); asteroid.Init(); gameObjects.Add("asteroid" + i, asteroid); } for (int i = 0; i < 200; i++) { var radius = MathAssist.RandInt(1, 3); var color = Color.FromArgb(MathAssist.RandInt(50, 200), MathAssist.RandInt(50, 200), MathAssist.RandInt(50, 200)); var rect = new Rectangle(MathAssist.RandInt(0, Screen.PrimaryScreen.Bounds.Width), MathAssist.RandInt(0, Screen.PrimaryScreen.Bounds.Height), radius, radius); gameObjects.Add("star" + i, new Star(color, rect, MathAssist.RandInt(1, 2), MathAssist.RandInt(1, 2))); } var f1 = new StarFighter(Color.Red, new SizeF(10f, 10f), new Vector2F(200, 200), 0); mainPlayerID = f1.ID; scores.Add(mainPlayerID, 0); var f2 = new StarFighter(Color.Blue, new SizeF(10f, 10f), new Vector2F(250, 250), 180); secondPlayer = f2.ID; scores.Add(secondPlayer, 0); gameObjects.Add(f1.ID, f1); gameObjects.Add(f2.ID, f2); // GameWindow.View.FollowedObject = (IViewFollowed)f1; // RenderManager.RenderList.Add("f1", new Graphic.Render(RenderType.Default, true, f.Location, null, f.Angle,new Vector2F(0,0), f.Size, null, new RectangleF(0,0,0,0), "", null, Color.Red, 1,DrawRoutine.DrawTriangle)); gameObjects.Add("view", GameWindow.View); foreach (var obj in gameObjects) { obj.Value.Init(); } }
public Algorithm(StarFighter[][] starFighters) { this.starFighters = starFighters; }
private int SearchUpOrDown(int position, int key, bool down, StarFighter[] list) { var pos = position; var nextpos = down ? pos - 1 : pos + 1; while (nextpos >= 0 && nextpos < list.Length && list[nextpos].y == key) { pos = nextpos; if (down) nextpos--; else nextpos++; } return pos; }
private int FindPositionOrFirstBeforeOrAfter(int start, int end, int key, bool firstAfter, StarFighter[] list) { while (start < end) { var mid = (start + end) / 2; var midKey = list[mid].y; if (midKey == key) return SearchUpOrDown(mid, key, firstAfter, list); else if (key < midKey) end = mid - 1; else start = mid + 1; } var sf = list[start]; if (sf.y == key) return start; else { var pos = 0; if (firstAfter) { pos = sf.y > key ? start : start + 1; if (pos >= list.Length) pos = list.Length - 1; } else { pos = sf.y < key ? start : start - 1; if (pos < 0) pos = 0; } return pos; } }
public Pilot() { Weapon = new StarFighter(); }