Jump to content

Anti-Armazem Como Gm


Recommended Posts

Ir até ao ficheiro game/src/char.cpp

 

Procurar por:

void CHARACTER::ReqSafeboxLoad(const char* pszPassword)

{

if (!*pszPassword || strlen(pszPassword) > SAFEBOX_PASSWORD_MAX_LEN)

{

ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<â°í> À߸øµÈ ¾ÏÈ£¸¦ ÀÔ·ÂÇϼ̽À´Ï´Ù."));

return;

}

 

Modificar para:

void CHARACTER::ReqSafeboxLoad(const char* pszPassword)
{
if (!*pszPassword || strlen(pszPassword) > SAFEBOX_PASSWORD_MAX_LEN)
{
	ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<â°í> À߸øµÈ ¾ÏÈ£¸¦ ÀÔ·ÂÇϼ̽À´Ï´Ù."));
	return;
}
else  if (IsGM())
{
	ChatPacket(CHAT_TYPE_INFO, "Proibido mover itens para o armazem como GM.");
	return;
}
 
Link to comment
Share on other sites

Alternativa para bloquear armazém aos GM, excepto para uma personagem:

 

Ao invés de modificar como no primeiro tópico, modificar da seguinte maneira:


 

void CHARACTER::ReqSafeboxLoad(const char* pszPassword)

{

std::string nNome = GetName();

if (!*pszPassword || strlen(pszPassword) > SAFEBOX_PASSWORD_MAX_LEN)

{

ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<â°í> À߸øµÈ ¾ÏÈ£¸¦ ÀÔ·ÂÇϼ̽À´Ï´Ù."));

return;

}

else if (IsGM() && nNome != "tierrilopes")

{

ChatPacket(CHAT_TYPE_INFO, "Proibido mover itens para o armazem como GM.");

return;

}

Onde tierrilopes = nome da personagem

 

Todos os GM não poderão abrir o armazém excepto o GM cujo nome da sua personagem seja tierrilopes.

Link to comment
Share on other sites

  • 8 months later...

 

Boas pessoal como faço como alternativa para desbloquear o armazém aos GM, excepto para três personagens:

obg

 

Olá feio não cheguei a testar mas penso que essa será a resposta para a tua questão:

 

void CHARACTER::ReqSafeboxLoad(const char* pszPassword)

{

std::string nNome = GetName();

if (!*pszPassword || strlen(pszPassword) > SAFEBOX_PASSWORD_MAX_LEN)

{

ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<â°í> À߸øµÈ ¾ÏÈ£¸¦ ÀÔ·ÂÇϼ̽À´Ï´Ù."));

return;

}

else if ((IsGM() && nNome != "nome1") || (IsGM() && nNome != "nome2") || (IsGM() && nNome != "nome3"))

{

ChatPacket(CHAT_TYPE_INFO, "Proibido mover itens para o armazem como GM.");

return;

}

 

só não te sei dizer se está correcto porque não tenho como testar, mas seguindo a lógica seria tipo:

se nome abrir armazém, verificar a pw e se for gm e o nome for diferente de nome1 ou for gm e o nome for diferente de nome2 ou se for gm e o nome for diferente de nome3, dizer "Proibido mover itens para armazem como gm".

 

caso de erro a compilar, altera para o seguinte:

void CHARACTER::ReqSafeboxLoad(const char* pszPassword)
{
std::string nNome = GetName();
if (!*pszPassword || strlen(pszPassword) > SAFEBOX_PASSWORD_MAX_LEN)
{
	ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<â°í> À߸øµÈ ¾ÏÈ£¸¦ ÀÔ·ÂÇϼ̽À´Ï´Ù."));
	return;
}
else  if (IsGM() && nNome != "nome1" || nNome != "nome2" || nNome != "nome3")
{
	ChatPacket(CHAT_TYPE_INFO, "Proibido mover itens para o armazem como GM.");
	return;
}

Link to comment
Share on other sites

 

Boas Dynamic, testei as duas formas com o nome dos chares que escolhi continua com o abertura do armazém bloqueado.

 

eu tenho assim e funciona:

void CHARACTER::ReqSafeboxLoad(const char* pszPassword)
{
std::string nNome = GetName();
if (!*pszPassword || strlen(pszPassword) > SAFEBOX_PASSWORD_MAX_LEN)
{
	ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<A¢°i> A߸øμE ¾IE£¸| AO·ACI¼I½A´I´U."));
	return;
}
else  if (IsGM() && nNome != "Nomedochar1" && nNome != "Nomedochar2")
{
	ChatPacket(CHAT_TYPE_INFO, "Proibido mover itens para o armazem como GM.");
	return;
}

Link to comment
Share on other sites

  • 7 months later...

Na minha surce tenho assim 

void CHARACTER::ReqSafeboxLoad(const char* pszPassword)
{
	if (!*pszPassword || strlen(pszPassword) > SAFEBOX_PASSWORD_MAX_LEN)
	{
		ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<창고> 잘못된 암호를 입력하셨습니다."));
		return;
	}
	else if (m_pkSafebox)
	{
		ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<창고> 창고가 이미 열려있습니다."));
		return;
	}

Gm não pode abrir armazem da sempre PW errada 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...