查看: 1781|回复: 3

[已经过期] 屏幕框变大后双远景铺不满

[复制链接]
梦石
0
星屑
227
在线时间
82 小时
注册时间
2011-12-26
回帖
6
发表于 2013-10-4 13:44:23 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 as3517 于 2013-10-4 13:47 编辑

[pre lang="ruby" line="1"]#==============================================================================

# 本脚本来自www.66rpg.com,使用前请参考制作录像

#==============================================================================

# ■ Spriteset_Map

#------------------------------------------------------------------------------

#  处理地图画面活动块和元件的类。本类在

# Scene_Map 类的内部使用。

#==============================================================================


class Spriteset_Map

  #--------------------------------------------------------------------------

  # ● 初始化对像

  #--------------------------------------------------------------------------

  def initialize

    # 生成显示端口

    @viewport1 = Viewport.new(0, 0, 854, 480)

    @viewport2 = Viewport.new(0, 0, 854, 480)

    @viewport3 = Viewport.new(0, 0, 854, 480)

    @viewport2.z = 200

    @viewport3.z = 5000

    # 生成元件地图

    @tilemap = Tilemap.new(@viewport1)

    @tilemap.tileset = RPG::Cache.tileset($game_map.tileset_name)

    for i in 0..6

      autotile_name = $game_map.autotile_names

      @tilemap.autotiles = RPG::Cache.autotile(autotile_name)

    end

    @tilemap.map_data = $game_map.data

    @tilemap.priorities = $game_map.priorities

    # 生成远景平面

    @panorama = Plane.new(@viewport1)

    @panorama.z = -1000

    @panorama2 = Plane.new(@viewport1)

    @panorama2.z = 3000

    # 生成雾平面

    @fog = Plane.new(@viewport1)

    @fog.z = 3000

    # 生成角色活动块

    @character_sprites = []

    for i in $game_map.events.keys.sort

      sprite = Sprite_Character.new(@viewport1, $game_map.events)

      @character_sprites.push(sprite)

    end

    @character_sprites.push(Sprite_Character.new(@viewport1, $game_player))

    # 生成天气

    @weather = RPG::Weather.new(@viewport1)

    # 生成图片

    @picture_sprites = []

    for i in 1..50

      @picture_sprites.push(Sprite_Picture.new(@viewport2,

        $game_screen.pictures))

    end

    # 生成计时器块

    @timer_sprite = Sprite_Timer.new

    # 刷新画面

    update

  end

  #--------------------------------------------------------------------------

  # ● 释放

  #--------------------------------------------------------------------------

  def dispose

    # 释放元件地图

    @tilemap.tileset.dispose

    for i in 0..6

      @tilemap.autotiles.dispose

    end

    @tilemap.dispose

    # 释放远景平面

    @panorama.dispose

    @panorama2.dispose

    # 释放雾平面

    @fog.dispose

    # 释放角色活动块

    for sprite in @character_sprites

      sprite.dispose

    end

    # 释放天候

    @weather.dispose

    # 释放图片

    for sprite in @picture_sprites

      sprite.dispose

    end

    # 释放计时器块

    @timer_sprite.dispose

    # 释放显示端口

    @viewport1.dispose

    @viewport2.dispose

    @viewport3.dispose

  end

  #--------------------------------------------------------------------------

  # ● 刷新画面

  #--------------------------------------------------------------------------

  def update

    # 远景与现在的情况有差异发情况下

    if @panorama_name != $game_map.panorama_name or

       @panorama_hue != $game_map.panorama_hue

      @panorama_name = $game_map.panorama_name

      @panorama_hue = $game_map.panorama_hue

      if @panorama.bitmap != nil

        @panorama.bitmap.dispose

        @panarama2.bitmap.dispose

        @panorama2.bitmap = nil

        @panarama.bitmap = nil

      end

      if @panorama_name != ""

        @panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)

        Graphics.update #防卡死

        @panorama2.bitmap = RPG::Cache.panorama(@panorama_name+"_2", @panorama_hue)

      end

      Graphics.frame_reset

    end

    # 雾与现在的情况有差异的情况下

    if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue

      @fog_name = $game_map.fog_name

      @fog_hue = $game_map.fog_hue

      if @fog.bitmap != nil

        @fog.bitmap.dispose

        @fog.bitmap = nil

      end

      if @fog_name != ""

        @fog.bitmap = RPG::Cache.fog(@fog_name, @fog_hue)

      end

      Graphics.frame_reset

    end

    # 刷新元件地图

    @tilemap.ox = $game_map.display_x / 4

    @tilemap.oy = $game_map.display_y / 4

    @tilemap.update

    # 刷新远景平面

    @panorama.ox = $game_map.display_x / 4

    @panorama.oy = $game_map.display_y / 4

    @panorama2.ox = @panorama.ox

    @panorama2.oy = @panorama.oy

    # 刷新雾平面

    @fog.zoom_x = $game_map.fog_zoom / 100.0

    @fog.zoom_y = $game_map.fog_zoom / 100.0

    @fog.opacity = $game_map.fog_opacity

    @fog.blend_type = $game_map.fog_blend_type

    @fog.ox = $game_map.display_x / 4 + $game_map.fog_ox

    @fog.oy = $game_map.display_y / 4 + $game_map.fog_oy

    @fog.tone = $game_map.fog_tone

    # 刷新角色活动块

    for sprite in @character_sprites

      sprite.update

    end

    # 刷新天候图形

    @weather.type = $game_screen.weather_type

    @weather.max = $game_screen.weather_max

    @weather.ox = $game_map.display_x / 4

    @weather.oy = $game_map.display_y / 4

    @weather.update

    # 刷新图片

    for sprite in @picture_sprites

      sprite.update

    end

    # 刷新计时器块

    @timer_sprite.update

    # 设置画面的色调与震动位置

    @viewport1.tone = $game_screen.tone

    @viewport1.ox = $game_screen.shake

    # 设置画面的闪烁色

    @viewport3.color = $game_screen.flash_color

    # 刷新显示端口

    @viewport1.update

    @viewport3.update

  end

end

#==============================================================================

# 本脚本来自www.66rpg.com,使用前请参考制作录像

#==============================================================================[/pre]在Game.ini里把游戏框的尺寸调成了854*480,双远景脚本似乎默认尺寸为640*480,改成@viewport1 = Viewport.new(0, 0, 854, 580)依然不见效果。
有木有大神帮帮忙~
2.jpg

1.jpg





  
梦石
0
星屑
3905
在线时间
1972 小时
注册时间
2013-1-3
回帖
9146
发表于 2013-10-4 15:57:52 | 显示全部楼层
用的是紫苏的分辨率扩展吧,这个程序只能改窗体大小而不能改变屏幕
如果LZ不着急的话,等几天后我把我仙剑三外传的标题发布了,那个范例的窗体和屏幕都支持随意修改

点评

嗯,不急不急~  发表于 2013-10-4 18:20
《宿愿·寻剑篇》正式版已经发布!快去看看!点击进入论坛发布贴
回复

使用道具 举报

○赛

梦石
0
星屑
1254
在线时间
1276 小时
注册时间
2013-1-22
回帖
2078

贵宾

发表于 2013-10-4 17:33:28 | 显示全部楼层
我记得有两个地方要改..

点评

正气君~求解决~~~  发表于 2013-10-4 18:19
回复

使用道具 举报

梦石
0
星屑
3703
在线时间
3081 小时
注册时间
2011-11-17
回帖
943
发表于 2013-10-6 01:03:29 | 显示全部楼层
图块 事件 远景 雾行图 VIEWPORT 极限640 480 你改大了都没用  解决方案 4VIEWPORT拼接 要改的地方蛮多的 直接搜索分辨率脚本

评分

参与人数 1星屑 +30 收起 理由
myownroc + 30 塞糖

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部