查看: 1875|回复: 6

【XP】关于800X600扩大显示的问题

[复制链接]
梦石
0
星屑
50
在线时间
162 小时
注册时间
2011-5-14
回帖
17
发表于 2011-12-9 22:29:16 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 rasldms 于 2011-12-14 10:43 编辑

在66RPG上面搜到了一个改800600窗口的脚本
实际用的时候   发现大地图上面播放技能动画的话  仍然是640 480范围内的。。。多余的地方会被截掉
01.jpg

但是修改  窗口(800x600) 里面第31行的
$viewport1 = Viewport.new(0, 0, 640, 480) #——主窗口
变成 $viewport1 = Viewport.new(0, 0, 800, 600) #——主窗口

动画是800600播放了  但是雾就会变成这样
02.jpg


有没有什么好的解决方法么= =

其他扩大脚本也搜了不少。。。。不过要么是1.02.exe 要么下载下不来之类的。。。没有找到特别方便的。。

Project.rar

794.4 KB, 下载次数: 348

梦石
0
星屑
50
在线时间
162 小时
注册时间
2011-5-14
回帖
17
 楼主| 发表于 2011-12-12 21:26:53 | 显示全部楼层
就这么默默的沉了  
回复

使用道具 举报

小小的百鬼夜行<

梦石
0
星屑
54
在线时间
579 小时
注册时间
2010-7-29
回帖
2593

贵宾

发表于 2011-12-13 19:24:10 | 显示全部楼层
找雾所在的viewport....
实在找不到就把所有的viewport都改成800*600
(无RM无法实验请见谅- -

另:1.02也是可以用的,基本上不会出错
某只PHP/HTML小白鼠→退屈の间


Cause I knew you were trouble when you walked in
So shame is on me now
I flow me to place i ve never been
till you put me down oh
Now Im lying on the cold hard ground
回复

使用道具 举报

梦石
0
星屑
50
在线时间
162 小时
注册时间
2011-5-14
回帖
17
 楼主| 发表于 2011-12-13 20:41:33 | 显示全部楼层
退屈£无聊 发表于 2011-12-13 19:24
找雾所在的viewport....
实在找不到就把所有的viewport都改成800*600
(无RM无法实验请见谅- -

雾的$viewport1和动画播放是一个....不如说都是主窗口那一个...
尝试独立雾的$viewport..但是没成功(仍然会缺损...)
可能还有哪里改全...但最近准备考试没时间细调

而且这个脚本是通过新建右边/下面/右下角新的viewport来实现扩充800600的...都填800X600会爆掉的....
回复

使用道具 举报

梦石
0
星屑
50
在线时间
1071 小时
注册时间
2011-5-12
回帖
2260

贵宾

发表于 2011-12-13 21:16:18 | 显示全部楼层
全局搜索640修改成800看看?再搜索480改成600?
找我请找芙蕾娅
顺带一提,完全看得懂我头像请捡起你自己的节操哟(自重
回复

使用道具 举报

梦石
0
星屑
50
在线时间
162 小时
注册时间
2011-5-14
回帖
17
 楼主| 发表于 2011-12-13 21:46:42 | 显示全部楼层
月夜神音 发表于 2011-12-13 21:16
全局搜索640修改成800看看?再搜索480改成600?

$viewport4 = Viewport.new(640, 0, $width-640, 480)  #——右侧
$viewport5 = Viewport.new(0, 480, 640, $height-480) #——下侧
$viewport6 = Viewport.new(640, 480, $width-640, $height-480) #——右下角
$viewport1 = Viewport.new(0, 0, 800, 600) #——主窗口

它是通过这种方法实现800600的啊....主窗口改成800600其他都不冲突..只有雾会BUG...但是按照他原来的设计$viewport1 = Viewport.new(0, 0, 640, 480) #——主窗口
  动画就不行...

点评

20-24行以及51-55行作了修改,其余部分是RGSS的内部类,帮助文件里可以看到。  发表于 2011-12-14 10:59
回复

使用道具 举报

(?????)

梦石
0
星屑
872
在线时间
1327 小时
注册时间
2011-7-18
回帖
3036

贵宾

发表于 2011-12-14 09:46:19 | 显示全部楼层
本帖最后由 各种压力的猫君 于 2011-12-14 10:11 编辑

只有把所有的viewport都建四份了……直接改大会BUG……
换种思路,干脆不给他指定viewport了
  1. module RPG
  2.   class Sprite < ::Sprite
  3.     def animation(animation, hit)
  4.       dispose_animation
  5.       @_animation = animation
  6.       return if @_animation == nil
  7.       @_animation_hit = hit
  8.       @_animation_duration = @_animation.frame_max
  9.       animation_name = @_animation.animation_name
  10.       animation_hue = @_animation.animation_hue
  11.       bitmap = RPG::Cache.animation(animation_name, animation_hue)
  12.       if @@_reference_count.include?(bitmap)
  13.         @@_reference_count[bitmap] += 1
  14.       else
  15.         @@_reference_count[bitmap] = 1
  16.       end
  17.       @_animation_sprites = []
  18.       if @_animation.position != 3 or not @@_animations.include?(animation)
  19.         for i in 0..15
  20.           if $game_temp.in_battle
  21.             sprite = ::Sprite.new(self.viewport)
  22.           else
  23.             sprite = ::Sprite.new
  24.           end
  25.           sprite.bitmap = bitmap
  26.           sprite.visible = false
  27.           @_animation_sprites.push(sprite)
  28.         end
  29.         unless @@_animations.include?(animation)
  30.           @@_animations.push(animation)
  31.         end
  32.       end
  33.       update_animation
  34.     end
  35.     def loop_animation(animation)
  36.       return if animation == @_loop_animation
  37.       dispose_loop_animation
  38.       @_loop_animation = animation
  39.       return if @_loop_animation == nil
  40.       @_loop_animation_index = 0
  41.       animation_name = @_loop_animation.animation_name
  42.       animation_hue = @_loop_animation.animation_hue
  43.       bitmap = RPG::Cache.animation(animation_name, animation_hue)
  44.       if @@_reference_count.include?(bitmap)
  45.         @@_reference_count[bitmap] += 1
  46.       else
  47.         @@_reference_count[bitmap] = 1
  48.       end
  49.       @_loop_animation_sprites = []
  50.       for i in 0..15
  51.         if $game_temp.in_battle
  52.           sprite = ::Sprite.new(self.viewport)
  53.         else
  54.           sprite = ::Sprite.new
  55.         end
  56.         sprite.bitmap = bitmap
  57.         sprite.visible = false
  58.         @_loop_animation_sprites.push(sprite)
  59.       end
  60.       update_loop_animation
  61.     end
  62.   end
  63. end
复制代码
插到MAIN以上。(为了防止某些BUG我加了个判断,如果是在战斗中依然遵循Viewport这点要注意。)

点评

虽然还没完全看懂..不过效果完全OK...感谢  发表于 2011-12-14 10:43

评分

参与人数 1星屑 +90 收起 理由
rasldms + 90 认可答案

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部