suremiur
♂ overlay master ♂
- Сообщения
- 537
- Реакции
- 585
Дак тут он в 1 сообщении@will_rock, скинь плагин что ли, пусть скриптеры посмотрят хоть на него, и скажут как сделать то, что тебе нужно.
Ой, я затупил) Пробивал эту фразу по файлам ядра :biggrin: Спасибо, сейчас буду что-то пытаться сделать)@will_rock, хм, я так понимаю ты это через модуль lk_module_command продаешь ? В нём есть проверка IsPlayerAlive
public int MenuHandler_MainMenu(Menu hMenu, MenuAction action, int iClient, int iItem)
{
switch(action)
{
case MenuAction_End: delete hMenu;
case MenuAction_Cancel:
{
if(iItem == MenuCancel_ExitBack) LK_ShowMainMenu(iClient);
}
case MenuAction_Select:
{
char szInfo[16];
hMenu.GetItem(iItem, szInfo, sizeof(szInfo));
int i = StringToInt(szInfo);
if (IsClientInGame(iClient))
{
char sAuth[32], sName[64], sUserID[16];
IntToString(GetClientUserId(iClient), sUserID, sizeof(sUserID));
GetClientAuthId(iClient, AuthId_Steam2, sAuth, sizeof(sAuth));
GetClientName(iClient, sName, sizeof(sName));
if(StrContains(g_Command[i][Command], "{STEAMID}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{STEAMID}", sAuth);
if(StrContains(g_Command[i][Command], "{USERID}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{USERID}", sUserID);
if(StrContains(g_Command[i][Command], "{NAME}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{NAME}", sName);
LK_TakeClientCash(iClient, g_Command[i][Price]);
ServerCommand(g_Command[i][Command]);
LK_PrintToChat(iClient, "%T", "Succes_Buy", iClient, g_Command[i][Price]);
ShowMenuModule(iClient);
}
}
}
}
public int MenuHandler_MainMenu(Menu hMenu, MenuAction action, int iClient, int iItem)
{
switch(action)
{
case MenuAction_End: delete hMenu;
case MenuAction_Cancel:
{
if(iItem == MenuCancel_ExitBack) LK_ShowMainMenu(iClient);
}
case MenuAction_Select:
{
char szInfo[16];
hMenu.GetItem(iItem, szInfo, sizeof(szInfo));
int i = StringToInt(szInfo);
if (iClient)
{
char sAuth[32], sName[64], sUserID[16];
IntToString(GetClientUserId(iClient), sUserID, sizeof(sUserID));
GetClientAuthId(iClient, AuthId_Steam2, sAuth, sizeof(sAuth));
GetClientName(iClient, sName, sizeof(sName));
if(StrContains(g_Command[i][Command], "{STEAMID}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{STEAMID}", sAuth);
if(StrContains(g_Command[i][Command], "{USERID}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{USERID}", sUserID);
if(StrContains(g_Command[i][Command], "{NAME}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{NAME}", sName);
LK_TakeClientCash(iClient, g_Command[i][Price]);
ServerCommand(g_Command[i][Command]);
LK_PrintToChat(iClient, "%T", "Succes_Buy", iClient, g_Command[i][Price]);
ShowMenuModule(iClient);
}
}
}
}
Большое спасибо за помощь) Второй вариант вроде как нормально работает и ошибок в логах нет@will_rock, я конечно не скриптер, в коде вообще не понимаю. Оффтоппрошу не ругайтесь кто это увидит из кодеров
1 вариант заменить на проверку "в игре"
2 вариантPHP:public int MenuHandler_MainMenu(Menu hMenu, MenuAction action, int iClient, int iItem) { switch(action) { case MenuAction_End: delete hMenu; case MenuAction_Cancel: { if(iItem == MenuCancel_ExitBack) LK_ShowMainMenu(iClient); } case MenuAction_Select: { char szInfo[16]; hMenu.GetItem(iItem, szInfo, sizeof(szInfo)); int i = StringToInt(szInfo); if (IsClientInGame(iClient)) { char sAuth[32], sName[64], sUserID[16]; IntToString(GetClientUserId(iClient), sUserID, sizeof(sUserID)); GetClientAuthId(iClient, AuthId_Steam2, sAuth, sizeof(sAuth)); GetClientName(iClient, sName, sizeof(sName)); if(StrContains(g_Command[i][Command], "{STEAMID}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{STEAMID}", sAuth); if(StrContains(g_Command[i][Command], "{USERID}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{USERID}", sUserID); if(StrContains(g_Command[i][Command], "{NAME}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{NAME}", sName); LK_TakeClientCash(iClient, g_Command[i][Price]); ServerCommand(g_Command[i][Command]); LK_PrintToChat(iClient, "%T", "Succes_Buy", iClient, g_Command[i][Price]); ShowMenuModule(iClient); } } } }
Понятия не имею, правильно ли я что-то делаю или нет)))PHP:public int MenuHandler_MainMenu(Menu hMenu, MenuAction action, int iClient, int iItem) { switch(action) { case MenuAction_End: delete hMenu; case MenuAction_Cancel: { if(iItem == MenuCancel_ExitBack) LK_ShowMainMenu(iClient); } case MenuAction_Select: { char szInfo[16]; hMenu.GetItem(iItem, szInfo, sizeof(szInfo)); int i = StringToInt(szInfo); if (iClient) { char sAuth[32], sName[64], sUserID[16]; IntToString(GetClientUserId(iClient), sUserID, sizeof(sUserID)); GetClientAuthId(iClient, AuthId_Steam2, sAuth, sizeof(sAuth)); GetClientName(iClient, sName, sizeof(sName)); if(StrContains(g_Command[i][Command], "{STEAMID}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{STEAMID}", sAuth); if(StrContains(g_Command[i][Command], "{USERID}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{USERID}", sUserID); if(StrContains(g_Command[i][Command], "{NAME}", true) > 0) ReplaceString(g_Command[i][Command], 128, "{NAME}", sName); LK_TakeClientCash(iClient, g_Command[i][Price]); ServerCommand(g_Command[i][Command]); LK_PrintToChat(iClient, "%T", "Succes_Buy", iClient, g_Command[i][Price]); ShowMenuModule(iClient); } } } }
Ну да, с проверкой все норм, но там действие можешь сделать только когда ты живой, что не очень то комильфо) Наоборот когда тебя убили, тебе нефиг делать и ты открываешь лк, ну и можешь например всех убить или шлепнуть. Но эта проверка жив игрок или нет не позволяет это сделать(@will_rock, как я говорил, я не скриптер, и в коде не понимаю ничего. Те примеры которые я скинул, только догадки. Ведать там не просто так стояла проверка живой или мертвый игрок. С проверкой то кстати работало нормально ?
Логи смотрите.Здравствуйте!
Что может быть за фигня, счёт пополнил, купил вип, а покупаю админку просто выходит из меня и всё
[lk/lk_module_pokupka_admin.smx] SQL_Callback_LoadPlayer: Table 'sql_820_free.sb_admins' doesn't existЛоги смотрите.