Project1

标题: 如何在全屏的时候不是改变画面而是改变分辨率 [打印本页]

作者: 1653592062    时间: 2017-7-2 21:20
标题: 如何在全屏的时候不是改变画面而是改变分辨率
如题,就是如何在全屏的时候不是改变画面而是改变分辨率
普通分辨率的脚本是:

Graphics.resize_screen(800,600)

有好心人来帮忙吗?
作者: 鑫晴    时间: 2017-7-2 22:41
ACE分辨率解放+文字优化+屏蔽F12【20130128补充载点】
https://rpg.blue/forum.php?mod=viewthread&tid=216674
(出处: 66RPG)

作者: 1653592062    时间: 2017-7-3 09:22
鑫晴 发表于 2017-7-2 22:41
ACE分辨率解放+文字优化+屏蔽F12【20130128补充载点】
https://rpg.blue/forum.php?mod=viewthread&tid= ...

我说的是在全屏时改变分辨率而不是改变画面大小
作者: HS.百斩秋辰    时间: 2017-8-2 10:03
1653592062 发表于 2017-7-3 09:22
我说的是在全屏时改变分辨率而不是改变画面大小

我觉得应该是你的表述有问题
因为这个DLL就是改变分辨率的 而且分辨率变了画面大小一定会变大
我觉得你问的可能是怎么样让窗口不变 图块和角色变大……
作者: Nil2011    时间: 2017-8-19 14:09
    #Basic Window Resizer v1.1
    #----------#
    #Features: Allows you to resize the window to whatever size you like! (This is not
    #            like Graphics.resize, this will scale to fit)
    #
    #Usage:   Script calls:
    #Window_Resize.r(width, height) - Self-explanatory
    #Window_Resize.f                - fits the game window to monitor size
    #Window_Resize.full     - switches to full screen unless already fullscreened
    #Window_Resize.window           - same as full but opposite
    #Window_Resize.toggle           - toggles between full and window
    #
    #No Customization
    #
    #----------#
    #-- Script by: V.M of D.T
    #
    #- Free to use in any project with credit given.
    # Edited By SnowOwl
     
    SWPO = Win32API.new 'user32', 'SetWindowPos', ['l','i','i','i','i','i','p'], 'i'
    WINX = Win32API.new 'user32', 'FindWindowEx', ['l','l','p','p'], 'i'
    SMET = Win32API.new 'user32', 'GetSystemMetrics', ['i'], 'i'
     
    module Window_Resize
      def self.r(width, height)
        resw = SMET.call(0)
        resh = SMET.call(1)
        window_loc = WINX.call(0,0,"RGSS Player",0)
        width += (SMET.call(5) + SMET.call(45)) * 2
        height += (SMET.call(6) + SMET.call(45)) * 2 + SMET.call(4)
        x = (resw - width) / 2; y = (resh - height) / 2
        y = 0 if y < 0;x = 0 if x < 0
        SWPO.call(window_loc,0,x,y,width,height,0)
      end
      def self.f
        resh = SMET.call(1)*0.95
        resw = resh*1.33
        x = (resw*0.25)
        y = 0
        window_loc = WINX.call(0,0,"RGSS Player",0)
        SWPO.call(window_loc,0,x,y,resw,resh,0)
      end
      def self.full
        resw = SMET.call(0)
        return unless resw > 640
        toggle
      end
      def self.window
        resw = SMET.call(0)
        return unless resw < 640
        toggle
      end
      def self.toggle
        keybd = Win32API.new 'user32.dll', 'keybd_event', ['i', 'i', 'l', 'l'], 'v'
        keybd.call 0xA4, 0, 0, 0
        keybd.call 13, 0, 0, 0
        keybd.call 13, 0, 2, 0
        keybd.call 0xA4, 0, 2, 0
      end
    end

设定:
Window_Resize.f
Window_Resize.r(1050, 800)




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1