设为首页收藏本站同能贴吧 切换语言 繁体中文
开启辅助访问 切换到窄版
扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 104|回复: 0

[转载发布] OS Detection via Ruby

[复制链接]
累计送礼:
0 个
累计收礼:
1 个
  • TA的每日心情
    开心
    前天 04:10
  • 签到天数: 209 天

    连续签到: 2 天

    [LV.7]常住居民III

    4471

    主题

    864

    回帖

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    7
    卡币
    22949
    OK点
    16
    推广点
    0
    同能卷
    50
    积分
    28314

    灌水之王

    发表于 6 天前 | 显示全部楼层 |阅读模式
    OS Detection via Ruby
    Version 1.2




    Description
    While most RPGMaker games are designed for users of the Windows Platform, not everyone who plays games are Windows users.  So what of those custom scripts that use the Win32DLL?  They won't work on their PCs!  This scriptette will determine what OS the player is using.  And if used properly, a scripter/coder can write something to turn off those custom Win32API dll systems (if possible for their game).



    Script
    Spoiler: The Code
                    Code:        
    #============================================================================== # ** OS Detection via Ruby  v 1.2 #------------------------------------------------------------------------------ #    by DerVVulfman (09/09/2019) MM/DD/YYYY #    based on the work of Thomas Enebo (11/27/2012) MM/DD/YYYY #==============================================================================    #============================================================================== # ** Operating System Detection #------------------------------------------------------------------------------ #  This module actively uses the RbConfig system to detect what operating #  system is in use.  The below code is sound, the RbConfig used above is #  merely a snippet of the whole. # #  Refer to OS_Detect.execute to perform detection operation #  Refer to OS_Detect.version to acquire OS after generation #==============================================================================  module OS_Detect   #--------------------------------------------------------------------------   # * Methods/Functions Executable From Outside Call   #--------------------------------------------------------------------------   module_function     #--------------------------------------------------------------------------   # * Object Execution   #--------------------------------------------------------------------------   def execute     # Only perform if not F12 Reset     if $@.nil?       # Set Default       @version = :unknown       @os ||= (         host_os = RUBY_PLATFORM         case host_os         when /mswin|msys|mingw|cygwin|bccwin|wince|emc/           @version = :windows         when /darwin|mac os/           @version = :macosx         when /linux/           @version = :linux         when /solaris|bsd/           @version = :unix         end       )     end   end   #--------------------------------------------------------------------------   # * Get OS version (:windows, :macosz, :linux, :unix, :unknown)   #--------------------------------------------------------------------------   def version     return @version   end   end




    Example Calls
    OS_Detect.execute to generate it.
    p OS_Detect.version to print it after generating.
    This generates the result of  :windows  for most users



    Notes
    Normally, if you run RUBY_PLATFORM while using Java, your response would always be 'Java'.... even if running Mac or Windows.  This version instead demands a comparison and should distinguish even if running Java as well.



    Compatability
    Since it contains no modules or classes, it should work with all Ruby-Based RPGMaker Engines.



    Credits and Thanks
    Well, to enough people at stackoverflow that said not to use the RUBY_PLATFORM command.  But specific thanks to Thomas Enebo at Stack Overflow that wrote the basis for this script.  Not that he helped me figure out the RbConfig file.



    Terms of Use
    Free for use, even within commercial products.  But due credit to both myself and Thomas Enebo is required.


    本贴来自国际rpgmaker官方论坛作者:DerVVulfman处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/os-detection-via-ruby.113066/
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    简体中文
    繁體中文
    English(英语)
    日本語(日语)
    Deutsch(德语)
    Русский язык(俄语)
    بالعربية(阿拉伯语)
    Türkçe(土耳其语)
    Português(葡萄牙语)
    ภาษาไทย(泰国语)
    한어(朝鲜语/韩语)
    Français(法语)
    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2026-7-14 17:57 , Processed in 0.087717 second(s), 51 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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