Ir para conteúdo
  • Cadastre-se

(Resolvido)Item de exiva e talk e chat open


Ir para solução Resolvido por KotZletY,

Posts Recomendados

Olá, preciso de um item que, só permite o jogador utilizar um "exiva especial", se ele possui o item, (o item não some e tem delay de 60 segundos para usar) e caso ele possua, ao usar o "spyexiva", ele recebe uma mensagem dizendo qual foi o ultimo bicho que o player x matou

 

E como faz para abrir os chat automaticamente quando loga? 

Como criar um chat, em que só apareça os loot dos bichos mortos? Loot Channel

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

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites

@jNo dar up por comentário é proibido, na próxima será considerado flood. Leia as regras!

Spoiler

1.thumb.png.247aa7af60fb80de731fdcf59dea778a.png

 tal coisa para a spell, você deve adicionar um check na spell, que permitira que o player use a spell, caso contrário ele não irá usar. Poste as spells e me fale o id do item, que faço tal alteração para você.

 

Em relação ao channels, para abrir automaticamente você deve ter a função que realize isso, tal função é adicionada pela distro, as versões recente de tfs já contém, porém distro 0.4 rev 3777 e inferior, não contém, depois de adicionar a função, bastar criar um script que fará isso, um onLogin, ou adicionar o script diretamente no login.lua.

 

E a questão do loot dos monstro, isso é algo direto na source, você deverá criar um channel, depois modificar na source para os loots aparecerem lá, em vez de aparecer nos logs do server. 

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

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

@jNo dar up por comentário é proibido, na próxima será considerado flood. Leia as regras!

  Ocultar conteúdo

1.thumb.png.247aa7af60fb80de731fdcf59dea778a.png

 tal coisa para a spell, você deve adicionar um check na spell, que permitira que o player use a spell, caso contrário ele não irá usar. Poste as spells e me fale o id do item, que faço tal alteração para você.

 

Em relação ao channels, para abrir automaticamente você deve ter a função que realize isso, tal função é adicionada pela distro, as versões recente de tfs já contém, porém distro 0.4 rev 3777 e inferior, não contém, depois de adicionar a função, bastar criar um script que fará isso, um onLogin, ou adicionar o script diretamente no login.lua.

 

E a questão do loot dos monstro, isso é algo direto na source, você deverá criar um channel, depois modificar na source para os loots aparecerem lá, em vez de aparecer nos logs do server. 

 

Não tenho o script @KotZletY, não precisa ser necessariamente uma coisa complexa (spell), pode serl (talk) só que saia algum efeito, e um pop up ou mensagem no default dizendo quando o player utilizar o comando: ID 9942

 

spyexiva "Fulano"

Fulano is hunting Demon (porque o script detecta o ultimo bicho que o jogador matou)

 

 

(Você precisa possuir o item na bp para utilizar esse comando)

(Espere 60 segundos para utilizar novamente o comando)

 

 

 

 

 

 

 

 

obs: Obrigado pelo alerta, ficarei atento

 

Caso seja meio que dificil, deixa quieto, dps procuro outra coisa pra dar função ao item.

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites

@jNo não é algo complexo, é simples, me passa o script, que adiciono o check nele, se ele tiver o item, ele consegui usar a spell, se não tiver, ele não usa, esse check do item deve ser feito diretamente na spell.

Você não tem essa exiva que falou ? Seu pedido é esse comando que mostre o último bixo que "fulano" matou ?

Seja mais especifico amigo.

 

 

Já que não citou o assunto sobre o chat open, suponho que tenha entendido, membros postaram o código que se deve adicionar na source, olhe na área de programação, ou no perfil do alexy, ele postou o mesmo para a versão 0.4.

 

 

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

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

@jNo não é algo complexo, é simples, me passa o script, que adiciono o check nele, se ele tiver o item, ele consegui usar a spell, se não tiver, ele não usa, esse check do item deve ser feito diretamente na spell.

Você não tem essa exiva que falou ? Seu pedido é esse comando que mostre o último bixo que "fulano" matou ?

Seja mais especifico amigo.

 

 

Já que não citou o assunto sobre o chat open, suponho que tenha entendido, membros postaram o código que se deve adicionar na source, olhe na área de programação, ou no perfil do alexy, ele postou o mesmo para a versão 0.4.

 

 

@KotZletY Faça em forma de talk um script que mostra o ultimo monstro morto pelo jogador X, com as característica que citei acima:

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites
  • Solução

@jNo qual a versão do seu tfs ?

 

@Edit: fiz como você pediu, qualquer coisa avisa:

 

data/creaturescripts/scripts crie um arquivo com a extensão Lua, com o nome de spyplayer.lua ou qualquer nome desejado, e coloque esse code dentro:

Spoiler

function onKill(cid, target)
	if isMonster(target) then
		setPlayerStorageValue(cid, 99882, getCreatureName(target))
	end
	return true
end

 

 

 

ainda na pasta scripts abra o arquivo login.lua o e registre esse event:

registerCreatureEvent(cid, "SpyPlayer")

 

agora vá em data/creaturescripts e abra o arquivo creaturescripts.xml e adicione essa tag dentro dele;

<event type="kill" name="SpyPlayer" event="script" value="spyplayer.lua"/>

 

agora vá em data/talkactions/scripts e cria um arquivo chamado spyplayer.lua ou o nome desejado, dentro dele coloque esse code:

Spoiler

function onSay(cid, words, param, channel)
local v = {
item = 2160, -- id do item
time = 3 -- tempo em segundos que ficará sem usar o comando
}

local txt = "[--> Player Spy <--]\n\n"
local p = string.explode(param, '"')

if getPlayerItemCount(cid, v.item) >= 1 then
	if getPlayerStorageValue(cid, v.storage) < os.time() then
		if p[2] then
			if getPlayerByName(p[2]) then
				if getPlayerStorageValue(getPlayerByName(p[2]), 99882) == -1 then
					txt = txt .. "Esse player ainda não matou nenhum monstro."
				else
					txt = txt .. "O último monstro que esse player matou foi: "..getPlayerStorageValue(getPlayerByName(p[2]), 99882).."."
				return setPlayerStorageValue(cid, v.storage, os.time()+v.time), doPlayerPopupFYI(cid, txt)
				end
			else 
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "O nome do player está errado ou não existe.")
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Digite o nome do player que deseja.")
		end
	else
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Espere "..getPlayerStorageValue(cid, v.storage) - os.time().." segundos para usar o comando novamente.")
	end
else
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você precisa de tal item para poder usar o comando.")
end
return true
end

 

 

em data/talkactions abra o arquivo chamado talkactions.xml dentro dele adicione a seguinte tag:

<talkaction words="!exivaspy" event="script" value="spyplayer.lua"/>

 

 

Agora basta configurar a gosto e já era! 

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

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

@jNo qual a versão do seu tfs ?

 

@Edit: fiz como você pediu, qualquer coisa avisa:

 

data/creaturescripts/scripts crie um arquivo com a extensão Lua, com o nome de spyplayer.lua ou qualquer nome desejado, e coloque esse code dentro:

  Ocultar conteúdo


function onKill(cid, target)
	if isMonster(target) then
		setPlayerStorageValue(cid, 99882, getCreatureName(target))
	end
	return true
end

 

 

 

ainda na pasta scripts abra o arquivo login.lua o e registre esse event:


registerCreatureEvent(cid, "SpyPlayer")

 

agora vá em data/creaturescripts e abra o arquivo creaturescripts.xml e adicione essa tag dentro dele;


<event type="kill" name="SpyPlayer" event="script" value="spyplayer.lua"/>

 

agora vá em data/talkactions/scripts e cria um arquivo chamado spyplayer.lua ou o nome desejado, dentro dele coloque esse code:

  Ocultar conteúdo


function onSay(cid, words, param, channel)
local v = {
item = 2160, -- id do item
time = 3 -- tempo em segundos que ficará sem usar o comando
}

local txt = "[--> Player Spy <--]\n\n"
local p = string.explode(param, '"')

if getPlayerItemCount(cid, v.item) >= 1 then
	if getPlayerStorageValue(cid, v.storage) < os.time() then
		if p[2] then
			if getPlayerByName(p[2]) then
				if getPlayerStorageValue(getPlayerByName(p[2]), 99882) == -1 then
					txt = txt .. "Esse player ainda não matou nenhum monstro."
				else
					txt = txt .. "O último monstro que esse player matou foi: "..getPlayerStorageValue(getPlayerByName(p[2]), 99882).."."
				return setPlayerStorageValue(cid, v.storage, os.time()+v.time), doPlayerPopupFYI(cid, txt)
				end
			else 
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "O nome do player está errado ou não existe.")
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Digite o nome do player que deseja.")
		end
	else
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Espere "..getPlayerStorageValue(cid, v.storage) - os.time().." segundos para usar o comando novamente.")
	end
else
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você precisa de tal item para poder usar o comando.")
end
return true
end

 

 

em data/talkactions abra o arquivo chamado talkactions.xml dentro dele adicione a seguinte tag:


<talkaction words="!exivaspy" event="script" value="spyplayer.lua"/>

 

 

Agora basta configurar a gosto e já era! 

 

Olá, esta exatamente como eu pedi, mas quando eu digito o !exivaspy Fulano, ele só fica mandando essa mensagem e não da erros no distro:

 

07:17 Digite o nome do player que deseja.

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

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites

@jNo não da erro porque o code ta funcionando 100%, !exivaspy "fulano

 

 

não esqueça da aspa antes do nome.

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

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

@jNo não da erro porque o code ta funcionando 100%, !exivaspy "fulano

 

 

não esqueça da aspa antes do nome.

 

Tem razão, obrigado amigo, funcionou perfeitamente! <3

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

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