Jump to content
×
×
  • Create New...

Nolis

Visconde
  • Posts

    379
  • Joined

  • Last visited

  • Days Won

    2

Nolis last won the day on February 25 2015

Nolis had the most liked content!

About Nolis

  • Rank
    Ex-Admin Xtibia

Perfil

  • Gênero
    Masculino

Informações

  • Char no Tibia
    Hexagrama
  • Forma que conheci o xTibia
    Outros Sites
  • Sou
    Mapper

Recent Profile Visitors

6693 profile views
  1. Da pra ver quem está tirando do contexto.. Quem tiver dúvidas sobre as acusações dele me procurem no Discord que eu tenho como provar que não é verdade. Eu não sei por que, mas ele ta puto com o Tk e comigo por algo que aconteceu com ele, e eu não faço ideia do que se trata. Não vou mais responder isso, procure o administrador da comunidade se for necessário.
  2. Amigo, você ter sido banido não justifica as suas acusações. Você ta sendo muito maldoso e infantil nessas acusações, quando poderia procurar os envolvidos pra ter uma simples conversa. Além disso não tem nada na blacklist sobre esse assunto, já é a terceira vez que vejo um post seu desse gênero. Normalmente eu ignoraria, mas quero te ajudar também, me chama discord vamos trocar uma ideia. Eu quero te ajudar a resolver seja la o que estiver acontecendo, mas não vai dar certo com você spamando os dois fóruns e postando sprites que não são de sua autoria. Eu to começando a achar que vc é só mais um troll desocupado na pandemia.
  3. Tutoriais e downloads exclusivos sobre mapping, feitos por mim, você encontra na melhor comunidade sobre OTServ!

     

    Migrei para lá tem um tempo, entro pouco aqui.

     

  4. Resultado da live 02 (parte final do continente) Passagem pelas montanhas: Undeads cemitério, parte sul Undeads Acesso Undeads Acesso, montanha-centro Undeads Acesso, Torre de acesso < e subsolo Grim Reaper Acesso Grim Reaper Norte Montanha, divisão norte Grim Reaper final-Norte
  5. Poste seu login.lua (data/creaturescripts/scripts)
  6. Afim de participar do Nolis Live Mapping?

    Entre no Team Viewer (reunião) ID: m51-673-830

     

    Começa às 15:30

    1. Nolis

      Nolis

      Seção finalizada (4 participantes!), em breve terá mais.

  7. Status: OFF ON Histórico de Lives: 13/06/2018 - Tema Desértico | Início: 15:30, Término: 18:00 14/06/2018 - Tema Desértico Undead | Início: 14:00, Término: 19:00
  8. @Emanueldk, eu preciso saber sobre os 4 ids, quais são da porta horizontal e quais são da vertical ok? Eu vou tentar presumir isso e te ajudar com os códigos prontos, mas se não funcionar me de essa informação que eu resolvo. em data/actions/actions.xml adicione: <action itemid="13477" event="script" value="doors/door01.lua"/> <action itemid="13480" event="script" value="doors/door02.lua"/> <action itemid="13479" event="script" value="doors/door03.lua"/> <action itemid="13478" event="script" value="doors/door04.lua"/> em data/actions/scripts crie um pasta nomeada: doors -> dentro dela crie door01.lua Para a porta 13479 abrir/se transformar na porta 13480 em door01.lua adicione: local config = { door1 = {level = 1, uniqueid = 3000}, door2 = {level = 2, uniqueid = 3001}, } local function doorEnter(cid, item, toPosition) doTransformItem(item.uid, item.itemid + 1) doTeleportThing(cid, toPosition) end function onUse(cid, item, toPosition) if item.uid == config.door1.uniqueid then if getPlayerLevel(cid) >= config.door1.level and item.uid == config.door1.uniqueid then doorEnter(cid, item, toPosition) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You need level " ..config.door1.level.. " to pass.") end end if item.uid == config.door2.uniqueid then if getPlayerLevel(cid) >= config.door2.level and item.uid == config.door2.uniqueid then doorEnter(cid, item, toPosition) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You need level " ..config.door2.level.. " to pass.") end end return TRUE end Agora para a porta (13480) fechar, vá em data/movements/movements.xml e adicione: <movevent type="StepOut" itemid="13480" event="script" value="doors/closedoor01.lua"/> Em data/movements/scripts crie uma pasta nomeada: doors -> dentro dela crie o arquivo closedoor01.lua Adicione dentro: function onStepOut(cid, item, position, fromPosition) if(getTileInfo(position).creatures > 0) then return true end local newPosition = {x = position.x, y = position.y, z = position.z} if(isInArray(verticalOpenDoors, item.itemid)) then newPosition.x = newPosition.x + 1 else newPosition.y = newPosition.y + 1 end doRelocate(position, newPosition) local tmpPos = position tmpPos.stackpos = -1 local i, tmpItem, tileCount = 1, {uid = 1}, getTileThingByPos(tmpPos) while(tmpItem.uid ~= 0 and i < tileCount) do tmpPos.stackpos = i tmpItem = getTileThingByPos(tmpPos) if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and not isMoveable(tmpItem.uid)) then doRemoveItem(tmpItem.uid) else i = i + 1 end end doTransformItem(item.uid, item.itemid - 1) return true end Segunda parte -> em data/actions/scripts/doors crie door02.lua Para a porta 13478 abrir/se transformar na porta 13477 em door02.lua adicione: local config = { door1 = {level = 1, uniqueid = 4000}, door2 = {level = 2, uniqueid = 4001}, } local function doorEnter(cid, item, toPosition) doTransformItem(item.uid, item.itemid - 1) doTeleportThing(cid, toPosition) end function onUse(cid, item, toPosition) if item.uid == config.door1.uniqueid then if getPlayerLevel(cid) >= config.door1.level and item.uid == config.door1.uniqueid then doorEnter(cid, item, toPosition) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You need level " ..config.door1.level.. " to pass.") end end if item.uid == config.door2.uniqueid then if getPlayerLevel(cid) >= config.door2.level and item.uid == config.door2.uniqueid then doorEnter(cid, item, toPosition) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You need level " ..config.door2.level.. " to pass.") end end return TRUE end Agora para a porta (13477) fechar, vá em data/movements/movements.xml e adicione: <movevent type="StepOut" itemid="13477" event="script" value="doors/closedoor02.lua"/> Em data/movements/scripts crie uma pasta nomeada: doors -> dentro dela crie o arquivo closedoor02.lua Adicione dentro: function onStepOut(cid, item, position, fromPosition) if(getTileInfo(position).creatures > 0) then return true end local newPosition = {x = position.x, y = position.y, z = position.z} if(isInArray(verticalOpenDoors, item.itemid)) then newPosition.x = newPosition.x + 1 else newPosition.y = newPosition.y + 1 end doRelocate(position, newPosition) local tmpPos = position tmpPos.stackpos = -1 local i, tmpItem, tileCount = 1, {uid = 1}, getTileThingByPos(tmpPos) while(tmpItem.uid ~= 0 and i < tileCount) do tmpPos.stackpos = i tmpItem = getTileThingByPos(tmpPos) if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and not isMoveable(tmpItem.uid)) then doRemoveItem(tmpItem.uid) else i = i + 1 end end doTransformItem(item.uid, item.itemid + 1) return true end Dentro dos dois scripts de actions, door01.lua e door02.lua, tem essas duas configurações: local config = { door1 = {level = 1, uniqueid = 3000}, door2 = {level = 2, uniqueid = 3001}, } e: local config = { door1 = {level = 1, uniqueid = 4000}, door2 = {level = 2, uniqueid = 4001}, } Como configurar: - Se não quiser utilizar level na door, apenas não adicione o uniqueid na porta. Se quiser, faça o contrário. (não esqueça de registrar esse uniqueid lá em actions.xml); - Não mexa aqui; - Aqui você configura o level para passar.
  9. @Emanueldk data/actions/actions.xml adicione <action actionid="5000" script="quests.lua"/> data/actions/scripts crie quests.lua e adicione function onUse(player, item, fromPosition, target, toPosition, isHotkey) local storage = specialQuests[item.uid] if not storage then storage = item.uid if storage > 65535 then return false end end if player:getStorageValue(storage) > 0 then player:sendTextMessage(MESSAGE_INFO_DESCR, "The " .. ItemType(item.itemid):getName() .. " is empty.") return true end local targetItem = Item(item.uid) local items = {} local reward = nil local size = targetItem:isContainer() and Container(item.uid):getSize() or 0 if size == 0 then if questItems[item.uid] == nil then reward = targetItem:clone() else for _,v in pairs(questItems[item.uid]) do local newItem = Item(doCreateItemEx(v.id, v.count or v.subtype or 1)) if v.aid ~= nil then newItem:setActionId(v.aid) end table.insert(items, newItem) end end else local container = Container(item.uid) for i = 0, container:getSize() - 1 do table.insert(items, container:getItem(i):clone()) end end local result = "" local addon = addonQuests[item.uid] if addon ~= nil then player:addOutfitAddon(addon.outfit.male, addon.addon) player:addOutfitAddon(addon.outfit.female, addon.addon) result = addon.msg else size = #items if size == 1 then reward = items[1]:clone() end local weight = 0 if reward then local ret = ItemType(reward:getId()) if ret:isRune() then result = ret:getArticle() .. " " .. ret:getName() .. " (" .. reward:getSubType() .. " charges)" elseif ret:isStackable() and reward:getCount() > 1 then result = reward:getCount() .. " " .. ret:getPluralName() else result = ret:getArticle() .. " " .. ret:getName() end weight = weight + ret:getWeight(reward:getCount()) else if size > 20 then reward = Container(doCreateItemEx(item.itemid)) elseif size > 8 then reward = Container(doCreateItemEx(1988)) else reward = Container(doCreateItemEx(1987)) end result = reward:getArticle() .. " " .. reward:getName() for i = 1, size do local tmp = items[i] if reward:addItemEx(tmp) ~= RETURNVALUE_NOERROR then print("[Warning] QuestSystem:", "Could not add quest reward to container") end end weight = weight + ItemType(reward:getId()):getWeight() end if player:addItemEx(reward) ~= RETURNVALUE_NOERROR then if player:getFreeCapacity() < weight then player:sendCancelMessage("You have found " .. result .. " weighing " .. string.format("%.2f", weight) .. " oz. You have no capacity.") else player:sendCancelMessage("You have found " .. result .. ", but you have no room to take it.") end return true end end if questsExperience[storage] ~= nil then player:addExperience(questsExperience[storage], true) end player:sendTextMessage(MESSAGE_INFO_DESCR, "You have found " .. result .. ".") player:setStorageValue(storage, 1) return true end No mapa, coloque actionid 5000 no seu baú e o item que receberá.
  10. @Guitz420 O N-PVP zone, se houver, aparecerá quando você utilizar a tecla de atalho "E". Depois disso segure ctrl e remova usando a tool N-pvp. Você configurou o protect level?
  11. @issler92 File -> Preferences -> General File -> Preferences -> Graphics Poste um print de como está essas configurações, por favor.
  12. Neutral Bot 10.81 Last Updated: Aug 31 2015 03:03 AM File Size: 6.98MB Download
  13. Bugs corrigido da versao 10.80: -Healer. -Floor diference. -Login. Download
  14. Mensagem do Sistema Este tópico foi movido de "OTServ → Suporte → Suporte Scripting" para "OTServ → Suporte → Suporte Scripting → Pedidos e dúvidas resolvidos - Scripting". Sempre seja atento ao postar um tópico, verifique se está postando no lugar correto.
  • Recently Browsing   0 members

    • No registered users viewing this page.