public Game() { try { FileStream inFile = new FileStream("Setting.txt", FileMode.Open); StreamReader sr = new StreamReader(inFile); string st = sr.ReadLine(); map= new Map(this, st[0] - '0', st[1] - '0'); st = sr.ReadLine(); cntPlayer = st.Length; player = new Player[cntPlayer]; for (int i = 0; i < cntPlayer; ++i) player[i] = new Player(i, "", st[i].ToString(), map.MapX / 2, map.MapY / 2); } catch { map = new Map(this); cntPlayer = 4; player = new Player[cntPlayer]; player[0] = new Player(0, "", "A", map.MapX / 2, map.MapY / 2); player[1] = new Player(1, "", "B", map.MapX / 2, map.MapY / 2); player[2] = new Player(2, "", "C", map.MapX / 2, map.MapY / 2); player[3] = new Player(3, "", "D", map.MapX / 2, map.MapY / 2); } //cntPlayer = 4; //player = new Player[cntPlayer]; //player[0] = new Player(0, "", "A", map.MapX / 2, map.MapY / 2); //player[1] = new Player(1, "", "B", map.MapX / 2, map.MapY / 2); //player[2] = new Player(2, "", "C", map.MapX / 2, map.MapY / 2); //player[3] = new Player(3, "", "D", map.MapX / 2, map.MapY / 2); //nowPlayerID = -1; alg = new Alg(this); help = new Help(this); Mover.game = this; nowPlayerID = -1; WaitReviving = true; NewRound(); }
public void Attack(Player e) { if (e.Equals(this)) { AddHealth(Atn); return; } if (e.X == X || e.Y == Y) { e.Beaten(Atn); ShowSpark(e, "+"); return; } e.Beaten(Atn); ShowSpark(e, "*"); return; }
public void ShowSpark(Player e,string st,bool ak=true) { if (!e.Equals(this)) { Spark.Appear(st, X, Y, 150, 255, colorA, 50); Spark.MoveTo(e.X, e.Y); } else if (ak) { Spark.Appear(st, X, Y + 1, 150, 255, colorA, 50); Spark.MoveTo(e.X, e.Y); } else { Spark.Appear(st, X, Y + 1, 0, 150, colorO, 50); Spark.MoveTo(e.X, e.Y); } }