Advertisement
Guest User

Untitled

a guest
Aug 17th, 2017
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
QBasic 3.22 KB | None | 0 0
  1. Index: bmod.bas
  2. ===================================================================
  3. --- bmod.bas    (revision 4298)
  4. +++ bmod.bas    (working copy)
  5. @@ -2031,10 +2031,12 @@
  6.  
  7.  SUB enemy_ai (BYREF bat AS BattleState, bslot() AS BattleSprite, formdata() AS INTEGER)
  8.   DIM ai AS INTEGER = 0
  9. + DIM weakhp AS INTEGER = 0
  10. +
  11. + 'if HP is less than the threshold, go into desperation mode
  12. + weakhp = gen(genEnemyWeakHP)
  13. + IF bslot(bat.enemy_turn).stat.cur.hp < bslot(bat.enemy_turn).stat.max.hp * gen(genEnemyWeakHP) / 100 THEN ai = 1
  14.  
  15. - 'if HP is less than 20% go into desperation mode
  16. - IF bslot(bat.enemy_turn).stat.cur.hp < bslot(bat.enemy_turn).stat.max.hp / 5 THEN ai = 1
  17. -
  18.   'if targetable enemy count is 1, go into alone mode
  19.   IF targenemycount(bslot(), YES) = 1 THEN ai = 2
  20.  
  21. @@ -2883,7 +2885,9 @@
  22.   '--Heroes only, since enemies don't currently have a weak frame
  23.   IF is_hero(who) THEN
  24.    '--enforce weak picture
  25. -  IF bslot(who).stat.cur.hp < bslot(who).stat.max.hp / 5 AND bat.vic.state = 0 THEN bslot(who).frame = 6
  26. +  DIM weakhp AS INTEGER = 0
  27. +  weakhp = gen(genHeroWeakHP)
  28. +  IF bslot(who).stat.cur.hp < bslot(who).stat.max.hp * weakhp / 100 AND bat.vic.state = 0 THEN bslot(who).frame = 6
  29.   END IF
  30.  END SUB
  31.  
  32. Index: COMMON.bas
  33. ===================================================================
  34. --- COMMON.bas  (revision 4298)
  35. +++ COMMON.bas  (working copy)
  36. @@ -2659,6 +2659,14 @@
  37.   gen(genNumElements) = 1
  38.  END IF
  39.  
  40. +IF gen(genHeroWeakHP) = 0 THEN
  41. + gen(genHeroWeakHP) = 20
  42. +ENDIF
  43. +
  44. +IF gen(genEnemyWeakHP) = 0 THEN
  45. + gen(genEnemyWeakHP) = 20
  46. +ENDIF
  47. +
  48.  IF gen(genVersion) = 0 THEN
  49.   upgrade_message "Ancient Pre-1999 format (1)"
  50.   gen(genVersion) = 1
  51. Index: CONST.bi
  52. ===================================================================
  53. --- CONST.bi    (revision 4298)
  54. +++ CONST.bi    (working copy)
  55. @@ -128,7 +128,9 @@
  56.  CONST genCantSellSFX = 185      'unsellable item
  57.  CONST genDamageDisplayTicks = 186 'number of ticks that battle damage displays
  58.  CONST genDamageDisplayRise = 187 'number of pixels that damage display rises
  59. -'188 to 198 unused
  60. +CONST genHeroWeakHP = 188       '%HP for heroes to use Weak state
  61. +CONST genEnemyWeakHP = 189      '%HP for enemies to use Desperation AI
  62. +'190 to 198 unused
  63.  '199 to 359 used to be the scattertable for PW2, now zeroed out
  64.  '360 to 499 unused
  65.  
  66. Index: menus.bas
  67. ===================================================================
  68. --- menus.bas   (revision 4298)
  69. +++ menus.bas   (working copy)
  70. @@ -1092,10 +1092,12 @@
  71.   menu(11) = "Experience given to heroes..."
  72.   menu(12) = " ...swapped-out and unlocked: " & gen(genUnlockedReserveXP) & "%"
  73.   menu(13) = " ...swapped-out and locked: " & gen(genLockedReserveXP) & "%"
  74. + menu(14) = "Hero default % HP for Weak state: " & gen(genHeroWeakHP) & "%"
  75. + menu(15) = "Enemy default % HP for Weak state: " & gen(genEnemyWeakHP) & "%"
  76.  END SUB
  77.  
  78.  SUB battleoptionsmenu ()
  79. - CONST maxMenu = 13
  80. + CONST maxMenu = 15
  81.   DIM menu(maxMenu) AS STRING
  82.   DIM min(maxMenu), max(maxMenu)
  83.   DIM index(maxMenu)
  84. @@ -1136,6 +1138,12 @@
  85.   max(12) = 1000
  86.   index(13) = genLockedReserveXP
  87.   max(13) = 1000
  88. + min(14) = 1
  89. + max(14) = 100
  90. + index(14) = genHeroWeakHP
  91. + min(15) = 1
  92. + max(15) = 100
  93. + index(15) = genEnemyWeakHP
  94.  
  95.   setkeys
  96.   DO
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement