Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Queria um scripts NPC que troca-se, tipo 40 gold nuggets por algum item ... minha ideia será essa:

 

- Programarei 1 ou 2 invasão por dia aonde o monstro que eu editarei ira dropa esses gold nuggets, sendo assim com esses gold nuggets dropado ele poderar compra tal item no npc com esses gold nuggets..

 

Simples Não ? .. Não Para Mim kkk'

 

Deste já Agradeço ^.^

Link para o post
Compartilhar em outros sites

Vá em data/npcs e crie um arquivo chamado Vip Coin.lua e coloque:


<?xml version="1.0" encoding="UTF-8"?>
<npc name="Coin Seller" script="data/npc/scripts/default.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="302" head="0" body="114" legs="94" feet="0" addons="3"/>
<parameters>
<parameter key="module_shop" value="1"/>
<parameter key="message_greet" value="Ola |PLAYERNAME|. Eu vendo Vip Coins. Diga {trade}."/>
<parameter key="shop_buyable" value="vip coin,11192,100000"/>
</parameters>
</npc>


Vermelho --> Nome do item
Verde --> ID do item
Azul --> Preço do item
Laranja --> Nome do Npc
Roxo --> Outfit do Npc

 

ajudei rep+ haha

"ℱoco, ℱorçα, ℱé, ℱelicidαde & ℱodα-se os ℱilhos dα Putα."

Premiações:

tYBgy.png

Link para o post
Compartilhar em outros sites

Eu, quero um NPC que no caso vende item com vip coins, não um NPC que vende vip coins entendeu ?

Link para o post
Compartilhar em outros sites

Acho q isso é simples amigo pegue por exemplo o npc mad, e substitua os itens q ele vende por os que vc quér vende e o id dos coins vc poe o do itens q quér q seja sua nova moeda !

"ℱoco, ℱorçα, ℱé, ℱelicidαde & ℱodα-se os ℱilhos dα Putα."

Premiações:

tYBgy.png

Link para o post
Compartilhar em outros sites

vai em ...\data\npc copie um arquivo qualquer e renomeie para Strike.xml depois abra com o bloco de notas, apague oque estiver dentro e coloque isso.

 

<?xml version="1.0"?>
<npc name="Strike" script="data/npc/scripts/itensvip.lua" access="5" lookdir="2" walkinterval="0">
  <health now="200" max="200" />
   <look type="324" head="95" body="95" legs="95" feet="95" addons="3" />
  <parameters>
    <parameter key="message_greet" value="Ola |PLAYERNAME|. Veio trocar uns vips coins por itens? Diga {vips}." />
  </parameters>
</npc>

vai em ...\data\npc\scripts copie qualquer arquivo que esteje la renomeie para itensvip.lua abra com bloco de notas, apague oque estiver dentro e coloque isso.

 

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)

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

-- STRIKE START --
function jestervip(cid, message, keywords, parameters, node)
    if(not npcHandler:isFocused(cid)) then
        return false
    end
    
        if getPlayerItemCount(cid,2157) >= 50  then
        if doPlayerRemoveItem(cid,2157,50) then
            npcHandler:say('Aqui esta seu item!', cid)
            doPlayerAddItem(cid,7424,1)
        end
        else
            npcHandler:say('Voce nao tem itens necessarios!', cid)
        end
end
-- STRIKE END --

keywordHandler:addKeyword({'vips'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "Eu troco {jester staff} por vips coins."})

local node1 = keywordHandler:addKeyword({'jester staff'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer trocar 50 vips coins por 1 jester staff?? Yes or no??'})
    node1:addChildKeyword({'yes'}, jestervip, {npcHandler = npcHandler, onlyFocus = true, reset = true})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, volte quando quizer negociar!', reset = true})
npcHandler:addModule(FocusModule:new())

 

onde esta 2157 é o id do item que o npc vai pegar no meu caso eh 2157.
onde esta 50 é a quantidade de vip coins que o npc quer para vender o iten no meu caso são 50.
onde ta 7424 é o id no item que o npc está vendendo no meu caso é 7424.
onde ta 1 é a quantidade de itens que o npc vai entregar quando o player efetuar a compra, no meu caso ele so vai dar 1 iten (aconcelho nao mexer) só se vc quizer que o npc vende mais...
onde ta vip é a fala que o player vai dizer para que o npc diga qual itens ele está vendendo.
onde ta  Eu troco {jester staff} por vips coins essa é a fala do npc.
onde ta  jester staff é oq o player tem que falar para comprar o item no meu caso o player fala jester staff e ai o npc diz se quer compra ou nao...
onde ta  Voce quer trocar 50 vips coins por 1 jester staff?? Yes or no?? essa eh a fala do npc para saber se o player quer compra ou nao...

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

#dyroz - Nos NPC normais, você não coloca ID dos coins, só Nome do item, id do item e o preço do item a venda.

#KekezitoLHP - eu queria um NPC que aparece-se uma lista de venda com vip coins, tipo um npc normal só que só poderar compra nele com vips coins, não com golds, entendeu ?

Link para o post
Compartilhar em outros sites
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 shopWindow = {}
local moeda = 9020 -- [iD DA MOEDA]
local t = {
	  [2195] = {price = 15} -- [iD DO ITEM QUE SERÁ VENDIDO] = {QUANTO IRÁ CUSTAR}	 
	  }
local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks)
	if  t[item] and not doPlayerRemoveItem(cid, moeda, t[item].price) then
		  selfSay("você não tem "..t[item].price.." "..getItemNameById(moeda), cid)
			 else
		doPlayerAddItem(cid, item)
		selfSay("aqui está seu item!", cid)
	   end
	return true
end
if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then
			for var, ret in pairs(t) do
					table.insert(shopWindow, {id = var, subType = 0, buy = ret.price, sell = 0, name = getItemNameById(var)})
				end
			openShopWindow(cid, shopWindow, onBuy, onSell)
		end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

COLOCA NO itensvip.lua

Link para o post
Compartilhar em outros sites

E Se eu quiser, que ele venda mais de 1 item com vip coins, tava pensando em os vip coins , o player chega e compra o item diacordo com vocation dele.. 

Link para o post
Compartilhar em outros sites

E Se eu quiser, que ele venda mais de 1 item com vip coins, tava pensando em os vip coins , o player chega e compra o item diacordo com vocation dele.. 

 

 

quer coloca pra vende mais item edita aqui

 

 

local t = {
     [2195] = {price = 15} -- [iD DO ITEM QUE SERÁ VENDIDO] = {QUANTO IRÁ CUSTAR}    
     }
 

 

local t = {
     [2195] = {price = 15}, -- [iD DO ITEM QUE SERÁ VENDIDO] = {QUANTO IRÁ CUSTAR}   
     [2195] = {price = 15} 
     }

LEMBRA-SE ULTIMO NAO PRECISA DE VIGULA... Se ajudei rep++

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

Ok, Já vou testa ... Se Funfar ta  (y)     :trollface:

Link para o post
Compartilhar em outros sites

Eu Coloquei aqui mais o NPC ta vendendo o item por GOLD, não pela moeda 9020.  Podia tenta ver aonde ta o erro ?

Link para o post
Compartilhar em outros sites
  • 2 years later...

Queria dizer desculpa por está revivendo este tópico, mais eu achei muito interessante e gostei bastante da ideia, mas fiquei triste por que eu fiz tudo certo só que assim mesmo o npc não pega 

 

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 shopWindow = {}
local moeda = 9020 -- [ID DA MOEDA]
local t = {
	  [2195] = {price = 15} -- [ID DO ITEM QUE SERÁ VENDIDO] = {QUANTO IRÁ CUSTAR}	 
	  }
local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks)
	if  t[item] and not doPlayerRemoveItem(cid, moeda, t[item].price) then
		  selfSay("você não tem "..t[item].price.." "..getItemNameById(moeda), cid)
			 else
		doPlayerAddItem(cid, item)
		selfSay("aqui está seu item!", cid)
	   end
	return true
end
if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then
			for var, ret in pairs(t) do
					table.insert(shopWindow, {id = var, subType = 0, buy = ret.price, sell = 0, name = getItemNameById(var)})
				end
			openShopWindow(cid, shopWindow, onBuy, onSell)
		end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

COLOCA NO itensvip.lua

 

Aparece isso no cmd 

 

I/0 warning : failed to load external entity "data/npc/Strike.xml
[Warning - npc ::loadFromxml] Cannot load npc file <data/npc/Strike.xml
Info: failed to load external entity "Data/Npc/Strike.xml
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