TheoAllen

AMA - Nocturnal Encounter

Apr 12th, 2013
240
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 5.88 KB | None | 0 0
  1. # =============================================================================
  2. # ALUMNEA MAGIC ACADEMY - NOCTURNAL ENCOUNTER ~
  3. # REQUIRE : AMA - Day Nite System
  4. # AUTHOR : TheoAllen
  5. # =============================================================================
  6. =begin
  7.  
  8.   Script ini ngebikin beberapa encounter kalo malem hari makin kuat. Dan
  9.   sebaliknya. Kalo siang hari lemah. Ato juga sebaliknya. Kalo siang kuat.
  10.   Kalo malem lemah.
  11.  
  12.   Cara penggunaan :
  13.   - Tag <chaotic> buat enemy2 yg nocturnal
  14.   - Tag <lawful> buat enemy2 yg non-nocturnal
  15.   - Sisanya diedit dibawah ini aja
  16.  
  17.   Note :
  18.   Segala hal soal kompatibilitas, error, kerusakan edit, dan semacamnya
  19.   ditanggung oleh pencomot script.
  20.  
  21. =end
  22. # =============================================================================
  23. # ♫ Module AMA ~ ♫
  24. # =============================================================================
  25. module AMA
  26.   module NOCTURNAL
  27.    
  28.   # VARIANCE(%) = [mhp,mmp,atk,def,mat,mdf,agi,luk,exp]
  29.     CHAOTIC     = [  0,  0, 25, 10, 25,  0, 25, 25, 25]
  30.     LAWFUL      = [  0,  0, 25, 10, 25,  0, 25, 25, 25]
  31.    
  32.   end
  33. end
  34. # =============================================================================
  35. # ♫ RPG::Enemy ~ ♫
  36. # =============================================================================
  37. class RPG::Enemy < RPG::BaseItem
  38.  
  39.   def chaotic?
  40.     self.note.include?("<chaotic>")
  41.   end
  42.  
  43.   def lawful?
  44.     self.note.include?("<lawful>")
  45.   end
  46.  
  47. end
  48. # =============================================================================
  49. # ♫ Game_Enemy ~ ♫
  50. # =============================================================================
  51. class Game_Enemy < Game_Battler
  52.  
  53.   #--------------------------------------------------------------------------
  54.   # ♫ Chaotic variance array ~
  55.   #--------------------------------------------------------------------------  
  56.   def chaotic
  57.     AMA::NOCTURNAL::CHAOTIC
  58.   end
  59.   #--------------------------------------------------------------------------
  60.   # ♫ Lawful variance array ~
  61.   #--------------------------------------------------------------------------
  62.   def lawful
  63.     AMA::NOCTURNAL::LAWFUL
  64.   end
  65.   #--------------------------------------------------------------------------
  66.   # ♫ Get DNS hash ~
  67.   #--------------------------------------------------------------------------  
  68.   def dns_hash
  69.     hash = {
  70.     :DAWN => AMA.dns_dawn?,
  71.     :NOON => AMA.dns_noon?,
  72.     :DUSK => AMA.dns_dusk?,
  73.     :NITE => AMA.dns_nite?,
  74.     }
  75.   end
  76.   #--------------------------------------------------------------------------
  77.   # ♫ Variance method
  78.   #--------------------------------------------------------------------------  
  79.   def variance(param,index)
  80.     return param if AMA::DNS::DISABLE || !$imported[:AMA_DNS]
  81.     if enemy.chaotic?
  82.       case dns_hash.index(true)
  83.       when :DAWN
  84.         return param
  85.       when :NOON
  86.         return param * ((100 - chaotic[index])/100)
  87.       when :DUSK
  88.         return param
  89.       when :NITE
  90.         return param * ((100 + chaotic[index])/100)
  91.       else
  92.         return param
  93.       end
  94.     elsif enemy.lawful?
  95.       case dns_hash.index(true)
  96.       when :DAWN
  97.         return param
  98.       when :NOON
  99.         return param * ((100 + lawful[index])/100)
  100.       when :DUSK
  101.         return param
  102.       when :NITE
  103.         return param * ((100 - lawful[index])/100)
  104.       else
  105.         return param
  106.       end
  107.     else
  108.       return param
  109.     end
  110.   end
  111.   #--------------------------------------------------------------------------
  112.   # ♫ Aliasing Section
  113.   #--------------------------------------------------------------------------
  114.   alias nocturnal_mhp mhp
  115.   alias nocturnal_mmp mmp
  116.   alias nocturnal_atk atk
  117.   alias nocturnal_def def
  118.   alias nocturnal_mat mat
  119.   alias nocturnal_mdf mdf
  120.   alias nocturnal_agi agi
  121.   alias nocturnal_luk luk
  122.   alias nocturnal_exp exp
  123.   #--------------------------------------------------------------------------
  124.   # ♫ Max HP
  125.   #--------------------------------------------------------------------------  
  126.   def mhp
  127.     variance(nocturnal_mhp,0)
  128.   end
  129.   #--------------------------------------------------------------------------
  130.   # ♫ Max MP
  131.   #--------------------------------------------------------------------------  
  132.   def mmp
  133.     variance(nocturnal_mmp,1)
  134.   end
  135.   #--------------------------------------------------------------------------
  136.   # ♫ Attack point
  137.   #--------------------------------------------------------------------------  
  138.   def atk
  139.     variance(nocturnal_atk,2)
  140.   end
  141.   #--------------------------------------------------------------------------
  142.   # ♫ Defense point
  143.   #--------------------------------------------------------------------------  
  144.   def def
  145.     variance(nocturnal_def,3)
  146.   end
  147.   #--------------------------------------------------------------------------
  148.   # ♫ Magic attack
  149.   #--------------------------------------------------------------------------  
  150.   def mat
  151.     variance(nocturnal_mat,4)
  152.   end
  153.   #--------------------------------------------------------------------------
  154.   # ♫ Magic defense
  155.   #--------------------------------------------------------------------------  
  156.   def mdf
  157.     variance(nocturnal_mdf,5)
  158.   end
  159.   #--------------------------------------------------------------------------
  160.   # ♫ Agility
  161.   #--------------------------------------------------------------------------  
  162.   def agi
  163.     variance(nocturnal_agi,6)
  164.   end
  165.   #--------------------------------------------------------------------------
  166.   # ♫ Luck point
  167.   #--------------------------------------------------------------------------  
  168.   def luk
  169.     variance(nocturnal_luk, 7)
  170.   end
  171.   #--------------------------------------------------------------------------
  172.   # ♫ Experience point
  173.   #--------------------------------------------------------------------------  
  174.   def exp
  175.     variance(nocturnal_exp, 8)
  176.   end
  177.  
  178. end
Advertisement
Add Comment
Please, Sign In to add comment