UiTrade.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:3k
源码类别:

模拟服务器

开发平台:

C/C++

  1. // -------------------------------------------------------------------------
  2. // 文件名 : UiTrade.h
  3. // 创建者 : 吕桂华, Wooy(Wu yue)
  4. // 创建时间 : 2002-9-16 11:57:03
  5. // 功能描述 : 玩家交易系统界面
  6. // -------------------------------------------------------------------------
  7. #pragma once
  8. #include "../Elem/WndShowAnimate.h"
  9. #include "../elem/wndbutton.h"
  10. #include "../Elem/WndText.h"
  11. #include "../Elem/WndEdit.h"
  12. #include "../elem/wndObjContainer.h"
  13. #include "../../../core/src/gamedatadef.h"
  14. struct KUiObjAtRegion;
  15. class KUiTrade : protected KWndShowAnimate
  16. {
  17. public:
  18. //----界面面板统一的接口函数----
  19. static KUiTrade* OpenWindow(KUiPlayerItem* pOther);//打开窗口,返回唯一的一个类对象实例
  20. static KUiTrade* GetIfVisible(); //如果窗口正被显示,则返回实例指针
  21. static void CloseWindow(); //关闭窗口,同时可以选则是否删除对象实例
  22. static void LoadScheme(const char* pScheme);//载入界面方案
  23. void OnChangedTakewithItem(KUiObjAtRegion* pObj, int bAdd); //对方变更随身物品
  24. void OnOppositeChangedItem(KUiObjAtRegion* pObj, int bAdd); //对方变更交易物品
  25. void OnSelfChangedItem(KUiObjAtRegion* pObj, int bAdd); //自己变更交易物品
  26. void UpdateOperData();
  27. void UpdateTradeEnd(int bTraded); //交易结束
  28. private:
  29. KUiTrade();
  30. ~KUiTrade();
  31. void Initialize(); //初始化
  32. void LoadScheme(KIniFile* pIni); //载入界面方案
  33. int WndProc(unsigned int uMsg, unsigned int uParam, int nParam);//窗口函数
  34. // void Clear(); //清除内容
  35. void Breathe();
  36. void OnTrade(); //响应点击开始交易
  37. void OnOk(int bChecked); //响应点击有交易意向
  38. void OnCancelTrade();
  39. void OnAdjustMoney(bool bAdd);
  40. void OnAdjustedMoney();
  41. void OnModififyMoney();
  42. void OnItemPickDrop(ITEM_PICKDROP_PLACE* pPickPos, ITEM_PICKDROP_PLACE* pDropPos);
  43. void UpdateTakewithItems();
  44. private:
  45. static KUiTrade* m_pSelf;
  46. private:
  47. KWndText32 m_TakewithMoney; //随身的金钱
  48. KWndObjectMatrix m_TakewithItemsBox; //随身的物品
  49. KWndObjectMatrix m_SelfItemsBox; //物品栏
  50. KWndEdit32 m_SelfMoney; //钱币
  51. KWndButton m_Ok; //确认
  52. KWndButton m_Cancel; //取消
  53. KWndButton m_Trade; //执行交易
  54. KWndButton m_AddMoney; //增加钱
  55. KWndButton m_ReduceMoney; //减少钱
  56. int m_nSelfTradeMoney;
  57. int m_bAdjustingMoney;
  58. int m_nTakewithMoney;
  59. KWndText32 m_OtherName; //对方的姓名
  60. KWndObjectMatrix m_OtherItemsBox; //物品栏
  61. KWndText32 m_OtherMoney; //钱币
  62. KWndText32 m_Info; //对方状态讯息
  63. KUiPlayerItem m_OtherData;
  64. unsigned int m_uWaitTradeMsgColor;
  65. unsigned int m_uOtherLockMsgColor;
  66. unsigned int m_uOtherNotLockMsgColor;
  67. };