|
發表於 2-4-2010 12:05:45
|
顯示全部樓層
要權限的話...
又是網上的
#include <amxmodx> // 任何AMXX需要的基本INC
public plugin_init() // 註冊插件
{
register_plugin("Menu","1.0","[B-Boy]L")
register_clcmd( "say /menu","ExtraMenu")
}
public ExtraMenu(id)
{
// 新增一個單位"menu" = 建立一個選單
new menu = menu_create("\r選單名稱", "menu_handler");
// 第一格為名稱
// 白色 = \w
// 黃色 = \y
// 紅色 - \r
// 灰色 - \d
// 第二格為指令所去的Function
// 新增Menu的選項
menu_additem(menu, "\w Selection #1", "1", ADMIN_LEVEL_A);
menu_additem(menu, "\w Selection #2", "2", 0);
menu_additem(menu, "\w Selection #3", "3", 0);
// menu為剛才新增的參數
// \w Selection #1 為 第一項選項
// 第三格 "1" 為 排在選單第幾項
// ADMIN_LEVEL_A 是指執行的權限 , 詳細可閱USER.INI取得更多資訊
// 如果填寫為 0 是指任何人適用
// 設定此Menu 的離開位置和轉頁
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
// 顯示選單
menu_display(id, menu, 0);
// 自主性決定吧 如果使用 say 指令會顯示字在說話頻道 如果不想可加上這一行
// 把 // Del去就行
// return PLUGIN_HANDLED;
}
// 剛才設定此Function為按鍵的設凡
public menu_handler(id, menu, item)
{
// 如果按離開會發生的事
if( item == MENU_EXIT )
{
// 消除選單
menu_destroy(menu);
return PLUGIN_HANDLED;
}
// 新增一些為玩家設定的參數
new data[6], iName[64];
new access, callback;
// 取得玩家的權限 及 其資料
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
// 將你所按的鍵轉換成Number
new key = str_to_num(data);
// 列出Number所發生的事
switch(key)
{
case 1:
{
client_print(id, print_chat, "你按了按鍵一");
menu_destroy(menu); // 消除選單
return PLUGIN_HANDLED; // 離開插件
}
case 2:
{
client_print(id, print_chat, "你按了按鍵2");
menu_destroy(menu); // 消除選單
return PLUGIN_HANDLED; // 離開插件
}
case 3:
{
client_print(id, print_chat, "你按了按鍵3");
menu_destroy(menu); // 消除選單
return PLUGIN_HANDLED; // 離開插件
}
}
// 消除選單
menu_destroy(menu);
// 離開插件
return PLUGIN_HANDLED;
} |
|