Ir para conteúdo

LeoTK

Marquês
  • Total de itens

    1249
  • Registro em

  • Última visita

  • Dias Ganhos

    22

Histórico de Reputação

  1. Upvote
    LeoTK recebeu reputação de Wase Wiss em [Resolvido] [Suporte] Script bugado   
    um maninho me passou um aqui nogard que resolveu vou postar pra você ver
     
    local skills = { [SKILL_FIST] = {maxLevel = 249}, [SKILL_SWORD] = {maxLevel = 249}, [SKILL_AXE] = {maxLevel = 249}, [SKILL_CLUB] = {maxLevel = 249}, [SKILL_DISTANCE] = {maxLevel = 249}, [SKILL_SHIELD] = {maxLevel = 249}, [SKILL_FISHING] = {maxLevel = 249}, [SKILL__MAGLEVEL] = {maxLevel = 150}, } function onAdvance(cid, skill, oldLevel, newLevel) local i = skills[skill] if i then if newLevel > i.maxLevel then doPlayerSetRate(cid, skill, 0.0) doPlayerSave(cid) doPlayerSetStorageValue(cid, skill+10000, 1) return false end end return true end  
    e um segundo com
     
    function onLogin(cid) if getPlayerStorageValue(cid, 0+10000) == 1 then doPlayerSetRate(cid, 0, 0.0) end if getPlayerStorageValue(cid, 1+10000) == 1 then doPlayerSetRate(cid, 1, 0.0) end if getPlayerStorageValue(cid, 2+10000) == 1 then doPlayerSetRate(cid, 2, 0.0) end if getPlayerStorageValue(cid, 3+10000) == 1 then doPlayerSetRate(cid, 3, 0.0) end if getPlayerStorageValue(cid, 4+10000) == 1 then doPlayerSetRate(cid, 4, 0.0) end if getPlayerStorageValue(cid, 5+10000) == 1 then doPlayerSetRate(cid, 5, 0.0) end if getPlayerStorageValue(cid, 6+10000) == 1 then doPlayerSetRate(cid, 6, 0.0) end if getPlayerStorageValue(cid, 7+10000) == 1 then doPlayerSetRate(cid, 7, 0.0) end return true end  
    @Nogard
    o primeiro com onadvance e o segundo com onlogin
  2. Upvote
    LeoTK recebeu reputação de Mudrock em [Show off] Floresta da Morte   
    Fala galera estou desenvolvendo uma mapa e gostaria muito da opinião de vocês sobre ele pois não sei se estou usando os elementos certos nos lugares certos o meu estilo e deixar o mapa bem "sujo" kk cheio de diversidades bem elaborado claro mas creio que alguns lugares com muitos detalhes acabe ficando ruim de certa forma então gostaria da opinião de vocês sobre isso estarei atualizando conforme eu for desenvolvendo fiquem com os prints
     






  3. Upvote
    LeoTK recebeu reputação de Nogard em [Show off] Floresta da Morte   
    Fala galera estou desenvolvendo uma mapa e gostaria muito da opinião de vocês sobre ele pois não sei se estou usando os elementos certos nos lugares certos o meu estilo e deixar o mapa bem "sujo" kk cheio de diversidades bem elaborado claro mas creio que alguns lugares com muitos detalhes acabe ficando ruim de certa forma então gostaria da opinião de vocês sobre isso estarei atualizando conforme eu for desenvolvendo fiquem com os prints
     






  4. Upvote
    LeoTK recebeu reputação de marcelinhok em [Encerrado] [Encerrado] erro, ajuda arrumar pf.   
    isso ai foi quando atualizou o fórum algumas linguagens pararam de funcionar e ficou assim não é seu pc é o fórum mesmo muitos tópicos ficaram assim após a atualização 
  5. Upvote
    LeoTK deu reputação a Poccnn em Castelos e Igrejas   
    Trouxe para vocês alguns "imoveis" que eu criei para meu otserv.
    Espero que gostem.
     
    Castelos:
     
     
     
    Igrejas:
     
     
    download:
     
    clean.rar
     
    clean.rar
























  6. Upvote
    LeoTK deu reputação a Poccnn em Sistema para impedir de atacar membros da mesma party e da mesma guild   
    Hail Xtibianos.
    Eu fiz esse sistema como pedido de um membro há um bom tempo, mas nunca tinha postado ele e diversos sistemas que uso no meu ot server; agora resolvi postá-los.
     
    Esse é o sistema que impede dos players da mesma party se atacarem ou, também dos membros da mesma guild.
     
    Em config.lua adicione:
    noDamageToGuildMates = false noDamageToPartyMembers = true  
    Em creaturescripts.xml adicione:
    <event type="combat" name="combat" script="combat.lua"/>  
    Em creaturescripts/scripts/login.lua adicione:
    registerCreatureEvent(cid, "combat") Na mesma pasta, crie um arquivo lua chamado combat e adicione isso nele:
    --[[> Marcryzius <]]--function onCombat(cid, target) if(isPlayer(cid) and isPlayer(target)) then if(getConfigValue("noDamageToGuildMates") and getPlayerGuildId(cid) > 0 and getPlayerGuildId(cid) == getPlayerGuildId(target)) then return false elseif(getConfigValue("noDamageToPartyMembers") and isInParty(target) and getPartyLeader(target) == getPartyLeader(cid)) then return false end end return trueend  
    Qualquer duvida ou erro deixe nos comentários.
  7. Upvote
    LeoTK deu reputação a Poccnn em Funções úteis   
    Hail Xtibianos.
     
    Trago a vós uma serie de funções que eu uso no meu servidor e que pode ser úteis ao seu.
    Lembrando que algumas funções podem fazer uso de uma livraria xml criado por mim e posta nesse tópico.
     
     
    Essa função tem por objetivo criar uma data formatada (00:00:00) de um intervalo de tempo.
     
    function intervalClockFormat(ini,fim) --[[( Marcryzius )]]--local ini,fim = tonumber(ini),tonumber(fim)if not(ini or fim)then return "error",print('function intervalClock erro: type de variaveis invalidas') endlocal tienpo = fim-ini-- existe o parametro de dia, mas não está sendo retornado (usado).local day,hour,minu,seco  = tienpo/60/60/23%30,math.floor(tienpo/60/60%23), math.floor(tienpo/60%60),math.floor(tienpo%60)    return (hour < 10 and "0"..hour or hour)..":"..(minu < 10 and "0"..minu or minu)..":"..(seco < 10 and "0"..seco or seco)endEx: print(intervalClockFormat(os.time(),os.time()+98)) >> 00:01:38print(intervalClockFormat(os.time(),os.time()+6598)) >> 01:49:58
    Essas funções tem por objetivo salvar as informações de uma determinada quest e saber se o player tem essa quest salva em seu histórico. 
    function saveQuestsInfor(uid,name,cid,other) --[[( Marcryzius )]]----[[    uid = Item.uid usado no bau(entre outros) para receber o item da Quest    name = nome do item dado ao player ou nome da quest    cid = identificacao do player    other = informacoes adicionais para serem salvas junto a quest]]--if not(db.executeQuery("SELECT * FROM `server_quests`;"))then -- caso a table não exista, será criada    db.executeQuery("CREATE TABLE `server_quests` (`uid` INTEGER, `name` VARCHAR(255), `name_player` VARCHAR(255), `pos` VARCHAR(255), `other` TEXT);")end-- caso o parametro uid seja numero, se pega a posição do item ou, caso não, se pega a posição do player.local other,pos2 = other or '',''local pos = type(uid) == 'number' and getThingPos(uid) or getCreaturePosition(cid)    pos2 = 'x='..pos.x..', y='..pos.y..', z='..pos.z        -- verifica se tudo está correto.    if not(type(name) == 'string') or not(tonumber(cid))then         return false, print('Funcao requer parametros: name,cid')     end        -- salva as informações na database.    db.executeQuery("INSERT INTO `server_quests` (`uid`, `name`, `name_player`,`pos`,`other`) VALUES ("..(uid or tonumber(pos.x..''..pos.y..''..pos.z))..",'"..name.."', '"..getCreatureName(cid).."','"..pos2.."','"..other.."');")    return trueendfunction getSaveQuestsInfor(uid,cid) --[[( Marcryzius )]]--local str = false    if(tonumber(uid))then        str = db.getResult("SELECT * FROM `server_quests` WHERE `uid` = '"..uid.."' AND `name_player` = ".. db.escapeString(getCreatureName(cid))..";")    elseif(type(uid) == 'string')then        str = db.getResult("SELECT * FROM `server_quests` WHERE `name_player` = " ..db.escapeString(getCreatureName(cid)).. " AND `name` = '"..uid.."';")    else        return false,print('getSaveQuestInfor: tipo de uid invalido > '..tostring(type(uid)))    end    return (str:getID() == -1) and true or false end  
    Essa função serve para por a primeira letra de cada palavra da 'msg' em maiúscula.
    function upperPrimer(msg) --[[( Marcryzius )]]--local txt = ''    for k in string.gmatch(msg,'%a+') do        if(#k > 1)then            txt = txt..' '..k:gsub("^%a", function(s) return s:upper() end)        else            txt = txt..' '..k        end    end    return txt:sub(2,-1)endEx:print(upperPrimer("toda primeira letra de cada palavra desse texto foi colocada em maiusculo")) >> Toda Primeira Letra De Cada Palavra Desse Texto Foi Colocada Em Maiusculo  
    Função criada para determinar o valor inteiro mais próximo de uma fração.
    function math.proxInteger(value) --[[( Marcryzius )]]-- local value = tonumber(value)    if not(value)then return 0,print('Function error: math.proxInteger() > valor => '..type(value)) end    return value-math.floor(value) < 0.5 and math.floor(value) or math.ceil(value)end  
    Essa função converte a 'string' em números e devolve a soma de todos os números.
    function getStoreString(str) --[[( Marcryzius )]]--local store = 0    if(type(str) == 'string')then        for pos = 1,#str do            store = store+str:sub(pos,pos):byte()        end    elseif(type(str) == 'number')then        return str    else        print('function getStoreString adverte: tipo de parametro invalido. ('..type(str)..')')    end    return storeendEx:print(getStoreString("lua")) >> 322  
    Pega o level necessário para usar a arma dentro do arquivo weapons.xml
    function getLevelNeedToWeaponById(itemid) --[[( Marcryzius )]]--local xfile = xml:load("data/weapons/weapons.xml"):find('%a+','id',itemid)    return tonumber(xfile and xfile.level) or 0end
    Essa função faz uma verificação se há um town em uma determinada área.
    function getTownInArea(pos, ranger) --[[( Marcryzius )]]--local ranger,townid,bloked = ranger or 200,1,{getTownId('Gods Island'),getTownId('Isle of Destiny')} -- towns suprimidos    while getTownName(townid) do    local get  = getTownTemplePosition(townid)        if not(isInArray(bloked,townid)) and ((pos.x >= get.x-ranger and pos.x <= get.x+ranger)and(pos.y >= get.y-ranger and pos.y <= get.y+ranger))then            return townid        else            townid = townid+1        end    end    return 0 --retorna 0 (zero) para servir como condição.end
    Pega o nome e o level do top
    function getTopLevel() --[[( Marcryzius )]]--local target,name,level = db.getResult("SELECT `name`, `level` FROM `players` WHERE `group_id` <= 2 ORDER BY 'level' DESC;"),"",0    if(target:getID() ~= -1) then         repeat        local glevel = target:getDataInt("level")                if(level < glevel)then                name,level = target:getDataString("name"),    glevel            end        until not(target:next())     end    target:free()    return name,levelend  
    Verifica se existe o nome de um player mesmo ele estando offline.
    function playerExistName(nome) --[[( Marcryzius )]]--local db = db.getResult("SELECT `name` FROM `players` WHERE `id` = " ..getPlayerGUIDByName(nome).. ";")    if not(db:getID() == -1) then        return db:getDataString("name")    end    return falseend  
    Retorna o tempo vigente apenas em segundos
    function HorasParaSegundos() --[[( Marcryzius )]]--    local hour,minu,second = tostring(os.date("%H:%M:%S")):match('(%d+)%d+)%d+)')    return ((tonumber(hour) or 0)*3600)+((tonumber(minu) or 0)*60)+secondend  
  8. Upvote
    LeoTK recebeu reputação de Mudrock em [Video-Aula] Adicionando items novos no servidor   
    Fala guys trazendo mais uma vídeo aula rápida e básica pra galera que tem dúvida ainda na hora de adicionar items novos no servidor espero que ajudem o pessoal que tem essa dúvida ^^
     
    Aviso: NÃO FAÇAM IGUAL EU E ESQUEÇAM DE MUDAR O ID DO ITEM NO ITEM.XML KKK
     
     
     
     
    PROGRAMA ITEM EDITOR IMPLEMENTADO NO TÓPICO ESSE ITEM EDITOR É ATUALIZADO SEM BUGS
    ItemEditorSetup.rar
    ItemEditorSetup.rar
  9. Upvote
    LeoTK recebeu reputação de Marshmello em otPokémon Mysterious layout   
    muito bom maninho ^^ ficou bem parecido xD
  10. Upvote
    LeoTK deu reputação a Marshmello em otPokémon Mysterious layout   
    Oi Galera, eu tinha um mordem acc bem antigo aki no meu pc e decidi editar para ficar parecido com Esse , gostaria de saber se ficou parecido
     
    IMAGENS
     


  11. Upvote
    LeoTK recebeu reputação de Frenvius em Podcast Barzinho do Ekz   
    os cara quer comparar otland mano mesma coisa que levar RPG para briga de faca kkk mas beleza na minha opinião de membro desse fórum a muitos anos eu acredito sim que o xtibia esta melhorando a cada dia falta uma caminhada ainda para voltar ao que era antes porém esta caminhando para a direção certa
  12. Upvote
    LeoTK recebeu reputação de Frenvius em [Bug] Perfil sobre mim   
    Se achar outro eu posto ^^
  13. Upvote
    LeoTK recebeu reputação de Mudrock em [Bug] Perfil sobre mim   
    Aew guys então já faz um tempinho que eu editei as informações sobre mim o que antigamente era a assinatura
     
    porém as informações não atualizaram como podem ver no perfil esta uma coisa mas quando posto qualquer coisa continua com a informação antiga não sei se isso é geral ou só comigo acontece isso mas seria bom dar uma olhada ^^
     

  14. Upvote
    LeoTK recebeu reputação de robsonsiilva em [Encerrado] [Encerrado] Dp com um item dentro   
    dei uma olhada achei em movements no arquivo tiles.lua achei um negocio referente ao dp tenta ver se você consegue editar no seu por esse arquivo
    olha no item.xml procure pelo id do dp no meu caso o meu é assim
    certifique-se de estar a attribute key depot
     
        <item fromid="2589" toid="2592" article="a" name="locker">
            <attribute key="type" value="depot" />
            <attribute key="containerSize" value="30" />
     
            <attribute key="type" value="depot" /> essa /\
  15. Upvote
    LeoTK deu reputação a Nogard em [Resolvido] [Saga System] Script pedir uma storage antes de transformar   
    @Brunds me informou sobre a possibilidade do cara tentar ir pra uma saga que não existe, resultando em um erro incômodo no console.
     
    adicionei isso:
     
    if tonumber(t[1]) > table.maxn(sagaTransformacao) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Essa saga não existe.") return true end  
     
    local cooldownzin = 3 -- em segundos para esperar a talkaction novamente saga = { [1] = {{outfit = 71, level = 36, storage = 2221, mana = 2000, health = 3000}, {outfit = 71, level = 36, storage = 2222, mana = 4000, health = 4000}}, [2] = {{outfit = 66, level = 36, mana = 2000, health = 3000}, {outfit = 71, level = 36, mana = 2000, health = 3000}}, [3] = {{outfit = 91, level = 36, mana = 2000, health = 3000}, {outfit = 71, level = 36, mana = 2000, health = 3000}}, [4] = {{outfit = 18, level = 36, mana = 2000, health = 3000}, {outfit = 71, level = 36, mana = 2000, health = 3000}}, [5] = {{outfit = 31, level = 36, mana = 2000, health = 3000},{outfit = 71, level = 36, mana = 2000, health = 3000}}, effect = 111, storageTransf = 2930 } function onSay(cid, words, param, channel) local sagaTransformacao = saga[getPlayerVocation(cid)] if(param == '') then -- *caso nao digite o numero doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Digite o numero da saga que voce deseja.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end local t = string.explode(param, ",") local transform = sagaTransformacao[tonumber(t[1])] if tonumber(t[1]) > table.maxn(sagaTransformacao) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Essa saga não existe.") return true end if not sagaTransformacao then -- *caso saga diferente doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao pode trocar de saga.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if getPlayerLevel(cid) < transform.level then -- *caso nao tenha level correspondente a transformacao doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao tem level ".. transform.level .. ".") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if getPlayerStorageValue(cid, transform.storage) < 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ainda nao completou a saga") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if getPlayerStorageValue(cid, 5432) >= os.time() then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao pode usar ainda, espere ".. getPlayerStorageValue(cid, 5432) - os.time() .." segundos. ") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if (t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Could not understand.") return true end if not (tonumber(t[1])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Digite o numero da saga que voce deseja.") return true end if tonumber(t[1]) > #sagaTransformacao or tonumber(tonumber(t[1])) < 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Essa saga nao existe.") return true end if tonumber(t[1]) ~= getPlayerStorageValue(cid, saga.storageTransf) then -- doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "param = " .. tonumber(t[1]) .. "\nstorage = " .. getPlayerStorageValue(cid, sagaTransformacao.storage)) -- doCreatureAddMana(cid, - sagaTransformacao[getPlayerStorageValue(cid, transform.storage)].mana) -- doCreatureAddHealth(cid, - sagaTransformacao[getPlayerStorageValue(cid, transform.storage)].health) setCreatureMaxMana(cid, getCreatureMaxMana(cid) - sagaTransformacao[getPlayerStorageValue(cid, saga.storageTransf)].mana) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) - sagaTransformacao[getPlayerStorageValue(cid, saga.storageTransf)].health) setPlayerStorageValue(cid, saga.storageTransf, tonumber(t[1])) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,getPlayerStorageValue(cid, saga.storageTransf) ) doSetCreatureOutfit(cid, {lookType = transform.outfit}, -1) doSendMagicEffect(getThingPos(cid), transform.effect) doPlayerSendTextMessage(cid, 25, "Voce escolheu uma nova saga!") doCreatureSay(cid, "Saga!!", TALKTYPE_ORANGE_1) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) + sagaTransformacao[tonumber(t[1])].health) setCreatureMaxMana(cid, getCreatureMaxMana(cid) + sagaTransformacao[tonumber(t[1])].mana) doCreatureAddMana(cid, getCreatureMaxMana(cid)) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) setPlayerStorageValue(cid, 5432, os.time() + cooldownzin) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você já está transformado nessa saga.") end return true end  
  16. Upvote
    LeoTK deu reputação a Nogard em [Resolvido] [Saga System] Script pedir uma storage antes de transformar   
    talkactions.xml:
     
    <talkaction log="yes" words="!saga" event="script" value="transform.lua"/>  
     
    talkactions/scripts/transform.lua:
     
    local cooldownzin = 3 -- em segundos para esperar a talkaction novamentesaga = { [1] = {{outfit = 71, level = 36, storage = 2221, mana = 2000, health = 3000}, {outfit = 71, level = 36, storage = 2222, mana = 4000, health = 4000}}, [2] = {{outfit = 66, level = 36, mana = 2000, health = 3000}, {outfit = 71, level = 36, mana = 2000, health = 3000}}, -- configurar storage [3] = {{outfit = 91, level = 36, mana = 2000, health = 3000}, {outfit = 71, level = 36, mana = 2000, health = 3000}}, -- configurar storage [4] = {{outfit = 18, level = 36, mana = 2000, health = 3000}, {outfit = 71, level = 36, mana = 2000, health = 3000}}, -- configurar storage [5] = {{outfit = 31, level = 36, mana = 2000, health = 3000},{outfit = 71, level = 36, mana = 2000, health = 3000}},-- configurar storage effect = 111, storageTransf = 2930 }function onSay(cid, words, param, channel)local sagaTransformacao = saga[getPlayerVocation(cid)] if(param == '') then -- *caso nao digite o numero doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Digite o numero da saga que voce deseja.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end local t = string.explode(param, ",") local transform = sagaTransformacao[tonumber(t[1])] if not sagaTransformacao then -- *caso saga diferente doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao pode trocar de saga.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if getPlayerLevel(cid) < transform.level then -- *caso nao tenha level correspondente a transformacao doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao tem level ".. transform.level .. ".") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if getPlayerStorageValue(cid, transform.storage) < 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ainda nao completou a saga") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if getPlayerStorageValue(cid, 5432) >= os.time() then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao pode usar ainda, espere ".. getPlayerStorageValue(cid, 5432) - os.time() .." segundos. ") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if (t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Could not understand.") return true end if not (tonumber(t[1])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Digite o numero da saga que voce deseja.") return true end if tonumber(t[1]) > #sagaTransformacao or tonumber(tonumber(t[1])) < 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Essa saga nao existe.") return true end if tonumber(t[1]) ~= getPlayerStorageValue(cid, saga.storageTransf) then -- doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "param = " .. tonumber(t[1]) .. "\nstorage = " .. getPlayerStorageValue(cid, sagaTransformacao.storage)) -- doCreatureAddMana(cid, - sagaTransformacao[getPlayerStorageValue(cid, transform.storage)].mana) -- doCreatureAddHealth(cid, - sagaTransformacao[getPlayerStorageValue(cid, transform.storage)].health) setCreatureMaxMana(cid, getCreatureMaxMana(cid) - sagaTransformacao[getPlayerStorageValue(cid, saga.storageTransf)].mana) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) - sagaTransformacao[getPlayerStorageValue(cid, saga.storageTransf)].health) setPlayerStorageValue(cid, saga.storageTransf, tonumber(t[1])) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,getPlayerStorageValue(cid, saga.storageTransf) ) doSetCreatureOutfit(cid, {lookType = transform.outfit}, -1) doSendMagicEffect(getThingPos(cid), transform.effect) doPlayerSendTextMessage(cid, 25, "Voce escolheu uma nova saga!") doCreatureSay(cid, "Saga!!", TALKTYPE_ORANGE_1) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) + sagaTransformacao[tonumber(t[1])].health) setCreatureMaxMana(cid, getCreatureMaxMana(cid) + sagaTransformacao[tonumber(t[1])].mana) doCreatureAddMana(cid, getCreatureMaxMana(cid)) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) setPlayerStorageValue(cid, 5432, os.time() + cooldownzin) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você já está transformado nessa saga.") end return trueend  
     
    [VOCAÇÃO ID] = {{outfit = 71, level = 36, storage = 2221, mana = 2000, health = 3000}, {outfit = 71, level = 36, storage = 2222, mana = 4000, health = 4000}}, /\saga 1 /\ (,)separador /\ saga2 /\ fim desse índice (})  
     
    !saga número da saga, para funcionar.
  17. Thanks
    LeoTK recebeu reputação de etheron8 em Sourcer 0.3.6 para Client 8.54, Limite de effects aumentado   
    TFS 0.3.6 (Crying Damson) Versão suportada 8.54 porém com as modificações só o client disponivel suporta ele se encontra em OTX porém pode ser compilado em theforgotten normal
     
    Fala guys poxa perambulando pela área de downloads e vi vários servidores mas nenhum tem sourcer então vou disponibilizar essa sourcer aqui com limites de effects aumentado já ele está em otx e compila em windows de boa em linux não testei espero que ajude a rapazeada ai que ta começando agora e o servidor não tem sourcer lembrando ta aumentado até 429 magic effects e 123 shotyeffects.
     
    É necessário alterar o client para ler em uint16 e então está tudo certo!
     
    Source:
    Download
    Scan
     
    Nota: deixarei um otclient já modificado para uint16 e com algumas outras modificações caso queiram.
    Client:
    Download
    Scan
     
    Obs: Caso quiser usar a tfs compilada na pasta dev-cpp/test podem usar foi a ultima que compilei em windows para mim esta tudo certinho.
  18. Thanks
    LeoTK recebeu reputação de New'gadu em Sourcer 0.3.6 para Client 8.54, Limite de effects aumentado   
    TFS 0.3.6 (Crying Damson) Versão suportada 8.54 porém com as modificações só o client disponivel suporta ele se encontra em OTX porém pode ser compilado em theforgotten normal
     
    Fala guys poxa perambulando pela área de downloads e vi vários servidores mas nenhum tem sourcer então vou disponibilizar essa sourcer aqui com limites de effects aumentado já ele está em otx e compila em windows de boa em linux não testei espero que ajude a rapazeada ai que ta começando agora e o servidor não tem sourcer lembrando ta aumentado até 429 magic effects e 123 shotyeffects.
     
    É necessário alterar o client para ler em uint16 e então está tudo certo!
     
    Source:
    Download
    Scan
     
    Nota: deixarei um otclient já modificado para uint16 e com algumas outras modificações caso queiram.
    Client:
    Download
    Scan
     
    Obs: Caso quiser usar a tfs compilada na pasta dev-cpp/test podem usar foi a ultima que compilei em windows para mim esta tudo certinho.
  19. Upvote
    LeoTK recebeu reputação de WizavIgor em [Resolvido] Script Animação da Outfit   
    função principal aqui
     
    attack.lua
    function onAttack(cid, target) mude para
    function onCombat(cid, target)  
  20. Upvote
    LeoTK recebeu reputação de Luga03 em Opinião de Ex-STAFF   
    concordo eu era um desses dementes em questão e quando eu errava a área certa ficava meio bad kkk porque sempre tentei fazer as coisas certas
  21. Upvote
    LeoTK deu reputação a Poccnn em A origem dos Deuses   
    Tu conhece a origem do Tibia?
     
    Tibia é um jogo fantástico que tem uma historia encantadora de origem e de criação dos seres além de seus mistérios e enigmas ainda não desvendados.
     
    Conta a historia a origem do mundo do Tibia.

     
     
     Esse texto foi extraído do livro: The Awakening of the Gods 1
     E Tu pode encontra-lo nas bibliotecas de Academia de Rookgaard, Biblioteca da Isle of the Kings, templo de Liberty Bay e Biblioteca de Dawnport.
     
    São essas histórias que tornam o Tibia um jogo espetacular e único. 
    Desvende os mistérios, vá em busca da aventura e enfrente poderosos seres mitológicos.
     
    Tibia, o jogo dos guerreiros.
     
    Fonte: http://www.tibiawiki.com.br/Gênesis 
     
     
  22. Upvote
    LeoTK deu reputação a Beeki em Compilando e Rodando OTserv em Linux Ubuntu 12.04   
    Neste tutorial vamos ensinar como compilar seu servidor em Linux Ubuntu 12.04 LTS! Bom, o necessário é estar conectado ao terminal da nossa máquina usando o PuTTy.
     


    Primeiro de tudo (vamos atualizar).
    apt-get update Criando o diretório da instalação.
    mkdir /home/otserv cd /home/otserv Baixando e compilando o Open Tibia Server (The Forgotten Server (TFS) revisão 3884 – 8.60).
    wget http://base.serversoft.com.br/otserv/theforgottenserver.zip apt-get install unzip; unzip theforgottenserver Instalando o MySQL server.
    apt-get install libmysql++-dev libmysqlclient-dev mysql-common mysql-server Nota: Fique esperto pois ele vai te perguntar pra definir algumas senhas, lembre-se sempre de anotá-las para não esquecer.
     
    Criando o banco de dados.
    mysql -uroot -p digiteSuaSenhaAqui CREATE DATABASE theforgottenserver; Instalando as Libs e dependências pra OTserv.
    apt-get install libgmp3-dev liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 lua5.1 libsqlite0-dev libsqlite3-dev sqlite3 libxml2-dev libxml++2.6-dev cpp gcc g++ make automake autoconf pkg-config subversion liblua5.1-sql-mysql-dev liblua5.1-sql-sqlite3-dev zlib1g-dev zlib1g libcrypto++-dev libcurl4-openssl-dev libasio-dev libboost-dev Instalando as Libs Lua (Rode cada comando separado).
    apt-get install libncurses5-dev cd /usr/local/src wget http://www.lua.org/ftp/lua-5.1.4.tar.gz tar -xzvf lua* cd lua* make linux make install Preparando para Compilar.
    cd /home/otserv/theforgottenserver/source/ chmod 777 autogen.sh ./autogen.sh ./configure --enable-mysql --enable-root-permission chmod 777 build.sh ./build.sh Copiando o arquivo compilado para a pasta do game:
    cp /home/otserv/theforgottenserver/ Importando o banco de dados de testes:
    cd /home/otserv/theforgottenserver/schemas mysql -uroot -ptheforgottenserver mysql.sql Configurando seu config.lua:
    apt-get install nano; nano /home/otserv/config.lua Agora você deve navegar pelo arquivo e modificar algumas configurações para ele funcionar. Verifique o IP, database e tudo mais. Para sair do programa “Nano” digite CTRL + X.
     
    Para rodar o game:
    cd /home/otserv/; chmod 777 ./theforgottenserver & Créditos:
     
    Serversoft & Beeki XTibia

    Ps: o link de download de uma das versões do theforgottenserver é a rev 3884 de protocolo 8.60, ou seja... você pode usar a revisão que quiser!
  23. Upvote
    LeoTK deu reputação a rohfagundes em Raridade em items   
    Ola, eu estou fazendo um sistema de raridade baseado no diablo 3
    gostaria de saber o q vcs acham


     
    lembrando q este item é apenas para teste
    ainda vou mudar algumas coisas

  24. Upvote
    LeoTK deu reputação a Nethron em Bills Outfit   
    Fiz essa Outfit do Bills e irei doar apenas a frente dela, não adianta pedir os lados e os moves que não irei doar, se quiserem usar como Npc fiquem avontade

    Link:http://imgur.com/a/3joe0
  25. Upvote
    LeoTK deu reputação a XzXNoraX em [Resolvido] The forgotten Dando erro   
    DLL's para rodar o Executável? se for está abaixo:
     
    Clique Aqui
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...