我海市蜃楼 发表于 2010-10-6 10:06:03

请高手帮帮忙啊!!

请问有没有那位高手可以给这个脚本加上一个开关啊?
[
#==============================================================================
# ■ Spriteset_Map
#------------------------------------------------------------------------------
# 这个教学脚本可以在制作时候将窗户外面的部分填黑,营造室内的效果。实际制作方
#法是根据RMVX的“区域”功能配合脚本来实现的
#
#==============================================================================
class Spriteset_Map
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
alias old_cv create_viewports
def create_viewports
    old_cv
    @fog_rects = []
    for area in $data_areas.values
      next if area.map_id != $game_map.map_id or area.name != "突出主景"
      @fog_rects.push(area.rect)
    end
    unless @fog_rects.empty?
      @viewport4 = Viewport.new(0, 0, 544, 416)
      @viewport4.z = 150
      @fog_sprite = Sprite.new(@viewport4)
      w,h = $game_map.width * 32, $game_map.height * 32
      @fog_sprite.bitmap = Bitmap.new(w, h)
      @fog_sprite.bitmap.fill_rect(0,0,w,h,Color.new(0,0,80,200))
      for rect in @fog_rects
      @fog_sprite.bitmap.clear_rect(Rect.new(rect.x * 32, rect.y * 32, rect.width * 32, rect.height * 32))
      end
    end
end
#--------------------------------------------------------------------------
# ● ビューポートの解放
#--------------------------------------------------------------------------
alias old_dv dispose_viewports
def dispose_viewports
    old_dv
    unless @fog_rects.empty?
      @viewport4.dispose
      @fog_sprite.bitmap.dispose
      @fog_sprite.dispose
    end
end
#--------------------------------------------------------------------------
# ● タイルマップの更新
#--------------------------------------------------------------------------
alias old_ut update_tilemap
def update_tilemap
    old_ut
    unless @fog_rects.empty?
      @fog_sprite.ox = $game_map.display_x / 8
      @fog_sprite.oy = $game_map.display_y / 8
      @fog_sprite.update
    end
end
#--------------------------------------------------------------------------
# ● ビューポートの更新
#--------------------------------------------------------------------------
alias old_uv update_viewports
def update_viewports
    old_uv
    @viewport4.update unless @fog_rects.empty?
end
end

我海市蜃楼 发表于 2010-10-7 20:54:36

—————---/′ ˉ/)
—————--/—-/
—————-/—-/
———--/′ˉ/'--'/′ˉ`?_
———-/'/--/—-/—--/¨ˉ\\
——--('(———- ˉ~/'--')
———\\————-'—--/ 国际通用手势...........韩国棒子
————\\———--(
————-\\———- ..............................

secondsen 发表于 2010-10-8 08:32:14

unless @fog_rects.empty?
      @fog_sprite.ox = $game_map.display_x / 8
      @fog_sprite.oy = $game_map.display_y / 8
      @fog_sprite.update
    end


可以变成

if $secondsen
unless @fog_rects.empty?
      @fog_sprite.ox = $game_map.display_x / 8
      @fog_sprite.oy = $game_map.display_y / 8
      @fog_sprite.update
    end
end

$secondsen是开关。。你自己改成游戏中的开关变量吧真的时候 开启你说的那个功能

我海市蜃楼 发表于 2010-10-9 20:17:06

开启的时候是没什么问题了,可是当关闭的时候就会出现问题啊!!

secondsen 发表于 2010-10-10 00:10:09

应该没问题的啊。。。求工程

我海市蜃楼 发表于 2010-10-10 14:05:29

工程在此
页: [1]
查看完整版本: 请高手帮帮忙啊!!