Jump to content

CM Punk

Inactive Member
  • Posts

    35
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by CM Punk

  1. Comment this line in input_main.cpp

     

    ConvertEmpireText(bEmpire, converted_msg + namelen, len - namelen, 10 + 2 * d->GetCharacter()->GetSkillPower(SKILL_LANGUAGE1 + bEmpire - 1));

     

    I have does not work

    			if (g_bEmpireWhisper)
    				if (!ch->IsEquipUniqueGroup(UNIQUE_GROUP_RING_OF_LANGUAGE))
    					if (!(pkChr && pkChr->IsEquipUniqueGroup(UNIQUE_GROUP_RING_OF_LANGUAGE)))
    						if (bOpponentEmpire != ch->GetEmpire() && ch->GetEmpire() && bOpponentEmpire // Ľ­·Î Á¦±ąŔĚ ´Ů¸Ł¸éĽ­
    								&& ch->GetGMLevel() == GM_PLAYER && gm_get_level(pinfo->szNameTo) == GM_PLAYER) // µŃ´Ů ŔĎąÝ ÇĂ·ąŔĚľîŔ̸é
    							// Ŕ̸§ ąŰżˇ ¸đ¸Ł´Ď gm_get_level ÇÔĽö¸¦ »çżë
    						{
    							if (!pkChr)
    							{
    								// ´Ů¸Ą Ľ­ąöżˇ ŔÖŔ¸´Ď Á¦±ą ÇĄ˝Ă¸¸ ÇŃ´Ů. bTypeŔÇ »óŔ§ 4şńĆ®¸¦ EmpireąřČŁ·Î »çżëÇŃ´Ů.
    								bType = ch->GetEmpire() << 4;
    							}
    							else
    							{
    								//ConvertEmpireText(ch->GetEmpire(), buf, buflen, 10 + 2 * pkChr->GetSkillPower(SKILL_LANGUAGE1 + ch->GetEmpire() - 1)/*şŻČŻČ®·ü*/);
    							}
    						}
    
  2. int CInputMain::Chat(LPCHARACTER ch, const char * data, size_t uiBytes)
    {
    	const TPacketCGChat* pinfo = reinterpret_cast<const TPacketCGChat*>(data);
    
    	if (uiBytes < pinfo->size)
    		return -1;
    
    	const int iExtraLen = pinfo->size - sizeof(TPacketCGChat);
    
    	if (iExtraLen < 0)
    	{
    		sys_err("invalid packet length (len %d size %u buffer %u)", iExtraLen, pinfo->size, uiBytes);
    		ch->GetDesc()->SetPhase(PHASE_CLOSE);
    		return -1;
    	}
    
    	char buf[CHAT_MAX_LEN - (CHARACTER_NAME_MAX_LEN + 3) + 1];
    	strlcpy(buf, data + sizeof(TPacketCGChat), MIN(iExtraLen + 1, sizeof(buf)));
    	const size_t buflen = strlen(buf);
    
    	if (buflen > 1 && *buf == '/')
    	{
    		interpret_command(ch, buf + 1, buflen - 1);
    		return iExtraLen;
    	}
    
    	if (ch->IncreaseChatCounter() >= 10)
    	{
    		if (ch->GetChatCounter() == 10)
    		{
    			sys_log(0, "CHAT_HACK: %s", ch->GetName());
    			ch->GetDesc()->DelayedDisconnect(5);
    		}
    
    		return iExtraLen;
    	}
    
    	// äĆĂ ±ÝÁö Affect Ăł¸®
    	const CAffect* pAffect = ch->FindAffect(AFFECT_BLOCK_CHAT);
    
    	if (pAffect != NULL)
    	{
    		SendBlockChatInfo(ch, pAffect->lDuration);
    		return iExtraLen;
    	}
    
    	if (true == SpamBlockCheck(ch, buf, buflen))
    	{
    		return iExtraLen;
    	}
    
    	char chatbuf[CHAT_MAX_LEN + 1];
    	int len = snprintf(chatbuf, sizeof(chatbuf), "%s : %s", ch->GetName(), buf);
    
    	if (CHAT_TYPE_SHOUT == pinfo->type)
    	{
    		LogManager::instance().ShoutLog(g_bChannel, ch->GetEmpire(), chatbuf);
    	}
    
    	if (LC_IsCanada() == false)
    	{
    		CBanwordManager::instance().ConvertString(buf, buflen);
    	}
    
    	if (len < 0 || len >= (int) sizeof(chatbuf))
    		len = sizeof(chatbuf) - 1;
    
    	int processReturn = ProcessTextTag(ch, chatbuf, len);
    	if (0!=processReturn)
    	{
    		const TItemTable* pTable = ITEM_MANAGER::instance().GetTable(ITEM_PRISM);
    
    		if (NULL != pTable)
    		{
    			if (3==processReturn) //±łČŻÁß
    				ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("´Ů¸Ą °Ĺ·ˇÁß(â°í,±łČŻ,»óÁˇ)żˇ´Â °łŔλóÁˇŔ» »çżëÇŇ Ľö ľř˝Ŕ´Ď´Ů."), pTable->szLocaleName);
    			else
    				ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%sŔĚ ÇĘżäÇŐ´Ď´Ů."), pTable->szLocaleName);
    						
    		}
    
    		return iExtraLen;
    	}
    
    	if (pinfo->type == CHAT_TYPE_SHOUT)
    	{
    		const int SHOUT_LIMIT_LEVEL = 15;
    
    		if (ch->GetLevel() < SHOUT_LIMIT_LEVEL)
    		{
    			ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("żÜġ±â´Â ·ąş§ %d ŔĚ»ó¸¸ »çżë °ˇ´É ÇŐ´Ď´Ů."), SHOUT_LIMIT_LEVEL);
    			return (iExtraLen);
    		}
    
    		if (thecore_heart->pulse - (int) ch->GetLastShoutPulse() < passes_per_sec * 15)
    			return (iExtraLen);
    
    		ch->SetLastShoutPulse(thecore_heart->pulse);
    
    		const char* kingdoms[3] = {"|cFFff0000|H|h[Shinsoo]|cFFA7FFD4|H|h","|cFFFFFF00|H|h[Chunjo]|cFFA7FFD4|H|h","|cFF0080FF|H|h[Jinno]|cFFA7FFD4|H|h"};
    		char chatbuf_global[CHAT_MAX_LEN + 1];
    		int len_global = snprintf(chatbuf_global, sizeof(chatbuf_global), "%s %s",kingdoms[ch->GetEmpire()-1], chatbuf);
    
    		TPacketGGShout p;
    
    		p.bHeader = HEADER_GG_SHOUT;
    		p.bEmpire = ch->GetEmpire();
    		strlcpy(p.szText, chatbuf_global, sizeof(p.szText));
    
    		P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGShout));
    
    		SendShout(chatbuf_global, ch->GetEmpire());
    
    		return (iExtraLen);
    	}
    
    	TPacketGCChat pack_chat;
    
    	pack_chat.header = HEADER_GC_CHAT;
    	pack_chat.size = sizeof(TPacketGCChat) + len;
    	pack_chat.type = pinfo->type;
    	pack_chat.id = ch->GetVID();
    
    	switch (pinfo->type)
    	{
    		case CHAT_TYPE_TALKING:
    			{
    				const DESC_MANAGER::DESC_SET & c_ref_set = DESC_MANAGER::instance().GetClientSet();
    
    				if (false)
    				{
    					std::for_each(c_ref_set.begin(), c_ref_set.end(), 
    							FYmirChatPacket(pack_chat,
    								buf,
    								strlen(buf),
    								ch->GetName(),
    								strlen(ch->GetName()),
    								ch->GetMapIndex(),
    								ch->GetEmpire(),
    								ch->IsEquipUniqueGroup(UNIQUE_GROUP_RING_OF_LANGUAGE)));
    				}
    				else
    				{
    					std::for_each(c_ref_set.begin(), c_ref_set.end(), 
    							FEmpireChatPacket(pack_chat,
    								chatbuf,
    								len, 
    								(ch->GetGMLevel() > GM_PLAYER ||
    								 ch->IsEquipUniqueGroup(UNIQUE_GROUP_RING_OF_LANGUAGE)) ? 0 : ch->GetEmpire(), 
    								ch->GetMapIndex(), strlen(ch->GetName())));
    				}
    			}
    			break;
    
    		case CHAT_TYPE_PARTY:
    			{
    				if (!ch->GetParty())
    					ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ĆÄĆĽ ÁßŔĚ ľĆ´Ő´Ď´Ů."));
    				else
    				{
    					TEMP_BUFFER tbuf;
    					
    					tbuf.write(&pack_chat, sizeof(pack_chat));
    					tbuf.write(chatbuf, len);
    
    					RawPacketToCharacterFunc f(tbuf.read_peek(), tbuf.size());
    					ch->GetParty()->ForEachOnlineMember(f);
    				}
    			}
    			break;
    
    		case CHAT_TYPE_GUILD:
    			{
    				if (!ch->GetGuild())
    					ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("±ćµĺżˇ °ˇŔÔÇĎÁö ľĘľŇ˝Ŕ´Ď´Ů."));
    				else
    					ch->GetGuild()->Chat(chatbuf);
    			}
    			break;
    
    		default:
    			sys_err("Unknown chat type %d", pinfo->type);
    			break;
    	}
    
    	return (iExtraLen);
    }
    
    
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.