查看: 1512|回复: 3

请教

  [复制链接]
梦石
0
星屑
60
在线时间
1 小时
注册时间
2006-3-26
回帖
83
发表于 2007-7-7 20:19:09 | 显示全部楼层 |阅读模式

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

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

×
有没有办法在战斗时更改角色战斗图透明度
版务信息:本贴由楼主自主结贴~
梦石
0
星屑
60
在线时间
1 小时
注册时间
2006-3-26
回帖
83
发表于 2007-7-7 20:19:09 | 显示全部楼层 |阅读模式

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

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

×
有没有办法在战斗时更改角色战斗图透明度
版务信息:本贴由楼主自主结贴~

华音阁主

梦石
0
星屑
61
在线时间
634 小时
注册时间
2006-7-14
回帖
3310

贵宾

发表于 2007-7-7 21:46:57 | 显示全部楼层
直接插入main前的脚本如下:

module RPG
class Sprite < ::Sprite
   def animation(animation, hit)
     dispose_animation
     @_animation = animation
     return if @_animation == nil
     @_animation_hit = hit
     @_animation_duration = @_animation.frame_max
     animation_name = @_animation.animation_name
     animation_hue = @_animation.animation_hue
     bitmap = RPG::Cache.animation(animation_name, animation_hue)
     if @@_reference_count.include?(bitmap)
       @@_reference_count[bitmap] += 1
     else
       @@_reference_count[bitmap] = 1
     end
     @_animation_sprites = []
     if @_animation.position != 3 or not @@_animations.include?(animation)
       for i in 0..15
         sprite = ::Sprite.new(self.viewport)
         sprite.bitmap = bitmap
         sprite.visible = false
         @_animation_sprites.push(sprite)
       end
       unless @@_animations.include?(animation)
         @@_animations.push(animation)
       end
     end
     update_animation
   end
   def update_animation
     if @_animation_duration > 0
       self.opacity = 255
       frame_index = @_animation.frame_max - @_animation_duration
       cell_data = @_animation.frames[frame_index].cell_data
       position = @_animation.position
       animation_set_sprites(@_animation_sprites, cell_data, position)
       for timing in @_animation.timings
         if timing.frame == frame_index
           animation_process_timing(timing, @_animation_hit)
         end
       end
     else
       self.opacity = 220
       dispose_animation
     end
   end
end
end
________________________________________

然后在Sprite_Battler找到这段
if @battler.is_a?(Game_Actor) and @battler_visible
     # 不是主状态的时候稍稍降低点透明度
     if $game_temp.battle_main_phase
       self.opacity += 3 if self.opacity < 255
     else
       self.opacity -= 3 if self.opacity > 207
     end
   end

改为:

if @battler_visible
     if self.opacity >125
       self.opacity -= 5
     end
   end

就OK了。if self.opacity >125的125这个数字是透明度,可以自己改。
恩,这个脚本,好想黑暗圣剑里也用到了,LZ可以试试
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
此处空空如也
回复

使用道具 举报

梦石
0
星屑
60
在线时间
1 小时
注册时间
2006-3-26
回帖
83
 楼主| 发表于 2007-7-7 23:04:23 | 显示全部楼层
哦
谢谢
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部