FormRuntimeGameReplay.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using System.Drawing.Drawing2D;
  9. using CommonAI.RTS; using CommonLang.Vector;
  10. using System.IO;
  11. using GameEditorPlugin.Win32.Runtime;
  12. using CommonFroms.Utils;
  13. using CommonLang.Log;
  14. using CommonAI.Zone;
  15. using GameEditorPlugin;
  16. using CommonLang;
  17. using GameEditorPlugin.Win32.BattleClient;
  18. using System.Runtime.InteropServices;
  19. using CommonFroms;
  20. using CommonAI.ZoneClient;
  21. using CommonAIEditor;
  22. using CommonAI.Zone.Replay;
  23. using GameEditorPlugin.Win32;
  24. using CommonAI.Zone.ZoneEditor;
  25. using CommonAIClient.Client;
  26. namespace GameEditorPlugin.Win32.Runtime
  27. {
  28. public class FormRuntimeGameReplay : FormAbstractClient
  29. {
  30. private string mDataDir;
  31. private EditorTemplates mTemplates;
  32. private BattleReplay mBattle;
  33. private BattleRecordPlayer mPlayer;
  34. public FormRuntimeGameReplay()
  35. {
  36. }
  37. public void StartPlay(string data_dir, Stream replay_stream)
  38. {
  39. if (data_dir != null && replay_stream != null)
  40. {
  41. this.mDataDir = data_dir;
  42. this.mTemplates = new EditorTemplates(mDataDir, TemplateManager.MessageCodec);
  43. this.mTemplates.LoadAllTemplates();
  44. this.mPlayer = new BattleRecordPlayer(mTemplates.Templates, replay_stream);
  45. }
  46. }
  47. public override EditorTemplates DataRoot
  48. {
  49. get { return mTemplates; }
  50. }
  51. public override CommonAIClient.Client.AbstractBattle GenBattle()
  52. {
  53. this.mBattle = new BattleReplay(mTemplates, mPlayer);
  54. return mBattle;
  55. }
  56. public override DisplayLayerWorld GenDisplay(PictureBox control)
  57. {
  58. return new DisplayLayerWorld();
  59. }
  60. }
  61. }