No caso,
Se eu tivér na minha backpack grupos de vialls porém em grupos diferentes, assim:
98, 15, 100 e 25
Eu clico no monte de 25 vialls, e todos os outros serão vendidos?
Por warcraftzz, 25 de nov. de 2010 em Actions e Talkactions
info
Grupo: Campones
Registrado: 25/11/10
Posts: 5
Reputação: +4
Char no Tibia: Don't have more.

No caso,
Se eu tivér na minha backpack grupos de vialls porém em grupos diferentes, assim:
98, 15, 100 e 25
Eu clico no monte de 25 vialls, e todos os outros serão vendidos?
info
Grupo: Campones
Registrado: 11/10/08
Posts: 47
Reputação: +5
Char no Tibia: Pedrosdtacador de runa

Sim! Venderá somente os potions vazios.
Você poderá mudar o item_id = por os seguintes id's veja seguindo a tabela abaixo:
7634 ID DO POTION STRONG MANA VAZIO E DO STRONG HEALTH E DO DEMONIC BLOOD POTION
7635 ID DO POTION GREAT SPIRIT VAZIO E DO GREAT HEALTH E GREAT MANA
7636 ID DO ANTIDOTE_POTION VAZIO E DO SMALL HEALTH POTION VAZIO E DO MANA POTION E DO HEALTH POTION
Você terá que criar um script para cada id substituindo ou criando um script para cada um dos id's somente 3 scripts a linha item_id = 7636 do sellvials.lua
e terá que colocar essa linha:
Em action XML onde em itemid="7636" é o id do "vidrinho de potion vazio".
<action itemid="7636" script="sellvials.lua"/>
então se você quiser colocar os todos tipos de potions vazios pra vender os vials faça o seguinte:
<action itemid="7634" script="sellvials.lua"/>
<action itemid="7635" script="sellvials2.lua"/>
<action itemid="7636" script="sellvials3.lua"/>
dentro de Sellvials.lua coloque:
-- Vendendo potions vazios por use by warcraftzz
----- Configurações -----
local config = {
cost = 10, -- Dinheiro que ganhara por cada vial vendido DEFAULT 5GPS
item_id = 7634, -- ID DO VIAL
gold_id = 2148, -- ID DO GOLD COIN QUE É 2148 DIGITE 2160 PARA CRYSTAL COIN
}
function onUse(cid, item, frompos, item2, topos)
local count = getPlayerItemCount(cid,config.item_id)
doPlayerRemoveItem(cid,config.item_id,count)
doPlayerAddItem(cid,config.gold_id,config.cost*count)
doPlayerSendTextMessage(cid,22,"Você vendeu ".. config.count .."")
doSendMagicEffect(frompos, 4)
end
dentro do sellvials2.lua coloque:
-- Vendendo potions vazios por use by warcraftzz
----- Configurações -----
local config = {
cost = 10, -- Dinheiro que ganhara por cada vial vendido DEFAULT 5GPS
item_id = 7635, -- ID DO VIAL
gold_id = 2148, -- ID DO GOLD COIN QUE É 2148 DIGITE 2160 PARA CRYSTAL COIN
}
function onUse(cid, item, frompos, item2, topos)
local count = getPlayerItemCount(cid,config.item_id)
doPlayerRemoveItem(cid,config.item_id,count)
doPlayerAddItem(cid,config.gold_id,config.cost*count)
doPlayerSendTextMessage(cid,22,"Você vendeu ".. config.count .."")
doSendMagicEffect(frompos, 4)
end
dentro do sellvials3.lua coloque:
-- Vendendo potions vazios por use by warcraftzz
----- Configurações -----
local config = {
cost = 10, -- Dinheiro que ganhara por cada vial vendido DEFAULT 5GPS
item_id = 7636, -- ID DO VIAL
gold_id = 2148, -- ID DO GOLD COIN QUE É 2148 DIGITE 2160 PARA CRYSTAL COIN
}
function onUse(cid, item, frompos, item2, topos)
local count = getPlayerItemCount(cid,config.item_id)
doPlayerRemoveItem(cid,config.item_id,count)
doPlayerAddItem(cid,config.gold_id,config.cost*count)
doPlayerSendTextMessage(cid,22,"Você vendeu ".. config.count .."")
doSendMagicEffect(frompos, 4)
end
E pronto todos os potions vazios do seu ot poderam ser vendidos pelos players fazendo assim o seu servidor não ter potions vazios jogados pelo chão, bps, etc... e assim reduzindo o lag e melhorando a jogabilidade dos players.
Boa sorte.
Editado Novembro 25 por warcraftzz
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

no caso ACREDITO eu q de pra fazer tudo em 1 so script... trocando essa parte...
local config = {
cost = 10, -- Dinheiro que ganhara por cada vial vendido DEFAULT 5GPS
item_id = 7636, -- ID DO VIAL
gold_id = 2148, -- ID DO GOLD COIN QUE É 2148 DIGITE 2160 PARA CRYSTAL COIN
}
por essa...
local config = {
cost = 10, -- Dinheiro que ganhara por cada vial vendido DEFAULT 5GPS
item_id = item.itemid, -- ID DO VIAL
gold_id = 2148, -- ID DO GOLD COIN QUE É 2148 DIGITE 2160 PARA CRYSTAL COIN
}
...qlqr coisa se eu flei meuda da um toque q edito aki hehe ;x
Editado Novembro 25 por Slicer
info
Grupo: Campones
Registrado: 11/10/08
Posts: 47
Reputação: +5
Char no Tibia: Pedrosdtacador de runa
TESTADO EM OT 8.60.
Função do Script: Você dá um use no empty potion flask ou melhor um click com o botão direito em cima de um empty potion flask e será vendido todos os empty potion flasks que você tiver em sua backpack independente da quantidade vai vender todos cada um por 5 GP você poderá definir o preço de cada potion na configuração do script.
Créditos: 100% a min por ter criado.
Razão de eu ter criado esse script: Eu ja tinha visto esse script em um servidor 8.10 que eu jogava então eu estava procurando ele na internet para colocar em meu servidor e eu não axei, então resolvi criar eu estava aprendendo a programar delphi e quando eu abri um script de tibia, reparei que os códigos eram parecidos com os do delphi a forma como os faziam, então resolvi tentar, fui tentando até conseguir mudando varias coisas, e consegui! Eu não sei muito de script e esse é o meu 1º script que posto aqui no XTibia, eu nunca avia feito outro antes!.
Eu aprendi algumas coisas olhando outros scripts e um arquivo que tinha no yourots 8.10 que tinha funções lua e eu sei ingles e consegui interpretar as funções facilmente.
Início do Tutorial:
1º Crie um arquivo .lua com o nome de sellvials.lua ou vá até ot/data/actions/scripts copie qualquer arquivo e cole e renomeie para sellvials.lua
-- Vendendo Vials por use by warcraftzz ----- Configurações ----- local config = { cost = 5, -- Dinheiro que ganhara por cada vial vendido DEFAULT 5GPS item_id = 7636, -- ID DO VIAL gold_id = 2148, -- ID DO GOLD COIN QUE É 2148 DIGITE 2160 PARA CRYSTAL COIN } function onUse(cid, item, frompos, item2, topos) local count = getPlayerItemCount(cid,7636) doPlayerRemoveItem(cid,config.item_id,count) doPlayerAddItem(cid,config.gold_id,config.cost*count) doPlayerSendTextMessage(cid,22,"Você vendeu ".. config.count .."") doSendMagicEffect(frompos, 4) endExplicação:
NO SCRIPT sellvials.lua encontre a parte cost = 5, que fica em config, este numero 5 é o valor de venda de cada empty potion flask
exemplo: se eu tiver 2 empty potion flasks e se eu der use nele eu ganharei 10GPS
NO SCRIPT A PARTE GOLD_ID é o ID DO GOLD COIN QUE É CONHECIDO COMO GP Você PODE COLOCAR 2160 para CRYSTAL COIN!
NO SCRIPT sellvials.lua encontre a parte item_id = 7636, este é o id do empty potion flask no caso é 7636, você poderá colocar qualquer tipo de empty flask de outro potion tipo GREAT POTION, é só pegar o ID
OBS: TEM QUE SER O ID DO POTION VAZIO TIPO QUANDO VOCÊ USA UM POTION OU ALGO FICA UM VIDRO VAZIO E É O ID DESSE VIDRO VAZIO QUE VOCÊ DEVE COLOCAR NO CAMPO AZUL.
VOCÊ TEM QUE CRIAR UM SCRIPT PARA CADA TIPO DE "VIDRINHO DE POTION VAZIO".
2º Em data/actions/actions.xml insira o seguinte código:
Explicação: itemid="7636" é o item que quando você clicar com o botão direito ativará o script="sellvials.lua"
Usando: Dê use em cima do empty potion flask que venderá todos os empty potion flasks que você tiver em sua BP.
Desculpem se eu estiver explicado mal, é meu primeiro script de tibia que crio e que posto.
Qualquer Dúvida pode perguntar que responderei!
Abraços pra todos.
Editado Novembro 25 por warcraftzz