Вопросы

Не работает чат депортамента для новой фракции, вот сделал все правильно вроде бы правильно

if(IsACop(playerid) || PI[playerid][pMember] == TEAM_ARMIYA || TEAM_MCHS || IsAMedic(playerid) || IsAMayor(playerid) || PI[playerid][pMember] == TEAM_AUTOSCHOOL || IsANews(playerid))

 

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


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

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

  • 0

@archiboy6 неправильно сделано. 

if(IsACop(playerid) || PI[playerid][pMember] == TEAM_ARMIYA || PI[playerid][pMember] == TEAM_MCHS || IsAMedic(playerid) || IsAMayor(playerid) || PI[playerid][pMember] == TEAM_AUTOSCHOOL || IsANews(playerid))

 

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


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

@stibs Почему же тогда в рации сделано так как скинул и работает?

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


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

@archiboy6 Значит, там не так сделано. Впрочем, если вы уверены, что ваш код работоспособный, вы можете оставить как есть. 

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


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

@stibs Не уверен, и ваш код тоже не работоспособен, проверил только что не работает

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


Ссылка на сообщение
  • 0
CMD:d(playerid, params[])
{
	if(IsACop(playerid) || PI[playerid][pMember] == TEAM_ARMIYA || PI[playerid][pMember] == TEAM_MCHS || IsAMedic(playerid) || IsAMayor(playerid) || PI[playerid][pMember] == TEAM_AUTOSCHOOL || IsANews(playerid))
	{
		if(PI[playerid][pMuted] > 0) return SCM(playerid, COLOR_GREY, PlayerHaveMuteTime);
		else if(PI[playerid][pSetting][0] == 0) return SCM(playerid, COLOR_GREY, "Ваш чат организации отключен!");
		else if(GetPVarInt(playerid,"dep") > gettime()) return SCM(playerid, 0xFF7979AA, "Следующее сообщение вы сможете отправить через 15 секунд!");
		else if(isnull(params)) return SCM(playerid, COLOR_WHITE, "• {66CC00}[ Подсказка ] {ffffff}Введите: /d [текст]");
		else if(TextReset[playerid] > gettime() && GetString(OldMessage[playerid], params[0])) return SCM(playerid,COLOR_GREY,"Не флуди");
		else if(IsIpFound(params[0]) || CheckString(params[0])) return PlayerGetsChatBan(playerid, params[0]);
		new string[128], mesid[128];
		format(string, sizeof(string), "[D] [%s] %s %s: %s", Fraction_Name[PI[playerid][pMember]], Fraction_Rang(PI[playerid][pMember],PI[playerid][pRank]), GetName(playerid), params[0]);
		format(mesid, sizeof(mesid), "[D] [%s] %s %s[%d]: %s", Fraction_Name[PI[playerid][pMember]], Fraction_Rang(PI[playerid][pMember],PI[playerid][pRank]), GetName(playerid), playerid, params[0]);
		if(PI[playerid][pSetting][3] == 0) SendDMes(0x007FFFFF, string);
		else SendDMes(0x007FFFFF, mesid);
		SetPlayerChatBubble(playerid,"сообщает в депортамент",COLOR_PURPLE,30.0,10000);
		SetPVarInt(playerid,"dep",gettime() + 15);
		#if DEBUG_STATUS == true
			printf("[D] [%s] %s %s: %s", Fraction_Name[PI[playerid][pMember]], Fraction_Rang(PI[playerid][pMember],PI[playerid][pRank]), GetName(playerid), params[0]);
        #endif
	}
	else SCM(playerid, COLOR_GREY, YouCanNot);
	return 1;
}

 

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


Ссылка на сообщение
  • 0
  Код (открыть спойлер)

 

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


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

@stibs 

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

 

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


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

@archiboy6 судя по логам первая проверка пройдена, значит не выполняются условия последующих проверок

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


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

@stibs И где искать последующие проверки?

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


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

@archiboy6 я думаю, что можно в середину команды добавить print("Середина команды");, затем вызвать на серваке ее и по логам глянуть, если в консоль написало, что "середина команды", значит до туда выполнение идет, а если нет, то проблема где-то раньше. 

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


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

@DEST Я уже на пути к решению проблемы,я создал Stock IsAMchs все работало теперь опять не работает

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

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


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

@DEST Не работает, поможешь?

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


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

@DEST @stibs Помогите решить проблему

Заметка от DEST , создано

3.6. Запрещено поднимать (апать) свою тему чаще, чем 1 раз в 24 часа.
Выдано предупреждение

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


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

@archiboy6 покажите как сделали со стоком? 

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


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

@DEST Да я там кое что обнаружил что в конце return; было а в других стоках еще 0 щас поставил проверю

@DEST Нет не работает, сейчас покажу 

@DEST Вот который я сделал

stock IsAMchs(playerid)
{
	switch(GetTeamID(playerid))
	{
		case TEAM_MCHS: return 1;
		default: return 0;
	}
	return 0;
}

А вот другой который был

stock IsACop(playerid)
{
	switch(GetTeamID(playerid))
	{
	    case TEAM_POLICIA,TEAM_DPS,TEAM_FBI: return 1;
	    default: return 0;
	}
	return 0;
}

 

@archiboy6 Дело в том что в рации так же само прописано, и там работает 

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

 

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


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

@archiboy6 Если я подключю TEAM_MCHS к Stock IsAMedic то все работает вот сток медиков

stock IsAMedic(playerid)
{
	switch(GetTeamID(playerid))
	{
	    case TEAM_BOLNICA,TEAM_MCHS: return 1;
	    default: return 0;
	}
	return 0;
}

 

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


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

@archiboy6 значит, у вас где-то неверное значение TEAM_MCHS выдается. 

Чему оно равно? 

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


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

@archiboy6 дефайн какое значение имеет? 

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


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

@archiboy6 

  В 10/23/2017 в 12:58, DEST сказал:

TEAM_MCHS

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

 

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


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

Давайте мод дам вы посмотрите

 

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


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

@archiboy6 давайте, на досуге гляну.

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


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

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

  • Похожий контент

    • Dev_Persona
      От Dev_Persona
      Приветствую всех, у меня возник такой вопрос:
       
      - хочу изменить базовую регистрацию в админке в крмп, на Болле сложную то-есть, сейчас изначально пароль от админки может быть только из цифр, хотелось бы узнать как можно было бы сделать что бы можно было использовать и цифры и буквы, вот код:
       
      case DIALOG_ADMIN_REG:
         {
          if(!response) return FixKick(playerid);
       
          if(strval(inputtext) < 100000 || strval(inputtext) > 999999) return ShowPlayerDialog(playerid, DIALOG_ADMIN_REG, DIALOG_STYLE_INPUT, "{FF6347}"PROJECT_NAME" {ffffff}| Придумайте пароль", "{FFFFFF}Для того, чтобы продолжить дальше - придумайте и введите\n{FFFFFF}пароль от панели администратора в диалоговое поле ниже.\n\n{FFFFFF}Пароль должен быть из 6 цифр.\n", "Готово", "");
                   SetPlayerData(playerid, P_APASS, strval(inputtext));
       
                   UpdatePlayerDatabaseInt(playerid, "AdminPassword", GetPlayerData(playerid, P_APASS));
       
                   AdminAuthorization(playerid);
         }