Ir para conteúdo
  • Cadastre-se

(Resolvido)Problema simples, talkaction


Ir para solução Resolvido por Vodkart,

Posts Recomendados

Olá, estou com um pequeno problema com uma talkaction do meu servidor. Ela adiciona o clan de nivel 5 a qualquer player. Na primeira vez ela faz gratuitamente, e se a pessoa for trocar de clan novamente terá que pagar 10 diamantes. Gostaria de programa-la de uma maneira que sempre seja cobrado os 10 diamantes, sem essa "primeira vez gratuita". Alguem pode me ajudar? Segue abaixo o script que uso.

 

clan.lua

Spoiler

function onSay(cid, words, param, channel)

if param == "" then
return sendMsgToPlayer(cid, 20, "Estao faltam os parametros! [clan name], [rank]")
end
local t = string.explode(param, ",")
local clans = {'Volcanic', 'Seavell', 'Orebound', 'Wingeon', 'Malefic', 'Gardestrike', 'Psycraft', 'Naturia', 'Raibolt'}
if not isInArray(clans, t[1]) then
   return sendMsgToPlayer(cid, 20, t[1].." nao é uma clan valido!")
elseif not tonumber(t[2]) then
   return sendMsgToPlayer(cid, 20, "Parametros errados! [clan name], [rank].")
end

local rank = tonumber(t[2])
local clan = t[1]

    if getPlayerStorageValue(cid, 92823) > 100 then -- 7575 -- 92823
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Essa é sua primeira vez mudando de clan. Nas próximas, terá o custo de 10 diamonds.")
        doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."")
        setPlayerClan(cid, clan)
        setPlayerClanRank(cid, rank)
    else
        if getPlayerItemCount(cid, 2145) < 10 then
            return doPlayerSendCancel(cid, "Você precisa de 10 diamonds para entrar em um clan.")
        else
            return doPlayerSendCancel(cid, "Sorry, not possible.")
        end
        if(getPlayerLevel(cid) < 80) then
            return doPlayerSendCancel(cid, "Você precisa estar no level 80.")
        else
            return doPlayerSendCancel(cid, "Sorry, not possible.")
        end
        doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."")
        doPlayerRemoveItem(cid, 2145, 10)
        setPlayerClan(cid, clan)
        setPlayerClanRank(cid, rank)
    end
    return true

end

 

No signature.

 

 

 

Link para o post
Compartilhar em outros sites
function onSay(cid, words, param, channel)
if param == "" then
return sendMsgToPlayer(cid, 20, "Estao faltam os parametros! [clan name], [rank]")
end
local t = string.explode(param, ",")
local clans = {'Volcanic', 'Seavell', 'Orebound', 'Wingeon', 'Malefic', 'Gardestrike', 'Psycraft', 'Naturia', 'Raibolt'}
if not isInArray(clans, t[1]) then
   return sendMsgToPlayer(cid, 20, t[1].." nao é uma clan valido!")
elseif not tonumber(t[2]) then
   return sendMsgToPlayer(cid, 20, "Parametros errados! [clan name], [rank].")
end
local rank = tonumber(t[2])
local clan = t[1]
 
        if getPlayerItemCount(cid, 2145) < 10 then
            return doPlayerSendCancel(cid, "Você precisa de 10 diamonds para entrar em um clan.")
        else
            return doPlayerSendCancel(cid, "Sorry, not possible.")
        end
        if(getPlayerLevel(cid) < 80) then
            return doPlayerSendCancel(cid, "Você precisa estar no level 80.")
        else
            return doPlayerSendCancel(cid, "Sorry, not possible.")
        end
        doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."")
        doPlayerRemoveItem(cid, 2145, 10)
        setPlayerClan(cid, clan)
        setPlayerClanRank(cid, rank)
    return true
end

 

cms1-pr%C3%AAmio.png

Link para o post
Compartilhar em outros sites

Não deu certo, quando uso o comando agora /clan orebound,5 n aconteçe nada, apenas aparece em branco no roda pé da tela: Sorry, not possible.

No signature.

 

 

 

Link para o post
Compartilhar em outros sites
  • Solução
function onSay(cid, words, param, channel)
local t = string.explode(param:lower(), ",")
local clans = {'Volcanic', 'Seavell', 'Orebound', 'Wingeon', 'Malefic', 'Gardestrike', 'Psycraft', 'Naturia', 'Raibolt'}
if param == "" then
sendMsgToPlayer(cid, 20, "Estao faltam os parametros! [clan name], [rank]") return true
elseif not isInArray(clans, t[1], false) then
sendMsgToPlayer(cid, 20, t[1].." nao é uma clan valido!") return true
elseif not tonumber(t[2]) then
sendMsgToPlayer(cid, 20, "Parametros errados! [clan name], [rank].") return true
end
local clan, rank = t[1], tonumber(t[2])
        if getPlayerItemCount(cid, 2145) < 10 then
            doPlayerSendCancel(cid, "Você precisa de 10 diamonds para entrar em um clan.") return true
        elseif getPlayerLevel(cid) < 80 then
            doPlayerSendCancel(cid, "Você precisa estar no level 80.") return true
        end
        doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."")
        doPlayerRemoveItem(cid, 2145, 10)
        setPlayerClan(cid, clan)
        setPlayerClanRank(cid, rank)
    return true
end

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

 

Agora, caioitalo1 disse:

@egyptPOWER Quando você fala clan, seria guild? Se não. O que seria script de clan? Fiquei curioso :)

 

O Vodkart ja solucionou meu problema. Obg

No signature.

 

 

 

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

 

 

O Vodkart ja solucionou meu problema. Obg

Sim eu sei, porém eu queria saber para que serve esse sistema de clan, caso for um script interessante gostaria de colocar no meu servidor

Link para o post
Compartilhar em outros sites

São clans de poketibia. Eles representão elementos dentro do jogo e seguindo um desses caminhos (clans) você poderá adquirir pokemons unicos, outfit unica e todos seus pokemons que pertencem a este mesmo elemento se tornarão mais fortes.

No signature.

 

 

 

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

São clans de poketibia. Eles representão elementos dentro do jogo e seguindo um desses caminhos (clans) você poderá adquirir pokemons unicos, outfit unica e todos seus pokemons que pertencem a este mesmo elemento se tornarão mais fortes.

Interessante, obg. Irei tentar colocar para tibia normal, tive umas idéias. 

Link para o post
Compartilhar em outros sites

@Vodkart, caso o jogador escolha um rank que seja maior que 5, ele voltará para o rank 1.

function onSay(cid, words, param, channel)
	local t = string.explode(param:lower(), ",")
	local clans = {'Volcanic', 'Seavell', 'Orebound', 'Wingeon', 'Malefic', 'Gardestrike', 'Psycraft', 'Naturia', 'Raibolt'}

	if param == "" then
		sendMsgToPlayer(cid, 20, "Estao faltam os parametros! [clan name], [rank]") return true
	elseif not isInArray(clans, t[1], false) then
		sendMsgToPlayer(cid, 20, t[1].." nao é um clan valido!") return true
	elseif not tonumber(t[2]) then
		sendMsgToPlayer(cid, 20, "Parametros errados! [clan name], [rank].") return true
	elseif tonumber (t[2]) > 5 then
		sendMsgToPlayer (cid, 20, "O rank "..t[2].." não é válido. Por favor, escolha um rank de 1 a 5.") return false
	end
	
	local clan, rank = t[1], tonumber(t[2])
	
	if getPlayerItemCount(cid, 2145) < 10 then
		doPlayerSendCancel(cid, "Você precisa de 10 diamonds para entrar em um clan.") return true
	elseif getPlayerLevel(cid) < 80 then
		doPlayerSendCancel(cid, "Você precisa estar no level 80.") return true
	end
	
	doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."")
	doPlayerRemoveItem(cid, 2145, 10)
	setPlayerClan(cid, clan)
	setPlayerClanRank(cid, rank)
return true
end

 

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

Não dou suporte via PM, crie um tópico caso tenha dúvidas.

Isso previne que outras pessoas com a mesma dúvida criem tópicos desnecessários.

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.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo