這個功能是修改
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"
}
}