MovementInfo.cs 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. using System.Drawing;
  2. using Server.MirEnvir;
  3. namespace Server.MirDatabase
  4. {
  5. public class MovementInfo
  6. {
  7. public int MapIndex;
  8. public Point Source, Destination;
  9. public bool NeedHole, NeedMove, ShowOnBigMap;
  10. public int ConquestIndex, Icon;
  11. public MovementInfo()
  12. {
  13. }
  14. public MovementInfo(BinaryReader reader)
  15. {
  16. MapIndex = reader.ReadInt32();
  17. Source = new Point(reader.ReadInt32(), reader.ReadInt32());
  18. Destination = new Point(reader.ReadInt32(), reader.ReadInt32());
  19. NeedHole = reader.ReadBoolean();
  20. NeedMove = reader.ReadBoolean();
  21. if (Envir.LoadVersion < 69) return;
  22. ConquestIndex = reader.ReadInt32();
  23. if (Envir.LoadVersion < 95) return;
  24. ShowOnBigMap = reader.ReadBoolean();
  25. Icon = reader.ReadInt32();
  26. }
  27. public void Save(BinaryWriter writer)
  28. {
  29. writer.Write(MapIndex);
  30. writer.Write(Source.X);
  31. writer.Write(Source.Y);
  32. writer.Write(Destination.X);
  33. writer.Write(Destination.Y);
  34. writer.Write(NeedHole);
  35. writer.Write(NeedMove);
  36. writer.Write(ConquestIndex);
  37. writer.Write(ShowOnBigMap);
  38. writer.Write(Icon);
  39. }
  40. public override string ToString()
  41. {
  42. return string.Format("{0} -> Map :{1} - {2}", Source, MapIndex, Destination);
  43. }
  44. }
  45. }