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

模拟服务器

开发平台:

C/C++

  1. //---------------------------------------------------------------------------
  2. // Sword3 Core (c) 2002 by Kingsoft
  3. //
  4. // File: KItemChangeRes.h
  5. // Date: 2002.12
  6. // Code: Spe
  7. // Desc: Header File
  8. //---------------------------------------------------------------------------
  9. #include "KCore.h"
  10. #include "KEngine.h"
  11. #include "KItemChangeRes.h"
  12. #include "KItem.h"
  13. #include "CoreUseNameDef.h"
  14. KItemChangeRes g_ItemChangeRes;
  15. BOOL KItemChangeRes::Init()
  16. {
  17. if (!m_MeleeWeapon.Load(CHANGERES_MELEE_FILE))
  18. return FALSE;
  19. if (!m_RangeWeapon.Load(CHANGERES_RANGE_FILE))
  20. return FALSE;
  21. if (!m_Armor.Load(CHANGERES_ARMOR_FILE))
  22. return FALSE;
  23. if (!m_Helm.Load(CHANGERES_HELM_FILE))
  24. return FALSE;
  25. if (!m_Horse.Load(CHANGERES_HORSE_FILE))
  26. return FALSE;
  27. return TRUE;
  28. }
  29. int KItemChangeRes::GetWeaponRes(int nDetail, int nParti, int nLevel)
  30. {
  31. int nRet;
  32. if (nLevel == 0)
  33. {
  34. m_MeleeWeapon.GetInteger(2, 2, 2, &nRet);
  35. return nRet - 2;
  36. }
  37. int nRow = nParti * 10 + nLevel + 2;
  38. switch(nDetail)
  39. {
  40. case equip_meleeweapon:
  41. m_MeleeWeapon.GetInteger(nRow, 2, 2, &nRet);
  42. break;
  43. case equip_rangeweapon:
  44. m_RangeWeapon.GetInteger(nRow - 1, 2, 2, &nRet); // 没有默认状态
  45. break;
  46. }
  47. return nRet - 2;
  48. }
  49. int KItemChangeRes::GetArmorRes(int nParti, int nLevel)
  50. {
  51. int nRet;
  52. if (nLevel == 0)
  53. {
  54. m_Armor.GetInteger(2, 2, 19, &nRet);
  55. return nRet - 2;
  56. }
  57. int nRow = nParti * 10 + nLevel + 2;
  58. m_Armor.GetInteger(nRow, 2, 19, &nRet);
  59. return nRet - 2;
  60. }
  61. int KItemChangeRes::GetHelmRes(int nParti, int nLevel)
  62. {
  63. int nRet;
  64. if (nLevel == 0)
  65. {
  66. m_Helm.GetInteger(2, 2, 19, &nRet);
  67. return nRet - 2;
  68. }
  69. int nRow = nParti * 10 + nLevel + 2;
  70. m_Helm.GetInteger(nRow, 2, 19, &nRet);
  71. return nRet - 2;
  72. }
  73. int KItemChangeRes::GetHorseRes(int nParti, int nLevel)
  74. {
  75. int nRet;
  76. if (nLevel == 0)
  77. {
  78. return -1;
  79. }
  80. int nRow = nParti * 10 + nLevel + 2;
  81. m_Horse.GetInteger(nRow, 2, 2, &nRet);
  82. return nRet - 2;
  83. }