Ir para conteúdo
  • Cadastre-se

(Resolvido)TALKACTIONS 0.4


Ir para solução Resolvido por KotZletY,

Posts Recomendados

Diga em poucas palavras a base utilizada (Nome do servidor ou nome do website).

Ex. OTX

Base: 

 

 

Qual erro está surgindo/O que você procura?

 

        <talkaction words="illegalWords" default="1" script="blocklinks.lua"/>

    <channel id="65535" name="Private Chat Channel"/>

 

QUERIA MUDA O default="1" PARA SO O CANAL PRIVATE MESSAGE    MAS O ID 65535 NÃO VAI

Você tem o código disponível? Se tiver publique-o aqui:

function onSay(cid, words, param, channel)    

if getPlayerLevel(cid) < 200 then
isPrivateChannel(10)

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.

Editado por Syn Reward
script (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

@Dragon Ball Hiper  já tenho pela source, quero evitar os pm para level menor que 200

function onSay(cid, words, param, channel)    

if getPlayerLevel(cid) < 200 then
isPrivateChannel(10)

 

 

se alguem conseguir termina o script agradeço 

Link para o post
Compartilhar em outros sites
Em 10/08/2018 em 02:05, Syn Reward disse:

@Dragon Ball Hiper  já tenho pela source, quero evitar os pm para level menor que 200

function onSay(cid, words, param, channel)    

if getPlayerLevel(cid) < 200 then
isPrivateChannel(10)

 

 

se alguem conseguir termina o script agradeço 

já tentou mudar pelo o Channels.xml ?

 

testa ai     <channel id="65535" name="Private Chat Channel" level="200"/>

Editado por ADM Mayk on BaiakME (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • Solução

@Syn Reward em game.cpp procure por:

bool Game::playerSpeakTo(Player* player, SpeakClasses type, const std::string& receiver,

acima da checagem:

if(type == SPEAK_PRIVATE_RED && !player->hasFlag(PlayerFlag_CanTalkRedPrivate))

adicione:

if(player->getLevel() < 200) { // 200 level min to send pm.
	player->sendTextMessage(MSG_STATUS_SMALL, "You don't have enough level to send pm");
	return false;
}

 

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
2 horas atrás, KotZletY disse:

@Syn Reward em game.cpp procure por:


bool Game::playerSpeakTo(Player* player, SpeakClasses type, const std::string& receiver,

acima da checagem:


if(type == SPEAK_PRIVATE_RED && !player->hasFlag(PlayerFlag_CanTalkRedPrivate))

adicione:


if(player->getLevel() < 200) { // 200 level min to send pm.
	player->sendTextMessage(MSG_STATUS_SMALL, "You don't have enough level to send pm");
	return false;
}

 

Segui os passos mas não deu certo... Continua enviando pm normalmente, em qualquer level.

Segue como ficaram as partes do código que vc citou:
 

bool Game::playerSpeakTo(Player* player, SpeakClasses type, const std::string& receiver,
                         const std::string& text)
{
	Player* toPlayer = getPlayerByName(receiver);
	if (!toPlayer) {
		player->sendTextMessage(MESSAGE_STATUS_SMALL, "A player with this name is not online.");
		return false;
	}

    if(player->getLevel() < 100) { // 100 level min to send pm.
	player->sendTextMessage(MSG_STATUS_SMALL, "You need to be level 100 to send pm.");
	return false;
}
	if (type == TALKTYPE_PRIVATE_RED_TO && (player->hasFlag(PlayerFlag_CanTalkRedPrivate) || player->getAccountType() >= ACCOUNT_TYPE_GAMEMASTER)) {
		type = TALKTYPE_PRIVATE_RED_FROM;
	} else {
		type = TALKTYPE_PRIVATE_FROM;
	}

	toPlayer->sendPrivateMessage(player, type, text);
	toPlayer->onCreatureSay(player, type, text);

 

Editado por amora murder (veja o histórico de edições)

Otserver Global - Open Tibia

angera.servegame.com

Link para o post
Compartilhar em outros sites
2 horas atrás, KotZletY disse:

@amora murder recompilou a source e está utilizando a nova compilação ? Aqui funciona perfeitamente!

Desculpa, mano... kkkk

Não compilei ¬¬

 

___________________________

 

Edit: @KotZletY compilei e não deu. É TFS 3.0 que vc usa?

Mas enfim, valeu a tentativa hahah

Editado por amora murder (veja o histórico de edições)

Otserver Global - Open Tibia

angera.servegame.com

Link para o post
Compartilhar em outros sites

@amora murder tanto em 0.4 quanto em 0.3.6, fiz em 0.3.6.

 

TFS 3.0 ? Nunca nem vi. FHuoahsd

TFS 1.3 você quis dizer né ?:

if (player->getLevel() < 100) { // 100 level min to send pm.
	player->sendTextMessage(MESSAGE_STATUS_SMALL, "You need to be level 100 to send pm.");
	return false;
}

 

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
1 minuto atrás, KotZletY disse:

@amora murder tanto em 0.4 quanto em 0.3.6, fiz em 0.3.6.

 

TFS 3.0 ? Nunca nem vi. FHuoahsd

TFS 1.3 você quis dizer né ?:


if (player->getLevel() < 100) { // 100 level min to send pm.
	player->sendTextMessage(MESSAGE_STATUS_SMALL, "You need to be level 100 to send pm.");
	return false;
}

 

Não não... Quis dizer OTX 3.0*****

UEHuehuEH

Otserver Global - Open Tibia

angera.servegame.com

Link para o post
Compartilhar em outros sites
Citar

 

    bool canSee = player->canSeeCreature(toPlayer);
    if(toPlayer->hasCondition(CONDITION_GAMEMASTER, GAMEMASTER_IGNORE)
        && !player->hasFlag(PlayerFlag_CannotBeMuted))
    {
        char buffer[70];
        if(!canSee)
            sprintf(buffer, "A player with this name is not online.");
        else
            sprintf(buffer, "Sorry, %s is currently ignoring private messages.", toPlayer->getName().c_str());

        player->sendTextMessage(MSG_STATUS_SMALL, buffer);
        return false;
    }
 
 if(player->getLevel() < 100) { // 100 level min to send pm.
    player->sendTextMessage(MSG_STATUS_SMALL, "You need to be level 100 to send pm.");
    return false;
}

 

 ficara assim?

Editado por Syn Reward
edite (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

To doido pra testar isso... To pegando rabo pra compilar de novo ¬¬

Não tá criando o executável :72048efbac366efa33a571955592ba1a:

Não sei se tem a ver isso que tá aparecendo no putty
CMake Warning (dev) at CMakeLists.txt:1 (set):
Cannot set "tfs_SRC": current scope has no parent.
This warning is for project developers. Use -Wno-dev to suppress it.

Otserver Global - Open Tibia

angera.servegame.com

Link para o post
Compartilhar em outros sites

@amora murder asudhausdhasd.

 

@Syn Reward show. Sempre que alguém resolver um pedido de suporte seu marca como melhor resposta e não esqueça do rep!

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
  • 3 years later...
Em 13/08/2018 em 09:00, amora murder disse:

To doido pra testar isso... To pegando rabo pra compilar de novo ¬¬

Não tá criando o executável :72048efbac366efa33a571955592ba1a:

Não sei se tem a ver isso que tá aparecendo no putty
CMake Warning (dev) at CMakeLists.txt:1 (set):
Cannot set "tfs_SRC": current scope has no parent.
This warning is for project developers. Use -Wno-dev to suppress it.

Como resolveu?

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo