Ir para conteúdo
  • Cadastre-se

(Resolvido)[NPC] vende storage por item


Ir para solução Resolvido por Makhai Drakon,

Posts Recomendados

Eae galera do TibiaKing

Eu tenho um npc que vende Storage só que ele não tá pegando o item : 13507  , ele só verifica se o player tem , mas não remove os items

e também eu tô precisando que ele tire a storage em 2 Dias

Npc : 

Spoiler

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
local config = {
                 
item1 = 13507,       -- ID DO Item que precisará para trocar
qt1 = 1000,            -- Quantidade do item1 que precisa
sto   = 166666,       -- Storage

}
if(msgcontains(msg, 'yes' )) then
 if getPlayerStorageValue(cid, config.sto) == -1 then
  if getPlayerItemCount(cid, config.item1) >= config.qt1  then
      
      selfSay('Você pagou a entrada oara a {PERFECT NAVE}', cid)
      setPlayerStorageValue(cid, config.sto, 1)
      doPlayerRemoveItem(cid, config.item1, config.qnt1)
      
    else
    selfSay('Você não tem o item necessario {Furie Coins}', cid)
    end
   else
 selfSay(' voce ja fez' , cid)
return true
end
end
end 
 
 
 
      
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

REP ++

Meu Servidor Minecraft : Ip - Skylowcraft.minecraftbr.net:25585 = Servidor 24hrs Sem Lag , Sem Hackers (1.7.2) Servidor De Fullpvp e Survival - Vamos Colocar Minigames!.

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

@Christinacsa 

Lembra de colocar a codificação ANSI no notpad pra não bugar os acêntos

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
local config = {
                 
item1 = 13507,	-- ID DO Item que precisara para trocar
qt1 = 1000,		-- Quantidade do item1 que precisa
sto = 166666,	-- Storage não mecher

}
if(msgcontains(msg, 'yes' )) then
	if getPlayerStorageValue(cid, config.sto) == -1 then
		if getPlayerItemCount(cid, config.item1) >= config.qt1  then
			selfSay('Você pagou a entrada oara a {PERFECT NAVE}', cid)
			setPlayerStorageValue(cid, config.sto, 1)
			doRemoveItem(cid, config.item1, config.qnt1)
		else
			selfSay('Você não tem o item necessario {Furie Coins}', cid)
		end
	else
		selfSay(' voce ja fez' , cid)
	return true
	end
end
end

 

Ajudei? REP+

 

Meus Servers:

PokeUnwind Em Breve

Rust Tibia Fechado

 

Tópicos: 

[Tutorial] Adicionando Pokemons com icon system

[Solução] ElfBot não abre corpos

 

Projetos:

DigiTibia Fechado

Rust Tibia Fechado(temporariamente!)

Link para o post
Compartilhar em outros sites

@Ckfox troca ali em:

 

local config = {
                 
item1 = 13507,	-- ID DO Item que precisara para trocar
qt1 = 1000,		-- Quantidade do item1 que precisa
sto = 166666,	-- Storage não mecher

}

 

por:

local config = {
                 
item1 = 13507,	-- ID DO Item que precisara para trocar
qt1 = 1000,		-- Quantidade do item1 que precisa
sto = 166666,	-- Storage não mecher
tempo = 172800, -- tempo que vai durar a storage
}

e

 

if getPlayerStorageValue(cid, config.sto) == -1 then

 

por:

if (getPlayerStorageValue(cid, config.sto) <= os.time()) then

e tambem

 

setPlayerStorageValue(cid, config.sto, 1)

 

por:

setPlayerStorageValue(cid, config.sto, os.time()+config.tempo)

 

é que ele pediu pra storage só durar dois dias ^^

 

Link para o post
Compartilhar em outros sites

@gabrielzika Não li a parte do tempo, obrigado pela contribuição :)

Ajudei? REP+

 

Meus Servers:

PokeUnwind Em Breve

Rust Tibia Fechado

 

Tópicos: 

[Tutorial] Adicionando Pokemons com icon system

[Solução] ElfBot não abre corpos

 

Projetos:

DigiTibia Fechado

Rust Tibia Fechado(temporariamente!)

Link para o post
Compartilhar em outros sites
4 horas atrás, Ckfox disse:

@Christinacsa 

Lembra de colocar a codificação ANSI no notpad pra não bugar os acêntos


local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
local config = {
                 
item1 = 13507,	-- ID DO Item que precisara para trocar
qt1 = 1000,		-- Quantidade do item1 que precisa
sto = 166666,	-- Storage não mecher

}
if(msgcontains(msg, 'yes' )) then
	if getPlayerStorageValue(cid, config.sto) == -1 then
		if getPlayerItemCount(cid, config.item1) >= config.qt1  then
			selfSay('Você pagou a entrada oara a {PERFECT NAVE}', cid)
			setPlayerStorageValue(cid, config.sto, 1)
			doRemoveItem(cid, config.item1, config.qnt1)
		else
			selfSay('Você não tem o item necessario {Furie Coins}', cid)
		end
	else
		selfSay(' voce ja fez' , cid)
	return true
	end
end
end

 

Tem como por para o jogador poder comprar o Passe novamente depois de acabar os dias?

Meu Servidor Minecraft : Ip - Skylowcraft.minecraftbr.net:25585 = Servidor 24hrs Sem Lag , Sem Hackers (1.7.2) Servidor De Fullpvp e Survival - Vamos Colocar Minigames!.

Link para o post
Compartilhar em outros sites

@Christinacsa no caso se estiver do jeito que falei é para ele poder comprar só quando acabar os dias :3

Editado por gabrielzika (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
3 minutos atrás, gabrielzika disse:

@Christinacsa no caso se estiver do jeito que falei é para ele poder comprar só quando acabar os dias :3

 

 

4 horas atrás, Ckfox disse:

else selfSay(' voce ja fez' , cid) return true end end end

Mas mesmo com isso ??

Meu Servidor Minecraft : Ip - Skylowcraft.minecraftbr.net:25585 = Servidor 24hrs Sem Lag , Sem Hackers (1.7.2) Servidor De Fullpvp e Survival - Vamos Colocar Minigames!.

Link para o post
Compartilhar em outros sites

@Christinacsa esse

 

selfSay(' voce ja fez' , cid)

 

só vai aparecer quando ele tiver a storage, quando passar os 2 dias ele vai perder a storage kkk ou seja da pra comprar dnv plis ^^

Link para o post
Compartilhar em outros sites
Agora, gabrielzika disse:

@Christinacsa esse

 


selfSay(' voce ja fez' , cid)

 

só vai aparecer quando ele tiver a storage, quando passar os 2 dias ele vai perder a storage kkk ou seja da pra comprar dnv plis ^^

Entendi , rsrs é porque tenho um conhecimento básico não muito básico - gostaria de aprender a fazer script mas :/ infelizmente tenho que pedir ajuda nessa parte

Eu consegui pegar um Tile Storage , conseguir por mensagem para quando tentar entrar sem Storage e por para quando entrar com Storage por outra mensagem , ficou louco daora

Mas não sei fazer nada alem disso rsrs

Mas Obrigado novamente.

Meu Servidor Minecraft : Ip - Skylowcraft.minecraftbr.net:25585 = Servidor 24hrs Sem Lag , Sem Hackers (1.7.2) Servidor De Fullpvp e Survival - Vamos Colocar Minigames!.

Link para o post
Compartilhar em outros sites

@Christinacsa relaxa, aos poucos você vai aprendendo! ninguém nasce sabendo e ninguém aprende Sozinho.

Link para o post
Compartilhar em outros sites

@gabrielzika

@Ckfox

Coloquei oque vocês mandaram mas a Storage não remove em 2 dias, ainda da para entrar tranquilo.

 

Meu Servidor Minecraft : Ip - Skylowcraft.minecraftbr.net:25585 = Servidor 24hrs Sem Lag , Sem Hackers (1.7.2) Servidor De Fullpvp e Survival - Vamos Colocar Minigames!.

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