public virtual void SetPlace(Map map) { int xx,yy; do { xx=random.Next(0,map.X); yy=random.Next(0,map.Y); }while (!map.EmptyPlace(xx,yy)); x=xx; y=yy; map.place[x,y]=Map.MoverChar; }
public virtual void Move(Direction to,int step,Map map) { char MyChar=map.place[x,y]; int xx=x,yy=y; map.place[x,y]=Map.NoneChar; for (int i=0;i<step;++i) { switch (to) { case Direction.Up: --xx; break; case Direction.Down: ++xx; break; case Direction.Left: --yy; break; case Direction.Right: ++yy; break; } if (map.EmptyPlace(xx,yy)) {x=xx;y=yy;} else break; } map.place[x,y]=MyChar; }