Ir para conteúdo
  • 0

Item Que Adiciona Skill Ao Clicar


tonynamoral

Pergunta

Posts Recomendados

  • 0

Ele só poderia utilizar uma vez? Ou ele se removeria (o item) ?

 

@EDIT, Diga oque você gostaria que mudasse, aonde está ID você coloca o do seu item! Crie um arquivo chamado skillitem.lua na pasta data/actions e coloque isso dentro:

 

function onUse (cid,item,frompos,item2,topos)
  if item.itemid == ID DO ITEM then
doPlayerAddSkillTry(cid,SKILL,QUANTIDADE)
doRemoveItem (item.uid)
  end
end

 

Aonde está "SKILL" Você coloca o ID do Skill, e Quantidade , o total de Skills que o Player irá ganhar!

Lista IDSKILLS:

 

 0 Fist.
1 Club.
2 Sword.
3 Axe.
4 Distance.
5 Shielding.
6 Fishing.

 

Tag em actions.xml:

<action itemid="IDDOITEM" event="script" value="skillitem.lua"/>

Editado por Roksas
Link para o comentário
Compartilhar em outros sites

  • 0
Ele só poderia utilizar uma vez? Ou ele se removeria (o item) ? @EDIT, Diga oque você gostaria que mudasse, aonde está ID você coloca o do seu item! Crie um arquivo chamado skillitem.lua na pasta data/actions e coloque isso dentro:
 function onUse (cid,item,frompos,item2,topos) if item.itemid == ID DO ITEM then doPlayerAddSkillTry(cid,SKILL,QUANTIDADE) doRemoveItem (item.uid) end end

Aonde está "SKILL" Você coloca o ID do Skill, e Quantidade , o total de Skills que o Player irá ganhar! Lista IDSKILLS:

 0 Fist. 1 Club. 2 Sword. 3 Axe. 4 Distance. 5 Shielding. 6 Fishing.

Tag em actions.xml:


 

Tecnicamente, seu script não irá dar skill ao player, e sim dará pontos de experiência ao mesmo.

 

@tony

Acho, que seu pedido só poderá ser resolvido se trocar algumas funções nas sources. O outro jeito mais fácil é fazer com que o player deslogue.

Link para o comentário
Compartilhar em outros sites

  • 0

existe essa 'formula' aki..

doPlayerAddSkillTry(cid, skill, getPlayerRequiredSkillTries(cid, skill, getPlayerSkillLevel(cid, skill) + 1) - getPlayerSkillTries(cid, skill), false)

mas ela n funciona, acredito eu, com magic lvl... entao o melhor jeito eh fazer o player deslogar, ou esquecer esse script ;/

 

ja tinha feito algu assim pra um outro pedido.. de uma olhada..

http://www.xtibia.com/forum/topic/198002-runa-que-aumenta-skill/page__view__findpost__p__1379956

Editado por Slicer
Link para o comentário
Compartilhar em outros sites

  • 0

Uma olhada no LUA_FUNCTIONS localizado em data/docs

 

doPlayerAddSkill(cid, skill[, amount = 1[, round = false]])

 


local config = {
   skillName = SKILL_FIST,
   skillAmount = 5,
   magicEffect = CONST_ME_MAGIC_BLUE,
   removeable = "yes"
}

--[[
   SKILL_FIST
   SKILL_CLUB
   SKILL_SWORD
   SKILL_AXE
   SKILL_DISTANCE
   SKILL_SHIELD
   SKILL_FISHING
   SKILL__MAGLEVEL
   SKILL__LEVEL
]]--

function onUse(cid, item, fromPosition, itemEx, toPosition)
   doPlayerAddSkill(cid, config.skillName, config.skillAmount, true)
   doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your ".. SKILL_NAMES[config.skillName] .." has grown up.")
   doSendMagicEffect(fromPosition, config.magicEffect)
   if getBooleanFromString(config.removeable) == true then
       doRemoveItem(item.uid, 1)
   end
   return true
end

Editado por Oneshot
Link para o comentário
Compartilhar em outros sites

  • 0

@tonynamoral

 

Já tive o trabalho de fazer o script e testar, não darei suporte por instalação incorreta.

 

@SmiX

 

Só quis dizer que existe uma função que adiciona níveis de skill.

 

@Slicer

 

Funciona.

 

Só colocar SKILL__MAGLEVEL no lugar de SKILL_FIST.

Link para o comentário
Compartilhar em outros sites

  • 0

Crie um arquivo chamado skillstone.lua em data/actions/scripts, cole o conteúdo passado acima.

 

Adicione a seguinte linha no actions.xml

 

<action itemid="ID_DO_ITEM" event="script" value="skillstone.lua"/>

Link para o comentário
Compartilhar em outros sites

  • 0

Opps , eu ja tinha colocado , soq eu dei 1 d pangaré , invez de itemid , tava actionid '-'

 

VÉEEI , PQP T AMUUU <3 SEEU LINDO (L)

 

Porém so tem 1 coisa , quando ele aperta lá , tudo bunitinho . ele só adiciona 4 , e dxa akela barrinha faltando 1% , e quando eu relogo ele aparece os 5 adicionado certinho , oq fazer?

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...