V-ShopActions.asm
上传用户:santakups8
上传日期:2021-03-23
资源大小:544k
文件大小:3k
源码类别:

模拟服务器

开发平台:

Asm

  1. ;EasyCodeName=Module1,1
  2. ;-----------------------------------------------------------------------------------
  3. ;    VeMU
  4. ;    Its a package that allows the user to set his own server of the game
  5. ;    "MuOnline", this is not an emulator since i am not "emulating"
  6. ;    what the actual games does, i am "creating" a method for set a Server
  7. ;    of this Game.
  8. ;
  9. ;    Copyright (C) 2010  Felipe Ya馿z
  10. ;
  11. ;    This program is free software: you can redistribute it and/or modify
  12. ;    it under the terms of the GNU General Public License as published by
  13. ;    the Free Software Foundation, either version 3 of the License, or
  14. ;    (at your option) any later version.
  15. ;
  16. ;    This program is distributed in the hope that it will be useful,
  17. ;    but WITHOUT ANY WARRANTY; without even the implied warranty of
  18. ;    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  19. ;    GNU General Public License for more details.
  20. ;
  21. ;    You should have received a copy of the GNU General Public License
  22. ;    along with this program.  If not, see http://www.gnu.org/licenses/.
  23. ;-----------------------------------------------------------------------------------
  24. ;-----------------------------------------------------------------------------------
  25. ;                        -----------------
  26. ;                             Coded     /
  27. ;                              By      /
  28. ;                           -={FeN$x)=-
  29. ;                         /  Felipe Y.  
  30. ;                        /               
  31. ;                        -----------------
  32. ; Programming Lang: ASM
  33. ; Country: Chile
  34. ;              My respect for all those who lost their lifes
  35. ;              In the earthquake of my country...
  36. ;              Let god take their spirits home...
  37. ;-----------------------------------------------------------------------------------
  38. ;////////////////////////////////////////////////////////////////////////////////////
  39. ;                      VALKYRIE PROJECT
  40. ;                        SHOP ACTIONS !
  41. ;////////////////////////////////////////////////////////////////////////////////////
  42. .Const
  43. .Data?
  44. .Data
  45. .Code
  46. V_CShop_SetItem Proc uses edx ItemType:Dword, ItemIndex:Dword, ItemLevel:Dword, ItemDur:Dword, ItemLuck:Dword, ItemSkill:Dword, ItemJOL:Dword
  47. local BoxWidht:Dword
  48. local BoxHeight:Dword
  49. local ItemW:Dword ;Width
  50. local ItemH:Dword ;Height
  51. local MyStruct:Dword
  52. assume edx:ptr ItemStruct
  53. ;-------------------------------
  54. ;Clean locals
  55. ;-------------------------------
  56. And BoxWidht, 0
  57. And BoxHeight, 0
  58. mov MyStruct, edx
  59. invoke V_CItem_IsItemValid, ItemType, ItemIndex
  60. .If (eax == 0)
  61.  jmp @End
  62. .Endif
  63. invoke V_CItem_GetSize, ItemType, ItemIndex
  64. .If (eax == -1)
  65.  xor eax, eax
  66.  jmp @End
  67. .ElseIf (eax < 0) && (edx < 0)
  68.   RGB 255, 64, 64 ;Red Collor
  69.   Mov Edx, Eax
  70.   Invoke vprint, $CTA0("CShopLoad:] ERROR ON WHILE LOADING ITEM [%d] [%d] INVALID SIZE"), Edx, 2, ItemType, ItemIndex
  71.   xor eax, eax
  72.   jmp @End
  73. .Endif
  74. mov ItemW, eax
  75. mov ItemH, edx
  76. mov edx, MyStruct
  77. mov eax, ItemLevel
  78. mov [edx].Item_Level, Al
  79. .If (ItemDur == 0)
  80.  mov ItemDur, 255 ;Durability 255 for avoid bug
  81. .Endif
  82. fild ItemDur
  83. fstp [edx].Item_Durability
  84. invoke V_CItem_FillStruct, ItemType, ItemIndex, ItemLuck, ItemSkill, ItemJOL, 0, 0, 0
  85. @End:
  86. Ret
  87. V_CShop_SetItem EndP