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

Project1

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

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

[复制链接]

Lv1.梦旅人

梦石
0
星屑
222
在线时间
81 小时
注册时间
2011-12-26
帖子
9
跳转到指定楼层
1
发表于 2013-10-4 13:44:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

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

RUBY 代码复制
  1. #==============================================================================
  2.  
  3. # 本脚本来自[url]www.66rpg.com[/url],使用前请参考制作录像
  4.  
  5. #==============================================================================
  6.  
  7. # ■ Spriteset_Map
  8.  
  9. #------------------------------------------------------------------------------
  10.  
  11. #  处理地图画面活动块和元件的类。本类在
  12.  
  13. # Scene_Map 类的内部使用。
  14.  
  15. #==============================================================================
  16.  
  17.  
  18. class Spriteset_Map
  19.  
  20.   #--------------------------------------------------------------------------
  21.  
  22.   # ● 初始化对像
  23.  
  24.   #--------------------------------------------------------------------------
  25.  
  26.   def initialize
  27.  
  28.     # 生成显示端口
  29.  
  30.     @viewport1 = Viewport.new(0, 0, 854, 480)
  31.  
  32.     @viewport2 = Viewport.new(0, 0, 854, 480)
  33.  
  34.     @viewport3 = Viewport.new(0, 0, 854, 480)
  35.  
  36.     @viewport2.z = 200
  37.  
  38.     @viewport3.z = 5000
  39.  
  40.     # 生成元件地图
  41.  
  42.     @tilemap = Tilemap.new(@viewport1)
  43.  
  44.     @tilemap.tileset = RPG::Cache.tileset($game_map.tileset_name)
  45.  
  46.     for i in 0..6
  47.  
  48.       autotile_name = $game_map.autotile_names[i]
  49.  
  50.       @tilemap.autotiles[i] = RPG::Cache.autotile(autotile_name)
  51.  
  52.     end
  53.  
  54.     @tilemap.map_data = $game_map.data
  55.  
  56.     @tilemap.priorities = $game_map.priorities
  57.  
  58.     # 生成远景平面
  59.  
  60.     @panorama = Plane.new(@viewport1)
  61.  
  62.     @panorama.z = -1000
  63.  
  64.     @panorama2 = Plane.new(@viewport1)
  65.  
  66.     @panorama2.z = 3000
  67.  
  68.     # 生成雾平面
  69.  
  70.     [url=home.php?mod=space&uid=14217]@fog[/url] = Plane.new(@viewport1)
  71.  
  72.     @fog.z = 3000
  73.  
  74.     # 生成角色活动块
  75.  
  76.     @character_sprites = []
  77.  
  78.     for i in $game_map.events.keys.sort
  79.  
  80.       sprite = Sprite_Character.new(@viewport1, $game_map.events[i])
  81.  
  82.       @character_sprites.push(sprite)
  83.  
  84.     end
  85.  
  86.     @character_sprites.push(Sprite_Character.new(@viewport1, $game_player))
  87.  
  88.     # 生成天气
  89.  
  90.     @weather = RPG::Weather.new(@viewport1)
  91.  
  92.     # 生成图片
  93.  
  94.     @picture_sprites = []
  95.  
  96.     for i in 1..50
  97.  
  98.       @picture_sprites.push(Sprite_Picture.new(@viewport2,
  99.  
  100.         $game_screen.pictures[i]))
  101.  
  102.     end
  103.  
  104.     # 生成计时器块
  105.  
  106.     @timer_sprite = Sprite_Timer.new
  107.  
  108.     # 刷新画面
  109.  
  110.     update
  111.  
  112.   end
  113.  
  114.   #--------------------------------------------------------------------------
  115.  
  116.   # ● 释放
  117.  
  118.   #--------------------------------------------------------------------------
  119.  
  120.   def dispose
  121.  
  122.     # 释放元件地图
  123.  
  124.     @tilemap.tileset.dispose
  125.  
  126.     for i in 0..6
  127.  
  128.       @tilemap.autotiles[i].dispose
  129.  
  130.     end
  131.  
  132.     @tilemap.dispose
  133.  
  134.     # 释放远景平面
  135.  
  136.     @panorama.dispose
  137.  
  138.     @panorama2.dispose
  139.  
  140.     # 释放雾平面
  141.  
  142.     @fog.dispose
  143.  
  144.     # 释放角色活动块
  145.  
  146.     for sprite in @character_sprites
  147.  
  148.       sprite.dispose
  149.  
  150.     end
  151.  
  152.     # 释放天候
  153.  
  154.     @weather.dispose
  155.  
  156.     # 释放图片
  157.  
  158.     for sprite in @picture_sprites
  159.  
  160.       sprite.dispose
  161.  
  162.     end
  163.  
  164.     # 释放计时器块
  165.  
  166.     @timer_sprite.dispose
  167.  
  168.     # 释放显示端口
  169.  
  170.     @viewport1.dispose
  171.  
  172.     @viewport2.dispose
  173.  
  174.     @viewport3.dispose
  175.  
  176.   end
  177.  
  178.   #--------------------------------------------------------------------------
  179.  
  180.   # ● 刷新画面
  181.  
  182.   #--------------------------------------------------------------------------
  183.  
  184.   def update
  185.  
  186.     # 远景与现在的情况有差异发情况下
  187.  
  188.     if @panorama_name != $game_map.panorama_name or
  189.  
  190.        @panorama_hue != $game_map.panorama_hue
  191.  
  192.       @panorama_name = $game_map.panorama_name
  193.  
  194.       @panorama_hue = $game_map.panorama_hue
  195.  
  196.       if @panorama.bitmap != nil
  197.  
  198.         @panorama.bitmap.dispose
  199.  
  200.         @panarama2.bitmap.dispose
  201.  
  202.         @panorama2.bitmap = nil
  203.  
  204.         @panarama.bitmap = nil
  205.  
  206.       end
  207.  
  208.       if @panorama_name != ""
  209.  
  210.         @panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)
  211.  
  212.         Graphics.update #防卡死
  213.  
  214.         @panorama2.bitmap = RPG::Cache.panorama(@panorama_name+"_2", @panorama_hue)
  215.  
  216.       end
  217.  
  218.       Graphics.frame_reset
  219.  
  220.     end
  221.  
  222.     # 雾与现在的情况有差异的情况下
  223.  
  224.     if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue
  225.  
  226.       @fog_name = $game_map.fog_name
  227.  
  228.       @fog_hue = $game_map.fog_hue
  229.  
  230.       if @fog.bitmap != nil
  231.  
  232.         @fog.bitmap.dispose
  233.  
  234.         @fog.bitmap = nil
  235.  
  236.       end
  237.  
  238.       if @fog_name != ""
  239.  
  240.         @fog.bitmap = RPG::Cache.fog(@fog_name, @fog_hue)
  241.  
  242.       end
  243.  
  244.       Graphics.frame_reset
  245.  
  246.     end
  247.  
  248.     # 刷新元件地图
  249.  
  250.     @tilemap.ox = $game_map.display_x / 4
  251.  
  252.     @tilemap.oy = $game_map.display_y / 4
  253.  
  254.     @tilemap.update
  255.  
  256.     # 刷新远景平面
  257.  
  258.     @panorama.ox = $game_map.display_x / 4
  259.  
  260.     @panorama.oy = $game_map.display_y / 4
  261.  
  262.     @panorama2.ox = @panorama.ox
  263.  
  264.     @panorama2.oy = @panorama.oy
  265.  
  266.     # 刷新雾平面
  267.  
  268.     @fog.zoom_x = $game_map.fog_zoom / 100.0
  269.  
  270.     @fog.zoom_y = $game_map.fog_zoom / 100.0
  271.  
  272.     @fog.opacity = $game_map.fog_opacity
  273.  
  274.     @fog.blend_type = $game_map.fog_blend_type
  275.  
  276.     @fog.ox = $game_map.display_x / 4 + $game_map.fog_ox
  277.  
  278.     @fog.oy = $game_map.display_y / 4 + $game_map.fog_oy
  279.  
  280.     @fog.tone = $game_map.fog_tone
  281.  
  282.     # 刷新角色活动块
  283.  
  284.     for sprite in @character_sprites
  285.  
  286.       sprite.update
  287.  
  288.     end
  289.  
  290.     # 刷新天候图形
  291.  
  292.     @weather.type = $game_screen.weather_type
  293.  
  294.     @weather.max = $game_screen.weather_max
  295.  
  296.     @weather.ox = $game_map.display_x / 4
  297.  
  298.     @weather.oy = $game_map.display_y / 4
  299.  
  300.     @weather.update
  301.  
  302.     # 刷新图片
  303.  
  304.     for sprite in @picture_sprites
  305.  
  306.       sprite.update
  307.  
  308.     end
  309.  
  310.     # 刷新计时器块
  311.  
  312.     @timer_sprite.update
  313.  
  314.     # 设置画面的色调与震动位置
  315.  
  316.     @viewport1.tone = $game_screen.tone
  317.  
  318.     @viewport1.ox = $game_screen.shake
  319.  
  320.     # 设置画面的闪烁色
  321.  
  322.     @viewport3.color = $game_screen.flash_color
  323.  
  324.     # 刷新显示端口
  325.  
  326.     @viewport1.update
  327.  
  328.     @viewport3.update
  329.  
  330.   end
  331.  
  332. end
  333.  
  334. #==============================================================================
  335.  
  336. # 本脚本来自[url]www.66rpg.com[/url],使用前请参考制作录像
  337.  
  338. #==============================================================================
在Game.ini里把游戏框的尺寸调成了854*480,双远景脚本似乎默认尺寸为640*480,改成@viewport1 = Viewport.new(0, 0, 854, 580)依然不见效果。
有木有大神帮帮忙~








  

Lv3.寻梦者

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

点评

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

使用道具 举报

Lv3.寻梦者

○赛

梦石
0
星屑
1249
在线时间
1276 小时
注册时间
2013-1-22
帖子
2246

贵宾

3
发表于 2013-10-4 17:33:28 | 只看该作者
我记得有两个地方要改..

点评

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

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3570
在线时间
3064 小时
注册时间
2011-11-17
帖子
980
4
发表于 2013-10-6 01:03:29 | 只看该作者
图块 事件 远景 雾行图 VIEWPORT 极限640 480 你改大了都没用  解决方案 4VIEWPORT拼接 要改的地方蛮多的 直接搜索分辨率脚本

评分

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

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-30 03:18

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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