这个功能是修改
gamemenu.res来达成目的没错。不是透过AMXX来做。这个档案通常在这个路径下 :
..\cstrike_tchinese\resource\gamemenu.res 如果你用的是英文语系就在:
..\cstrike\resource\gamemenu.res 用文字编辑器开启这个档案就可以编辑,类似程式的写作,大概内容如下:
这其实是游戏建立实的目录设定档,可以编排游戏启动时的目录显示位置,以及他的选单内容,
大括号
{ } 是用来包括指令叙述用,每个选单叙述必须涵盖括弧内。
双引号
" "中的数字是选单的标签代号,这里可以随便打数字,但记得不要重复,显示的位置跟
你编号顺序无关系。每个选单中再包含一个大括号表示选单叙述的范围。
而像直接点取选单就可以连到伺服器的功能,就在第8的选单这样写。
选单的叙述写法大概就像范例这样:
"label" "选单叙述":第一个 label 是叙述建立一个选单目录标签,后面绿色的是label 夹带的参数,
如果你打上名称就会显示键入的字串。
不过你会看到像第11个选单label后面打的是这样
" #GameUI_GameMenu_Options ",但是他
却不是显示打的这串文字。是这是因为前面有加井字符号
# ,这是表示他是个系统参数,是预设
定义好的东西,其显示内容就是游戏中的 "
选项"。而像第12个
"#GameUI_GameMenu_Quit"就是
显室内容中的 "
离开"。
"
command" "
指令叙述":其用法有些雷同控制台中的指令,但不完全相同,像是直接点击标签目录后
直接连线到该伺服器,就是用
command 指令。
参考第8个选单。连线到伺服器的做法就是将其参数设定 "
engine connect 127.0.0.1",
注意到了吗?
connect 127.0.0.1跟平常控制台的指令用法相同,而后面的数字就是你要
连线的IP。
参考第12个选单。
command 参数后接着
"Quit",如果你有用过控制台打过也猜的出来
这是一个离开游戏的指令,但前面说过了,并不是所有指令都像控制台一样操作,它只
是部分相同。
其他像是
"OpenServerBrowser",就是用来开启伺服器浏览界面
"Disconnect" 中断目前伺服器的连线
"OpenPlayerListDialog"就是玩家语音开关的列表(进伺服器后才会显示这选单)
"
OnlyInGame" "
1":这个指令表示,选单只会在游戏钟才会显示,设定1时启用,0则关闭
(没有加入
OnlyInGame指令时,视同关闭)。
像是前面提到的 中断游戏、玩家列表 这样的选单,你刚开游戏伺服器都还没连总不可能要
显示这两个无意义的选单吧.......。当然,离开的选单是不会加入这个指令的,不然你每次关
游戏,不都要连伺服器才能离开吗?
有些指令参数没去深入研究,如果想用更多功能或其他部分你可能就自己找资料试看看噜。
档案已经放在附件了,记得使用时先将原有的
gamemenu.res备份,你如果不想照我的版本
使用,你可以只复制第8选单中的内容然后贴到你的
gamemenu.res设定即可。
如果不想取代原有的
gamemenu.res就复制这段:
复制程式
"8"
{
"label" "连线的伺服器"
"command" "engine connect 127.0.0.1"
}
数字不用一样没差,但不要跟其他数字重复。
范本 附件内容:
复制程式
"GameMenu"
{
"1"
{
"label" "#GameUI_GameMenu_ResumeGame"
"command" "ResumeGame"
"OnlyInGame" "1"
}
"2"
{
"label" "#GameUI_GameMenu_Disconnect"
"command" "Disconnect"
"OnlyInGame" "1"
"notsingle" "1"
}
"4"
{
"label" "#GameUI_GameMenu_PlayerList"
"command" "OpenPlayerListDialog"
"OnlyInGame" "1"
"notsingle" "1"
}
"8"
{
"label" "连线到伺服器"
"command" "engine connect 127.0.0.1"
}
"9"
{
"label" "#GameUI_GameMenu_NewGame"
"command" " "
}
"10"
{
"label" "#GameUI_GameMenu_FindServers"
"command" "OpenServerBrowser"
}
"11"
{
"label" "#GameUI_GameMenu_Options"
"command" "OpenOptionsDialog"
}
"12"
{
"label" "#GameUI_GameMenu_Quit"
"command" "Quit"
}
}