Sign in to follow this  
Followers 0
MrResm

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

4 posts in this topic

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

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

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

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

 

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

Edited by MrResm

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
19 часов назад, odosenok сказал:

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

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

Share this post


Link to post
Share on other sites

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

Спойлер

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;
}

 

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Feris
      By Feris
      Приветствую всех, Вы ищете SA-MP серверы Freeroam ? Вот, пожалуйста!

      Языковые серверы: Английский/Чешский/Словацкий

      Посетите наши SA-MP серверы :

      Сервер 1 0.3.7 Клиентский сервер:
      Для подключения: play.superparba.eu:7777

      Сервер 2 0.3DL Клиентский сервер собственные острова и новые сюжетные миссии:
      Для подключения: Dl.superparba.eu:7777

      Сайт сервера: SuperParba.eu

      Discord: https://discord.com/invite/VRrtbsCJgb

      Почему вы должны играть на наших игровых серверах?

      SuperParba построен на создании сообщества и его характера, в котором вы можете управлять своим собственным
      бизнесом, покупать недвижимость, компании, быть членом банды - участвовать в гонках, бороться за территорию, захватывать склады в уникальной игре GANG.
      захватывать склады в уникальной системе GANG. Множество различных мероприятий от команды администрации, таких как
      Fallout, Sky (street) races, Color Dash, Runners VS Riders, Shooters VS Riders, Random events, Hit & Run,
      Тюнинг события, Дерби, Смертельные события, DM ... будут проходить каждый день и дополняться МЕГА
      событиями, которые проходят в течение нескольких недель! Мы работаем с 2008 года, сервер прошел
      через сотни полноценных обновлений из предложений по улучшению сервера от игрового
      сообщества! PARTY СЕРВЕР с игровым режимом RZE 10.1 режим попадает прямо под кожу, такова
      SuperParba!

      - Профессиональная команда администраторов, которая следит за порядком, создает веселье и помогает игрокам с любой проблемой.
      Если вы не знаете, как справиться с чем-то, используйте /ask, чтобы отправить свой вопрос напрямую к
      Администраторам, и вы получите ответ в кратчайшие сроки.

      - Для новичков был добавлен краткий учебник. Для навигации к месту запуска используйте команду
      /tutorial. Завершив учебник с 0 часов игры, новичок получит 7 дней
      премиум классик бесплатно.

      - Игроки нашли много веселья, эмоций, поворотов, друзей, новостей и воспоминаний за эти 12
      лет. Есть даже несколько реальных отношений, с которыми они познакомились в SuperParba. Это будет
      безумие, когда они расскажут об этом своим детям. Игроки рады вернуться на наш сервер, так что приходите и присоединяйтесь к нашей
      семье!

      Спасибо, что читаете.
    • panda1999
      By panda1999
      Ищу команду для открытие Торговой площадки Котороя готова вложиться на разработку писать в лс на сайте или вк https://vk.com/panda131999
      Скрин шот главной страницы