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

Project1

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

[已经解决] VA的sideview配套的指针脚本

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
63 小时
注册时间
2013-10-4
帖子
7
跳转到指定楼层
1
发表于 2013-12-13 17:46:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 一杯羹 于 2013-12-15 03:03 编辑

请问一下我用了这各站斗指针脚本  
http://rpg.blue/forum.php?mod=viewthread&tid=339834&extra=page%3D2%26filter%3Dtypeid%26typeid%3D479%26orderby%3Ddateline%26typeid%3D479%26orderby%3Ddateline
为什么战斗的时候  当指针选在敌人的时候  就会发出连续移动的音效    重点是我没有移动指标   
但声音就是持续发出移动的声音     而且不会停止   声音持续都在   除非我按取消选取敌人   才会停止音效
我以为是脚本有冲突   所以我就试了从开一个新工程    里面只放这各脚本  结果还是一样
可以帮我看看吗

RUBY 代码复制
  1. #战斗时用箭头指定敌人
  2. #==============================================================================
  3. # +++ MOG - Battle Cursor (1.0) +++
  4. #==============================================================================
  5. # By Moghunter
  6. # [url]http://www.atelier-rgss.com/[/url]
  7. #==============================================================================
  8. # Sistema de cursor animado de batalha nos sprites dos battlers.
  9. #==============================================================================
  10. # Arquivo necessário. (Graphics/System)
  11. #
  12. # Battle_Cursor.png
  13. #
  14. #==============================================================================
  15.  
  16. #==============================================================================
  17. # ■ CURSOR SETTING
  18. #==============================================================================
  19. module MOG_BATTLE_CURSOR
  20.   #Definição da posição do cursor em relação ao alvo.
  21.   CURSOR_POSITION = [-20, -16]
  22.   #Definição da posição do nome do alvo.
  23.   CURSOR_NAME_POSITION = [-20, 35]
  24.   #Ativar efeito deslizar.
  25.   CURSOR_SLIDE_EFFECT = true
  26.   #Ativar animação de levitação.
  27.   CURSOR_FLOAT_EFFECT = true
  28.   #Definição da prioridade do cursor.
  29.   CURSOR_Z = 0
  30. end
  31.  
  32. #==============================================================================
  33. # ■ Game Temp
  34. #==============================================================================
  35. class Game_Temp
  36.  
  37.   attr_accessor :battle_cursor
  38.  
  39.   #--------------------------------------------------------------------------
  40.   # ● Initialize
  41.   #--------------------------------------------------------------------------  
  42.   alias mog_battle_cursor_initialize initialize
  43.   def initialize
  44.       @battle_cursor = [0,0,false,""]
  45.       mog_battle_cursor_initialize
  46.   end  
  47.  
  48. end
  49.  
  50. #==============================================================================
  51. # ■ Spriteset Battle Cursor
  52. #==============================================================================
  53. class Sprite_Battle_Cursor < Sprite
  54.   include MOG_BATTLE_CURSOR
  55.  
  56.   #--------------------------------------------------------------------------
  57.   # ● Initialize
  58.   #--------------------------------------------------------------------------        
  59.   def initialize(viewport = nil)
  60.       super(viewport)
  61.       $game_temp.battle_cursor = [0,0,false,""]
  62.       self.bitmap = Cache.system("Battle_Cursor")
  63.       self.visible = $game_temp.battle_cursor[2]
  64.       self.z = CURSOR_Z
  65.       self.z = 10 if $mog_rgss3_battle_hud != nil
  66.       @cursor_name = Sprite.new
  67.       @cursor_name.bitmap = Bitmap.new(120,32)
  68.       @cursor_name.z = self.z + 1
  69.       @cursor_name.bitmap.font.size = 16
  70.       @cursor_name_enemy = $game_temp.battle_cursor[3]
  71.       @cursor_name_position = [CURSOR_NAME_POSITION[0] ,CURSOR_NAME_POSITION[1]]
  72.       @cursor_float = [0,0]
  73.       refresh_cursor_name
  74.   end
  75.  
  76.   #--------------------------------------------------------------------------
  77.   # ● Dispose Sprite
  78.   #--------------------------------------------------------------------------         
  79.   def dispose
  80.       super
  81.       dispose_sprite_cursor
  82.   end
  83.  
  84.   #--------------------------------------------------------------------------
  85.   # ● Dispose Sprite Cursor
  86.   #--------------------------------------------------------------------------            
  87.   def dispose_sprite_cursor
  88.       if @cursor_name != nil
  89.          @cursor_name.bitmap.dispose
  90.          @cursor_name.dispose
  91.       end
  92.       self.bitmap.dispose
  93.   end
  94.  
  95.   #--------------------------------------------------------------------------
  96.   # ● Refresh Cursor Name
  97.   #--------------------------------------------------------------------------              
  98.   def refresh_cursor_name
  99.       @cursor_name_enemy = $game_temp.battle_cursor[3]
  100.       @cursor_name.bitmap.clear
  101.       @cursor_name.bitmap.draw_text(0,0,120,32,@cursor_name_enemy.to_s,1)
  102.   end
  103.  
  104.   #--------------------------------------------------------------------------
  105.   # ● Update
  106.   #--------------------------------------------------------------------------            
  107.   def update
  108.       super
  109.       update_sprite_cursor
  110.   end
  111.  
  112.   #--------------------------------------------------------------------------
  113.   # ● Update Sprite Cursor
  114.   #--------------------------------------------------------------------------              
  115.   def update_sprite_cursor
  116.       update_visible
  117.       update_cursor_float_effect
  118.       execute_move(0,self.x,$game_temp.battle_cursor[0])
  119.       execute_move(1,self.y,$game_temp.battle_cursor[1] + @cursor_float[1])
  120.       update_sprite_name
  121.   end
  122.  
  123.   #--------------------------------------------------------------------------
  124.   # ● Update Visible
  125.   #--------------------------------------------------------------------------               
  126.   def update_visible
  127.       self.visible = $game_temp.battle_cursor[2]
  128.       if !self.visible
  129.          self.x = -64
  130.          self.y = -64
  131.       end  
  132.   end  
  133.  
  134.   #--------------------------------------------------------------------------
  135.   # ● Update Sprite Name
  136.   #--------------------------------------------------------------------------               
  137.   def update_sprite_name
  138.       return if @cursor_name == nil
  139.       refresh_cursor_name  if @cursor_name_enemy != $game_temp.battle_cursor[3]
  140.       @cursor_name.x = self.x + @cursor_name_position[0]
  141.       @cursor_name.y = self.y + @cursor_name_position[1]
  142.       @cursor_name.opacity = self.opacity
  143.       @cursor_name.visible = self.visible
  144.   end  
  145.  
  146.   #--------------------------------------------------------------------------
  147.   # ● Update Cursor Float Effect
  148.   #--------------------------------------------------------------------------              
  149.   def update_cursor_float_effect
  150.       return if !CURSOR_FLOAT_EFFECT
  151.       @cursor_float[0] += 1
  152.       case @cursor_float[0]
  153.         when 0..20
  154.           @cursor_float[1] += 1
  155.         when 21..40
  156.           @cursor_float[1]  -= 1
  157.         else
  158.           @cursor_float[0] = 0
  159.           @cursor_float[1] = 0
  160.       end        
  161.   end  
  162.  
  163.   #--------------------------------------------------------------------------
  164.   # ● Execute Move
  165.   #--------------------------------------------------------------------------      
  166.   def execute_move(type,cp,np)
  167.       sp = 5 + ((cp - np).abs / 5)
  168.       if cp > np
  169.          cp -= sp
  170.          cp = np if cp < np
  171.       elsif cp < np
  172.          cp += sp
  173.          cp = np if cp > np
  174.       end     
  175.       self.x = cp if type == 0
  176.       self.y = cp if type == 1
  177.   end      
  178.  
  179. end
  180.  
  181. #==============================================================================
  182. # ■ Spriteset Battle
  183. #==============================================================================
  184. class Spriteset_Battle
  185.  
  186.   #--------------------------------------------------------------------------
  187.   # ● Initialize
  188.   #--------------------------------------------------------------------------      
  189.   alias mog_battle_cursor_initialize initialize
  190.   def initialize
  191.       mog_battle_cursor_initialize
  192.       create_cursor
  193.   end
  194.  
  195.   #--------------------------------------------------------------------------
  196.   # ● Dispose
  197.   #--------------------------------------------------------------------------      
  198.   alias mog_battle_cursor_dispose dispose
  199.   def dispose
  200.       mog_battle_cursor_dispose
  201.       dispose_cursor
  202.   end
  203.  
  204.   #--------------------------------------------------------------------------
  205.   # ● Update
  206.   #--------------------------------------------------------------------------         
  207.   alias mog_battle_cursor_update update
  208.   def update
  209.       mog_battle_cursor_update
  210.       update_battle_cursor
  211.   end  
  212.  
  213.   #--------------------------------------------------------------------------
  214.   # ● Create_Cursor
  215.   #--------------------------------------------------------------------------        
  216.   def create_cursor
  217.       return if @battle_cursor != nil
  218.       @battle_cursor = Sprite_Battle_Cursor.new      
  219.   end
  220.  
  221.   #--------------------------------------------------------------------------
  222.   # ● Dispose Cursor
  223.   #--------------------------------------------------------------------------        
  224.   def dispose_cursor
  225.       return if @battle_cursor == nil
  226.       @battle_cursor.dispose
  227.   end  
  228.  
  229.   #--------------------------------------------------------------------------
  230.   # ● Update Battle Cursor
  231.   #--------------------------------------------------------------------------         
  232.   def update_battle_cursor
  233.       return if @battle_cursor == nil
  234.       @battle_cursor.update      
  235.   end
  236.  
  237. end
  238.  
  239. #==============================================================================
  240. # ■ Battle Cursor Index
  241. #==============================================================================
  242. module Battle_Cursor_index
  243.   include MOG_BATTLE_CURSOR
  244.   #--------------------------------------------------------------------------
  245.   # ● Check Index Limit
  246.   #--------------------------------------------------------------------------      
  247.   def check_index_limit
  248.       self.index = 0 if self.index >= item_max
  249.       self.index = (item_max - 1) if self.index < 0
  250.   end      
  251.  
  252.   #--------------------------------------------------------------------------
  253.   # ● Set Cursor Position Enemy
  254.   #--------------------------------------------------------------------------   
  255.   def set_cursor_position_enemy
  256.       return if !self.active
  257.       $game_temp.battle_cursor[0] = $game_troop.alive_members[self.index].screen_x + CURSOR_POSITION[0] rescue nil
  258.       $game_temp.battle_cursor[1] = $game_troop.alive_members[self.index].screen_y + CURSOR_POSITION[1] rescue nil
  259.       $game_temp.battle_cursor[3] = $game_troop.alive_members[self.index].name rescue nil
  260.       $game_temp.battle_cursor = [0,0,false,0] if $game_temp.battle_cursor[0] == nil
  261.   end
  262.  
  263.   #--------------------------------------------------------------------------
  264.   # ● Set Cursor Position Actor
  265.   #--------------------------------------------------------------------------   
  266.   def set_cursor_position_actor
  267.       return if !self.active
  268.       $game_temp.battle_cursor[0] = $game_party.members[self.index].screen_x + CURSOR_POSITION[0] rescue nil
  269.       $game_temp.battle_cursor[1] = $game_party.members[self.index].screen_y + CURSOR_POSITION[1] rescue nil
  270.       $game_temp.battle_cursor[3] = $game_party.members[self.index].name rescue nil
  271.       $game_temp.battle_cursor = [0,0,false,0] if $game_temp.battle_cursor[0] == nil
  272.   end  
  273.  
  274.   #--------------------------------------------------------------------------
  275.   # ● Process Cursor Move
  276.   #--------------------------------------------------------------------------
  277.   def process_cursor_move
  278.       return unless cursor_movable?
  279.       last_index = @index
  280.       cursor_move_index(+1) if Input.repeat?(:DOWN)
  281.       cursor_move_index(-1) if Input.repeat?(:UP)
  282.       cursor_move_index(+1) if Input.repeat?(:RIGHT)
  283.       cursor_move_index(-1) if Input.repeat?(:LEFT)
  284.       if @Index= last_index
  285.          Sound.play_cursor
  286.       end
  287.   end
  288.  
  289.   #--------------------------------------------------------------------------
  290.   # ● Process Cursor Move Index
  291.   #--------------------------------------------------------------------------  
  292.   def cursor_move_index(value = 0)
  293.       self.index += value
  294.       check_index_limit
  295.   end
  296.  
  297. end
  298.  
  299. #==============================================================================
  300. # ■ Window_BattleActor
  301. #==============================================================================
  302. class Window_BattleActor < Window_BattleStatus
  303.   include Battle_Cursor_index
  304.  
  305.   #--------------------------------------------------------------------------
  306.   # ● Update
  307.   #--------------------------------------------------------------------------  
  308.   def update
  309.       super
  310.       set_cursor_position_actor
  311.   end  
  312.  
  313.   #--------------------------------------------------------------------------
  314.   # ● Show
  315.   #--------------------------------------------------------------------------
  316.   alias mog_battle_cursor_show show
  317.   def show
  318.       if @info_viewport
  319.          set_cursor_position_actor
  320.          $game_temp.battle_cursor[2] = true
  321.       end
  322.       mog_battle_cursor_show
  323.   end
  324.  
  325.   #--------------------------------------------------------------------------
  326.   # ● Hide
  327.   #--------------------------------------------------------------------------
  328.   alias mog_battle_cursor_hide hide
  329.   def hide
  330.       if @info_viewport
  331.           $game_temp.battle_cursor[2] = false
  332.       end
  333.       mog_battle_cursor_hide
  334.   end  
  335.  
  336. end
  337.  
  338. #==============================================================================
  339. # ■ Window_BattleEnemy
  340. #==============================================================================
  341. class Window_BattleEnemy < Window_Selectable
  342.   include Battle_Cursor_index
  343.  
  344.   #--------------------------------------------------------------------------
  345.   # ● Update
  346.   #--------------------------------------------------------------------------  
  347.   def update
  348.       super
  349.       set_cursor_position_enemy
  350.   end
  351.  
  352.   #--------------------------------------------------------------------------
  353.   # ● Show
  354.   #--------------------------------------------------------------------------
  355.   alias mog_battle_cursor_show show
  356.   def show
  357.       if @info_viewport
  358.          set_cursor_position_enemy
  359.          $game_temp.battle_cursor[2] = true
  360.       end
  361.       mog_battle_cursor_show
  362.   end
  363.  
  364.   #--------------------------------------------------------------------------
  365.   # ● Hide
  366.   #--------------------------------------------------------------------------
  367.   alias mog_battle_cursor_hide hide
  368.   def hide
  369.       if @info_viewport
  370.           $game_temp.battle_cursor[2] = false
  371.       end
  372.       mog_battle_cursor_hide
  373.   end  
  374.  
  375. end
  376.  
  377. $mog_rgss3_battle_cursor = true
  
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2024-11-17 02:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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