Project1

标题: 【临别的邪恶发布】窗体半透明+渐隐退出 [打印本页]

作者: R-零    时间: 2011-8-28 12:22
标题: 【临别的邪恶发布】窗体半透明+渐隐退出
本帖最后由 R-零 于 2011-8-28 15:29 编辑

(估计这货快沉了,路过的发表下意见)
因为31号就要走了,所以,先放个东西在这里,具体看脚本,XP下测试结果没有bug
这个是使用窗体半透明函数,仅在win2000及以上版本有效(相信没有谁用win98了吧)
  1. #==============================================================================
  2. # 邪恶窗体半透明 R-零  2011 / 9 / 28
  3. #
  4. # 31号就要走了啊,所以就把这个东西放出来了
  5. # 下面的几个函数都是直接中文写的,需要的可以直接拿走
  6. # 脚本使用方法:
  7. # 改变透明度 不透明度  注 0~255
  8. # 附加效果,退出时渐隐,包括bgm
  9. # 完毕
  10. #==============================================================================
  11. $初始不透明度 = 255
  12. def 百分比获得(t,maxt)
  13.   return 100.0 * t / maxt  # ** 2
  14. end
  15. def 获取当前窗口句柄
  16.   return Win32API.new("user32","GetActiveWindow","","l").call
  17. end
  18. def 改变窗体属性(h)
  19.   return Win32API.new("user32","SetWindowLong","lil","l").call(h,-20,0x00080000  )
  20. end
  21. def 改变透明度(op,h = 获取当前窗口句柄 )
  22.   return Win32API.new("user32","SetLayeredWindowAttributes","llil","l").call(h,0,op,2)
  23. end
  24. module Kernel
  25. alias origin_exit exit unless method_defined? :exit
  26. def exit(*args)
  27.    hw = 获取当前窗口句柄
  28.    改变窗体属性( hw)
  29.     bgm = $game_system.playing_bgm
  30.    for i in 1..10
  31.     op = $初始不透明度 * 百分比获得( 10 - i ,10) / 100
  32.     改变透明度(op,hw)
  33.     Audio.bgm_play("Audio/BGM/" + bgm.name, bgm.volume * 百分比获得( 10 - i ,10) / 100, bgm.pitch) if bgm.name != nil
  34.    end
  35.    origin_exit(*args)
  36. end
  37. end
  38. 改变窗体属性(获取当前窗口句柄)
  39. 改变透明度($初始不透明度,获取当前窗口句柄)
复制代码
练手.zip (200.57 KB, 下载次数: 470)


作者: 李梦遥    时间: 2011-8-28 14:09
R零是新手不解释,你就是个混蛋!
作者: 不会脚本    时间: 2011-8-28 14:35
本帖最后由 不会脚本 于 2011-8-28 14:40 编辑

路过来看的,表示对我没用......暂且收下......


不会脚本于2011-8-28 14:40补充以下内容:
我被耍了......我可爱的内存.....

QQ拼音截图未命名.png (6.84 KB, 下载次数: 47)

QQ拼音截图未命名.png

作者: gghg1989    时间: 2011-8-28 15:25
提示: 作者被禁止或删除 内容自动屏蔽
作者: 精灵使者    时间: 2011-8-28 20:34
精灵毫无目的的说:“获取窗口句柄”可以参考紫苏的“精确获得窗口句柄”一文
作者: R-零    时间: 2011-8-28 21:14
精灵使者 发表于 2011-8-28 20:34
精灵毫无目的的说:“获取窗口句柄”可以参考紫苏的“精确获得窗口句柄”一文 ...

这个东西的句柄完全可以由"获得当前活动窗口句柄"来获得,因为按下"关闭"按钮时,窗口一定是活动的.

话说,精灵前辈提醒的那东西还要改造主程序是不
作者: 精灵使者    时间: 2011-8-28 21:22
不是,紫苏的脚本是现成的,直接HWND到那里即可
作者: 越前リョーマ    时间: 2011-8-30 12:35
完全只想要退出时的渐变效果而不想要窗口半透明(你自己设置255啊混蛋),囧
作者: 忧雪の伤    时间: 2011-8-30 16:11
  1. 9999.times { $初始不透明度 = nil }
复制代码

作者: 天使喝可乐    时间: 2011-8-31 21:28
这个脚本对游戏稳定没影响吧?
另外能否加上 退出时弹窗提示是否退出





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