yymmychat
|
分享:
▲
▼
下面是引用 chuchung712 於 2010-02-11 12:11 發表的 :
那麼那個網址的教學可行嗎? public ShowMenu( id ) { new szMenuBody[256] new keys new nLen = format( szMenuBody, 255, "\y菜單標題:^n" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w1. 操作1" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w2. 操作2" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w3. 操作3" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w4. 操作4" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w5. 操作5" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w6. 操作6" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w7. 操作7" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w8. 操作8" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n\w9. 操作9" ) nLen += format( szMenuBody[nLen], 255-nLen, "^n^n\w0. 退出" ) keys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9) show_menu( id, keys, szMenuBody, -1 , "\y菜單標題:")return PLUGIN_CONTINUE } 是正確的沒錯, 但上面藍色那一段要改一下
|
※目前暫不接受插件修改委託※ 原本預計在2010年4月份之前發佈更新 Zombie Hell 3.0, 但我還是失信了.... 在此要先向眾版友們致歉,真的很抱歉 m(_._)m 但我終會完成此插件,兌現我的承諾.
|
x1
[21 樓]
From:台灣中華電信 | Posted:2010-02-11 12:18 |
|
|
yymmychat
|
分享:
▲
▼
下面是引用 chuchung712 於 2010-02-11 12:18 發表的 :
就只是改"菜單標題"而已吧 對的, 就是要加入紅色那一段文字 show_menu( id, keys, szMenuBody, -1 , "\y菜單標題:" )因為他的教學中 register_menuid( "\y菜單標題:" )註冊菜單ID是用了這段文字檔菜單識別名稱所以你用 show_menu 來開啟菜單時,沒加入識別名稱, 可能會有問題發生因為AMXX不知道你要開啟那個菜單
|
※目前暫不接受插件修改委託※ 原本預計在2010年4月份之前發佈更新 Zombie Hell 3.0, 但我還是失信了.... 在此要先向眾版友們致歉,真的很抱歉 m(_._)m 但我終會完成此插件,兌現我的承諾.
|
x0
[23 樓]
From:台灣中華電信 | Posted:2010-02-11 12:22 |
|
|
yymmychat
|
分享:
▲
▼
下面是引用 chuchung712 於 2010-02-11 13:58 發表的 :
連回! 請問如果要這樣做: 開啟菜單 按1後再有1-9選項 要怎樣弄??? 這個要用選單中的選單方式來設置了 意思就是當你執行了一個選單的項目後,就是按了1,2,3,5 等等按鍵後 在判斷每個按鍵該執行什麼功能那個程序中,也是在裏頭設定再用 show_menu 來開啟另一個選單 程式碼範例如下: const keys = (0<<1)|(1<<1)|(2<<1)|(3<<1)|(4<<1)|(5<<1)|(6<<1)|(7<<1)|(8<<1)|(9<<1)| public plugin_init() { ............ register_menucmd(register_menuid("my_menu1"), keys, "action_my_menu1") register_menucmd(register_menuid("my_menu2"), keys, "action_my_menu2") ................ register_clcmd("open_menu", "cmd_open_menu" ............ } public cmd_open_menu(id) { opent_menu1(id) return PLUGIN_HANDLED; } opent_menu1(id) { new menubody[512], len len = 0 len += format(menubody[len], charsmax(menubody) - len, "主選單^n^n") len + = ............................. ................. show_menu(id, keys, menubody,-1, "my_menu1") //秀出主選單 } public action_my_menu1(id, key) { switch (key) { case 0: // 當按了數字鍵 (1) { open_menu2(id) //秀出第二層選單 } case 1: { ..... } .................... .................... ...................... default: { return PLUGIN_HANDLED; } } return PLUGIN_HANDLED; } open_menu2(id) { new menubody[512], len len = 0 len += format(menubody[len], charsmax(menubody) - len, "第二選單^n^n") len + = ............................. ................. show_menu(id, keys, menubody, -1, "my_menu2") //秀出第二選單 } public action_my_menu2(id, key) { switch (key) { case 0: // 當按了數字鍵 (1) { ............... ............. } case 1: { ..... } .................... .................... ...................... default: <---- 若是用數字鍵0時也可以改成 case 9: { opent_menu1(id) //回到主選單, 當玩家按了取消鍵時,一般都是用數字鍵0當取消鍵 } } return PLUGIN_HANDLED; }
[ 此文章被yymmychat在2010-02-12 08:44重新編輯 ]
|
※目前暫不接受插件修改委託※ 原本預計在2010年4月份之前發佈更新 Zombie Hell 3.0, 但我還是失信了.... 在此要先向眾版友們致歉,真的很抱歉 m(_._)m 但我終會完成此插件,兌現我的承諾.
|
x1
[26 樓]
From:台灣中華電信 | Posted:2010-02-11 15:26 |
|
|
yymmychat
|
分享:
▲
▼
下面是引用 chuchung712 於 2010-02-11 17:31 發表的 :
好像很複雜... = =
register_menucmd(register_menuid("my_menu1"), keys, "action_my_menu1") 中的keys是要設定的按鍵嗎? 沒錯喔,也就是你選單出現後,你可以按且有作用的按鍵,按其它沒設定的鍵的話,按鍵就不會有效果然 但這個在register_menucmd 中所設定的 keys 其實一般都只指定一個數值 1023 就可以了, 因為 1023 = (0<<1)|(1<<1)........|(9<<1) 而要設定讓限制選單可以按的按鍵,也就是可以被偵測到的 就只要在 show_menu 這個指令中設定就可以了,
|
※目前暫不接受插件修改委託※ 原本預計在2010年4月份之前發佈更新 Zombie Hell 3.0, 但我還是失信了.... 在此要先向眾版友們致歉,真的很抱歉 m(_._)m 但我終會完成此插件,兌現我的承諾.
|
x0
[28 樓]
From:台灣中華電信 | Posted:2010-02-11 17:45 |
|
|
|