Jake1 2 Postado Maio 5, 2013 Share Postado Maio 5, 2013 Eu conseguir um system de troca de classe sempre que quiser no ot que eu to desenvolvendo contem +70 classes. pra n fica desorganizado eu preciso de um system que no tipo troke o HP e o MP sempre que troka de vocação tipo: Classe HP MP Inicial 5 5 TimeKiller 25 40 Necromance 60 25 Shaman 15 80 Se eu for :Inicial lvl 130 vo ter no maximo HP:650 MP:650. Se eu for :TimeKiller lvl 130 vo ter no maximo HP:3250 MP: 5200. Se eu for :Shaman lvl 130 vo ter no maximo : HP :1950 MP: 10400. Eu quero que tipo se eu for um inicial quando eu fala com o npc e troka a vocação meu hp e mp mude de acordo com a vocação. Tipo eu so inicial lvl 130 tenho 650 de hp quando eu fala com o npc minha vocação muda pra timekiller e meu hp muda para 3250. Minha mana tambem muda. Vo da uma semana de rep+ (7 rep+) Por que eu acho menho dificio esse systema vlw caso se n se contente quando o ot for aberto a vera um classe que so vai ter o pessoal que me ajudo. Flw Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/ Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Maio 5, 2013 Share Postado Maio 5, 2013 (editado) eu e o jhon já fizemos um sistema desses: www.jhon - soft.com/produto/678283/Exchanged_Vocation.html obs: retire os espaços do link /\ caso ele deixe postar eu te mando por aqui Editado Maio 5, 2013 por Vodkart Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1516290 Compartilhar em outros sites More sharing options...
0 Jake1 2 Postado Maio 5, 2013 Autor Share Postado Maio 5, 2013 lol isso eu tenho que compra. Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1516338 Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Maio 5, 2013 Share Postado Maio 5, 2013 por isso que eu falei "se ele deixar eu postar" to com o sistema, vou ver com o jhon se eu posso disponibilizar na comunidade Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1516343 Compartilhar em outros sites More sharing options...
0 Jake1 2 Postado Maio 5, 2013 Autor Share Postado Maio 5, 2013 Se eu n consegui isso vo ter que coloka por systema de atributos pra ser coloka manualmente. tenta conseguir ae. Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1516375 Compartilhar em outros sites More sharing options...
0 Skymagnum 234 Postado Maio 6, 2013 Share Postado Maio 6, 2013 Não vou dar nas mão não, mas vou dar uma ideia de como fazer. vWRgrzit[/pastebin] local vocationConfig = { [iD DA VOCAÇÃO] = {manaPerLevel = quanto de mana essa vocação ganha por nível, healthPerLevel = quanto de vida essa vocação ganhar por nível}, } Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1516435 Compartilhar em outros sites More sharing options...
0 Jake1 2 Postado Maio 6, 2013 Autor Share Postado Maio 6, 2013 aff cara eu n sei quase nada de script e esse script e o coração do ot sem ele o ot n vai adianta nd ter +70 vocações pq alguém vai pega uma classe que tenha muito life depois vai muda pra uma classe que bate muito ae vai ficar com um life grande e batendo muito Vodkart vc consegue criar ele o script com isso que ele passo? Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1516815 Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Maio 6, 2013 Share Postado Maio 6, 2013 ainda n consegui falar com ele mas me diz uma coisa, só vai mudar o hp e mana? e as skills, magic lvl não? Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1516899 Compartilhar em outros sites More sharing options...
0 Jake1 2 Postado Maio 8, 2013 Autor Share Postado Maio 8, 2013 não a unica coisa que eu preciso e que mude o HP e a MP não vai ter magic lvl n no lugar do magic lvl vai se Rank Mission quanto mais auto tiver seu rank mission melhor é pq vai ter missão que e preciso ta com o rank lvl 7 lvl 8 ..... tenta fazer com base nisso e me fala se e talkactions ou action explica onde eu bota por favor vo aumenta agora vo da 8 rep+ function(cid) local vocationConfig = { [1] = {manaPerLevel = 5, healthPerLevel = 5}, [2] = {manaPerLevel = 15, healthPerLevel = 15}, [3] = {manaPerLevel = 25, healthPerLevel = 25}, [4] = {manaPerLevel = 45, healthPerLevel = 45}, } local voc = getPlayerVocation(cid) local lvl = getPlayerLevel(cid) setCreatureMaxHealth(cid, vocationConfig[voc].healthPerLevel * lvl) setCreatureMaxMana(cid, vocationConfig[voc].manaPerLevel * lvl) end Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1517465 Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Maio 8, 2013 Share Postado Maio 8, 2013 (editado) a talk é essa changevoc.lua function onSay(cid, words, param) local tabble = { ["sorcerer"] = 1, ["druid"] = 2, ["paladin"] = 3, ["knight"] = 4 } local param = string.lower(param) if param == "" or not tabble[param] then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"this vocation does exist.") return true end local pid, nv = getPlayerGUID(cid), tabble[param] setPlayerStorageValue(cid, 889456, nv) -- evitar bugs local hp,mana = (getVocationInfo(nv).healthGain*getPlayerLevel(cid)),(getVocationInfo(nv).manaGain*getPlayerLevel(cid)) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `manamax` = "..mana..",`health` = "..hp..", `healthmax` = "..hp..",`mana` = "..mana.." WHERE `id` = "..pid) return true end tag: <talkaction words="/changevoc" event="script" value="changevoc.lua"/> exemplo: /changevoc knight configuração: local tabble = { ["sorcerer"] = 1, ["druid"] = 2, ["paladin"] = 3, ["knight"] = 4 } ["nome da vocation"] = ID da vocation exemplo adicionando uma nova vocation: local tabble = { ["sorcerer"] = 1, ["druid"] = 2, ["paladin"] = 3, ["knight"] = 4, ["infernalist"] = 5 } -------------------- agr pra finalizar vc vai em data > creaturescript > script > login.lua e antes do último "return true" adc isso: if getPlayerStorageValue(cid, 889456) ~= -1 then doPlayerSetVocation(cid, getPlayerStorageValue(cid,889456)) end flw obs: colocar a talk soh para utilizar em PZ e aumentar o limite de tempo para usar a talk isso é fácil mas esse script é pra vc fazer o teste se a mana e o hp vao ficar conforme o lvl Editado Maio 8, 2013 por Vodkart Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1517519 Compartilhar em outros sites More sharing options...
0 Jake1 2 Postado Maio 8, 2013 Autor Share Postado Maio 8, 2013 blz vo testa aki @edit blz fuciono perfeitamente mais eu n quero que ganhe a vocation assim pela talkactions eu quero que ganha por npc ou item eu tenho um npc que da vocation mais não muda o hp e a mp pelo lvl fica a antiga so muda a vocação 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 if(msgcontains(msg, 'healer') or msgcontains(msg, 'healer')) then selfSay('Tem certeza.', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and talkState[talkUser] == 1) then if(getPlayerItemCount(cid, 2160) >= 0) then doPlayerRemoveItem(cid, 2160, 0) doPlayerSetVocation(cid, 6) selfSay('Agora sua clase e healer.', cid) else selfSay('Você não tem dinheiro!', cid) end talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1517701 Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Maio 8, 2013 Share Postado Maio 8, 2013 blz o npc vai cobrar pra mudar de voc? somente premium vai poder trocar de voc? será necessário level para vocs? vai ter limite de tempo, por exemplo só pode mudar á cada 3 horas? Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1517825 Compartilhar em outros sites More sharing options...
0 Jake1 2 Postado Maio 8, 2013 Autor Share Postado Maio 8, 2013 o npc vai cobrar pra mudar de voc? não. somente premium vai poder trocar de voc? não. será necessário level para vocs? não. vai ter limite de tempo, por exemplo só pode mudar á cada 3 horas? não. Cada npc so da 1 vocação pq a vera vários npc espelhado pelo mapa e também se de coloque um script que quando eu clica no item da a vocação também pq ja tem system de forja e vc vai pode cata os itens para pode fazer a vocação. Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1517866 Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Maio 8, 2013 Share Postado Maio 8, 2013 (editado) vc vai colocar vários npc diferente pelo mapa? LOL ok... criei um npc dps vc só tira a base dele e edita as falas e o ID da voc que vai dar Nome do seu npc.xml <?xml version="1.0"?> <npc name="Nome do seu npc" script="data/npc/scripts/changevoc.lua" walkinterval="50000" floorchange="0"> <health now="100" max="100"/> <look type="129" head="95" body="116" legs="121" feet="115" addons="3"/> <parameters> <parameter key="message_greet" value="Ola |PLAYERNAME|. deseja se tornar um {healer}? "/> </parameters> </npc> changevoc.lua 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, msg, pid = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid, string.lower(msg), getPlayerGUID(cid) local voc_ID = 4 -- id da nova VOC if isInArray({"healer","voc","change","mudar","heal", "yes", "sim"}, msg) and not talkState[talkUser] then npcHandler:say("Você deseja realmente se tornar um healer?! {yes}", cid) talkState[talkUser] = 1 elseif (msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and talkState[talkUser] == 1) then setPlayerStorageValue(cid, 889456, voc_ID) -- evitar bugs local hp,mana = (getVocationInfo(voc_ID).healthGain*getPlayerLevel(cid)),(getVocationInfo(voc_ID).manaGain*getPlayerLevel(cid)) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `manamax` = "..mana..",`health` = "..hp..", `healthmax` = "..hp..",`mana` = "..mana.." WHERE `id` = "..pid) elseif msg == "no" then selfSay("então tudo bem.", cid) talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) sobre o item, CADA item é diferente ou vai ser um item só, mas com actionID modificado? exemplo: Item ID 8865 para VOC 5 Item ID 8866 para VOC 6 etc... Editado Maio 8, 2013 por Vodkart Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1517886 Compartilhar em outros sites More sharing options...
0 Jake1 2 Postado Maio 8, 2013 Autor Share Postado Maio 8, 2013 Eu vo testa aki a do npc jaja eu te falo do item @edit Vlw fuciono o npc da mudando o hp e o mp. sobre o item vai ser cada item dando uma vocação diferente exemplo: Item ID 8865 para VOC 5 Item ID 8866 para VOC 6 etc... Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1517899 Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Maio 8, 2013 Share Postado Maio 8, 2013 (editado) nome do seu script.lua function onUse(cid, item, fromPosition, itemEx, toPosition) local t = { -- [iD DO ITEM] = VOC ID [8865] = 1, [8950] = 2, [9965] = 3, [8911] = 4 } if not t[item.itemid] then return false end local voc_ID = t[item.itemid] setPlayerStorageValue(cid, 889456, voc_ID) -- evitar bugs doRemoveItem(item.uid, 1) local pid, hp, mana = getPlayerGUID(cid), (getVocationInfo(voc_ID).healthGain*getPlayerLevel(cid)), (getVocationInfo(voc_ID).manaGain*getPlayerLevel(cid)) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `manamax` = "..mana..",`health` = "..hp..", `healthmax` = "..hp..",`mana` = "..mana.." WHERE `id` = "..pid ) return true end actions.xml <action itemid="8865;8950;9965;8911" script="nome do seu script.lua"/> configuração: local t = { -- [iD DO ITEM] = VOC ID [8865] = 1, [8950] = 2, [9965] = 3, [8911] = 4 } [iD DO ITEM] = ID DA VOC exemplo: o item com ID 8911 vai dar a VOC 4 pode adicionar mais items: local t = { -- [iD DO ITEM] = VOC ID [8865] = 1, [8950] = 2, [9965] = 3, [8911] = 4, [9010] = 5 } ai tem que adicionar na tag no actions.xml tbm, ficando <action itemid="8865;8950;9965;8911;9010" script="nome do seu script.lua"/> Editado Maio 8, 2013 por Vodkart Link para o comentário https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/#findComment-1517913 Compartilhar em outros sites More sharing options...
Pergunta
Jake1 2
Eu conseguir um system de troca de classe sempre que quiser no ot que eu to desenvolvendo contem +70 classes.
pra n fica desorganizado eu preciso de um system que no tipo troke o HP e o MP sempre que troka de vocação tipo:
Classe HP MP
Inicial 5 5
TimeKiller 25 40
Necromance 60 25
Shaman 15 80
Se eu for :Inicial lvl 130 vo ter no maximo HP:650 MP:650.
Se eu for :TimeKiller lvl 130 vo ter no maximo HP:3250 MP: 5200.
Se eu for :Shaman lvl 130 vo ter no maximo : HP :1950 MP: 10400.
Eu quero que tipo se eu for um inicial quando eu fala com o npc e troka a vocação meu hp e mp mude de acordo com a vocação.
Tipo eu so inicial lvl 130 tenho 650 de hp quando eu fala com o npc minha vocação muda pra timekiller e meu hp muda para 3250. Minha mana tambem muda.
Vo da uma semana de rep+ (7 rep+)
Por que eu acho menho dificio esse systema vlw
caso se n se contente quando o ot for aberto a vera um classe que so vai ter o pessoal que me ajudo.
Flw
Link para o comentário
https://xtibia.com/forum/topic/213756-troca-de-classe-troca-hp-e-mp/Compartilhar em outros sites
19 respostass a esta questão
Posts Recomendados