• 0
Гость Андрей

Не работает команда

Вопросы

Команда:
 

  cmd (открыть спойлер)

 

  ondialogresponse (открыть спойлер)

 

Когда вызываешь команду вылазит диалоговое окно, когда кликаешь - оно тупо скипается.

Поделиться сообщением


Ссылка на сообщение

10 ответов на этот вопрос

  • 0

Твой код ничего большего и не содержит в себе.
Да, переменную stringer ты изменяешь, только впустую.
После использования функции strcat используй функцию ShowPlayerDialog.

 

Примерное использование:

ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Команды администратора", stringer, "Закрыть", "");

 

Поделиться сообщением


Ссылка на сообщение
  • 0

Гость Андрей, Ну во первых Андрей, зачем вам params? И в switch у вас всего лишь 7 case будет, у вас их 10.

Поделиться сообщением


Ссылка на сообщение
  • 0
  В 5/6/2020 в 21:06, Nekit_Krut18 сказал:

Гость Андрей, Ну во первых Андрей, зачем вам params? И в switch у вас всего лишь 7 case будет, у вас их 10.

Читать далее...  

От наличия params[] в регистрации новой команды ничего критического не происходит, это не является ошибкой.

В switch-конструкции может быть и один-единственный case, однако это тоже не является решением заявленной проблемы.

Поделиться сообщением


Ссылка на сообщение
  • 0

Гость Андрей, И вам не куда выводить текст. Либо используйте SendClientMessage(playerid, COLOR_WHITE, stringer); 

Либо же диалогом - ShowPLayerDialog( playerid, d_none, DIALOG_STYLE_MSGBOX, "{"#cBL"}Команды администрации", stringer, "Закрыть", "" ) ;

d_none - это ид диалога, можете заменить на другой свободный.

Вот замените на то, что у вас есть сейчас.

  Цитата
	if(dialogid == 4)
	{
		if(!response) return 1;
		switch(listitem)
		{
        	case 0:
        	{
	        	new stringer[495];
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/ahelp {FFFFFF}- Админ-Команды\n");
        	}
        	case 1:
        	{
				if(Player[playerid][pAdmin] < 2) return SendClientMessage(playerid,COLOR_WHITE,"Недоступно");
				new stringer[495];
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/cmd {FFFFFF}- \n");
        	}
        	case 2:
			{
				if(Player[playerid][pAdmin] < 3) return SendClientMessage(playerid,COLOR_WHITE,""InfoA"Недоступно");
				new stringer[495];
	     	   	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/hp {FFFFFF}- Восстановить себе здоровье\n");
			}
			case 3:
			{
				if(Player[playerid][pAdmin] < 4) return SendClientMessage(playerid,COLOR_WHITE,""InfoA"Недоступно");
				new stringer[495];
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/sethp {FFFFFF}- Установить HP игроку\n");
			}
			case 4:
			{
				if(Player[playerid][pAdmin] < 5) return SendClientMessage(playerid,COLOR_WHITE,"Недоступно");
				new stringer[495];
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/clearchat {FFFFFF}- Отчистить чат\n");
			}
			case 5:
			{
				if(Player[playerid][pAdmin] < 6) return SendClientMessage(playerid,COLOR_WHITE,"Недоступно");
				new stringer[495];
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/cmd {FFFFFF}- \n");
			}
			case 6:
			{
				if(Player[playerid][pAdmin] < 7) return SendClientMessage(playerid,COLOR_WHITE,"Недоступно");
				new stringer[495];
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/timeset {FFFFFF}- Изменить время на сервере\n");
			}
		}
		ShowPlayerDialog( playerid, d_none, DIALOG_STYLE_MSGBOX, "{"#cBL"}Команды администрации", "Закрыть" , "");
	}

 

Читать далее...  

И всё будет нормально.

Отредактировано пользователем Nekit_Krut18
Причина: Дополнение.

Поделиться сообщением


Ссылка на сообщение
  • 0

@Nekit_Krut18 допустил ошибочку) Проверь ещё раз строку кода с показом диалога

	if(dialogid == 4)
	{
		if(!response) return 1;
      	new stringer[495];
		switch(listitem)
		{
            
        	case 0:
        	{
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/ahelp {FFFFFF}- Админ-Команды\n");
        	}
        	case 1:
        	{
				if(Player[playerid][pAdmin] < 2) return SendClientMessage(playerid,COLOR_WHITE,"Недоступно");
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/cmd {FFFFFF}- \n");
        	}
        	case 2:
			{
				if(Player[playerid][pAdmin] < 3) return SendClientMessage(playerid,COLOR_WHITE,""InfoA"Недоступно");
	     	   	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/hp {FFFFFF}- Восстановить себе здоровье\n");
			}
			case 3:
			{
				if(Player[playerid][pAdmin] < 4) return SendClientMessage(playerid,COLOR_WHITE,""InfoA"Недоступно");
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/sethp {FFFFFF}- Установить HP игроку\n");
			}
			case 4:
			{
				if(Player[playerid][pAdmin] < 5) return SendClientMessage(playerid,COLOR_WHITE,"Недоступно");
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/clearchat {FFFFFF}- Отчистить чат\n");
			}
			case 5:
			{
				if(Player[playerid][pAdmin] < 6) return SendClientMessage(playerid,COLOR_WHITE,"Недоступно");
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/cmd {FFFFFF}- \n");
			}
			case 6:
			{
				if(Player[playerid][pAdmin] < 7) return SendClientMessage(playerid,COLOR_WHITE,"Недоступно");
	        	stringer[0] = EOS;
				strcat(stringer, "{FFCC00}/timeset {FFFFFF}- Изменить время на сервере\n");
			}
		}
		ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Команды администрации", stringer, "Закрыть" , "");
	}

 

Отредактировано пользователем SCRIPTMAN

Поделиться сообщением


Ссылка на сообщение
  • 0

@SCRIPTMAN Хмм но там все верно.

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Nekit_Krut18 а выводить какой текст будет в диалоге? =)

Поделиться сообщением


Ссылка на сообщение
  • 0

@SCRIPTMAN stringer

 

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Nekit_Krut18 

ShowPlayerDialog( playerid, d_none, DIALOG_STYLE_MSGBOX, "{"#cBL"}Команды администрации", "Закрыть" , "");

Посмотри свой диалог повнимательнее, и давай, прекратим заполнять тему

Отредактировано пользователем SCRIPTMAN

Поделиться сообщением


Ссылка на сообщение
  • 0

@SCRIPTMAN Извиняюсь, не заметил.

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу