Ir para conteúdo
Banner com Efeitos

Jean Junior

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Obrigado
    Jean Junior deu reputação a ViitinG em [Creaturescript] Icones no minimap com descrição   
    Bom para quem não sabe como funciona o script,é uma marcação que fica no minimap(in-game) que ao deixar o ponteiro do mouse em cima aparece uma descrição,pode ser mudado tanto a descrição quanto o icone que aparece no minimap.
     
    • Adicionando o script •
     
     
     
     
    Em "data/creaturescripts/creaturescripts.xml" adicione está tag :
    <event type="think" name="IconMap" event="script" value="iconmap.lua"/> Em "data/creaturescripts/scripts" crie um arquivo lua chamado "iconmap" e cole isso dentro :
    local config = { storage = 030220122041, version = 1, marks = { {mark = 5, pos = {x = 1095, y = 1062, z = 7}, desc = "Temple."}, {mark = 4, pos = {x = 895, y = 996, z = 7}, desc = "Depot."} } } local f_addMark = doPlayerAddMapMark if(not f_addMark) then f_addMark = doAddMapMark end function onThink(cid, interval) if(isPlayer(cid) ~= TRUE or getPlayerStorageValue(cid, config.storage) == config.version) then return end for _, m in pairs(config.marks) do f_addMark(cid, m.pos, m.mark, m.desc ~= nil and m.desc or "") end setPlayerStorageValue(cid, config.storage, config.version) return TRUE end Em "data/creaturescripts/scripts/login.lua" adicione está tag no fim do script :
    registerCreatureEvent(cid, "IconMap") Caso use TFS 1.0 use este register no login.lua :
    player:registerEvent(cid, "IconMap") Creditos : Comedinhas.  -   ViitinG pelo tutorial.
     
     
    • Configurando •
     
     
     
    • Icones •
     

  2. Obrigado
    Sim, dá sim. Só tenta explicar tudo de uma vez para não ficar esse muda muda rsrsrs. Segue o script:
     
     
    Valeu!
  3. Obrigado
    Em creaturescritps/scripts crie um arquivo:
     
    tpskill.lua
     
     
    No arquivo do monstro, antes de </monster>, adicione: 
    <script>
    <event name="RewardTp"/>
    </script>
     
    Em creaturescripts.xml, adicione a tag:  <event type="death" name="RewardTp" event="script" value="tpskill.lua"/>
  4. Gostei
    Jean Junior deu reputação a Smart Maxx em Probleminha com NPC.   
    nome do npc.lua :
    local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 npcHandler:addModule(FocusModule:new()) nome do npc.XML :
    <?xml version="1.0" encoding="UTF-8"?> <npc name="Nome do npc" script="data/npc/scripts/nome que vc crio.lua" walkinterval="2000" floorchange="0">   -- não se esqueça de mudar essa parte <health now="100" max="100"/> <look type="130" head="19" body="86" legs="68" feet="95" addons="1"/> -- aqui altera roupa <parameters> <parameter key="message_greet" value="What do you want from me, |PLAYERNAME|?" /> <parameter key="module_shop" value="1"/> <parameter key="shop_buyable" value=""/> <parameter key="shop_sellable" value="nome do item, id do item, preço a ser vendido"/> </parameters> </npc>
  5. Gostei
    Jean Junior deu reputação a Dyego em Probleminha com NPC.   
    este aqui é o script, só você editar ele,     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   local shopModule = ShopModule:new() npcHandler:addModule(shopModule)   shopModule:addSellableItem({'dragon scale mail', 'dsm'},                  2492, 40000,    'dragon scale mail')   npcHandler:addModule(FocusModule:new())
  6. Gostei
    Jean Junior deu reputação a Dyego em Probleminha com NPC.   
    Xml: <?xml version="1.0" encoding="UTF-8"?> <npc name="Soilance" script="data/npc/scripts/manga.lua" walkinterval="2000"> <health now="100" max="100"/> <look type="128" head="79" body="48" legs="57" feet="76" addons="0"/> <parameters> <parameter key="message_greet" value="Greetings, |PLAYERNAME|. Perhaps you are interested in buying some food?" />         <parameter key="message_farewell" value="Well, bye.." /> <parameter key="message_walkaway" value="Goodbye?" /> </parameters> </npc>                 Script:   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   local shopModule = ShopModule:new() npcHandler:addModule(shopModule)   shopModule:addSellableItem({'meat'}, 2666, 3, 'orange')           npcHandler:addModule(FocusModule:new())
  7. Gostei
    Jean Junior deu reputação a Cazuza em (Resolvido)Outfit por vocação   
    Aqui vai um LINK de um script meu que funciona perfeitamente.
  8. Gostei
    Jean Junior deu reputação a Orochi Elf em (Resolvido)Script ...   
    Não testei.
    local cfg = {     delay = 2 -- Segundos     msg = "DONATE!" -- Menssagem     items = {2463}, -- Items que irão enviar a menssagem } local function doSendTxt(cid, txt)     if getPlayerStorageValue(cid, 12992) < 1 then         return true     end              doSendAnimatedText(getThingPos(Cid), txt, math.random(1, 255))     doSendMagicEffect(getThingPos(cid), 10)     return addEvent(doSendTxt, cfg.delay * 1000, cid, txt) end function onEquip(cid, item)     if isInArray(cfg.items, item.itemid) then if getPlayerStorageValue(cid, 12992) < 1 then          setPlayerStorageValue(cid, 12992, 1)          doSendText(cid, cfg.msg) end     end     return true end function onDeEquip(cid, item)     if isInArray(cfg.items, item.itemid) then                  setPlayerStorageValue(cid, 12992, 0)     end     return true end TAG:
    <movevent type="Equip" itemid="2463" slot="body" event="script" value="NomeDoScript.lua"/> <movevent type="DeEquip" itemid="2463" slot="body" event="script" value="NomedoScript.lua"/> Bom.. pra editar, é o seguinte. Se você for adicionar mais items no slot body, basta fazer assim
    modo -> itemid="2463; NewID"   exemplo -> itemid="2463; 2466" Caso for adicionar outro slot, voce precisa adicionar outra tag, e mudar o SLOT.
  9. Gostei
    Jean Junior deu reputação a nookia em (Resolvido)Script ...   
    local config = { tempo = 2, msg = "DONATE!", items = {2463} -- Itens que vai enviar a msg. } local function doSendText(cid, text) if (isPlayer(cid) == FALSE) then return false end if getPlayerStorageValue(cid, 19234) < 1 then return TRUE end doSendAnimatedText(getPlayerPosition(cid),config.msg, math.random(01,255)) return addEvent(doSendText, config.tempo * 1000, cid, text) end function onEquip(cid, item) if isInArray(config.items, item.itemid) then if getPlayerStorageValue(cid, 19234) < 1 then setPlayerStorageValue(cid, 19234, 1) doSendText(cid, config.msg) end end return TRUE end function onDeEquip(cid, item) if isInArray(config.items, item.itemid) then setPlayerStorageValue(cid, 19234, 0) end return TRUE end Testei e ta funcionando.
  10. Gostei
    Jean Junior deu reputação a Cazuza em [Creaturescripts] Outfit por vocação   
    Nome: Outfit por vocação Função: A pedidos de um membro do forum (@Jose Peterson). Aqui está um script que caso vocês sigam passo a passo irá funcionar como o nome já diz. Exemplo: Se for (Mago, Sorcerer) usará a outfit de Mage.  
    Versão: Testada somente na "10.31". (OTX Server - Galaxy) Créditos:  Kazuza - (eu) Por ter criado.
    @Jose Peterson - Pela Ideia.
     
      "Pasta Servidor > Data > XML > ABRA o "Outfits.xml".
    <outfit id="1"> <list gender="0" lookType="136" name="Citizen"/> <list gender="1" lookType="128" name="Citizen"/> </outfit> Vai ser assim certo? Preciso que você deixe desta forma TODOS os outifit:
     
    <outfit id="1" storageId="1415" storageValue="1"> <list gender="0" lookType="136" name="Citizen"/> <list gender="1" lookType="128" name="Citizen"/> </outfit> <outfit id="2" storageId="1416" storageValue="1"> <list gender="0" lookType="137" name="Hunter"/> <list gender="1" lookType="129" name="Hunter"/> </outfit> Notou a diferença? reparou que tem (storageId="1415" storageValue="1") e no outro (storageId="1416" storageValue="1").
    Continue, acrescentando isto a todos outfits e aumentando o número da storageID, quando acabar vá para o próximo passo.
     

     
    "Pasta Servidor > Data > Creaturescripts > ABRA o "creaturescripts.xml".
    <event type="login" name="Outfit" event="script" value="Outfit.lua"/>  
     
    "Pasta Servidor > Data > Creaturescripts > Scripts > ABRA o "login.lua".
    Adicione a seguinte linha antes do return true.

    registerCreatureEvent(cid, "Outfit")  
     
    "Pasta Servidor > Data > Creaturescripts > Scripts > CRIE  o arquivo "outfit.lua".
    function onLogin(cid) local r = getCreatureOutfit(cid) local roupa = {lookHead = r.lookHead, lookBody = r.lookBody, lookLegs = r.lookLegs , lookFeet = r.lookFeet} if (getPlayerAccess(cid) <= 2) then if isPlayer(cid) then if getPlayerStorageValue(cid, 1415) == -1 then if getPlayerVocation(cid) == 0 then -- Sem vocação setPlayerStorageValue(cid,1415 ,1) -- Citzen if getPlayerSex(cid) == 0 then -- Se for homem doCreatureChangeOutfit(cid,{lookType = 136, roupa}) -- Roupa Masculina else doCreatureChangeOutfit(cid, {lookType = 128, roupa}) -- Roupa Feminina end end end if getPlayerStorageValue(cid, 1417) == -1 then if getPlayerVocation(cid) == 1 then -- Sorcerer? setPlayerStorageValue(cid,1417 ,1) -- Storage da roupa que voce quer, esta no XML/Outfits if getPlayerSex(cid) == 0 then -- Se for homem doCreatureChangeOutfit(cid,{lookType = 138, roupa}) -- Roupa Masculina else doCreatureChangeOutfit(cid, {lookType = 130, roupa}) -- Roupa Feminina end end end end end return true end




    Adicionando Vocacoes/Outfits


    Aqui não consta todos os Outfits para todas vocações, mas você pode adicionar. É que estava com preguiça, seguindo o exemplo:
    if getPlayerStorageValue(cid, 1415) == -1 then -- A STORAGE DA ROUPA QUE VOCE QUER, XML/OUTFIT if getPlayerVocation(cid) == 0 then -- O NUMERO DA VOCACAO setPlayerStorageValue(cid,1415 ,1) -- A STORAGE DA ROUPA QUE VOCE QUER, XML/OUTFIT if getPlayerSex(cid) == 0 then doCreatureChangeOutfit(cid,{lookType = 136, roupa}) -- Roupa Masculina else doCreatureChangeOutfit(cid, {lookType = 128, roupa}) -- Roupa Feminina end end end  
     
    PS: O script tava formatado certo, essa bosta tirou a formatação.
  11. Gostei
    Jean Junior deu reputação a Orochi Elf em (Resolvido)Spell INOVADORA !   
    Bom.. os códigos ficaram muito ridículos, preciso estudar uma forma mais bonitinha
     
    @OBS: Não testei.
    LifeSteal.lua



     
    Spells.xml
        <instant name="Life Steal" words="life steal" lvl="1" mana="100" prem="0" range="100" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="LifeSteal.lua">         <vocation id="4"/>     </instant>
  12. Gostei
    Jean Junior deu reputação a buddha em (Resolvido)Spell INOVADORA !   
    Pois então... É praticamente impossível. O que daria pra fazer é juntar o exura a uma magia de área.
     
    Edit:
    Tipo assim:



  13. Gostei
    Jean Junior deu reputação a Amandinhasz em (Resolvido)Atributo que da mais loot chance para um Amulet?   
    Amigo, joguei no Google e encontrei somente isso: http://www.tibiaking.com/forum/topic/21918-mod-loot-ring-anel-de-loot/.
    Espero que eu tenha ajudado. >_>
  14. Gostei
    Jean Junior deu reputação a buddha em (Resolvido)Outfit por vocação   
    Pera ai cara, não ponha no seu server ainda, tava testando e deu um bug loko aqui. Já posto o funcional.
     
    Aqui:



    Assim ele setaria o outfit mas a cor seria branca, para mudar isso é só ir mudando o lookHead e tals. Para saber o numero é facil, a tabela de cores se conta assim:
     
    0 = branca(a primeira contando na horizontal), 1 = bege(a segunda contando na horizontal), etc.
     
    Lembrando que nos testes vi que precisa ser onLogin(cid), mas não se preocupe, não dá para trocar de outfit. Também tem que colocar a outfit do homem e da mulher, senão os homens vão nascer com outfits de mulher ou as mulher com as do homem, eu marquei em negrito onde que é o do homem e o da mulher. O lookAddons é o seguinte: 1 = O primeiro addon, 2 = O segundo addon, 3 = Os dois addons.
  15. Gostei
    Jean Junior deu reputação a JhonatanCWest em [Tutorial] Explicando e Criando Vocações   
    Olá TibiaKing,

    Vi muitas pessoas com dúvidas, mesmo contendo tutoriais, não entendiam,então tentarei fazer um bom tutorial.

    Ok, vamos por a mão na massa!

    Basicamente nós nos basearemos nisso:
    Localizado em: DATA/XML/VOCATION.XML

    Exemplo


    Primeiro vou explicar cada item pra você criar sua vocação certinha!

    id = não deve haver nenhuma igual, tente seguir a sequencia para não se perder.
    name = nome da nova vocação.
    description = quando der look aparecera esse nome, e caso acc manager também.
    needpremium = se precisa de premmium para ter essa vocação (0 = não 1 = sim)
    gaincap = o tanto de cap que vai ganhar quando upar
    gainhp = o tanto de vida que vai ganhar quando upar
    gainmana = o tanto de mana que vai ganhar quando upar
    gainhpticks = o tanto de segundos que demora pra subir a vida
    gainhpamount = o tanto de vida que vai ganhar a cada ( no nosso exemplo 6 ) segundos
    gainmanaticks = o tanto de segundos que demora pra subir a mana
    gainmanaamount = o tanto de mana que vai ganhar a cada ( no nosso exemplo 3 ) segundos
    manamultiplier = quanto ml vai demorar pra subir, quanto menor mais rápido
    attackspeed = velocidade do ataque de wands e weapons (quanto menor mais rápido)
    soulmax = o maximo de soul
    gainsoulticks = o tanto de segundos que vai demorar pra subir o soul
    fromvoc = como ele será reconhecido nos scripts ( bote igual o id )

    Formulas:

    meleeDamage = quanto hita com weapons ( exceto wands e rods )
    distDamage = quanto hita com ataques a distancia
    wandDamage = quando hita com wand
    magDamage = quando hita com magias
    magHealingDamage = quanto heala com magias de cura, ( tanto exura como exura sio )
    defense = quanto defende com escudos
    armor = quanto defende com armaduras

    Skill Ids:

    (0) Fist
    (1) Club
    (2) Sword
    (3) Axe
    (4) Distance
    (5) Shield
    (6) Fishing

    PS: Quando menor o skill multiplier, mais rápido upa os skills.

    Criando nova vocação :
    1. Basta você adicionar nosso exemplo, embaixo das vocations.

    Exemplo



    Adicionando Spells às novas vocações
    2. Basta adicionar o nome da nova vocação em: data/spells/spells.xml

    Exemplo



    Tutorial criado por mim, exceto a parte dos Skill_ids, que peguei de outros tutos.
    Pronto, espero ter ajudado.
    Se gostaram agradeçam por favor.
    Obrigado, JhonatanCWest

Informação Importante

Confirmação de Termo