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

模拟服务器

开发平台:

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. ;                       VeMU Project
  40. ;                      Monster Class !
  41. ;////////////////////////////////////////////////////////////////////////////////////
  42. ;//////////////////////////////////////////////
  43. ;Main struct for the monsters attributes
  44. ;readed from MonsterAttr file
  45. ;It handles allmost all info about mobs
  46. ;//////////////////////////////////////////////
  47. MONSTER_ATTRIBUTE Struct
  48.  MonsterName CHAR 20 Dup(?)
  49.  MonsterIndex Dword ?
  50.  Rate Dword ?
  51.  Level Dword ?
  52.  HP Dword ?
  53.  MP Dword ?
  54.  DamageMin Dword ?
  55.  DamageMax Dword ?
  56.  Defense Dword ?
  57.  MagicDefense Dword ?
  58.  AttackRating Dword ?
  59.  Successfulblocking Dword ?
  60.  MoveRange Dword ?
  61.  AttackRange Dword ?
  62.  AttackType Dword ?
  63.  ViewRange Dword ?
  64.  MoveSpeed Dword ?
  65.  AttackSpeed Dword ?
  66.  RegenTime Dword ?
  67.  Attribute Dword ?
  68.  ItemRate Dword ?
  69.  MoneyRate Dword ?
  70.  MinItemLevel Dword ? ;New variable !
  71.  MaxItemLevel Dword ?
  72.  MonsterSkill Dword ?
  73.  ResistanceIce Byte ?
  74.  ResistancePosion Byte ?
  75.  ResistanceLighting Byte ?
  76.  ResistanceFire Byte ?
  77.  AIMonster Dword ?
  78.  ScriptHP Dword ?
  79. MONSTER_ATTRIBUTE EndS
  80. ;//////////////////////////////////////////////
  81. ;Main struct for the monsters set base
  82. ;readed from MonsterSetBase file
  83. ;It handles allmost all info about mobs
  84. ;position, spots, etc
  85. ;//////////////////////////////////////////////
  86. MONSTER_SETBASE Struct
  87. MonsterType Byte ?
  88. MonsterIndex Word ?
  89. MapNumber Byte ?
  90. Distance Byte ?
  91. CordX Byte ?
  92. CordY Byte ?
  93. CordW Byte ?
  94. CordH Byte ?
  95. Direction Byte ?
  96. Quantity Byte ?
  97. MONSTER_SETBASE EndS
  98. ;//////////////////////////////////////////////
  99. ;Const Data !
  100. ;//////////////////////////////////////////////
  101. .Const
  102. EVENTMONSTER equ 5 ;For others events
  103. BLOODMONSTER equ 4
  104. GOLDENMONSTER equ 3
  105. SINGLEMONSTER equ 2
  106. SPOTSMONSTER equ 1
  107. NPCMONSTER equ 0
  108. MAX_SETBASE_RAND_MOBS equ 30 ;Max mobs created by random variable (-1) when input (MonsterSetBase.txt)
  109. MAX_SETBASE_MONSTERS equ 6000 ;The maxium limit possible is 6399 due to Webzen client limit too
  110. MAX_MONSTERS_ATTR equ 512
  111. MAX_MONSTER_LEVEL equ 150
  112. MOD_HP_VALUE equ 100
  113. ;//////////////////////////////////////////////
  114. ;Unitialized Data !
  115. ;//////////////////////////////////////////////
  116. .Data?
  117. pObjMonsterSetBase DB SizeOf MONSTER_SETBASE * MAX_SETBASE_MONSTERS Dup(?)
  118. pObjMonsterAttr DB SizeOf MONSTER_ATTRIBUTE * MAX_MONSTERS_ATTR Dup(?)
  119. ;//////////////////////////////////////////////
  120. ;Initialized Data !
  121. ;Important variables like counter for how
  122. ;many MobsAttributes loaded and how many
  123. ;Monsters (set base) loaded.
  124. ;//////////////////////////////////////////////
  125. .Data
  126. UniversalModHP DD ? ;Variable for modicate all the mobs HP from a simple calc, see source below
  127. MonsterSetBaseCounter DD ? ;Counter how many set monsters are
  128. MonsterCounter DD ? ;Counter for how many monsters are