Jump to content

Sistema De Refinamento..

Rate this topic


Recommended Posts

Sistema de Refinamento !

 

è um sistema de um otserv famoso = pbOT

 

é tpw assim ..

 

Exeplo:

You see a blue gem.It weighs 1.00 oz.

este item serve pra refina defesa .

 

ai eu cato um axe atk normal

 

You see a knight axe (Atk:33, Def:21).

It can only be wielded properly by players of level 25 or higher

.It weighs 59.00 oz.

 

ai tpw.. eu clico no axe e depois na Gem..

 

ai a gem some e eu recebo uma menssagem .. seu item foi

refinado com sucesso..

 

ai eu olho axe ta asim..

 

You see a knight axe (Atk:33, Def:22).

Refinado (def+1)

It can only be wielded properly by players of level 25 or higher

.It weighs 59.00 oz.

 

è issu aii.. quem poder me ajuda.. temo ae ;)

Link to comment
https://xtibia.com/forum/topic/119296-sistema-de-refinamento/
Share on other sites

Rapaz, este é um sistema bem simples, eu acho que da pra adaptar até do própio sistema de encantamento (terra,gelo,raio,fogo).

Mudando o atributo de encantamento para um atk ou def adicional.

È bem fácil, porém exige paciência. Só não faço porquê estou sem nenhum otserv aqui e estou usando internet via discado.

Abraços,

Henrique.

Cara se vc qé assim, pde se fazer por DUAS actions, claro q tem varios jeitos, mas um jeito n mto dificel eh fazer por dois scripts de action e dai um q quando vc clica na gem te bota um storage e dai otro q quando tu clica no axe, se o player tive o storage da gem ai o axe fica do jeito refinado.Pde se assim, se vc quise ate posso faze dps pra ti.

  • 2 weeks later...

Outro jeito fácil de fazer é atraves de item.itemid e item2.itemid,

onde item2.item é a arma e item.itemid é a gem que voce usará com os crosshairs (se estiver errado alguem me corrige)

 

Se eu tiver tempo eu faço ele pra você...

Se eu ganha um doce akosOaSoaksoKSKaoskAOS. Ok. Vamos la:

 

Em data\actions\scripts copie e cole qualquer arquivo, renomei-o para upgrade.lua, abra-o, apague tudo oque tiver dentro e coloque:

 

local messagetype = MESSAGE_EVENT_ORANGE

local fetishs = {

[7800] = {chance = 100, amount = 10, set = setItemAttack, get = getItemAttack, name = "attack"},

[7801] = {chance = 100, amount = 10, set = setItemAttack, get = getItemAttack, name = "attack"},

[7802] = {chance = 100, amount = 10, set = setItemAttack, get = getItemAttack, name = "attack"},

[7803] = {chance = 100, amount = 10, set = setItemAttack, get = getItemAttack, name = "attack", destroy = TRUE},

[7804] = {chance = 100, amount = 10, set = setItemAttack, get = getItemAttack, name = "attack", destroy = TRUE},

[7805] = {chance = 100, amount = 10, set = setItemDefense, get = getItemDefense, name = "defense"},

[7806] = {chance = 100, amount = 10, set = setItemDefense, get = getItemDefense, name = "defense"},

[7807] = {chance = 100, amount = 10, set = setItemDefense, get = getItemDefense, name = "defense"},

[7808] = {chance = 100, amount = 10, set = setItemDefense, get = getItemDefense, name = "defense", destroy = TRUE},

[7809] = {chance = 100, amount = 10, set = setItemDefense, get = getItemDefense, name = "defense", destroy = TRUE},

[7810] = {chance = 100, amount = 10, set = setItemArmor, get = getItemArmor, name = "armor"},

[7811] = {chance = 100, amount = 10, set = setItemArmor, get = getItemArmor, name = "armor"},

[7812] = {chance = 100, amount = 10, set = setItemArmor, get = getItemArmor, name = "armor"},

[7813] = {chance = 100, amount = 10, set = setItemArmor, get = getItemArmor, name = "armor", destroy = TRUE},

[7814] = {chance = 100, amount = 10, set = setItemArmor, get = getItemArmor, name = "armor", destroy = TRUE},

[7815] = {chance = 100, amount = 10, set = setItemShootRange, get = getItemShootRange, name = "range"},

[7816] = {chance = 100, amount = 10, set = setItemShootRange, get = getItemShootRange, name = "range"},

[7817] = {chance = 100, amount = 10, set = setItemShootRange, get = getItemShootRange, name = "range"},

[7818] = {chance = 100, amount = 10, set = setItemShootRange, get = getItemShootRange, name = "range", destroy = TRUE}, [7819] = {chance = 20, amount = 10, set = setItemShootRange, get = getItemShootRange, name = "range", destroy = TRUE},

[7850] = {chance = 100, amount = 10, set = setItemAttack, get = getItemAttack, name = "attack"}, -- only given when access >= 5

[7851] = {chance = 100, amount = 10, set = setItemDefense, get = getItemDefense, name = "defense"}, -- only given when access >= 5

[7852] = {chance = 100, amount = 10, set = setItemArmor, get = getItemArmor, name = "armor"}, -- only given when access >= 5

[7853] = {chance = 100, amount = 10, set = setItemShootRange, get = getItemShootRange, name = "range"} -- only given when access >= 5

}

local minmax = {

min1 = 7800, -- minimum of the random fetishs for access < 5

max1 = 7819, -- maximum of the random fetishs for access < 5

min2 = 7850, -- minimum of the random fetishs for access >= 5

max2 = 7853, -- maximum of the random fetishs for access >= 5

}

-- WARNING: look further down and your eyes will burn. --

function onUse(cid, item, fromPosition, itemEx, toPosition)

if item.actionid == 0 then

local new = getPlayerAccess(cid) >= 5 and math.random(minmax.min2, minmax.max2) or math.random(minmax.min1, minmax.max1)

local text = "You remove the dust and revealed that it is a "..fetishs[new].chance.."% fetish for "..fetishs[new].name.." +"..fetishs[new].amount.."."..(fetishs[new].destroy ~= nil and " It has a slight chance of breaking your item." or "")

doPlayerSendTextMessage(cid, messagetype, text)

doSetItemActionId(item.uid, new)

doSetItemSpecialDescription(item.uid, text)

setItemName(item.uid, fetishs[new].chance.."% fetish for "..fetishs[new].name.." +"..fetishs[new].amount)

elseif fetishs[item.actionid] ~= nil then

if fetishs[item.actionid].get(itemEx.uid) > 0 then

if itemEx.actionid < 110 then

local amount = math.max(0, itemEx.actionid - 100)

local chance = math.random(0, 100)

local text = fetishs[item.actionid].name.." upgrade on "..getItemNameById(itemEx.itemid).." failed."

if chance <= fetishs[item.actionid].chance then

fetishs[item.actionid].set(itemEx.uid, (fetishs[item.actionid].get(itemEx.uid)+fetishs[item.actionid].amount))

text = getItemNameById(itemEx.itemid).." "..fetishs[item.actionid].name.." +"..fetishs[item.actionid].amount.."."

elseif fetishs[item.actionid].destroy ~= nil or fetishs[item.actionid].destroy == TRUE then

if math.random(0, 1) == 1 then

doRemoveItem(itemEx.uid)

text = getItemNameById(itemEx.itemid).." has been destroyed."

end

end

doPlayerSendTextMessage(cid, messagetype, text)

doSetItemActionId(itemEx.uid, 100+(amount+1))

setItemName(itemEx.uid, getItemNameById(itemEx.itemid).." (Level "..(amount+1)..")")

doSendMagicEffect(toPosition, (chance <= fetishs[item.actionid].chance and 13 or 2))

doSendAnimatedText(toPosition, (chance <= fetishs[item.actionid].chance and "Success!" or "Failed!"),(chance <= fetishs[item.actionid].chance and TEXTCOLOR_WHITE or TEXTCOLOR_RED))

doRemoveItem(item.uid)

else

doPlayerSendCancel(cid, "This weapon has already been upgraded 10 times.")

end

else

doPlayerSendCancel(cid, "This item may not be upgraded.")

end

else

doPlayerSendCancel(cid, "Sorry, not possible.")

end

return TRUE

end

 

Salve e fexe. Agora em actions.xml adicione as linhas:

 

<!--Upgrade-->

<action fromid="9743" toid="9744" event="script" value="upgrade.lua"/>

 

Salve e fexe.

 

EXPLICANDO:

 

*chance = 100 : Chance de sucesso para refinar o equipamento ou arma.

 

*amount = 10 : O quanto aumentará se obtiver sucesso.

 

*set = setItemAttack : O tipo que ele aumenta.(defense,attack,Armor,Range e etc...)

 

*destroy = TRUE : O iten quebra e em FALSE nao

 

Creditos: 90% para jordanhenry (Otland) e modificado por jajajiji

10% para mim, por ter trazido ao xtibia e por ter modificado algumas coisas.

 

Quero que use minha fan bar em :p

Espero ter ajudado!

Edited by kakareco
Se eu ganha um doce akosOaSoaksoKSKaoskAOS. Ok. Vamos la:

 

Em data\actions\scripts copie e cole qualquer arquivo, renomei-o para upgrade.lua, abra-o, apague tudo oque tiver dentro e coloque:

 

 

 

Salve e fexe. Agora em actions.xml adicione as linhas:

 

<!--Upgrade-->

<action fromid="9743" toid="9744" event="script" value="upgrade.lua"/>

 

Salve e fexe.

 

EXPLICANDO:

 

*chance = 100 : Chance de sucesso para refinar o equipamento ou arma.

 

*amount = 10 : O quanto aumentará se obtiver sucesso.

 

*set = setItemAttack : O tipo que ele aumenta.(defense,attack,Armor,Range e etc...)

 

*destroy = TRUE : O iten quebra e em FALSE nao

 

Creditos: 90% para jordanhenry (Otland) e modificado por jajajiji

10% para mim, por ter trazido ao xtibia e por ter modificado algumas coisas.

 

Quero que use minha fan bar em :p

Espero ter ajudado!

 

Manow nao sei oque ta dando aqui, eu testei em um server 8.50, mais quando eu do use e clico no itens nao faz nada

o.O

 

sera que falta alguma coisa, ou e por causa da verçao?

Guest
This topic is now closed to further replies.
×
×
  • Create New...