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

Project1

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

[已经解决] 怎么用变量获取F2的fps?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1122
在线时间
26 小时
注册时间
2021-2-19
帖子
30
1
发表于 2021-8-18 10:51:25 | 显示全部楼层
  1. YAMI_FPSVARID = 1#变量id
  2. Thread.new  do
  3.   @f = 0
  4.   loop do
  5.     sleep(1)
  6.     if $game_variables
  7.       $game_variables[YAMI_FPSVARID] = Graphics.frame_count - @f
  8.       @f = Graphics.frame_count
  9.     end
  10.   end
  11. end
复制代码

评分

参与人数 1+1 收起 理由
BLUEONE + 1 ( Graphics.frame_count是一个定量(只停留.

查看全部评分

回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1122
在线时间
26 小时
注册时间
2021-2-19
帖子
30
2
发表于 2021-8-21 20:59:02 | 显示全部楼层
本帖最后由 yaminolancelot 于 2021-8-21 21:15 编辑
BLUEONE 发表于 2021-8-21 12:33
感谢你的回复。
但这个数字都窜到221上了..


内置算法和标题的好像不太一样,改成读标题了,不过f2关掉的时候就无效了
  1. YAMI_FPSVARID = 1#变量id

  2. ini = Win32API.new('kernel32', 'GetPrivateProfileString','PPPPLP', 'L')
  3. $game_name = "\0" * 256
  4. ini.call('Game', 'Title', '', $game_name, 256, '.\\Game.ini')
  5. $game_name.delete!("\0")
  6. wnd = Win32API.new('user32', 'FindWindowA', 'PP', 'L')
  7. $hWnd = wnd.call('RGSS Player', $game_name)
  8. k = Win32API.new('user32', 'keybd_event', 'IILL', 'V')
  9. k.call(113,0,0,0)
  10. k.call(113,0,2,0)
  11. class << Graphics
  12.   alias yami_update update  
  13.   def update
  14.     yami_update
  15.     txt =  Win32API.new('user32', 'GetWindowText','LPL', 'L')
  16.     title = "\0" * 256
  17.     txt.call($hWnd,title,256)
  18.     if $game_variables
  19.       fps = title.delete("\0").gsub($game_name, "FPS").match(/\d+/)
  20.       $game_variables[YAMI_FPSVARID] = fps ? fps[0].to_i : 0
  21.     end
  22.   end
  23. end
复制代码

评分

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

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-1 07:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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