MrResm

Система ' Показывания айди игроков в чате

В теме 4 сообщения

Доброго времени суток.

Суть: В чате не показует айди игроков перед ником, как на других серверах.

Ищу кто сделает.

ВК: https://vk.com/resmers

 

Цена: 25 рублей

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

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


Ссылка на сообщение
Поделиться на другие сайты

@MrResm, OnPlayerText скидывайте.

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


Ссылка на сообщение
Поделиться на другие сайты
19 часов назад, odosenok сказал:

@MrResm, OnPlayerText скидывайте.

Скинул бы, но много. Надо скайп или дискорд для того что бы сами глянули в моде)

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


Ссылка на сообщение
Поделиться на другие сайты

Вопрос был решен через вк.

Спойлер

public OnPlayerText(playerid, text[])
{
    if(CountFloodForPlayer[playerid] >= 2) return 0;
    CountFloodForPlayer[playerid]++;
    //
	if(strlen(text) > 128) return 0;

	if(IsPlayerAuthorized(playerid) == PLAYER_OFFLINE)
	{
    	SendClientMessage(playerid, COLOR_GREY, "Вам нужно авторизироватся!");
    	return 0;
	}
	if(p_info[playerid][pMuteTime] > 0)
	{
	    SetPlayerChatBubble(playerid, "Пытается что-то сказать", CRED, 30.0, 10000);
		SendErr(playerid, "У вас бан чата");
		return 0;
	}
 	if(IsIpFound(text) || AntiReklama(text)&& !NoAntiReklama(text) )
	{
	    SendReklama(playerid,text);
		return 0;
	}
	
	new string[144];
    for(new i, c; text[i]; ++i)
        if((0x61 <= text[i] <= 0x7A) || (0x41 <= text[i] <= 0x5A) || (0xC0 <= text[i] <= 0xFF))
            string[c++] = text[i];
    for(new i, pos; i < max_exep; ++i)
        if((pos = strfind(string, exep_arr[i], false)) != -1){
            for(new len = strlen(exep_arr[i]); len--; string[pos++] = '.'){}
            i = 0;
        }
    for(new i, pos; i < max_word; ++i)
        if((pos = strfind(string, word_arr[i], false)) != -1){
            for(new len = strlen(word_arr[i]); len--; string[pos++] = '*'){}
            i = 0;
        }
    for(new i, c; text[i]; ++i)
        if((0x61 <= text[i] <= 0x7A) || (0x41 <= text[i] <= 0x5A) || (0xC0 <= text[i] <= 0xFF))
            if(string[c++] == '*')
                text[i] = '*';
	
 	if(GetPVarInt(playerid,"talkcall"))
	{
	    new callid =GetPVarInt(playerid,"called")-1;
	    if(IsPlayerConnected(callid))
	    {
	        if(GetPVarInt(callid,"talkcall"))
	        {
				format(stringer, 144, "[Тел] %s: %s", NamePlayer[playerid],text);
				SendClientMessage(callid,CYELLOW,stringer);
				SendClientMessage(playerid,CGRAY,stringer);
				return 0;
	        }
	    }
	}
	if(GetPVarInt(playerid,"TalkingLive") == 1)
	{
		if(AntiReklama(text))
		{
	        p_info[playerid][tLeader]=0;
	        p_info[playerid][tMember]=0;
	        p_info[playerid][tRank]=0;
	        UpdatePlayerData(playerid,"tLeader",0);
	        UpdatePlayerData(playerid,"tMember",0);
	        UpdatePlayerData(playerid,"tRank",0);

		    format(stringer,250,"[Анти-слив в эфире]: %s[%d] попытался отправить текст: %s",NamePlayer[playerid],playerid,text);
	        AdmMes(CBADINFO,stringer,1);
			return 0;
		}
		format(stringer, 128, "[Радио Лос Сантос] %s [%d] (тел.): %s", NamePlayer[playerid], playerid, text);
		LSNews(0x6B8E23FF, stringer);
	}
	if(GetPVarInt(playerid,"TalkingLivels") == 2)
	{
		if(AntiReklama(text))
		{
	        p_info[playerid][tLeader]=0;
	        p_info[playerid][tMember]=0;
	        p_info[playerid][tRank]=0;
	        UpdatePlayerData(playerid,"tLeader",0);
	        UpdatePlayerData(playerid,"tMember",0);
	        UpdatePlayerData(playerid,"tRank",0);

		    format(stringer,250,"[Анти-слив эфире]: %s[%d] попытался отправить текст: %s",NamePlayer[playerid],playerid,text);
	        AdmMes(CBADINFO,stringer,1);
			return 0;
		}
		if(p_info[playerid][tMember] == 16)
		{
			format(stringer, 128, "[Радио Лос Сантос] %s [%d]: %s", NamePlayer[playerid], playerid, text);
			LSNews(0x6B8E23FF, stringer);
			return 0;
		}
		else
		{
			format(stringer, 128, "[Радио Лос Сантос] %s [%d] (тел.): %s", NamePlayer[playerid],playerid, text);
			LSNews(0x6B8E23FF, stringer);
			return 0;
		}
	}

	if(GetPVarInt(playerid,"Tel") == 1)
	{
  		new string23[260];
		format(string23, 256, "[Телефон] %s: %s", NamePlayer[playerid], text);
		SendStreamMessage(20.0, playerid, string23,COLOR_FADE1);
		format(stringer, 128, "[Телефон] %s: %s", NamePlayer[playerid], text);
		return 0;
	}

	if(PEfir[playerid] != INVALID_PLAYER_ID)
	{
		if(p_info[playerid][tMember] == 16 || p_info[playerid][tLeader] == 16)
		{
			if(AntiReklama(text))
			{
		        p_info[playerid][tLeader]=0;
		        p_info[playerid][tMember]=0;
		        p_info[playerid][tRank]=0;
		        UpdatePlayerData(playerid,"tLeader",0);
		        UpdatePlayerData(playerid,"tMember",0);
		        UpdatePlayerData(playerid,"tRank",0);

			    format(stringer,250,"[Анти-слив в эфире]: %s[%d] попытался отправить текст: %s",NamePlayer[playerid],playerid,text);
		        AdmMes(CBADINFO,stringer,1);
				return 0;
			}
			format(stringer, 128, "[Радио Лос Сантос] %s: %s", NamePlayer[playerid], text);
			LSNews(0x6B8E23FF, stringer);
		}
		if(Pefir[playerid] == 2)
		{
			if(AntiReklama(text))
			{
		        p_info[playerid][tLeader]=0;
		        p_info[playerid][tMember]=0;
		        p_info[playerid][tRank]=0;
		        UpdatePlayerData(playerid,"tLeader",0);
		        UpdatePlayerData(playerid,"tMember",0);
		        UpdatePlayerData(playerid,"tRank",0);

			    format(stringer,250,"[Анти-слив в эфире]: %s[%d] попытался отправить текст: %s",NamePlayer[playerid],playerid,text);
		        AdmMes(CBADINFO,stringer,1);
				return 0;
			}
			format(stringer, 128, "[Радио Лос Сантос] %s: %s", NamePlayer[playerid], text);
			LSNews(0x6B8E23FF, stringer);
		}
		return 0;
	}
	else if(strcmp(text, "*102#", true) == 0)
	{

		SCM(playerid, COLOR_LIGHTGREEN, "==[ Мобильный баланс ] ==");
		format(stringer, 128, "- Баланс %d вирт",p_info[playerid][pMobile]);
		SCM(playerid, COLOR_WHITE, stringer);
		SCM(playerid, COLOR_WHITE, "- Пополнить баланс можно в любом банкомате");
		SCM(playerid, COLOR_LIGHTGREEN, "==[ Мобильный баланс ] ==");
		MeAction(playerid,"достаёт мобильник", 5.0);
		return 0;
	}
	if(!strcmp(text,")")) return MeAction(playerid, "улыбается"),0;
	if(!strcmp(text,"))")) return MeAction(playerid, "смеётся"),0;
	if(!strcmp(text,"(")) return MeAction(playerid, "расстроился"),0;
	if(!strcmp(text,"((")) return MeAction(playerid, "сильно расстроился"),0;
    if(GetPVarInt(playerid,"anti_sbiv_time") < gettime() && GetPVarInt(playerid,"MinerCount") == 0 && GetPVarInt(playerid,"anim_bolka") == 0 && GetPVarInt(playerid,"crack_tazer") == 0 && GetPVarInt(playerid,"Animation") == 0 && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT && !GetPVarInt(playerid,"robbankstime") && !GetPVarInt(playerid,"PlayerTied") && !GetPVarInt(playerid,"PlayerCuffedTime"))
	{
    	if(p_info[playerid][pSetAnim] == 0)
		{
			ApplyAnimation(playerid,"PED",Talk[p_info[playerid][pSetAnim]],8.1,0,1,1,1,1);
			SetTimerEx("ClearAnimText", 2000, 0, "i", playerid);
		}
    	else if(p_info[playerid][pSetAnim] != 0)
		{
			ApplyAnimation(playerid,"GANGS",Talk[p_info[playerid][pSetAnim]],4.1,1,1,1,1,1,1);
			SetTimerEx("ClearAnimText", 2000, 0, "i", playerid);
		}
	}
	if(GetPVarInt(playerid,"gag"))
	{
		SCM(playerid, COLOR_LIGHTRED, "У Вас кляп, вы не можете говорить!");
		return 0;
	}
	new mask = GetPVarInt(playerid,"mask");
	new mes[144],mesid[8],str[2][144],meslen = strlen(text);
	format(mesid,8," (%i)", playerid);
    strmid(str[0],text,0,80,100);
    strmid(str[1],text,80,meslen,meslen);
	GetPlayerPos(playerid,PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2]);
	if(PlayerPos[playerid][0] == 0.0 || PlayerPos[playerid][1] == 0.0 || PlayerPos[playerid][2] == 0.0) return 0;
	new steeer[150];
	new colors = GetPlayerColor(playerid);
	new reeede = (colors & 0xFF000000) >>> 24;
	new greeene = (colors & 0x00FF0000) >>> 16;
	new bluewe = (colors & 0x0000FF00) >>> 8;
	format(steeer,120,"%x%x%x",min(reeede + 150, 255),min(greeene + 150, 255),min(bluewe + 150, 255));
	if(colorheads[playerid] > 0)
	{
		if(!IsPlayerInAnyVehicle(playerid)) format(stringer, 144, "- {%06x}%s(%d): {%s}%s", GetPlayerColor(playerid)>>> 8,NamePlayer[playerid], playerid,steeer, text);
		else format(stringer, 144, "- {%06x}%s(%d) (в машине): {%s}%s",GetPlayerColor(playerid)>>> 8,NamePlayer[playerid], playerid, steeer,text);
	    ProxDetector(10.0, playerid, stringer,GetPlayerColor(playerid));
		SetPlayerChatBubble(playerid,text,GetPlayerColor(playerid),20.0,10000);
		return 0;
	}
	foreach(new i:Player)
	{
		if (GetPlayerVirtualWorld(playerid) != GetPlayerVirtualWorld(i) || GetPlayerInterior(playerid) != GetPlayerInterior(i)) continue;
        if(!PlayerToPoint(14.0,i,PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2])) continue;


        new color = PlayerToPoint(4.0,i,PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2]) ? (0xFFFFFFFF) : PlayerToPoint(8.0,i,PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2]) ? (0xCCCCCCFF) : (0xAAAAAAFF);
		if(mask)
		{
   	    	if(meslen>=80)
 	    	{
 	        	format(stringer,200,"- {%06x}%s%s(%d){%06x} {%s}%s: %s ...",(mask == 30) ? (0x7a766700 >>> 8) : (Fractions[mask][fractionColor]>>>8),(!IsAGang(playerid) && !ISAMAFIA(playerid)) ? ("Незнакомец") : (NamePlayer[playerid]),playerid,(Settings[i] & setPlayerIDChat) ? (""):(mesid),color>>>8,steeer,(GetPlayerState(playerid) == 2 || GetPlayerState(playerid) == 3) ? ("говорит (в машине)"):("говорит"),str[0]);
				SendClientMessage(i,color,stringer);
 	        	format(stringer,200,"{%s}... %s",steeer,str[1]);
				SendClientMessage(i,color,stringer);

            	continue;
		 	}
			else format(mes,144,"- {%06x}%s(%d)%s{%06x} {%s}%s: %s",(mask == 30) ? (0x7a766700 >>> 8) : (Fractions[mask][fractionColor]>>>8),(!IsAGang(playerid) && !ISAMAFIA(playerid)) ? ("Незнакомец") : (NamePlayer[playerid]),playerid,(Settings[i] & setPlayerIDChat) ? (""):(mesid),color>>>8,steeer,(GetPlayerState(playerid) == 2 || GetPlayerState(playerid) == 3) ? ("говорит (в машине)"):("говорит"),text);
	  	}
	 	else//
	 	{
 	    	if(meslen>=80)
 	    	{
 	        	format(stringer,200,"- {%06x}%s(%d)%s{%06x} {%s}%s: %s ...",Fractions[p_info[playerid][tMember]][fractionColor]>>>8,NamePlayer[playerid],playerid,(Settings[i] & setPlayerIDChat) ? (""):(mesid),color>>>8,steeer,(GetPlayerState(playerid) == 2 || GetPlayerState(playerid) == 3) ? ("говорит (в машине)"):("говорит"),str[0]);
				SendClientMessage(i,-1,stringer);
 	        	format(stringer,200,"{%s}... %s",steeer,str[1]);
				SendClientMessage(i,color,stringer);

            	continue;
		 	}
			else format(mes,144,"- {%06x}%s(%d)%s{%06x} {%s}%s: %s", Fractions[p_info[playerid][tMember]][fractionColor]>>>8,NamePlayer[playerid],playerid,(Settings[i] & setPlayerIDChat) ? (""):(mesid),color>>>8,steeer,(GetPlayerState(playerid) == 2 || GetPlayerState(playerid) == 3) ? ("говорит (в машине)"):("говорит"),text);
		}
    	SendClientMessage(i,-1,mes);
	}
	SetPlayerChatBubble(playerid, text, COLOR_WHITE, 20.0, 10000);
	return 0;
}

 

 

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


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

  • Последние посетители   0 пользователей онлайн

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

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

    • Узбек
      От Узбек
      Всем добрый вечер ребят! 
      Я начинающий, сегодня я вам сливаю команду 2(шт) на технические работы
      Ловите 
       
    • nazpol9
      От nazpol9
      Привет всем.

      У меня имеется мод для самп сервера и VPS с Ubuntu, на котором я пытаюсь его запустить.

      В чем суть проблемы: при запуске samp03svr, сервер запускается, но на версии 0.3.DL R-1. Когда я пытаюсь запустить этот же мод локально на Windows, сервер работает на версии 0.3.7 и я могу зайти на него без клиента 0.3.DL.

      Для решения этой проблемы я уже пробовал заменять инклуды и исполнительные файлы теми, что есть в архивах на официальном сайте сампа, перекомпилировал мод, и ничего не изменилось.
       
      #include <a_samp> #include <a_mysql> #include <foreach> #include <Pawn.RakNet> #include <streamer> #include <sscanf2> #include <float2> #include <crashdetect> #include <fmt> #include <a_http> #include <Pawn.CMD> #include <Pawn.Regex> #include <requests> #include <callbacks> #include <MD5> #include <mxdate> #include <TOTP> #include <gvar> #include <md-sort> #include <nex-ac> #include <weapon-config> #include <discord-connector> #include <3DTryg> #include <textdraw-streamer>  
      plugins crashdetect.so streamer.so textdraw-streamer.so sscanf.so pawnraknet.so pawncmd.so mysql.so requests.so profiler.so pawnregex.so TOTP.so gvar.so discord-connector.so

      Если у кого-то будут какие-либо догадки, прошу ими поделиться, если понадобится больше информации - я постараюсь её предоставить.
    • Talex
      От Talex
      Всем привет, сливаю первый мод!
      Информация о моде:

      — Основа Gamenix.
      — Мод переведен на Mysql R39, теперь ни каких слётов нет, мод работает стабильно с онлайном 160+.
      — Новый автосалон на TextDraw.
      — Система 3-х автомобилей (1 можно купить по дефолту, 2 и 3 за донат).
      — Автомобили у игроков теперь не пропадают (Id'ы авто сбивались, с номерами теперь тоже всё в порядке).
      — Оформление сервера полностью переработано, теперь оно более красивое.
      — Защита от копирования карты.
      — в меню сервера добавлен пункт визуальных настроек.
      — Номера на транспорт теперь можно приобрести в /donate.
      — Сделан новый красивый спидометр.
      — При получении номера, добавлен выбор региона.
      — Сделана система радаров и промокодов, создание прямо из игры.
      — Новый интерьер казино.
      — Магазин скинов теперь на TextDraw.
      — Автошкола полностью функционирует.
      — Добавлена информация после коннекта о последнем входе в собственный аккаунт.
      — Приватная защита от всех видов DDoS атак и DoS атак.                                                                                                                                    
      — пароль от АП (/alog) теперь у каждого администратора индивидуальный.
      — Изменено оформление самого мода
      Это не все изменения мода, их ещё очень много. все не упомнишь. 
      Автор мода: Неизвестен
      CUNBERS RP 8.4.3.rar