设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1112|回复: 4
打印 上一主题 下一主题

[已经过期] 竖版战斗怎么让角色XX动作时播放SE,比如攻击时播放“HA”

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
48
在线时间
678 小时
注册时间
2010-8-11
帖子
1533
跳转到指定楼层
1
发表于 2011-8-10 07:09:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
就是攻击时播放一个SE,死亡时播放一个SE
等等……
就是配音啦~~(正太声燃烧中……)

表示虽然已经有了一个脚本:
  1. #/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\|/
  2. #~ Battler SE (Sideview Battle System Version)
  3. #~ By: Rockleedude
  4. #~ Version: 3.0
  5. #~ Latest Update: 10/26/2009
  6. #~
  7. #~ This script allows you to add 13 different sound effects to play for
  8. #~ actors and enemies in battle.
  9. #~
  10. #===============================================================================
  11. #~                               Instructions
  12. #===============================================================================
  13. #~ To setup the sound effects played for a battler, use the following tag:
  14. #~ <battler se (type) (name) v(volume) p(pitch)>
  15. #~ (type): One of the 13 types. They are specified in the "For type" section.
  16. #~ (name): The name of the song file for the sound effect. Put playnothing to
  17. #~         mute the sound effects for that type.
  18. #~ (volume): The sound effect's volume.
  19. #~ (pitch): The sound effect's pitch.
  20. #~
  21. #~ The tags for enemies go into the notes box in the database.
  22. #~ The tags for actors go in the customization section below in this script.
  23. #~
  24. #~ For type:
  25. #~   Put the type corresponding to whichever type of sound effect this sound is.
  26. #~   i.e. If this is the sound effect for when the battler takes damage, put take.
  27. #~   The 13 types are the following:
  28. #~      1. Take - Played when the battler loses hp or mp as a result of the
  29. #~                action of another battler.
  30. #~      2. Recover - Played when the battler regains hp or mp, loses a negative
  31. #~                   state, or is revived from death.
  32. #~      3. Evade - Played when the battler dodges an attack.
  33. #~      4. Plus State - Played when the battler receives a positive, good state.
  34. #~                      Does not play if both a plus and minus state are received.
  35. #~      5. Minus State - Played when the battler receives a negative, bad state.
  36. #~                      Does not play if both a plus and minus state are received.
  37. #~      6. Attack - Played when the battler does a regular attack or uses a
  38. #~                  skill or item that has physical attack checked.
  39. #~      7. Target Foe - Played when the battler uses a skill or item that
  40. #~                      targets one or more foes.
  41. #~      8. Target Ally - Played when the battler uses a skill or item that
  42. #~                       targets one or more allies. Does not play if the only
  43. #~                       target is the battler itself.
  44. #~      9. Self - Played when the battler uses a skill or item that targets
  45. #~                iteself.
  46. #~      10. Critical Hit - Played when the battler delivers a critical hit.
  47. #~      11. Miss - Played when the battler misses with an attack.
  48. #~      12. Death - Played when the battler dies.
  49. #~      13. Low Health - Played when the battler's hp falls below a specified
  50. #~                       amount.
  51. #~ For name:
  52. #~   This should be the exact name of the file. So if the file name is "Scream"
  53. #~   you should put "Scream" and not "scream" (Notice the difference in first
  54. #~   letters). You can have quotation marks around the name of file if you
  55. #~   choose to. The file type of the sound effect is also optional.
  56. #~   Files for the sound effects should be located in the SE folder that
  57. #~   is inside the Audio folder of your project. You also have the choice of
  58. #~   creating a folder inside the SE folder to store the battler sound effects in.
  59. #~   The purpose of this is to avoid having a name conflict between a regular
  60. #~   sound effect and a sound effect for an battler. This could also help with
  61. #~   organization. This is all up to you. In the customization section below,
  62. #~   type in the exact name of the folder. If you are not using the custom
  63. #~   folder, then put nil instead. Note, if the custom folder exists, it
  64. #~   will be searched first before looking in the SE folder.
  65. #~   To completely mute the sound effects (even the default sound effects) for
  66. #~   particularly type for a battler, put playnothing into the name spot. This
  67. #~   will make it so no sound effect will play for that type for that battler.
  68. #~   Note that playnothing with quotation marks ("playnothing") will not mute
  69. #~   the se. Instead it would search for the sound effect named "playnothing".
  70. #~ For volume:
  71. #~   This is the volume for the sound effect. Be sure to include the "v" before
  72. #~   the volume. Use the sound test to help decide what you want this value to
  73. #~   be. The volume can be left out. If it is left out, then the default
  74. #~   volume will be used instead. You can set the default volume in the
  75. #~   customization section. Must be between 0 and 100.
  76. #~ For pitch:
  77. #~   This is the pitch for the sound effect. Be sure to include the "p" before
  78. #~   the pitch. Use the sound test to help decide what you want this value to
  79. #~   be. The pitch can also be left out. If it is left out, then the default
  80. #~   pitch will be used instead. You can set the default pitch in the
  81. #~   customization section. Must be between 50 and 150.
  82. #~ You can insert more than one sound effect for each type for a battler. Each
  83. #~ sound effect for each type must be in a separate tag. When there is more than
  84. #~ one sound effect for a particular type of a battler, a sound effect will
  85. #~ randomly be chosen to be played. Note, if playnothing is one of the choices,
  86. #~ it can be randomly chosen. Just because playnothing is one of the choices
  87. #~ does not mean it will automatically play nothing for that type. It has to be
  88. #~ chosen randomly.
  89. #~
  90. #~
  91. #~
  92. #~ Examples:
  93. #~
  94. #~ <battler se death Scream v85 p100>
  95. #~ - Will play the sound file "Scream" with the volume as 85 and pitch as 100
  96. #~   for the death sound effect.
  97. #~
  98. #~ <battler se target foe "Roar" p90>
  99. #~ - Will play the sound file "Roar" with the volume as the default and pitch as
  100. #~   90 for the target foe sound effect. Remember, the quotation marks are not
  101. #~   required.
  102. #~
  103. #~ <battler se minus state Groan>
  104. #~ - Will play the sound file "Groan" with the volume and pitch as the defaults
  105. #~   for the minus state damage sound effect.
  106. #~
  107. #~ <battler se evade playnothing>
  108. #~ - Will play no sound effect, not even the default sound effect chosen in the
  109. #~   database, when the battler evades.
  110. #~   
  111. #~
  112. #/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\/|\|/|\|/

  113. $imported = {} if $imported == nil
  114. $imported["Battler_SE"] = true

  115. module Rockleedude
  116.   module Battler_SE
  117. #===============================================================================
  118. #                               CUSTOMIZATION
  119. #===============================================================================
  120.                               # Setup for Actors #
  121.     # With the addition of the actor part of the script, comes an addition to
  122.     # the customization section. Since actors have no notes box like enemies
  123.     # do, another method had to be used for setup for actors. Basically, I
  124.     # created a notes box for actors in this script (note this "notes box" will
  125.     # only work for this script). The syntax for the tag is exactly the same
  126.     # as the syntax for enemies. Put ACTOR_SE_SETUP[x] = "  y  " where x is the
  127.     # id of the actor and y is the tags. You can have any number of lines of
  128.     # tag between the quotation marks. See the example below if confused.
  129.     #
  130.     # The following is an example:
  131.     #   ACTOR_SE_SETUP[1] =
  132.     #  "<battler se take Ouch>
  133.     #   <battler se take playnothing>
  134.     #   <battler se attack Yell>
  135.     #   <battler se death Scream p125>"
  136.     #
  137.     ACTOR_SE_SETUP = [] # Do not alter or remove!
  138.     #
  139.     #
  140.     #               --> Insert Tags for Actors Below Here <--

  141.    
  142.     #               --> Insert Tags for Actors Above Here <--
  143.    
  144.    
  145.     BATTLER_SE_FOLDER_NAME = nil
  146.     # The name of the folder inside of the SE folder where the battler sound
  147.     # effects are stored. Include quotation marks around the name.
  148.     # For example: "Battler_SE"
  149.     # If the custom folder is not being used, put nil with no quotations.
  150.    
  151.     DEFAULT_VOLUME = 90
  152.     # The volume used whenever the volume is left out of the tag.
  153.     # Can be 0-100
  154.     DEFAULT_PITCH = 100
  155.     # The pitch used whenever the pitch is left out of the tag.
  156.     # Can be 50-150
  157.    
  158.     PLUS_STATES = []
  159.     # The states that are considered positive, good states. When a battler
  160.     # receives one of these states, the specified plus state sound effect will
  161.     # play. Insert the id of the state in the above array.
  162.     MINUS_STATES = []
  163.     # The states that are considered negative, bad states. When a battler
  164.     # receives one of these states, the specified minus state sound effect will
  165.     # play. Insert the id of the state in the above array.
  166.     #
  167.     # States can be left out if they don't fall into either category of plus
  168.     # or negative.
  169.    
  170.     DEATH_STATE_ID = 1
  171.     # The id of the state that represents death, knock-out, incapacitated, etc.
  172.     # The default is id 1. There is really no reason to change the id of the
  173.     # death state but I had to include this just incase.
  174.    
  175.     LOW_HEALTH_PERCENTAGE = 20
  176.     # The percentage that determines when the low health sound effect is played.
  177.     # This number should be between 0 and 100 since it's a percentage. The color
  178.     # of the hp shown in the status changes to yellow when the hp is below 25%
  179.     # incase you want to make it as much as the game considers low health.
  180. #===============================================================================
  181. #                             END CUSTOMIZATION
  182. #===============================================================================

  183.     BATTLER_SE = /<BATTLER[\s_]?SE[\s_]?(TAKE|RECOVER|EVADE|PLUSSTATE|PLUS[\s]STATE|PLUS_STATE|MINUSSTATE|MINUS[\s]STATE|MINUS_STATE|ATTACK|TARGETFOE|TARGET[\s]FOE|TARGET_FOE|TARGETALLY|TARGET[\s]ALLY|TARGET_ALLY|CRITICALHIT|CRITICAL[\s]HIT|CRITICAL_HIT|MISS|DEATH|LOWHEALTH|LOW[\s]HEALTH|LOW_HEALTH|SELF)[\s_]?(.*?)[\s_]?(v\d*?)?[\s_]?(p\d*?)?>/i
  184.     BATTLER_SE_PLAYNOTHING = /<BATTLER[\s_]?SE[\s_]?(TAKE|RECOVER|EVADE|PLUSSTATE|PLUS[\s]STATE|PLUS_STATE|MINUSSTATE|MINUS[\s]STATE|MINUS_STATE|ATTACK|TARGETFOE|TARGET[\s]FOE|TARGET_FOE|TARGETALLY|TARGET[\s]ALLY|TARGET_ALLY|CRITICALHIT|CRITICAL[\s]HIT|CRITICAL_HIT|MISS|DEATH|LOWHEALTH|LOW[\s]HEALTH|LOW_HEALTH|SELF)[\s_]?PLAYNOTHING>/i
  185.   end
  186. end

  187. #
  188. # SE CLASS
  189. #
  190. class RPG::SE
  191.   
  192.     def battler_se_play
  193.       folder = Rockleedude::Battler_SE::BATTLER_SE_FOLDER_NAME
  194.       unless @name.empty?
  195.         unless folder == nil
  196.           begin
  197.             Audio.se_play("Audio/SE/" + folder + "/" + @name, @volume, @pitch)
  198.             # print @name + ": name" if $TEST
  199.           rescue
  200.             begin
  201.               play
  202.             rescue
  203.               print "The sound effect, " + @name + ", is not found in either folder." if $TEST
  204.               return false
  205.             end
  206.           end
  207.         else
  208.           begin
  209.             play
  210.           rescue
  211.             print "The sound effect, " + name + ", is not found in the SE folder.
  212.             If you created a Battler_SE folder be sure you put the name correctly
  213.             in the module as BATTLER_SE_FOLDER_NAME" if $TEST
  214.             return false
  215.           end
  216.         end
  217.       else
  218.         return false
  219.       end
  220.     end

  221.     def play
  222.       unless @name.empty?
  223.         Audio.se_play("Audio/SE/" + @name, @volume, @pitch)
  224.       end
  225.     end
  226. end # class end

  227. #
  228. # SOUND MODULE
  229. #
  230. module Sound

  231.   def self.play_enemy_attack
  232.   end

  233.   def self.play_enemy_damage
  234.   end

  235.   def self.play_enemy_collapse
  236.   end

  237.   def self.play_actor_damage
  238.   end

  239.   def self.play_actor_collapse
  240.   end

  241.   def self.play_recovery
  242.   end

  243.   def self.play_miss
  244.   end

  245.   def self.play_evasion
  246.   end

  247.   def self.play_battler_se(battler_id, type, a_or_e, default)
  248.    # Type:   0: Take, 1: Recover, 2: Evade, 3: Plus State, 4: Minus State,
  249.    # Type:   5: Attack, 6: Target Foe, 7: Target Ally, 8: Critical Hit, 9: Miss,
  250.    # Type:   10: Death, 11: Low Health, 12: Self
  251.    # a_or_e: 1: Actor  2: Enemy
  252.                   
  253.     se = $data_actor_se[battler_id] if a_or_e == 1
  254.     se = $data_enemy_se[battler_id] if a_or_e == 2
  255.     unless se[type].empty?
  256.       chosen_se = se[type][rand(se[type].size)]
  257.     else
  258.       Sound.play_default_se(type, a_or_e)
  259.       return
  260.     end
  261.     #print chosen_se.inspect + ":chosen_se" if $TEST
  262.     return if chosen_se == "PLAYNOTHING"
  263.     t_or_f = chosen_se.battler_se_play
  264.     return if default == false
  265.     Sound.play_default_se(type, a_or_e) if t_or_f == false
  266.   end
  267.    
  268.   def self.play_default_se(type, a_or_e)
  269.     if a_or_e == 1
  270.       $data_system.sounds[13].play if type == 10
  271.     else
  272.       $data_system.sounds[11].play if type == 10
  273.     end
  274.     $data_system.sounds[16].play if type == 9
  275.     $data_system.sounds[16].play if type == 2
  276.   end
  277.   
  278. end

  279. #
  280. # SPRITE_DAMAGE CLASS
  281. #
  282. class Sprite_Damage < Sprite_Base
  283.   
  284.   # Take(0) and Recover(1)
  285.   alias damage_pop_orig_rld_battler_se damage_pop
  286.   def damage_pop(num = nil)
  287.     damage_pop_orig_rld_battler_se(num = nil)
  288.     if battler.hp_damage != nil
  289.       if (battler.hp_damage > 0)
  290.         if @battler.actor?
  291.           Sound.play_battler_se(@battler.actor_id, 0, 1, false)
  292.         else
  293.           Sound.play_battler_se(@battler.enemy_id, 0, 2, false)
  294.         end
  295.       elsif (battler.hp_damage < 0)
  296.         if @battler.actor?
  297.           Sound.play_battler_se(@battler.actor_id, 1, 1, false)
  298.         else
  299.           Sound.play_battler_se(@battler.enemy_id, 1, 2, false)
  300.         end
  301.       end
  302.       if battler.hp_damage == 0
  303.         if battler.mp_damage != nil
  304.           if (battler.mp_damage > 0)
  305.             if @battler.actor?
  306.               Sound.play_battler_se(@battler.actor_id, 0, 1, false)
  307.             else
  308.               Sound.play_battler_se(@battler.enemy_id, 0, 2, false)
  309.             end
  310.           elsif (battler.mp_damage < 0)
  311.             if @battler.actor?
  312.               Sound.play_battler_se(@battler.actor_id, 1, 1, false)
  313.             else
  314.               Sound.play_battler_se(@battler.enemy_id, 1, 2, false)
  315.             end
  316.           end
  317.         end
  318.       end
  319.     end
  320.   end

  321. end # class end

  322. #
  323. # SPRITE_BATTLER CLASS
  324. #
  325. class Sprite_Battler < Sprite_Base
  326.   
  327.   # Evade(2)
  328.   alias damage_action_orig_rld_battler_se damage_action
  329.   def damage_action(action)
  330.     damage_action_orig_rld_battler_se(action)
  331.     if @battler.evaded
  332.       if @battler.actor?
  333.         Sound.play_battler_se(@battler.actor_id, 2, 1, true)
  334.       else
  335.         Sound.play_battler_se(@battler.enemy_id, 2, 2, true)
  336.       end
  337.     end
  338.   end
  339.   
  340. end # class end

  341. #
  342. # SCENE_BATTLE CLASS
  343. #
  344. class Scene_Battle < Scene_Base
  345.   
  346.   # (3-9 and 12)
  347.   alias damage_action_sb_orig_rld_battler_se damage_action
  348.   def damage_action(action)
  349.     damage_action_sb_orig_rld_battler_se(action)
  350.     for target in @targets
  351.       play_if_minus_state_removed(target, action) # Recover(1)
  352.       play_if_plus_or_minus(target, action) # Plus State(3) and Minus State(4)
  353.       if target.critical # Critical Hit(8)
  354.         if @active_battler.actor?
  355.           Sound.play_battler_se(@active_battler.actor_id, 8, 1, false)
  356.         else
  357.           Sound.play_battler_se(@active_battler.enemy_id, 8, 2, false)
  358.         end
  359.       end
  360.       if target.missed # Miss(9)
  361.         if @active_battler.actor?
  362.           Sound.play_battler_se(@active_battler.actor_id, 9, 1, true)
  363.         else
  364.           Sound.play_battler_se(@active_battler.enemy_id, 9, 2, true)
  365.         end
  366.       end
  367.     end
  368.     play_for_action_scopes # Attack(5), Target Foe(6), Target Ally(7), Self(12)
  369.   end
  370.   
  371.   # Recover(1) for Removed Minus States
  372.   def play_if_minus_state_removed(target, action)
  373.     return unless (target.hp_damage == 0) and (target.mp_damage == 0)
  374.     plus_a = []
  375.     minus_a = []
  376.     plus_list = Rockleedude::Battler_SE::PLUS_STATES
  377.     minus_list = Rockleedude::Battler_SE::MINUS_STATES
  378.     for state in target.removed_states
  379.       plus_a.insert(0, state) if plus_list.include?(state.id)
  380.       minus_a.insert(0, state) if minus_list.include?(state.id)
  381.       if state.id == Rockleedude::Battler_SE::DEATH_STATE_ID
  382.         if target.actor?
  383.           Sound.play_battler_se(target.actor_id, 1, 1, false)
  384.         else
  385.           Sound.play_battler_se(target.enemy_id, 1, 2, false)
  386.         end
  387.         return
  388.       end
  389.     end
  390.     return if (plus_a.size != 0) and (minus_a.size != 0)
  391.     return if plus_a.empty? and minus_a.empty?
  392.     if plus_a.empty?
  393.       if target.actor?
  394.         Sound.play_battler_se(target.actor_id, 1, 1, false)
  395.       else
  396.         Sound.play_battler_se(target.enemy_id, 1, 2, false)
  397.       end
  398.     end
  399.   end
  400.   
  401.   # Plus State(3) and Minus State(4)
  402.   def play_if_plus_or_minus(target, action)
  403.     if @active_battler.action.skill?
  404.       obj = @active_battler.action.skill
  405.     elsif @active_battler.action.item?
  406.       obj = @active_battler.action.item
  407.     else
  408.       obj = nil
  409.     end
  410.     plus_a = []
  411.     minus_a = []
  412.     plus_list = Rockleedude::Battler_SE::PLUS_STATES
  413.     minus_list = Rockleedude::Battler_SE::MINUS_STATES
  414.     for state in target.added_states
  415.       plus_a.insert(0, state) if plus_list.include?(state.id)
  416.       minus_a.insert(0, state) if minus_list.include?(state.id)
  417.       return if state.id == Rockleedude::Battler_SE::DEATH_STATE_ID
  418.     end
  419.     return if (plus_a.size != 0) and (minus_a.size != 0)
  420.     return if plus_a.empty? and minus_a.empty?
  421.     if obj == nil
  422.       return unless (target.hp_damage == 0) and (target.mp_damage == 0)
  423.     else
  424.       return unless obj.base_damage == 0
  425.     end
  426.     if minus_a.empty?
  427.       if target.actor?
  428.         Sound.play_battler_se(target.actor_id, 3, 1, false)
  429.       else
  430.         Sound.play_battler_se(target.enemy_id, 3, 2, false)
  431.       end
  432.     elsif plus_a.empty?
  433.       if target.actor?
  434.         Sound.play_battler_se(target.actor_id, 4, 1, false)
  435.       else
  436.         Sound.play_battler_se(target.enemy_id, 4, 2, false)
  437.       end
  438.     end
  439.   end
  440.   
  441.   # Attack(5), Target Foe(6), Target Ally(7), Self(12)
  442.   def play_for_action_scopes
  443.     if @active_battler.action.attack?
  444.       if @active_battler.actor?
  445.         Sound.play_battler_se(@active_battler.actor_id, 5, 1, false)
  446.       else
  447.         Sound.play_battler_se(@active_battler.enemy_id, 5, 2, false)
  448.       end
  449.       return
  450.     end
  451.     if @active_battler.action.skill?
  452.       if @active_battler.action.skill.physical_attack
  453.         if @active_battler.actor?
  454.           Sound.play_battler_se(@active_battler.actor_id, 5, 1, false)
  455.         else
  456.           Sound.play_battler_se(@active_battler.enemy_id, 5, 2, false)
  457.         end
  458.         return
  459.       end
  460.     end
  461.     if @active_battler.action.item?
  462.       if @active_battler.action.item.physical_attack
  463.         if @active_battler.actor?
  464.           Sound.play_battler_se(@active_battler.actor_id, 5, 1, false)
  465.         else
  466.           Sound.play_battler_se(@active_battler.enemy_id, 5, 2, false)
  467.         end
  468.         return
  469.       end
  470.     end
  471.     if @targets.compact.size == 1
  472.       if @targets.compact[0] == @active_battler
  473.         if @active_battler.actor?
  474.           Sound.play_battler_se(@active_battler.actor_id, 12, 1, false)
  475.         else
  476.           Sound.play_battler_se(@active_battler.enemy_id, 12, 2, false)
  477.         end
  478.         return
  479.       end
  480.     end
  481.     return if @targets.nitems == 0
  482.     unless @targets.compact[0].actor?
  483.       if @active_battler.actor?
  484.         Sound.play_battler_se(@active_battler.actor_id, 6, 1, false)
  485.       else
  486.         Sound.play_battler_se(@active_battler.enemy_id, 7, 2, false)
  487.       end
  488.     else
  489.       if @active_battler.actor?
  490.         Sound.play_battler_se(@active_battler.actor_id, 7, 1, false)
  491.       else
  492.         Sound.play_battler_se(@active_battler.enemy_id, 6, 2, false)
  493.       end
  494.     end
  495.   end

  496. end # class end

  497. #
  498. # SPRITE_BATTLER CLASS
  499. #
  500. class Sprite_Battler < Sprite_Base
  501.   # Enemy: Death(10)

  502.   alias collapse_action_orig_rld_battler_se collapse_action
  503.   def collapse_action
  504.     collapse_action_orig_rld_battler_se
  505.     if @collapse_type == 1
  506.       unless @battler.actor?
  507.         Sound.play_battler_se(@battler.enemy_id, 2, 2, true)
  508.       else
  509.         Sound.play_battler_se(@battler.actor_id, 2, 1, true)
  510.       end
  511.     end
  512.   end
  513.   
  514.   def normal_collapse
  515.     if @effect_duration == 47
  516.       self.blend_type = 1
  517.       self.color.set(255, 128, 128, 128)
  518.     end
  519.     if @effect_duration == 32
  520.       unless @battler.actor?
  521.         Sound.play_battler_se(@battler.enemy_id, 2, 2, true)
  522.       else
  523.         Sound.play_battler_se(@battler.actor_id, 2, 1, true)
  524.       end
  525.     end
  526.     self.opacity = 256 - (48 - @effect_duration) * 6 if @effect_duration <= 47
  527.   end  
  528.   
  529.   alias boss_collapse1_orig_rld_battler_se boss_collapse1
  530.   def boss_collapse1
  531.     if @effect_duration == 380
  532.       unless @battler.actor?
  533.         Sound.play_battler_se(@battler.enemy_id, 2, 2, true)
  534.       else
  535.         Sound.play_battler_se(@battler.actor_id, 2, 1, true)
  536.       end
  537.     end
  538.     if @effect_duration == 255
  539.       unless @battler.actor?
  540.         Sound.play_battler_se(@battler.enemy_id, 2, 2, true)
  541.       else
  542.         Sound.play_battler_se(@battler.actor_id, 2, 1, true)
  543.       end
  544.     end
  545.     boss_collapse1_orig_rld_battler_se
  546.   end
  547. end

  548. #
  549. # GAME_BATTLER CLASS
  550. #
  551. class Game_Battler
  552.   
  553.   # Low Health(11)
  554.   alias execute_damage_orig_rld_battler_se execute_damage
  555.   def execute_damage(user)
  556.     max_hp_b = maxhp
  557.     hp_b = self.hp
  558.     execute_damage_orig_rld_battler_se(user)
  559.     max_hp_a = maxhp
  560.     hp_a = self.hp
  561.     ratio_b = hp_b.to_f / max_hp_b.to_f
  562.     ratio_a = hp_a.to_f / max_hp_a.to_f
  563.     #print ratio_b.inspect + ":ratio_b    " + ratio_a.inspect + ":ratio_a"
  564.     lowh_percent = Rockleedude::Battler_SE::LOW_HEALTH_PERCENTAGE
  565.     unless hp_a <= 0
  566.       if lowh_percent.between?(0.0, 100.0)
  567.         lowh_percent = lowh_percent.to_f / 100.0
  568.         if ratio_b > lowh_percent
  569.           if ratio_a < lowh_percent
  570.             if self.actor?
  571.               Sound.play_battler_se(self.actor_id, 11, 1, false)
  572.             else
  573.               Sound.play_battler_se(self.enemy_id, 11, 2, false)
  574.             end
  575.           end
  576.         end
  577.       end
  578.     end
  579.   end
  580.   
  581. end # class end

  582. #
  583. # GAME_ACTOR CLASS
  584. #

  585. class Game_Actor < Game_Battler
  586.   attr_accessor :battler_se_note

  587.   alias perform_collapse_orig_rld_battler_se perform_collapse
  588.   def perform_collapse
  589.     Sound.play_battler_se(@actor_id, 10, 1, true) if $game_temp.in_battle and dead?
  590.     perform_collapse_orig_rld_battler_se
  591.   end

  592.   def actor_id
  593.     return @actor_id
  594.   end
  595.   
  596.   alias setup_orig_battler_se setup
  597.   def setup(actor_id)
  598.     setup_orig_battler_se(actor_id)
  599.     @battler_se_note = Rockleedude::Battler_SE::ACTOR_SE_SETUP
  600.   end
  601.   
  602. end # class end

  603. #
  604. # GAME_ENEMY CLASS
  605. #
  606. class Game_Enemy < Game_Battler
  607.   alias perform_collapse_orig_rld_battler_se perform_collapse
  608.   def perform_collapse
  609.     Sound.play_battler_se(@enemy_id, 10, 2, true) if $game_temp.in_battle and dead?
  610.     perform_collapse_orig_rld_battler_se
  611.   end
  612.   
  613. end # class end

  614. #
  615. # ACTOR CLASS
  616. #
  617. class RPG::Actor
  618.   attr_accessor :battler_se_note
  619.   
  620.   # Battler Receiving
  621.   attr_accessor :take_damage_se
  622.   attr_accessor :recover_damage_se
  623.   attr_accessor :evade_se
  624.   attr_accessor :plus_state_se
  625.   attr_accessor :minus_state_se
  626.   
  627.   # Battler Delivering
  628.   attr_accessor :attack_se
  629.   attr_accessor :target_foe_se
  630.   attr_accessor :target_ally_se
  631.   attr_accessor :critical_hit_se
  632.   attr_accessor :miss_se
  633.   
  634.   # Random Conditions
  635.   attr_accessor :death_se
  636.   attr_accessor :low_health_se
  637.   attr_accessor :self_se
  638.   
  639.   def gsub_without_md(string)
  640.     string.gsub!(/ /i, "")
  641.     string.gsub!(/_/i, "")
  642.     return string
  643.   end
  644.   
  645.   def prepare_se_cache
  646.     # Battler Receiving
  647.     @take_damage_se = []
  648.     @recover_damage_se = []
  649.     @evade_se = []
  650.     @plus_state_se = []
  651.     @minus_state_se = []
  652.    
  653.     # Battler Delivering
  654.     @attack_se = []
  655.     @target_foe_se = []
  656.     @target_ally_se = []
  657.     @critical_hit_se = []
  658.     @miss_se = []
  659.    
  660.     # Random Conditions
  661.     @death_se = []
  662.     @low_health_se = []
  663.     @self_se = []

  664.     a = Rockleedude::Battler_SE::ACTOR_SE_SETUP[@id]
  665.     @battler_se_note = ""
  666.     @battler_se_note = a if a != nil
  667.   end
  668.   
  669.   def create_se_cache
  670.     prepare_se_cache
  671.     dv = Rockleedude::Battler_SE::DEFAULT_VOLUME
  672.     dp = Rockleedude::Battler_SE::DEFAULT_PITCH
  673.     self.battler_se_note.split(/[\r\n]+/).each { |line|
  674.     case line
  675.     when Rockleedude::Battler_SE::BATTLER_SE
  676.       type = $1
  677.       type.upcase! unless $1 == nil
  678.       type = gsub_without_md(type) unless $1 == nil
  679.       case type
  680.       when "TAKE"
  681.         se = RPG::SE.new($2, dv, dp)
  682.         se.volume = $3 if $3 != nil
  683.         se.volume = se.volume[1,3].to_i if $3.class == String
  684.         se.pitch = $4 if $4 != nil
  685.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  686.         @take_damage_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  687.       when "RECOVER"
  688.         se = RPG::SE.new($2, dv, dp)
  689.         se.volume = $3 if $3 != nil
  690.         se.volume = se.volume[1,3].to_i if $3.class == String
  691.         se.pitch = $4 if $4 != nil
  692.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  693.         @recover_damage_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"  
  694.       when "EVADE"
  695.         se = RPG::SE.new($2, dv, dp)
  696.         se.volume = $3 if $3 != nil
  697.         se.volume = se.volume[1,3].to_i if $3.class == String
  698.         se.pitch = $4 if $4 != nil
  699.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  700.         @evade_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  701.       when "PLUSSTATE"
  702.         se = RPG::SE.new($2, dv, dp)
  703.         se.volume = $3 if $3 != nil
  704.         se.volume = se.volume[1,3].to_i if $3.class == String
  705.         se.pitch = $4 if $4 != nil
  706.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  707.         @plus_state_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  708.       when "MINUSSTATE"
  709.         se = RPG::SE.new($2, dv, dp)
  710.         se.volume = $3 if $3 != nil
  711.         se.volume = se.volume[1,3].to_i if $3.class == String
  712.         se.pitch = $4 if $4 != nil
  713.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  714.         @minus_state_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  715.       when "ATTACK"
  716.         se = RPG::SE.new($2, dv, dp)
  717.         se.volume = $3 if $3 != nil
  718.         se.volume = se.volume[1,3].to_i if $3.class == String
  719.         se.pitch = $4 if $4 != nil
  720.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  721.         @attack_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  722.       when "TARGETFOE"
  723.         se = RPG::SE.new($2, dv, dp)
  724.         se.volume = $3 if $3 != nil
  725.         se.volume = se.volume[1,3].to_i if $3.class == String
  726.         se.pitch = $4 if $4 != nil
  727.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  728.         @target_foe_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  729.       when "TARGETALLY"
  730.         se = RPG::SE.new($2, dv, dp)
  731.         se.volume = $3 if $3 != nil
  732.         se.volume = se.volume[1,3].to_i if $3.class == String
  733.         se.pitch = $4 if $4 != nil
  734.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  735.         @target_ally_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  736.       when "CRITICALHIT"
  737.         se = RPG::SE.new($2, dv, dp)
  738.         se.volume = $3 if $3 != nil
  739.         se.volume = se.volume[1,3].to_i if $3.class == String
  740.         se.pitch = $4 if $4 != nil
  741.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  742.         @critical_hit_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  743.       when "MISS"
  744.         se = RPG::SE.new($2, dv, dp)
  745.         se.volume = $3 if $3 != nil
  746.         se.volume = se.volume[1,3].to_i if $3.class == String
  747.         se.pitch = $4 if $4 != nil
  748.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  749.         @miss_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  750.       when "DEATH"
  751.         se = RPG::SE.new($2, dv, dp)
  752.         se.volume = $3 if $3 != nil
  753.         se.volume = se.volume[1,3].to_i if $3.class == String
  754.         se.pitch = $4 if $4 != nil
  755.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  756.         @death_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  757.       when "LOWHEALTH"
  758.         se = RPG::SE.new($2, dv, dp)
  759.         se.volume = $3 if $3 != nil
  760.         se.volume = se.volume[1,3].to_i if $3.class == String
  761.         se.pitch = $4 if $4 != nil
  762.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  763.         @low_health_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  764.       when "SELF"
  765.         se = RPG::SE.new($2, dv, dp)
  766.         se.volume = $3 if $3 != nil
  767.         se.volume = se.volume[1,3].to_i if $3.class == String
  768.         se.pitch = $4 if $4 != nil
  769.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  770.         @self_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  771.       end
  772.     end
  773.     case line
  774.     when Rockleedude::Battler_SE::BATTLER_SE_PLAYNOTHING
  775.       type = $1
  776.       type.upcase! unless $1 == nil
  777.       type.gsub!(/ /i, "") unless $1 == nil
  778.       case type
  779.       when "TAKE"
  780.         @take_damage_se.insert(0, "PLAYNOTHING")
  781.       when "RECOVER"
  782.         @recover_damage_se.insert(0, "PLAYNOTHING")  
  783.       when "EVADE"
  784.         @evade_se.insert(0, "PLAYNOTHING")
  785.       when "PLUSSTATE"
  786.         @plus_state_se.insert(0, "PLAYNOTHING")
  787.       when "MINUSSTATE"
  788.         @minus_state_se.insert(0, "PLAYNOTHING")
  789.       when "ATTACK"
  790.         @attack_se.insert(0, "PLAYNOTHING")
  791.       when "TARGETFOE"
  792.         @target_foe_se.insert(0, "PLAYNOTHING")
  793.       when "TARGETALLY"
  794.         @target_ally_se.insert(0, "PLAYNOTHING")
  795.       when "CRITICALHIT"
  796.         @critical_hit_se.insert(0, "PLAYNOTHING")
  797.       when "MISS"
  798.         @miss_se.insert(0, "PLAYNOTHING")
  799.       when "DEATH"
  800.         @death_se.insert(0, "PLAYNOTHING")
  801.       when "LOWHEALTH"
  802.         @low_health_se.insert(0, "PLAYNOTHING")
  803.       when "SELF"
  804.         @self_se.insert(0, "PLAYNOTHING")

  805.       end
  806.     end
  807.     }
  808.   end
  809.   
  810. end # class end

  811. #
  812. # ENEMY CLASS
  813. #
  814. class RPG::Enemy
  815.   # Battler Receiving
  816.   attr_accessor :take_damage_se
  817.   attr_accessor :recover_damage_se
  818.   attr_accessor :evade_se
  819.   attr_accessor :plus_state_se
  820.   attr_accessor :minus_state_se
  821.   
  822.   # Battler Delivering
  823.   attr_accessor :attack_se
  824.   attr_accessor :target_foe_se
  825.   attr_accessor :target_ally_se
  826.   attr_accessor :critical_hit_se
  827.   attr_accessor :miss_se
  828.   
  829.   # Random Conditions
  830.   attr_accessor :death_se
  831.   attr_accessor :low_health_se
  832.   attr_accessor :self_se
  833.   
  834.   def gsub_without_md(string)
  835.     string.gsub!(/ /i, "")
  836.     string.gsub!(/_/i, "")
  837.     return string
  838.   end
  839.   
  840.   def prepare_se_cache
  841.     # Battler Receiving
  842.     @take_damage_se = []
  843.     @recover_damage_se = []
  844.     @evade_se = []
  845.     @plus_state_se = []
  846.     @minus_state_se = []
  847.    
  848.     # Battler Delivering
  849.     @attack_se = []
  850.     @target_foe_se = []
  851.     @target_ally_se = []
  852.     @critical_hit_se = []
  853.     @miss_se = []
  854.    
  855.     # Random Conditions
  856.     @death_se = []
  857.     @low_health_se = []
  858.     @self_se = []
  859.   end
  860.   
  861.   def create_se_cache
  862.     prepare_se_cache
  863.     dv = Rockleedude::Battler_SE::DEFAULT_VOLUME
  864.     dp = Rockleedude::Battler_SE::DEFAULT_PITCH
  865.     self.note.split(/[\r\n]+/).each { |line|
  866.     case line
  867.     when Rockleedude::Battler_SE::BATTLER_SE
  868.       type = $1
  869.       type.upcase! unless $1 == nil
  870.       type = gsub_without_md(type) unless $1 == nil
  871.       case type
  872.       when "TAKE"
  873.         se = RPG::SE.new($2, dv, dp)
  874.         se.volume = $3 if $3 != nil
  875.         se.volume = se.volume[1,3].to_i if $3.class == String
  876.         se.pitch = $4 if $4 != nil
  877.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  878.         @take_damage_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  879.       when "RECOVER"
  880.         se = RPG::SE.new($2, dv, dp)
  881.         se.volume = $3 if $3 != nil
  882.         se.volume = se.volume[1,3].to_i if $3.class == String
  883.         se.pitch = $4 if $4 != nil
  884.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  885.         @recover_damage_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"  
  886.       when "EVADE"
  887.         se = RPG::SE.new($2, dv, dp)
  888.         se.volume = $3 if $3 != nil
  889.         se.volume = se.volume[1,3].to_i if $3.class == String
  890.         se.pitch = $4 if $4 != nil
  891.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  892.         @evade_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  893.       when "PLUSSTATE"
  894.         se = RPG::SE.new($2, dv, dp)
  895.         se.volume = $3 if $3 != nil
  896.         se.volume = se.volume[1,3].to_i if $3.class == String
  897.         se.pitch = $4 if $4 != nil
  898.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  899.         @plus_state_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  900.       when "MINUSSTATE"
  901.         se = RPG::SE.new($2, dv, dp)
  902.         se.volume = $3 if $3 != nil
  903.         se.volume = se.volume[1,3].to_i if $3.class == String
  904.         se.pitch = $4 if $4 != nil
  905.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  906.         @minus_state_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  907.       when "ATTACK"
  908.         se = RPG::SE.new($2, dv, dp)
  909.         se.volume = $3 if $3 != nil
  910.         se.volume = se.volume[1,3].to_i if $3.class == String
  911.         se.pitch = $4 if $4 != nil
  912.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  913.         @attack_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  914.       when "TARGETFOE"
  915.         se = RPG::SE.new($2, dv, dp)
  916.         se.volume = $3 if $3 != nil
  917.         se.volume = se.volume[1,3].to_i if $3.class == String
  918.         se.pitch = $4 if $4 != nil
  919.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  920.         @target_foe_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  921.       when "TARGETALLY"
  922.         se = RPG::SE.new($2, dv, dp)
  923.         se.volume = $3 if $3 != nil
  924.         se.volume = se.volume[1,3].to_i if $3.class == String
  925.         se.pitch = $4 if $4 != nil
  926.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  927.         @target_ally_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  928.       when "CRITICALHIT"
  929.         se = RPG::SE.new($2, dv, dp)
  930.         se.volume = $3 if $3 != nil
  931.         se.volume = se.volume[1,3].to_i if $3.class == String
  932.         se.pitch = $4 if $4 != nil
  933.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  934.         @critical_hit_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  935.       when "MISS"
  936.         se = RPG::SE.new($2, dv, dp)
  937.         se.volume = $3 if $3 != nil
  938.         se.volume = se.volume[1,3].to_i if $3.class == String
  939.         se.pitch = $4 if $4 != nil
  940.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  941.         @miss_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  942.       when "DEATH"
  943.         se = RPG::SE.new($2, dv, dp)
  944.         se.volume = $3 if $3 != nil
  945.         se.volume = se.volume[1,3].to_i if $3.class == String
  946.         se.pitch = $4 if $4 != nil
  947.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  948.         @death_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  949.       when "LOWHEALTH"
  950.         se = RPG::SE.new($2, dv, dp)
  951.         se.volume = $3 if $3 != nil
  952.         se.volume = se.volume[1,3].to_i if $3.class == String
  953.         se.pitch = $4 if $4 != nil
  954.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  955.         @low_health_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  956.       when "SELF"
  957.         se = RPG::SE.new($2, dv, dp)
  958.         se.volume = $3 if $3 != nil
  959.         se.volume = se.volume[1,3].to_i if $3.class == String
  960.         se.pitch = $4 if $4 != nil
  961.         se.pitch = se.pitch[1,3].to_i if $4.class == String
  962.         @self_se.insert(0, se) if se.name.upcase != "PLAYNOTHING"
  963.       end
  964.     end
  965.     case line
  966.     when Rockleedude::Battler_SE::BATTLER_SE_PLAYNOTHING
  967.       type = $1
  968.       type.upcase! unless $1 == nil
  969.       type.gsub!(/ /i, "") unless $1 == nil
  970.       case type
  971.       when "TAKE"
  972.         @take_damage_se.insert(0, "PLAYNOTHING")
  973.       when "RECOVER"
  974.         @recover_damage_se.insert(0, "PLAYNOTHING")  
  975.       when "EVADE"
  976.         @evade_se.insert(0, "PLAYNOTHING")
  977.       when "PLUSSTATE"
  978.         @plus_state_se.insert(0, "PLAYNOTHING")
  979.       when "MINUSSTATE"
  980.         @minus_state_se.insert(0, "PLAYNOTHING")
  981.       when "ATTACK"
  982.         @attack_se.insert(0, "PLAYNOTHING")
  983.       when "TARGETFOE"
  984.         @target_foe_se.insert(0, "PLAYNOTHING")
  985.       when "TARGETALLY"
  986.         @target_ally_se.insert(0, "PLAYNOTHING")
  987.       when "CRITICALHIT"
  988.         @critical_hit_se.insert(0, "PLAYNOTHING")
  989.       when "MISS"
  990.         @miss_se.insert(0, "PLAYNOTHING")
  991.       when "DEATH"
  992.         @death_se.insert(0, "PLAYNOTHING")
  993.       when "LOWHEALTH"
  994.         @low_health_se.insert(0, "PLAYNOTHING")
  995.       when "SELF"
  996.         @self_se.insert(0, "PLAYNOTHING")

  997.       end
  998.     end
  999.     }
  1000.   end
  1001.   
  1002. end # class end

  1003. #
  1004. # SCENE_TITLE CLASS
  1005. #
  1006. class Scene_Title < Scene_Base

  1007.   alias load_database_orig_rld_battler_se load_database
  1008.   def load_database
  1009.     load_database_orig_rld_battler_se
  1010.     load_battler_se
  1011.   end
  1012.   
  1013.   alias load_bt_database_orig_rld_battler_se load_bt_database
  1014.   def load_bt_database
  1015.     load_bt_database_orig_rld_battler_se
  1016.     load_battler_se
  1017.   end
  1018.   
  1019.   def load_battler_se
  1020.     n = 0
  1021.     $data_actor_se = []
  1022.     $data_enemy_se = []
  1023.    
  1024. # Actor SE's  
  1025.     for actor in $data_actors
  1026.       next if actor == nil
  1027.       actor.create_se_cache
  1028.       take = actor.take_damage_se
  1029.       recover = actor.recover_damage_se
  1030.       evade = actor.evade_se
  1031.       plusstate = actor.plus_state_se
  1032.       minusstate = actor.minus_state_se
  1033.       attack = actor.attack_se
  1034.       targetfoe = actor.target_foe_se
  1035.       targetally = actor.target_ally_se
  1036.       criticalhit = actor.critical_hit_se
  1037.       miss = actor.miss_se
  1038.       death = actor.death_se
  1039.       lowhealth = actor.low_health_se
  1040.       selfse = actor.self_se
  1041.       $data_actor_se[actor.id] = [take, recover, evade, plusstate, minusstate, attack, targetfoe, targetally, criticalhit, miss, death, lowhealth, selfse] #deal,
  1042.     end
  1043.    
  1044.   # Enemy SE's
  1045.     for enemy in $data_enemies
  1046.       next if enemy == nil
  1047.       enemy.create_se_cache
  1048.       take = enemy.take_damage_se
  1049.       recover = enemy.recover_damage_se
  1050.       evade = enemy.evade_se
  1051.       plusstate = enemy.plus_state_se
  1052.       minusstate = enemy.minus_state_se
  1053.       attack = enemy.attack_se
  1054.       targetfoe = enemy.target_foe_se
  1055.       targetally = enemy.target_ally_se
  1056.       criticalhit = enemy.critical_hit_se
  1057.       miss = enemy.miss_se
  1058.       death = enemy.death_se
  1059.       lowhealth = enemy.low_health_se
  1060.       selfse = enemy.self_se
  1061.       $data_enemy_se[enemy.id] = [take, recover, evade, plusstate, minusstate, attack, targetfoe, targetally, criticalhit, miss, death, lowhealth, selfse] #deal,
  1062.     end
  1063.   end
  1064.   
  1065. end # class end
复制代码
但不幸的是……这是横版用的……
有木有竖版的=w=

小艾工作室开张= =

Lv4.逐梦者

醉啸 长风万里

梦石
0
星屑
6197
在线时间
6595 小时
注册时间
2007-12-16
帖子
4501

贵宾

2
发表于 2011-8-10 08:23:47 | 只看该作者
竖版?原版?
原版的话直接在武器动画中加战斗声音
死亡动画在Sprite_Battler里添加

还在龟速填坑中
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
48
在线时间
678 小时
注册时间
2010-8-11
帖子
1533
3
 楼主| 发表于 2011-8-10 08:31:20 | 只看该作者
仲秋启明 发表于 2011-8-10 01:23
竖版?原版?
原版的话直接在武器动画中加战斗声音
死亡动画在Sprite_Battler里添加 ...

如果是其他人物呢……话说我就知道会有人这么回答
我要的是每一个人物用同一个武器用不同的配音
所以那样是不行的

点评

现在……只能要工程了  发表于 2011-8-10 14:09
def atk_animation_id  发表于 2011-8-10 09:22
小艾工作室开张= =
回复

使用道具 举报

Lv4.逐梦者

醉啸 长风万里

梦石
0
星屑
6197
在线时间
6595 小时
注册时间
2007-12-16
帖子
4501

贵宾

4
发表于 2011-8-10 08:33:56 | 只看该作者
Game_Actor中有武器动画的判定,如果要同一武器的话就在里面判定吧
case @actor.id;when 1;when2;……

点评

设定之后很多脚本都出错= =怎么回事 (莫非不能跟XP风战斗共存么……)  发表于 2011-8-10 09:34
请问是哪一行,我用的是日语的VX= =  发表于 2011-8-10 09:01

还在龟速填坑中
回复

使用道具 举报

Lv4.逐梦者

醉啸 长风万里

梦石
0
星屑
6197
在线时间
6595 小时
注册时间
2007-12-16
帖子
4501

贵宾

5
发表于 2011-8-10 09:51:55 | 只看该作者
你是直接播放SE还是显示的动画,如果是SE的话就在
Scene_Battle的def display_attack_animation(targets)里改

点评

还是出错,话说我不仅要攻击时的= = 所以改默认还是算了= =  发表于 2011-8-10 10:40

还在龟速填坑中
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-10 22:25

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表