Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Помогите исправить ошибки

Статус пользователя FlashGame24
сообщение 17.11.2012, 19:29
Сообщение #1


Стаж: 13 лет
Город: Moscow

Сообщений: 31
Благодарностей: 4
Полезность: 100

Подредактировал Amxmodmenu , при компиляции выдаёт множество ошибок.
Помогите решить проблему.
Код
#include <amxmodx>
#include <amxmisc>

const KEYSMENU = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
_KEY_8|MENU_KEY_9|MENU_KEY_0

public plugin_init()
{
    register_plugin("Admin Menu", "1.0", "ill")
    register_clcmd("amxmodmenu", "press_menu")
    register_menu("Admin Menu", KEYSMENU, "admin_menu")
}

public press_menu(id)
{    
    if(!(get_user_flags(id) & ADMIN_MENU))
    {
        console_print(id, "Недостаточно прав для использования команды")
        return PLUGIN_HANDLED
    }
    show_admin_menu(id)
    
    return PLUGIN_HANDLED
}

public show_admin_menu(id)
{
    static menu[450], len
    len = 0

    len += formatex(menu[len], charsmax(menu) - len, "\rАдмин Меню [FlashGame]^n^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r1. Кикнуть игрока^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r2. Забанить^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r3. \yУдарить/Убить^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r4. \yКоманда игрока^n^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r5. Смена карты^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r6. Голосование за карту^n^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r7. \yМеню оружия^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r8. \yСделать рестарт^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r9. \yВипменю^n")
    
    len += formatex(menu[len], charsmax(menu) - len, "^n^n\r0. Выход")
    
    show_menu(id, KEYSMENU, menu, -1, "Admin Menu")
    
    return PLUGIN_CONTINUE
}

public admin_menu(id, key)
{
    switch (key)
    {
        case 0: client_cmd(id, "amx_kickmenu")
    }
public admin_menu(id, key)
{
    switch (key)
    {
        case 1: client_cmd(id, "amx_banmenu")
    }
public admin_menu(id, key)
{
    switch (key)
    {
        case 2: client_cmd(id, "amx_slapmenu")
    }
public admin_menu(id, key)
{
    switch (key)
    {
        case 3: client_cmd(id, "amx_teammenu")
    }
public admin_menu(id, key)
{
    switch (key)
    {
        case 4: client_cmd(id, "amx_mapmenu")
    }
public admin_menu(id, key)
{
    switch (key)
    {
        case 5: client_cmd(id, "amx_votemapmenu")
    }
public admin_menu(id, key)
{
    switch (key)
    {
        case 6: client_cmd(id, "weaponmenu")
    }
public admin_menu(id, key)
{
    switch (key)
    {
        case 7: client_cmd(id, "sv_restart 1")
    }
public admin_menu(id, key)
{
    switch (key)
    {
        case 8: client_cmd(id, "say /vipmenu")
    }
    return PLUGIN_CONTINUE
}


Отредактировал: FlashGame24, - 17.11.2012, 19:30
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 17.11.2012, 19:33
Сообщение #2
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

FlashGame24,
Так нужно делать:
Скрытый текст
Код
public admin_menu(id, key)
{
    switch (key)
    {
        case 0: client_cmd(id, "amx_kickmenu")
        case 1: client_cmd(id, "amx_banmenu")
        case 2: client_cmd(id, "amx_slapmenu")
        case 3: client_cmd(id, "amx_teammenu")
        case 4: client_cmd(id, "amx_mapmenu")
        case 5: client_cmd(id, "amx_votemapmenu")
        case 6: client_cmd(id, "weaponmenu")
        case 7: client_cmd(id, "sv_restart 1")
        case 8: client_cmd(id, "say /vipmenu")
    }
    return PLUGIN_CONTINUE
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя FlashGame24
сообщение 17.11.2012, 19:37
Сообщение #3


Стаж: 13 лет
Город: Moscow

Сообщений: 31
Благодарностей: 4
Полезность: 100

Цитата(Orty_Hart @ 17.11.2012, 21:33) *
FlashGame24,
Так нужно делать:
Скрытый текст
Код
public admin_menu(id, key)
{
    switch (key)
    {
        case 0: client_cmd(id, "amx_kickmenu")
        case 1: client_cmd(id, "amx_banmenu")
        case 2: client_cmd(id, "amx_slapmenu")
        case 3: client_cmd(id, "amx_teammenu")
        case 4: client_cmd(id, "amx_mapmenu")
        case 5: client_cmd(id, "amx_votemapmenu")
        case 6: client_cmd(id, "weaponmenu")
        case 7: client_cmd(id, "sv_restart 1")
        case 8: client_cmd(id, "say /vipmenu")
    }
    return PLUGIN_CONTINUE
}

Сделал вот так:
Код
#include <amxmodx>
#include <amxmisc>

const KEYSMENU = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
_KEY_8|MENU_KEY_9|MENU_KEY_0

public plugin_init()
{
    register_plugin("Admin Menu", "1.0", "ill")
    register_clcmd("amxmodmenu", "press_menu")
    register_menu("Admin Menu", KEYSMENU, "admin_menu")
}

public press_menu(id)
{    
    if(!(get_user_flags(id) & ADMIN_MENU))
    {
        console_print(id, "Недостаточно прав для использования команды")
        return PLUGIN_HANDLED
    }
    show_admin_menu(id)
    
    return PLUGIN_HANDLED
}

public show_admin_menu(id)
{
    static menu[450], len
    len = 0

    len += formatex(menu[len], charsmax(menu) - len, "\rАдмин Меню [FlashGame]^n^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r1. Кикнуть игрока^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r2. Забанить^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r3. \yУдарить/Убить^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r4. \yКоманда игрока^n^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r5. Смена карты^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r6. Голосование за карту^n^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r7. \yМеню оружия^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r8. \yСделать рестарт^n")
    len += formatex(menu[len], charsmax(menu) - len, "\r9. \yВипменю^n")
    
    len += formatex(menu[len], charsmax(menu) - len, "^n^n\r0. Выход")
    
    show_menu(id, KEYSMENU, menu, -1, "Admin Menu")

}

public admin_menu(id, key)
{
    switch (key)
    {
        case 0: client_cmd(id, "amx_kickmenu")
        case 1: client_cmd(id, "amx_banmenu")
        case 2: client_cmd(id, "amx_slapmenu")
        case 3: client_cmd(id, "amx_teammenu")
        case 4: client_cmd(id, "amx_mapmenu")
        case 5: client_cmd(id, "amx_votemapmenu")
        case 6: client_cmd(id, "weaponmenu")
        case 7: client_cmd(id, "sv_restart 1")
        case 8: client_cmd(id, "say /vipmenu")
    }
    return PLUGIN_CONTINUE
}

Ошибки при компиляции Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team

amxmodmenu.sma(4) : error 017: undefined symbol "MEN_KEY_8"
amxmodmenu.sma(4 -- 6) : error 008: must be a constant expression; assumed zero
amxmodmenu.sma(32) : warning 217: loose indentation
amxmodmenu.sma(41) : warning 217: loose indentation

2 Errors.
Could not locate output file amxmodmenu.amx (compile failed).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 17.11.2012, 19:43
Сообщение #4
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

FlashGame24,
1. Код ложи под спойлер.

2. Вот так делать:

Скрытый текст
Код
#include <amxmodx>
#include <amxmisc>

public plugin_init()
{
    register_plugin("Admin Menu", "1.0", "ill")
    register_clcmd("amxmodmenu", "press_menu")
    register_menucmd(register_menuid("Admin Menu"), 1023, "admin_menu")
}

public press_menu(id)
{    
    if(!(get_user_flags(id) & ADMIN_MENU))
    {
        console_print(id, "Недостаточно прав для использования команды")
        return PLUGIN_HANDLED
    }
    show_admin_menu(id)
    
    return PLUGIN_HANDLED
}

public show_admin_menu(id)
{
    new menu[512], len
    new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
_KEY_8|MENU_KEY_9|MENU_KEY_0

    len = format(menu, 511, "\rАдмин Меню [FlashGame]^n^n")
    len += format(menu[len], 511 - len, "\r1. Кикнуть игрока^n")
    len += format(menu[len], 511 - len, "\r2. Забанить^n")
    len += format(menu[len], 511 - len, "\r3. \yУдарить/Убить^n")
    len += format(menu[len], 511 - len, "\r4. \yКоманда игрока^n^n")
    len += format(menu[len], 511 - len, "\r5. Смена карты^n")
    len += format(menu[len], 511 - len, "\r6. Голосование за карту^n^n")
    len += format(menu[len], 511 - len, "\r7. \yМеню оружия^n")
    len += format(menu[len], 511 - len, "\r8. \yСделать рестарт^n")
    len += format(menu[len], 511 - len, "\r9. \yВипменю^n")
    len += format(menu[len], 511 - len, "^n^n\r0. Выход")
    
    show_menu(id, keys, menu, -1, "Admin Menu")

}

public admin_menu(id, key)
{
    switch (key)
    {
        case 0: client_cmd(id, "amx_kickmenu")
        case 1: client_cmd(id, "amx_banmenu")
        case 2: client_cmd(id, "amx_slapmenu")
        case 3: client_cmd(id, "amx_teammenu")
        case 4: client_cmd(id, "amx_mapmenu")
        case 5: client_cmd(id, "amx_votemapmenu")
        case 6: client_cmd(id, "weaponmenu")
        case 7: client_cmd(id, "sv_restart 1")
        case 8: client_cmd(id, "say /vipmenu")
    }
    return PLUGIN_CONTINUE
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя FlashGame24
сообщение 17.11.2012, 19:45
Сообщение #5


Стаж: 13 лет
Город: Moscow

Сообщений: 31
Благодарностей: 4
Полезность: 100

Цитата(Orty_Hart @ 17.11.2012, 21:43) *
FlashGame24,
1. Код ложи под спойлер.

2. Вот так делать:

Скрытый текст
Код
#include <amxmodx>
#include <amxmisc>

public plugin_init()
{
    register_plugin("Admin Menu", "1.0", "ill")
    register_clcmd("amxmodmenu", "press_menu")
    register_menucmd(register_menuid("Admin Menu"), 1023, "admin_menu")
}

public press_menu(id)
{    
    if(!(get_user_flags(id) & ADMIN_MENU))
    {
        console_print(id, "Недостаточно прав для использования команды")
        return PLUGIN_HANDLED
    }
    show_admin_menu(id)
    
    return PLUGIN_HANDLED
}

public show_admin_menu(id)
{
    new menu[512], len
    new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
_KEY_8|MENU_KEY_9|MENU_KEY_0

    len = format(menu, 511, "\rАдмин Меню [FlashGame]^n^n")
    len += format(menu[len], 511 - len, "\r1. Кикнуть игрока^n")
    len += format(menu[len], 511 - len, "\r2. Забанить^n")
    len += format(menu[len], 511 - len, "\r3. \yУдарить/Убить^n")
    len += format(menu[len], 511 - len, "\r4. \yКоманда игрока^n^n")
    len += format(menu[len], 511 - len, "\r5. Смена карты^n")
    len += format(menu[len], 511 - len, "\r6. Голосование за карту^n^n")
    len += format(menu[len], 511 - len, "\r7. \yМеню оружия^n")
    len += format(menu[len], 511 - len, "\r8. \yСделать рестарт^n")
    len += format(menu[len], 511 - len, "\r9. \yВипменю^n")
    len += format(menu[len], 511 - len, "^n^n\r0. Выход")
    
    show_menu(id, keys, menu, -1, "Admin Menu")

}

public admin_menu(id, key)
{
    switch (key)
    {
        case 0: client_cmd(id, "amx_kickmenu")
        case 1: client_cmd(id, "amx_banmenu")
        case 2: client_cmd(id, "amx_slapmenu")
        case 3: client_cmd(id, "amx_teammenu")
        case 4: client_cmd(id, "amx_mapmenu")
        case 5: client_cmd(id, "amx_votemapmenu")
        case 6: client_cmd(id, "weaponmenu")
        case 7: client_cmd(id, "sv_restart 1")
        case 8: client_cmd(id, "say /vipmenu")
    }
    return PLUGIN_CONTINUE
}

Спасибо вам!

Отредактировал: FlashGame24, - 17.11.2012, 19:48
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: