Jump to content

Recommended Posts

 

Olá xTibianos, hoje trago à vocês um sistema meio simples, e que talvez muitos queiram... Bom, o sistema é Held Machine ! 

 

 

Sim, é aquela máquina que funde os Tokens e transforma em Helds. Irei deixar as informações sobre O sistema de Held Machine, Tokens e Helds abaixo ! :D

 


http://spoilerspxg.blogspot.com.br/p/held-items.html

 

Bom, vamos logo ao que interessa ! ;):

 

 

 

 

Em data/XML/channels.xml, você deverá criar canais relativos a cada opção de troca, seguindo o modelo:

 

 


<channel id="ID_do_canal" name="Nome_do_canal">

<vocation id="10"/>

</channel>

 

Exemplos:

 

 


<channel id="22" name="20 Devoted Token (Tier 1-2)">

<vocation id="10"/>

</channel>

<channel id="23" name="70 Mighty Token (Tier 1-3)">

<vocation id="10"/>

</channel>

 

Depois, na mesma pasta, vocations.xml:

 

 


<vocation id="10" name="Held Machine" description="a pokemon trainer" needpremium="0" gaincap="0" gainhp="15" gainmana="0" gainhpticks="2" gainhpamount="3" gainmanaticks="0" gainmanaamount="0" manamultiplier="1.1" attackspeed="-1" soulmax="251" gainsoulticks="-1" fromvoc="1">

<formula meleeDamage="0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/>

<skill fist="1.0" club="1.0" sword="1.0" axe="1.0" distance="1.0" shielding="1.0" fishing="3.0" experience="1.0"/>

</vocation>

 

data/actions/scripts, código da máquina de troca:

 

 


function onUse(cid)

doPlayerSetVocation(cid, 10)

openChannelDialog(cid)

return true

end

 

data/creaturescripts/scripts:

 

 


local trade_options = {

--[channel_id] = {token = {token_itemid, amount}, results = {held_itemid, held_itemid, held_itemid, ...}},

}

 

function onJoinChannel(cid, channelId, users, isTv)

local option = trade_options[channelId]

 

if not option then

return false

end

 

doPlayerSetVocation(cid, 1)

if doPlayerRemoveItem(cid, option.token[1], option.token[2]) then

local result = option.results[math.random(#option.results)]

 

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "In trade of "..option.token[2].."x "..getItemNameById(option.token[1])..", you received: "..getItemNameById(result)..".")

doPlayerAddItem(cid, result, 1)

else

doPlayerSendTextMessage(cid, 27, "You do not have "..option.token[2].."x "..getItemNameById(option.token[1])..".")

end

return false

end

 

Configure na tabela trade_options as opções de troca, seguindo o modelo:

 

 


[iD_do_canal] = {token = {ID_do_token, quantidade}, results = {IDs_dos_helds}},

 

Tag:

 

 


<event type="joinchannel" name="Held_Machine" event="script" value="nome_do_arquivo.lua"/>

 

Em login.lua:

 

 


registerCreatureEvent(cid, "Held_Machine")

 

Créditos:

 

 

Zipter98 ( pelo sistema );

 

 

Eu ( por trazer ).

 

 

Link to comment
Share on other sites

  • 1 month later...
  • 5 months later...
Em 27/06/2016 at 16:16, Bluester disse:

Tamo ai... eu usava esse sistema mas decidi fazer um por minhas mãos... :P: 

amigo tem problema, fiz deu td certinho como vc falou, mas agora trade , help, e outros chanells tbm n abrem

Edited by Azon25
Link to comment
Share on other sites

19 horas atrás, Azon25 disse:

amigo tem problema, fiz deu td certinho como vc falou, mas agora trade , help, e outros chanells tbm n abrem

Tbm tou com esse erro e tbm nao troca as tokens pro held

Link to comment
Share on other sites

  • 7 months later...
 Share

×
×
  • Create New...