PHP: #pragma tabsize 0 public OnPluginStart() { RegConsoleCmd("math", Mat_Command); } public Action:Mat_Command(ic, argc) { if ( ic == 0 ) { PrintToServer("client-side only"); return Plugin_Handled; } ShowMatMenu(ic); return Plugin_Handled; } ShowMatMenu(ic) { new Handle:hMenu = CreateMenu(Handle_Mu1Menu); SetMenuTitle(hMenu, "Меню цикла\nВыберите цикл:"); AddMenuItem(hMenu, NULL_STRING, "От 1 до 100"); AddMenuItem(hMenu, NULL_STRING, "От 1 до 200"); AddMenuItem(hMenu, NULL_STRING, "От 1 до 300"); SetMenuExitBackButton(hMenu, true); DisplayMenu(hMenu, ic, MENU_TIME_FOREVER); } public action:Handle_Mu1Menu(Handle:hMenu, MenuAction:action, ic, iSlot) { if ( action == MenuAction_Select ) { if ( iSlot == 0 ) { new summ = 0; for (new i = 1; i < 100; i++) { summ += i; } PrintToChatAll("\x01[Цикл] \x04Вы сосчитали от 1 до 100, ответ: %d", summ); ShowMatMenu(ic); } else if ( iSlot == 1 ) { new summ = 0; for (new i = 1; i < 200; i++) { summ += i; } PrintToChatAll("\x01[Цикл] \x04Вы сосчитали от 1 до 200, ответ: %d", summ) ShowMatMenu(ic); } else if ( iSlot == 2 ) { new summ = 0; for (new i = 1; i < 300; i++) { summ += i; } PrintToChatAll("\x01[Цикл] \x04Вы сосчитали от 1 до 200, ответ: %d", summ) ShowMatMenu(ic); } else if ( action == MenuAction_End ) { CloseHandle(hMenu); } } } Ошбика: // F:\Servers\myzmsrv\cstrike\addons\sourcemod\scripting\mat.sp(21) : error 100: function prototypes do not match
Кодировка какая? должна быть UTF8 без BOOM Код: else if ( iSlot == 2 ) { new summ = 0; for (new i = 1; i < 300; i++) { summ += i; } PrintToChatAll("\x01[Цикл] \x04Вы сосчитали от 1 до [COLOR="Red"]200[/COLOR], ответ: %d", summ) ShowMatMenu(ic); } должно быть 300, не?
ошибка тут: Спойлер public action:Handle_Mu1Menu(Handle:hMenu, MenuAction:action, ic, iSlot) У Handle_Mu1Menu нету action. Добавлено через 3 минуты Как сделать так, чтоб и имя показывал и то, что посчитал: Спойлер else if ( iSlot == 1 ) { decl String:sName[32]; GetClientName(ic, sName, sizeof(sName) - 1); new summ = 0; for (new i = 1; i < 200; i++) { summ += i; } PrintToChatAll("\x01[Цикл] \x04Игрок \x03%s \x04сосчитал от 1 до 200, ответ: %d", summ, sName); ShowMatMenu(ic); } Получается: [Цикл] Игрок V сосчитал от 1 до 200, ответ: 1262703942
PHP: else if ( iSlot == 1 ) { new summ = 0; for (new i = 1; i < 200; i++) { summ += i; } PrintToChatAll("\x01[Цикл] \x04Игрок \x03%N \x04сосчитал от 1 до 200, ответ: %d",ic, summ); ShowMatMenu(ic); }