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

Project1

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

[已经解决] 请问怎么把AT条的位置改到这里?

[复制链接]

Lv2.观梦者

梦石
0
星屑
293
在线时间
398 小时
注册时间
2011-5-20
帖子
128
跳转到指定楼层
1
发表于 2013-7-19 18:05:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 893299399 于 2013-7-20 12:33 编辑

因为AT脚本是一套的战斗脚本里弄出来的,所以位置变成了那样,请问怎么把AT条的位置移动到红圈里?
  1. #==============================================================================
  2. # +++ MOG - AT System  (v0.7 Beta) +++
  3. #==============================================================================
  4. # By Moghunter
  5. # http://www.atelier-rgss.com/
  6. #==============================================================================
  7. # Sistema de batalha de turnos em tempo real.
  8. #==============================================================================

  9. #==============================================================================
  10. # ● Histórico (Version History)
  11. #==============================================================================
  12. # v 0.7 - Melhoria na performance.
  13. # v 0.6 - Corrigido o bug de ações forçadas consecutivas.
  14. #       - Corrigido o bug de contagem de turnos das condições. (Stop / Sleep)
  15. #       - Corrigido o bug de resetar o AT quando o battler recebe qualquer
  16. #         tipo de status que não tenham o  efeito Stop / Sleep.
  17. # v 0.5 - Corrigido o bug da contagem de turnos nas condições. (States)
  18. # v 0.4 - Corrigido o bug de crash randômico. (relativo a dispose de imagem.)
  19. #       - Corrigido o bug de crash randômico. (relativo ao turno.)
  20. #       - Corrigido o bug de travar a tela na execução da mensagem de batalha.
  21. # v 0.3 - Corrigido o Bug da janela de comando ao apertar a tecla Cancel.
  22. #       - Corrigido o Bug de não apresentar a janela de status no começo.
  23. #       - Melhor codificação para aumentar a compatibilidade.
  24. #       - Opção de definir a posição do medidor de AT pelo X&Y do battler.
  25. # v 0.2 - Corrigido o bug da seleção do alvo para ações de cast time.
  26. # v 0.1 - Primeiro lançamento.
  27. #==============================================================================

  28. #==============================================================================
  29. # ● Imagens Necessárias
  30. #==============================================================================
  31. # Serão necessários as imagens:
  32. #
  33. # Battle_AT_Layout.png
  34. # Battle_AT_Meter.png
  35. #
  36. # Na pasta GRAPHICS/SYSTEM/
  37. #
  38. #==============================================================================
  39. # ● AT SYSTEM
  40. #==============================================================================
  41. # A velocidade de AT é baseaddo na agilidade do Battler.
  42. # Em caso de batalhas preventivas (Preemptive) os aliados começarão com AT em
  43. # 80% e os inimigos começarão com AT em 0 (Zero)
  44. # Em batalhas surpresas (Surprise) é o inverso das batalhas preventivas.
  45. # Em batalhas normais todos os battlers começarão com AT em 40%.
  46. #==============================================================================
  47. # ● CAST TIME
  48. #==============================================================================
  49. # Para definir uma habilidade ou item com a função de Cast Time basta definir
  50. # o valor da velocidade (Speed) diferente de 0 (Zero).
  51. #
  52. # NOTA - Não é possível ativar 2 ou mais habilidades com a função Cast Time no
  53. # mesmo turno. (Caso você esteja usando características de Multi Action em
  54. # seu projeto.)
  55. #==============================================================================
  56. module MOG_AT_SYSTEM
  57.   # Tipo de posicionamento da Hud.
  58.   # 0 - Posição fixa.
  59.   # 1 - Posição baseado no valor X e Y do battler.
  60.   HUD_POSITION_TYPE = 0
  61.   #Posição geral (Inicial) da Hud.
  62.   HUD_POSITION = [25,400]
  63.   #Posição do medidor de AT
  64.   AT_METER_POSITION = [29,1]
  65.   #Definição da posição do espaço da HUD entre os membros do grupo.
  66.   #
  67.   #MEMBERS_SPACE = [Horizontal ,Vertical]
  68.   #
  69.   MEMBERS_SPACE = [136,0]
  70.   #Velocidade de animação do medidor de at, defina 0 se não quiser a animação.
  71.   AT_METER_FLOW_SPEED = 3
  72.   #Prioridade da Hud.
  73.   BATTLE_HUD_Z = 0
  74.   #Som quando o sistema AT estiver no maximo
  75.   SE_ACTIVE = "Decision2"
  76.   #Definição do valor de AT para ativar a ação.(Gauge Meter).
  77.   AT_GAUGE_METER = 5000
  78.   # Definição do tipo de duração (Contagem/formula) de um turno.
  79.   # Essa definição influência na ativação dos eventos de batalha.
  80.   # (BATTLE EVENTS)
  81.   #
  82.   # 0 - Duração de um turno é um valor fixo.
  83.   # 1 - Duração de um turno é multiplicado pela quantidade de batllers.
  84.   # 2 - Duração de um turno é baseado na média de agilidade dos battlers.
  85.   #
  86.   TURN_DURATION_TYPE = 1
  87.   # Definição de valor usado para calcular a duração de um turno.
  88.   TURN_DURATION = 60
  89.   # Definição da animação quando o battler usa habilidades de carregamento.
  90.   CAST_ANIMATION = 49
  91.   # Ativar a janela de LOG, deixe desativado se desejar uma batalha mais
  92.   # dinâmica.
  93.   WAIT_LOG_WINDOW = false
  94.   # Ativar a mensagem inicial com os nomes dos inimigos.
  95.   MESSAGE_ENEMY_APPEAR = false
  96.   # Definição da posição da janela de mensagem.
  97.   # 0 - Superior
  98.   # 1 - Centro
  99.   # 2 - Inferior  
  100.   MESSAGE_POSITION = 0
  101. end

  102. #==============================================================================
  103. # ■ Game_System
  104. #==============================================================================
  105. class Game_System
  106.   
  107.   attr_accessor :at_max
  108.   
  109.   #--------------------------------------------------------------------------
  110.   # ● Initialize
  111.   #--------------------------------------------------------------------------         
  112.   alias mog_at_system_initialize initialize
  113.   def initialize
  114.       @at_max = [[MOG_AT_SYSTEM::AT_GAUGE_METER, 999999].min, 100].max
  115.       mog_at_system_initialize
  116.   end
  117.   
  118. end

  119. #==============================================================================
  120. # ■ BattleManager
  121. #==============================================================================
  122. module BattleManager
  123.   
  124.   #--------------------------------------------------------------------------
  125.   # ● Battle Start
  126.   #--------------------------------------------------------------------------  
  127.   def self.battle_start
  128.       $game_system.battle_count += 1
  129.       $game_party.on_battle_start
  130.       $game_troop.on_battle_start
  131.       if MOG_AT_SYSTEM::MESSAGE_ENEMY_APPEAR
  132.          $game_troop.enemy_names.each do |name|
  133.          $game_message.add(sprintf(Vocab::Emerge, name))
  134.          end
  135.       end
  136.       if @preemptive
  137.          $game_message.add(sprintf(Vocab::Preemptive, $game_party.name))
  138.       elsif @surprise
  139.          $game_message.add(sprintf(Vocab::Surprise, $game_party.name))
  140.       end
  141.       wait_for_message
  142.   end
  143.   
  144.   #--------------------------------------------------------------------------
  145.   # ● Input Start
  146.   #--------------------------------------------------------------------------
  147.   def self.input_start_at(battler)
  148.       if @phase != :input
  149.          @phase = :input
  150.          battler.make_actions
  151.          clear_actor
  152.       end
  153.       return !@surprise && battler.inputable?
  154.   end

  155.   #--------------------------------------------------------------------------
  156.   # ● Turn Start
  157.   #--------------------------------------------------------------------------
  158.   def self.turn_start
  159.       @phase = :turn
  160.       clear_actor
  161.       make_action_orders
  162.   end  
  163.   
  164.   #--------------------------------------------------------------------------
  165.   # ● Preemtive Attack
  166.   #--------------------------------------------------------------------------  
  167.   def self.preemptive_attack
  168.       @preemptive
  169.   end  
  170.   
  171.   #--------------------------------------------------------------------------
  172.   # ● Suprise Attack
  173.   #--------------------------------------------------------------------------   
  174.   def self.surprise_attack
  175.       @surprise
  176.   end   
  177.   
  178. end  

  179. #==============================================================================
  180. # ■ Game Action
  181. #==============================================================================
  182. class Game_Action  

  183.   #--------------------------------------------------------------------------
  184.   # ● Prepare
  185.   #--------------------------------------------------------------------------            
  186.   alias mog_at_system_prepare prepare
  187.   def prepare
  188.       mog_at_system_prepare
  189.       set_cast_action
  190.   end
  191.   
  192.   #--------------------------------------------------------------------------
  193.   # ● Set Cast Action
  194.   #--------------------------------------------------------------------------               
  195.   def set_cast_action
  196.       return if forcing
  197.       if @item.object != nil and @item.object.speed != 0 and @subject.at_cast.empty?
  198.          @subject.at_cast = [@item.object,@item.object.speed.abs,@target_index]
  199.          @item.object = nil
  200.          @subject.animation_id = MOG_AT_SYSTEM::CAST_ANIMATION
  201.          @subject.at = 0
  202.          BattleManager.turn_end if @subject.auto_battle?
  203.       elsif [email protected]_cast.empty?
  204.          if @subject.at_cast[1] == 0
  205.             @item.object = @subject.at_cast[0]
  206.             @target_index = @subject.at_cast[2]            
  207.             @subject.at_cast.clear
  208.          else   
  209.             @item.object = nil
  210.          end
  211.       end  
  212.   end  
  213.   
  214. end


  215. #==============================================================================
  216. # ■ Game Battler Base
  217. #==============================================================================
  218. class Game_BattlerBase  

  219.   #--------------------------------------------------------------------------
  220.   # ● Inputable?
  221.   #--------------------------------------------------------------------------            
  222.   def inputable?
  223.       normal? && !auto_battle? && self.at == $game_system.at_max
  224.   end
  225.   
  226. end

  227. #==============================================================================
  228. # ■ Game_Battler
  229. #==============================================================================
  230. class Game_Battler < Game_BattlerBase
  231.   
  232.    attr_accessor :at
  233.    attr_accessor :at_cast
  234.    attr_accessor :at_turn_duration
  235.    
  236.   #--------------------------------------------------------------------------
  237.   # ● Initialize
  238.   #--------------------------------------------------------------------------      
  239.    alias mog_at_system_initialize initialize
  240.    def initialize
  241.        mog_at_system_initialize
  242.        @at = 0
  243.        @at_cast = []
  244.        @at_cast_selectable = true
  245.        @at_turn_duration = 0
  246.    end
  247.      
  248.   #--------------------------------------------------------------------------
  249.   # ● At
  250.   #--------------------------------------------------------------------------         
  251.    def at
  252.        n = at_active? ? $game_system.at_max : 0
  253.        return [[@at, n].min, 0].max
  254.    end  
  255.    
  256.   #--------------------------------------------------------------------------
  257.   # ● At Active
  258.   #--------------------------------------------------------------------------            
  259.    def at_active?
  260.        return false if restriction >= 4
  261.        return false if self.hp == 0
  262.        return true
  263.    end  
  264.    
  265.   #--------------------------------------------------------------------------
  266.   # ● Added New State
  267.   #--------------------------------------------------------------------------  
  268.   alias mog_at_system_add_new_state add_new_state
  269.   def add_new_state(state_id)
  270.       mog_at_system_add_new_state(state_id)
  271.       if restriction >= 4
  272.          self.at_cast.clear
  273.          self.at = 0
  274.       end   
  275.   end   
  276.   
  277. end

  278. #==============================================================================
  279. # ■ Game Enemy
  280. #==============================================================================
  281. class Game_Enemy < Game_Battler
  282.   
  283.   #--------------------------------------------------------------------------
  284.   # ● Tranform
  285.   #--------------------------------------------------------------------------  
  286.    alias mog_at_system_transform transform
  287.    def transform(enemy_id)
  288.        mog_at_system_transform(enemy_id)
  289.        self.at = 0
  290.        self.at_cast.clear
  291.    end
  292. end   

  293. if !MOG_AT_SYSTEM::WAIT_LOG_WINDOW
  294. #==============================================================================
  295. # ■ BattleManager
  296. #==============================================================================
  297. class Window_BattleLog < Window_Selectable

  298.   #--------------------------------------------------------------------------
  299.   # ● Refresh
  300.   #--------------------------------------------------------------------------   
  301.   def refresh
  302.   end  

  303.   #--------------------------------------------------------------------------
  304.   # ● Message Speed
  305.   #--------------------------------------------------------------------------   
  306.   def message_speed
  307.       return 5
  308.   end

  309. end
  310. end

  311. #==============================================================================
  312. # ■ Scene Battle
  313. #==============================================================================
  314. class Scene_Battle < Scene_Base
  315.   include MOG_AT_SYSTEM
  316.   
  317.   #--------------------------------------------------------------------------
  318.   # ● AT Wait
  319.   #--------------------------------------------------------------------------         
  320.   alias mog_at_system_start start
  321.   def start
  322.       reset_at_parameter  
  323.       mog_at_system_start
  324.   end  
  325.    
  326.   #--------------------------------------------------------------------------
  327.   # ● Battle Start
  328.   #--------------------------------------------------------------------------
  329.   def battle_start
  330.       BattleManager.battle_start
  331.       process_event
  332.       set_turn_duration
  333.   end
  334.    
  335.   #--------------------------------------------------------------------------
  336.   # ● Reset AT Parameter
  337.   #--------------------------------------------------------------------------  
  338.   def reset_at_parameter
  339.       return if @at_phase != nil
  340.       @at_phase = 0
  341.       n_at = $game_system.at_max * 40 / 100
  342.       p_at = $game_system.at_max * 90 / 100
  343.       s_at = 0
  344.       all_battle_members.each do |battler|
  345.           if BattleManager.preemptive_attack
  346.              battler.at = p_at if battler.is_a?(Game_Actor)
  347.              battler.at = s_at if battler.is_a?(Game_Enemy)
  348.           elsif BattleManager.surprise_attack   
  349.              battler.at = p_at if battler.is_a?(Game_Enemy)
  350.              battler.at = s_at if battler.is_a?(Game_Actor)
  351.           else   
  352.              battler.at = n_at
  353.           end
  354.           if battler.at >= $game_system.at_max
  355.              battler.at = $game_system.at_max - 1
  356.           end
  357.           battler.at = 0 if battler.at < 0  
  358.           battler.at_cast.clear
  359.         end
  360.   end

  361.   #--------------------------------------------------------------------------
  362.   # ● Set Turn Duration
  363.   #--------------------------------------------------------------------------
  364.   def set_turn_duration
  365.       max_battlers = all_battle_members.size > 0 ? all_battle_members.size : 1
  366.       case TURN_DURATION_TYPE
  367.         when 1
  368.            n  = TURN_DURATION * max_battlers
  369.         when 2
  370.            turn_sp = 0
  371.            all_battle_members.each do |battler|
  372.                turn_sp += battler.agi
  373.            end  
  374.            n = TURN_DURATION + (turn_sp / max_battlers)
  375.         else
  376.            n = TURN_DURATION
  377.       end
  378.       turn_time_max = [[n, 9999].min, 120].max
  379.       @turn_duration = [0, turn_time_max]
  380.       if @status_window != nil
  381.          @status_window.open
  382.       end   
  383.   end   
  384.   
  385.   #--------------------------------------------------------------------------
  386.   # ● Turn End
  387.   #--------------------------------------------------------------------------
  388.   def turn_end
  389.       @at_phase = 0
  390.       all_battle_members.each do |battler|
  391.          if battler.at >= $game_system.at_max
  392.             battler.at = 0
  393.             refresh_status
  394.             @log_window.display_auto_affected_status(battler)
  395.             @log_window.wait_and_clear
  396.          end
  397.       end
  398.       BattleManager.turn_end
  399.   end
  400.    
  401.   #--------------------------------------------------------------------------
  402.   # ● Update Turn Duration
  403.   #--------------------------------------------------------------------------            
  404.   def update_turn_duration
  405.       return if @turn_duration == nil or @turn_duration[0] == nil
  406.       @turn_duration[0] += 1
  407.       if @turn_duration[0] >= @turn_duration[1]
  408.          @turn_duration[0] = 0
  409.          $game_troop.increase_turn
  410.          process_event
  411.          check_states_effect_turn
  412.       end  
  413.   end
  414.   
  415.   #--------------------------------------------------------------------------
  416.   # ● Check States Effect Turn
  417.   #--------------------------------------------------------------------------               
  418.   def check_states_effect_turn
  419.       all_battle_members.each do |battler|  
  420.           battler.on_turn_end if battler.restriction >= 4
  421.       end  
  422.   end  
  423.   
  424.   #--------------------------------------------------------------------------
  425.   # ● Update AT System
  426.   #--------------------------------------------------------------------------           
  427.   def update_at_system      
  428.       reset_at_parameter if @at_phase == nil
  429.       set_turn_duration if @turn_duration == nil
  430.       return if !can_update_at?
  431.       update_turn_duration
  432.       all_battle_members.each do |battler|
  433.           update_battler_turn_duration(battler)
  434.           if !battler.at_cast.empty?
  435.              battler.at_cast[1] -= 1
  436.              if battler.at_cast[1] <= 0
  437.                 execute_at_cast(battler)
  438.                 break
  439.              end
  440.           else
  441.              battler.at += battler.agi
  442.           end   
  443.           if battler.at >= $game_system.at_max
  444.              battler.on_turn_end
  445.              update_at_actor(battler)
  446.              update_at_enemy(battler)
  447.              battler.current_action.prepare if battler.current_action
  448.              if battler.at_cast.empty?
  449.                 @at_phase = 1
  450.                 turn_start if battler.is_a?(Game_Enemy)
  451.              end            
  452.              break
  453.           end   
  454.       end  
  455.   end
  456.    
  457.   #--------------------------------------------------------------------------
  458.   # ● Update Battler Turn Duration
  459.   #--------------------------------------------------------------------------            
  460.   def update_battler_turn_duration(battler)
  461.       if battler.restriction >= 4
  462.          battler.at_turn_duration += 1
  463.          if battler.at_turn_duration >= $game_system.at_max
  464.             battler.on_turn_end
  465.             battler.at_turn_duration = 0
  466.          end   
  467.       else   
  468.          battler.at_turn_duration = 0
  469.       end  
  470.   end  
  471.   
  472.   #--------------------------------------------------------------------------
  473.   # ● Execute AT CAST
  474.   #--------------------------------------------------------------------------            
  475.   def execute_at_cast(battler)
  476.       @subject = battler
  477.       battler.make_actions  
  478.       turn_start
  479.   end  
  480.   
  481.   #--------------------------------------------------------------------------
  482.   # ● Update AT Actor
  483.   #--------------------------------------------------------------------------            
  484.   def update_at_actor(battler)   
  485.       return if !battler.is_a?(Game_Actor)
  486.       Audio.se_play("Audio/SE/" + SE_ACTIVE,100,100)  
  487.       start_party_command_selection_at(battler)
  488.   end
  489.   
  490.   #--------------------------------------------------------------------------
  491.   # ● Update AT Enemy
  492.   #--------------------------------------------------------------------------            
  493.   def update_at_enemy(battler)   
  494.       return if !battler.is_a?(Game_Enemy)
  495.       battler.make_actions
  496.   end   
  497.   
  498.   #--------------------------------------------------------------------------
  499.   # ● Can Update AT
  500.   #--------------------------------------------------------------------------            
  501.   def can_update_at?
  502.       return false if $game_troop.interpreter.running?
  503.       return false if BattleManager.action_forced?
  504.       return false if @at_phase != 0
  505.       return false if $game_message.visible
  506.       return false if BattleManager.in_turn?
  507.       return true
  508.   end   
  509.   
  510.   #--------------------------------------------------------------------------
  511.   # ● Star Party Command Selection at
  512.   #--------------------------------------------------------------------------
  513.   def start_party_command_selection_at(battler)
  514.       unless scene_changing?
  515.          refresh_status
  516.          @status_window.unselect
  517.          @status_window.open
  518.          if BattleManager.input_start_at(battler)
  519.             @actor_command_window.close
  520.             next_command
  521.          else
  522.            turn_start
  523.          end
  524.       end
  525.   end  
  526.   
  527.   #--------------------------------------------------------------------------
  528.   # ● Update Basic
  529.   #--------------------------------------------------------------------------        
  530.   alias mog_at_system_update_basic update_basic
  531.   def update_basic
  532.       mog_at_system_update_basic
  533.       update_at_system
  534.       update_party_command
  535.       $game_message.position = MESSAGE_POSITION
  536.   end
  537.   
  538.   #--------------------------------------------------------------------------
  539.   # ● Update Party Command
  540.   #--------------------------------------------------------------------------      
  541.   def update_party_command
  542.       return if !@party_command_window.active
  543.       return if !@actor_command_window.visible
  544.       return if $game_message.visible
  545.       if Input.trigger?(:B)
  546.          next_command
  547.          Sound.play_cancel
  548.          @party_command_window.active = false
  549.       end  
  550.   end
  551.      
  552. end

  553. #==============================================================================
  554. # ■ AT Meter
  555. #==============================================================================
  556. class AT_Meter
  557.   
  558.   include MOG_AT_SYSTEM
  559.   
  560.   #--------------------------------------------------------------------------
  561.   # ● Initialize
  562.   #--------------------------------------------------------------------------   
  563.   def initialize(actor)
  564.       dispose
  565.       [url=home.php?mod=space&uid=95897]@actor[/url] = actor
  566.       if HUD_POSITION_TYPE == 1 and @actor.use_sprite?
  567.          @x = HUD_POSITION[0] +  @actor.screen_x rescue 0
  568.          @y = HUD_POSITION[1] +  @actor.screnn_y rescue 0
  569.       else   
  570.          @x = HUD_POSITION[0] + (MEMBERS_SPACE[0] * @actor.index)
  571.          @y = HUD_POSITION[1] + (MEMBERS_SPACE[1] * @actor.index)        
  572.       end
  573.       pre_cache
  574.       create_layout
  575.       create_at_meter
  576.   end
  577.   
  578.   #--------------------------------------------------------------------------
  579.   # ● Pre Cache
  580.   #--------------------------------------------------------------------------      
  581.   def pre_cache
  582.       @meter = Cache.system("Battle_AT_Meter")   
  583.       @meter_cw = @meter.width / 3
  584.       @meter_ch = @meter.height / 3
  585.   end
  586.   
  587.   #--------------------------------------------------------------------------
  588.   # ● Create Layout
  589.   #--------------------------------------------------------------------------      
  590.   def create_layout
  591.       @layout = Sprite.new
  592.       @layout.bitmap = Cache.system("Battle_AT_Layout")
  593.       @layout.z = BATTLE_HUD_Z
  594.       @layout.x = @x
  595.       @layout.y = @y
  596.   end
  597.   
  598.   #--------------------------------------------------------------------------
  599.   # ● Create AT Meter
  600.   #--------------------------------------------------------------------------      
  601.   def create_at_meter
  602.       @at_meter = Sprite.new
  603.       @at_meter.bitmap = Bitmap.new(@meter_cw,@meter_ch)
  604.       @at_meter.z =  BATTLE_HUD_Z + 50
  605.       @at_meter.x = @x + AT_METER_POSITION[0]
  606.       @at_meter.y = @y + AT_METER_POSITION[1]
  607.       @at_flow = rand(@meter_cw * 2)
  608.       at_flow_update
  609.   end  
  610.   
  611.   #--------------------------------------------------------------------------
  612.   # ● Dispose
  613.   #--------------------------------------------------------------------------   
  614.   def dispose
  615.       return if @layout == nil
  616.       @layout.bitmap.dispose
  617.       @layout.dispose
  618.       @layout = nil
  619.       @at_meter.bitmap.dispose
  620.       @at_meter.dispose
  621.   end  
  622.   
  623.   #--------------------------------------------------------------------------
  624.   # ● Update
  625.   #--------------------------------------------------------------------------  
  626.   def update
  627.       return if @layout == nil
  628.       at_position
  629.       at_flow_update
  630.   end
  631.   
  632.   #--------------------------------------------------------------------------
  633.   # ● Update
  634.   #--------------------------------------------------------------------------   
  635.   def at_position
  636.       return unless HUD_POSITION_TYPE == 1 and @actor.use_sprite?
  637.       @x = HUD_POSITION[0] +  @actor.screen_x rescue 0
  638.       @y = HUD_POSITION[1] +  @actor.screnn_y rescue 0
  639.       @layout.x = @x
  640.       @layout.y = @y
  641.       @at_meter.x = @x + AT_METER_POSITION[0]
  642.       @at_meter.y = @y + AT_METER_POSITION[1]
  643.   end
  644.    
  645.   #--------------------------------------------------------------------------
  646.   # ● AT Flow Update
  647.   #--------------------------------------------------------------------------
  648.   def at_flow_update
  649.       @at_meter.bitmap.clear
  650.       if [email protected]_cast.empty?
  651.          max_cast = @actor.at_cast[0].speed.abs != 0 ? @actor.at_cast[0].speed.abs : 1
  652.          at_width = @meter_cw * @actor.at_cast[1] / max_cast
  653.          ch = @meter_ch * 2
  654.       else
  655.          at_width = @meter_cw * @actor.at / $game_system.at_max
  656.          ch = @actor.at < $game_system.at_max ? 0 : @meter_ch
  657.       end  
  658.       src_rect = Rect.new(@at_flow, ch,at_width, @meter_ch)
  659.       @at_meter.bitmap.blt(0,0, @meter, src_rect)
  660.       @at_flow += AT_METER_FLOW_SPEED
  661.       @at_flow = 0 if @at_flow >=  @meter_cw * 2      
  662.   end   
  663.   
  664. end  

  665. #==============================================================================
  666. # ■ Spriteset Battle
  667. #==============================================================================
  668. class Spriteset_Battle
  669.   
  670.   #--------------------------------------------------------------------------
  671.   # ● Initialize
  672.   #--------------------------------------------------------------------------           
  673.   alias mog_at_system_initialize initialize
  674.   def initialize
  675.       mog_at_system_initialize
  676.       create_at_meter
  677.   end  
  678.   
  679.   #--------------------------------------------------------------------------
  680.   # ● Create AT Meter
  681.   #--------------------------------------------------------------------------            
  682.   def create_at_meter
  683.       dispose_at_meter
  684.       @at_meter = []
  685.       index = 0
  686.       for i in $game_party.members
  687.           @at_meter.push(AT_Meter.new(i))
  688.           index += 1
  689.           break if index >= $game_party.max_battle_members
  690.       end      
  691.   end  
  692.   
  693.   #--------------------------------------------------------------------------
  694.   # ● Dispose
  695.   #--------------------------------------------------------------------------      
  696.   alias mog_at_system_dispose dispose
  697.   def dispose
  698.       mog_at_system_dispose
  699.       dispose_at_meter
  700.   end
  701.    
  702.   #--------------------------------------------------------------------------
  703.   # ● Dispose AT Meter
  704.   #--------------------------------------------------------------------------        
  705.   def dispose_at_meter
  706.       return if @at_meter == nil
  707.       @at_meter.each {|sprite| sprite.dispose }
  708.       @at_meter.clear
  709.       @at_meter = nil
  710.   end  
  711.   
  712.   #--------------------------------------------------------------------------
  713.   # ● Update
  714.   #--------------------------------------------------------------------------        
  715.   alias mog_at_system_update update
  716.   def update
  717.       mog_at_system_update
  718.       update_at_meter
  719.   end  
  720.   
  721.   #--------------------------------------------------------------------------
  722.   # ● Update AT Meter
  723.   #--------------------------------------------------------------------------         
  724.   def update_at_meter
  725.       return if @at_meter == nil
  726.       @at_meter.each {|sprite| sprite.update }
  727.   end  
  728.   
  729. end

  730. $mog_rgss3_at_system = true
复制代码

Lv2.观梦者

梦石
0
星屑
293
在线时间
398 小时
注册时间
2011-5-20
帖子
128
2
 楼主| 发表于 2013-7-20 12:32:48 | 只看该作者
刚刚自己解决了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2013-3-19
帖子
44
3
发表于 2013-7-20 13:18:31 | 只看该作者
好帅!!!最想用的就是这个BOSS血条的脚本了,可惜不会弄

点评

要血調http://www.atelier-rgss.com/RGSS/RGSS_VX_ACE.html裡面有  发表于 2013-7-20 21:42
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
41 小时
注册时间
2013-3-19
帖子
44
4
发表于 2013-7-20 21:41:21 | 只看该作者
xq12121 发表于 2013-7-20 13:18
好帅!!!最想用的就是这个BOSS血条的脚本了,可惜不会弄

你要血調的??
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
38 小时
注册时间
2013-3-19
帖子
44
5
发表于 2013-7-21 08:57:06 | 只看该作者
eric4514 发表于 2013-7-20 21:41
你要血調的??

谢谢,我知道这个网站,血条的脚本我也有,不过那个BOSS血条的脚本不会弄(只会复制粘贴的纯小白
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
290
在线时间
3599 小时
注册时间
2012-2-29
帖子
3385

黄金编剧

6
发表于 2013-7-21 12:55:05 | 只看该作者
不知LZ是否得到了授权把月夜响荡曲的素材拿来使用

点评

这不是月夜响的素材.....  发表于 2013-7-21 13:36
简化 高效 简约 便捷,为用户体验而思考。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
290
在线时间
3599 小时
注册时间
2012-2-29
帖子
3385

黄金编剧

7
发表于 2013-7-21 13:47:09 | 只看该作者

对不起,这张图是月夜响荡曲的素材,而它的右上角和你的战斗背景完全重合。

点评

好吧我不知道,我是从鬼畜幻想的素材里拿来的....  发表于 2013-7-21 14:15
简化 高效 简约 便捷,为用户体验而思考。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-18 06:20

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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