查看: 144|回复: 1

【二次开发/MOD(作用域不同)】Teeworlds 自定义配置选项

[复制链接]
  • TA的每日心情
    开心
    2017-9-11 20:38
  • 签到天数: 22 天

    [LV.4]

    468

    积分

    357

    子弹

    34

    武士刀

    Lv.M 版主

    Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24

    积分
    468
    QQ
    发表于 2017-7-24 19:43:31 | 显示全部楼层 |阅读模式
    代码功能
    主要位置:
    \src\game\
    variables.h —— 这里定义了我们需要的服务器的选项

    当然
    \src\engine\shared\config_varibles.h —— 这里也存在选项的定义

    游戏通过\src\engine\shared\config.* 来进行引用
    当然还有其他地方也有引用到这两个文件,其中的函数其实是在#include 引用之前就进行了宏定义的。

    格式
    首先我们观察varibles.h中的内容,不难发现存在两种格式。
    1、MACRO_CONFIG_INT
    2、MACRO_CONFIG_STR
    分别表示两种

    首先我们说第一个
    (A,B,C,D,E,F,G)
    一共有七个参数
    其中A表示以后可以用gConfig.m_A来访问这个变量
    B表示在配置文件中的名称
    C表示默认值
    [D,E]表示范围(这个我也不是很清楚,猜的)
    G表示变量的描述

    然后我们说说第二个
    (A,B,C,D,E,F)
    共六个选项,其中一二个和上面的意义相同第三个表示字符串长度限制,D表示默认内容
    F表示字符串的用途(描述而已)


    得到的效果

    众所周知,Teeworlds使用的是server.exe -f 配置文件 来运行服务器的。
    于是我们可以在服务器中加入
    B val
    这样的一样,然后就可以在游戏的代码中使用g_Config.m_A
    来使用这个变量了。
    A,B的意义参见上面的参数说明。
    当然如果随便使用就会导致游戏版本发生改变(不兼容——二次开发)



    欢迎来到Teeworlds 中国社区!
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2016-6-26 20:20
  • 签到天数: 3 天

    [LV.2]

    441

    积分

    295

    子弹

    2

    武士刀

    Lv.M 版主

    Siu12321

    Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24

    积分
    441

    第一届FNG团队祭祀

    发表于 2017-8-25 19:24:52 | 显示全部楼层
    感谢大佬一直想知道这东西怎么搞的
    回复 支持 反对

    使用道具 举报

    游客
    请先登录
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

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