Ir para conteúdo
Close

JEAN JR

Membro
  • Total de itens

    38
  • Registro em

  • Última visita

Sobre JEAN JR

  • Rank
    Artesão

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

  1. Vou dar uma olhada man, qualquer coisa aviso aqui. Obrigado mais uma vez
  2. Desculpa mano, me esqueci kk erro meu. Eu utilizo GESIOR
  3. Boa noite Galera do TK Bom, o titulo já diz tudo kkkk mas é que quando eu crio ACC pelo ACCOUNT MANAGER, não consigo logar no SITE. Porem se eu crio o ACCOUNT pelo SITE eu consigo logar normal. Vi alguns comentários e em um tópico aqui mesmo, que pode ser por conta da criptográfia (E REALMENTE POSSA SER ISSO), mas o problema é que... como eu poderia solucionar isso ?
  4. Boa manin, bota talento ai. Pra mim, que não desperto interesse em mappear já está bom. Mas sei que pra vocês vai além disso. Belo trabalho !
  5. [4/2/2019 15:45:46] [Error - Action Interface] [4/2/2019 15:45:46] data/actions/scripts/upgrade.lua:onUse [4/2/2019 15:45:46] Description: [4/2/2019 15:45:46] data/actions/scripts/upgrade.lua:76: attempt to call global 'getItemAttack' (a nil value) [4/2/2019 15:45:46] stack traceback: [4/2/2019 15:45:46] data/actions/scripts/upgrade.lua:76: in function 'doTransform' [4/2/2019 15:45:46] data/actions/scripts/upgrade.lua:99: in function <data/actions/scripts/upgrade.lua:85> [4/2/2019 15:45:51] [Error - Action Interface] [4/2/2019 15:45:51] data/actions/scripts/upgrade.lua:onUse [4/2/2019 15:45:51] Description: [4/2/2019 15:45:51] data/actions/scripts/upgrade.lua:47: attempt to call global 'getItemArmor' (a nil value) [4/2/2019 15:45:51] stack traceback: [4/2/2019 15:45:51] data/actions/scripts/upgrade.lua:47: in function 'isArmor' [4/2/2019 15:45:51] data/actions/scripts/upgrade.lua:90: in function <data/actions/scripts/upgrade.lua:85> PESSOAL, ESTOU COM UM SCRIPT DE REFINAMENTO E ESTÁ OCORRENDO ESSE ERRO ACIMA. SCRIPT ABAIXO: --- Perfect refine system by Mock the bear (MTB). --- Email: [email]mock_#####@hotmail.com[/email] local gain = { gainArmor='&p+1',loseArmor='&p-1', gainShield='&s+#',loseShield='&s-(#+1)', gainAttack='&a+(2*(#))',loseAttack='&a-(2*(#+1))', gainDefense='&d+(2*(#))',loseDefense='&d-(2*(#+1))', chance='100/((#*(1/(@/2)))*(@/2))', -- Eu fiz essa equação para variar de +0 a +7 o item --- Essa equação deve retornar em % a chance do item se refinar (0-100) 100 = sempre, 0 = nunca maxlvl = 20, blocked_ids = {} } -- &a = weapon attack -- &d = weapon defense -- &s = shield defense -- &p = armor defense -- # = nivel do item -- @ = max level if not setItemName then function setItemName(uid,name) return doItemSetAttribute(uid,'name',name) end function setItemArmor(uid,name) return doItemSetAttribute(uid,'armor',name) end function setItemDefense(uid,name) return doItemSetAttribute(uid,'defense',name) end function setItemAttack(uid,name) return doItemSetAttribute(uid,'attack',name) end function getItemAttack(uid) return getItemAttribute(uid,'attack') end function getItemDefense(uid) return getItemAttribute(uid,'defense') end function getItemArmor(uid) if type(uid) == 'number' then return getItemAttribute(uid,'armor') else return getItemInfo(uid.itemid).armor end end end function isArmor(uid) -- Function by Mock the bear. if (getItemArmor(uid) and getItemArmor(uid) ~= 0 and not getItemInfo(uid.itemid,'attack') and not getItemInfo(uid.itemid,'defense') and getItemWeaponType(uid.uid) == 0) then return true end return false end function isWeapon(uid) -- Function by Mock the bear. uid = uid or 0 local f = getItemWeaponType(uid) if f == 1 or f == 2 or f == 3 then return TRUE end return FALSE end function isShield(uid) -- Function by Mock the bear. uid = uid or 0 if getItemWeaponType(uid) == 4 then return TRUE end return FALSE end function getWeaponLevel(uid) -- Function by Mock the bear. uid = uid or 0 local name = getItemName(uid) local lvl = string.match(name,'+(%d)') return tonumber(lvl) or 0 end function doTransform(s,i) -- Function by Mock the bear. local c = string.gsub(s,'@',gain.maxlvl) local c = string.gsub(c,'&a',getItemAttack(i.uid) or getItemInfo(i.itemid).attack) local c = string.gsub(c,'&d',getItemDefense(i.uid) or getItemInfo(i.itemid).defense) local c = string.gsub(c,'&s',getItemDefense(i.uid) or getItemInfo(i.itemid).defense) local c = string.gsub(c,'&p',getItemArmor(i.uid) or getItemInfo(i.itemid).armor) local c = string.gsub(c,'#',getWeaponLevel(i.uid)) local q,err = loadstring('return '..c) assert(q,err) return assert(q()) end function onUse(cid, item, fromPosition, itemEx, toPosition) toPosition.stackpos = 255 if isInArray(gain.blocked_ids, itemEx.itemid) == TRUE or getItemWeaponType(itemEx.uid) > 4 or (getItemWeaponType(itemEx.uid) == 0 and isArmor(itemEx) == FALSE) or itemEx.itemid == 0 then doPlayerSendTextMessage(cid, 24,"You cant refine this item.") return TRUE end if isCreature(itemEx.uid) == TRUE then return FALSE end local level = getWeaponLevel(itemEx.uid) local chance = doTransform(gain.chance,itemEx) if chance >= math.random(0,100) or item.actionid >= 1000 or (item.actionid == 500 and math.random(0,100) <= 25) then if level+1 > gain.maxlvl then doSendMagicEffect(toPosition, 2) return doPlayerSendTextMessage(cid, 24,"Your item is on max level, you can't upgrade it.") else setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level+1)) doPlayerSendTextMessage(cid, 24,"Your item has been upgrated to +"..(level+1)..".") doSendMagicEffect(toPosition, 12) if isArmor(itemEx) == TRUE then local get = doTransform(gain.gainArmor,itemEx) setItemArmor(itemEx.uid,get) elseif isWeapon(itemEx.uid) == TRUE then setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.gainDefense,itemEx)) elseif isShield(itemEx.uid) == TRUE then setItemDefense(itemEx.uid, doTransform(gain.gainShield,itemEx)) end end else if level == 0 then doPlayerSendTextMessage(cid, 24,"No effect.") doSendMagicEffect(toPosition, 2) elseif level == gain.maxlvl then doSendMagicEffect(toPosition, 2) return doPlayerSendTextMessage(cid, 24,"Your item is on max level, you can't upgrade it.") elseif level > 0 then if level == 1 then setItemName(itemEx.uid, getItemNameById(itemEx.itemid)) doPlayerSendTextMessage(cid, 24,"Your item back to normal.") else setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level-1)) doPlayerSendTextMessage(cid, 24,"Your item back to +"..(level-1)..".") end if isArmor(itemEx) == TRUE then setItemArmor(itemEx.uid,doTransform(gain.loseArmor ,itemEx)) elseif isWeapon(itemEx.uid) == TRUE then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.loseDefense,itemEx)) elseif isShield(itemEx.uid) == TRUE then setItemDefense(itemEx.uid, doTransform(gain.loseShield,itemEx)) end end doSendMagicEffect(toPosition, 9) end doRemoveItem(item.uid,1) return TRUE end
  6. function onEquip(cid, item, slot) local LevelPlayer = getPlayerLevel(cid) if getPlayerStorageValue(cid, 120365) - os.time() <= 0 then doTransformItem(item.uid, 10502, 1) if LevelPlayer >= 1 and LevelPlayer <= 5000 then doPlayerSendTextMessage(cid, 22, 'Agora ganha 3x mais experiencia!') doPlayerSetExperienceRate(cid, getConfigValue("rateExperience")*0.3) setPlayerStorageValue(cid, 120365, os.time()+2) end elseif LevelPlayer >= 5001 and LevelPlayer <= 10000 then doPlayerSendTextMessage(cid, 22, 'Agora ganha 2.5x mais experiencia!') doPlayerSetExperienceRate(cid, getConfigValue("rateExperience")*0.25) setPlayerStorageValue(cid, 120365, os.time()+2) end elseif LevelPlayer >= 10001 and LevelPlayer <= 15000 then doPlayerSendTextMessage(cid, 22, 'Agora ganha 2x mais experiencia!') doPlayerSetExperienceRate(cid, getConfigValue("rateExperience")*0.2) setPlayerStorageValue(cid, 120365, os.time()+2) end elseif LevelPlayer >= 15001 then doPlayerSendTextMessage(cid, 22, 'Agora ganha 1.5x mais experiencia!') doPlayerSetExperienceRate(cid, getConfigValue("rateExperience")*0.15) setPlayerStorageValue(cid, 120365, os.time()+2) end return true end end function onDeEquip(cid, item, slot) doPlayerSendTextMessage(cid, 22, 'Experiencia extra cancelada.') doPlayerSetExperienceRate(cid, 1) return true end vê se isso funciona pra vc mano. EXPLICANDO UM POUCO: level 1 ao 5k ele vai ter 3x mais de exp quando equipar level 5k ao 10k ele vai ter 2.5 level 10k ao 15k ele vai ter 2.0 level 15k pra cima ele vai ter 1.5
  7. Mano, me perdoe a expressão. Mas, você é FOD@ !! TE AMO VLW MANO
  8. Eai Galera do TK, Tudo bem ? Espero que sim ! Venho aqui pedir uma ajuda pra vocês, peguei o SCRIPT de mineração que o nosso brother @Matk postou, porem ele está dando um erro na distro. Aqui o LINK para quem tiver interesse no SCRIPT ERRO: Obs: O erro acontece quando eu tento minerar e quando eu consigo minerar. SCRIPT: --Lumberjack by: Lwkass --Version: 1.1.5 --Configs-- local configs = { sign = { {level = {0,9}, quant = {1,2}, percent = 15}, {level = {10,19}, quant = {1,3}, percent = 20}, {level = {20,29}, quant = {1,4}, percent = 25}, {level = {30,39}, quant = {1,5}, percent = 30}, {level = {40,49}, quant = {1,6}, percent = 35}, {level = {50,59}, quant = {1,7}, percent = 40}, {level = {60,69}, quant = {1,8}, percent = 45}, {level = {70,79}, quant = {1,9}, percent = 50}, {level = {80,89}, quant = {1,10}, percent = 55}, {level = {90,99}, quant = {1,11}, percent = 60}, {level = {100,109}, quant = {1,12}, percent = 65}, {level = {110,119}, quant = {1,13}, percent = 70}, {level = {120,129}, quant = {1,14}, percent = 75}, {level = {130,139}, quant = {1,15}, percent = 80}, {level = {140,149}, quant = {1,16}, percent = 85}, {level = {150}, quant = {1,17}, percent = 90} }, stones = {8633}, gold = {{2146, 'all'}}, stone_delay = 15, MaxLevel = 150 } --END Configs-- function onUse(cid, item, fromPosition, itemEx, toPosition) local STORAGE_SKILL_LEVEL = 230000 local STORAGE_SKILL_TRY = 230001 local skillLevel = getPlayerStorageValue(cid,STORAGE_SKILL_LEVEL) local skillTry = getPlayerStorageValue(cid,STORAGE_SKILL_TRY) local objeto2 = getThingFromPos(toPosition) local player = getCreaturePosition(cid) doPlayerSendTextMessage(cid,22,"UID" .. objeto2.uid) if skillLevel == -1 then setPlayerStorageValue(cid,STORAGE_SKILL_LEVEL,1) end for Q = 1, #configs.sign do if configs.sign[Q].level[2] == nil then configs.sign[Q].level[2] = configs.sign[Q].level[1] end if skillLevel >= configs.sign[Q].level[1] and skillLevel <= configs.sign[Q].level[2] then quant = math.random(configs.sign[Q].quant[1],configs.sign[Q].quant[2]) percent = configs.sign[Q].percent break end end for i = 0, #configs.stones do if objeto2.itemid == configs.stones[i] then if math.random(1,100) <= percent then possible_gold = {{},{}} for h = 1, #configs.gold do if configs.gold[h][2] == objeto2.itemid then possible_gold[1][#possible_gold[1]+1] = configs.gold[h][1] else if configs.gold[h][2] == 'all' then possible_gold[2][#possible_gold[2]+1] = configs.gold[h][1] end end end if possible_gold[1][1] == nil and possible_gold[2][1] == nil then doPlayerSendTextMessage(cid,22,"This stone can not be mined.") elseif possible_gold[1][1] ~= nil then doPlayerAddItem(cid,possible_gold[1][math.random(1,#possible_gold[1])],quant) elseif possible_gold[1][1] == nil and possible_gold[2][1] ~= nil then doPlayerAddItem(cid,possible_gold[2][math.random(1,#possible_gold[2])],quant) end if possible_gold[1][1] ~= nil or possible_gold[2][1] ~= nil then if skillTry >= 0 then setPlayerStorageValue(cid,STORAGE_SKILL_TRY,skillTry + 1) else setPlayerStorageValue(cid,STORAGE_SKILL_TRY,1) end doSendMagicEffect(getCreaturePosition(cid), 12) doPlayerSendTextMessage(cid,22,"You got "..quant.." gold "..getItemNameById(objeto2.itemid)..".") doSendAnimatedText(getCreaturePosition(cid), ''..quant..'', 192, cid) setItemName(objeto2.uid, 'A remains of '..getItemNameById(objeto2.itemid)) doSendMagicEffect(toPosition, 3) addEvent(dostoneReturn,configs.stone_delay * 2000,toPosition,objeto2.itemid) doTransformItem(objeto2.uid, 8637) break end else doPlayerSendCancel(cid,"You got nothing") doSendMagicEffect(toPosition, 3) setItemName(objeto2.uid, 'A remains of '..getItemNameById(objeto2.itemid)) doSendAnimatedText(getCreaturePosition(cid), 'Fail!', 180, cid) addEvent(dostoneReturn,configs.stone_delay * 2000,toPosition,objeto2.itemid) doTransformItem(objeto2.uid, 8637) break end else doPlayerSendCancel(cid,"You can only mine stones") end end if skillTry >= ((skillLevel+1)*3) then if skillLevel == configs.MaxLevel then doPlayerSendTextMessage(cid, 22, "Max level reached in mining.") setPlayerStorageValue(cid,STORAGE_SKILL_TRY,0) else setPlayerStorageValue(cid,STORAGE_SKILL_LEVEL,skillLevel + 1) setPlayerStorageValue(cid,STORAGE_SKILL_TRY,0) doPlayerSendTextMessage(cid, 22, "You advanced from level ".. skillLevel .." to level ".. skillLevel + 1 .." in Mining.") doSendMagicEffect(getCreaturePosition(cid),14) doSendAnimatedText(getCreaturePosition(cid), 'Mining Lvl +1!', 18, cid) end end end function dostoneReturn(itemposition,oldid) local pos = getThingfromPos(itemposition) doTransformItem(pos.uid,oldid) setItemName(pos.uid, getItemNameById(oldid)) doSendMagicEffect(itemposition,math.random(28,30)) end --Lumberjack by: Lwkass @Storm @Vodkart @Yan Liima @xWhiteWolf @vankk @Yinz Desculpa marcar todos vocês é porque eu acompanho vcs e sei o potencial de cada um.
  9. Tendi, mas e a parte de fazer ele ficar andando pelo mapa com minhas coordenadas ? Tem como fazer tbm ? Qual função utilizar ?
  10. Eai galera do TK, tudo bom ? Espero que sim. Queria saber se tem algum script que faça um monstro ficar patrulhando (ficar andando de position até position configurado por mim) uma cave até achar um player que não tenha uma tal STORAGE e se encontrar atacar o player. @Vodkart @Storm
  11. Blz então mano, vou procurar aqui. Toma meu REP+ ai pela indicação. TMJ
  12. Mas ele sumonaria mesmo com player na tela ? Se sim pode ser kkk é que não tinha pensado nisso.
  13. Mas ai mudária todos não ? é que quero que mude de um monstro só.
  14. Esse é pela SOURCE man já tinha visto.
  15. TESTA ASSIM ENTÃO... GRANTOWER = {} GRANTOWER.PREPARETIME = 2 -- Tempo até liberar a entrada para o evento. GRANTOWER.CLOSETIME = 15 -- Tempo em minutos de duração do evento. GRANTOWER.LEVEL = 80 -- Mínimo de level para participar do evento. GRANTOWER.MAXGUILD = 7 -- Máximo de players por guild dentro do evento. GRANTOWER.DATES = {{"Monday", "19:30"}, {"Tuesday", "19:30"}, {"Wednesday", "19:30"}, {"Thursday", "19:30"}, {"Friday", "19:30"}, {"Saturday", "19:30"}, {"Sunday", "19:30"}} -- Dias e horários que ocorrem o evento. GRANTOWER.ENTER = {x = 1183, y = 2284, z = 9} -- A posição da entrada do castelo, aonde os players são mandados pelo NPC. GRANTOWER.TOWERPOSITION = {x = 1188, y = 2255, z = 6} -- Posição aonde fica o Gran Tower (o monstro). GRANTOWER.AREA = {{x = 1168, y = 2230, z = 9}, {x = 1207, y = 2288, z = 6}} --[[A primeira posição é o canto superior esquerdo do mapa do castelo, e a segunda é o canto direito inferior OBSERVAÇÃO IMPORTANTE: O script foi modificado por mim (xWhiteWolf) para aguentar diferentes andares, apenas coloque a posição dos cantos e o primeiro até o ultimo andar que ele irá remover todo mundo em todos os andares quando alguém matar a gran tower, pra remover isso apenas coloque o z do mesmo andar da gran tower e apenas os membros que estão nesse andar serão teleportados, contudo isso pode ocasionar que pessoas consigam ficar dentro do castelo mesmo após o evento ter sido encerrado!]] GRANTOWER.AURAPERCENT = 0.8 --- porcentagem do dano que irá levar (0.8 = 80%) significa que ele ignora 20% de dano! (adicionado por xWhiteWolf) GRANTOWER.SHURIAURA = true --- colocar true/false se quiser ativar/desativar a aura de shurikens pro player que tem a gran aura. (adicionado por xWhiteWolf) --// Favor não mexer daqui para baixo se não souber oque está fazendo!!! GRANTOWER.EMPTYWINNER = "# [Nobody] #" GRANTOWER.PREPARE = 201405051746 GRANTOWER.RUNNING = 201405051747 GRANTOWER.AURA = 201405052018 GRANTOWER.DESTROYCOUNT = 201405051800 GRANTOWER.FINALWINNER = 201405051805 GRANTOWER.SAVELASTWINNER = 201405061333 GRANTOWER.SAVEWINNERGUILDID = 201405061403 if getGlobalStorageValue(GRANTOWER.PREPARE) == NULL and getGlobalStorageValue(GRANTOWER.RUNNING) == NULL then setGlobalStorageValue(GRANTOWER.PREPARE, -1) setGlobalStorageValue(GRANTOWER.RUNNING, -1) end function doPrepareGranTower() if ((getGlobalStorageValue(GRANTOWER.PREPARE) ~= 1) and (getGlobalStorageValue(GRANTOWER.RUNNING) ~= 1)) then setGlobalStorageValue(GRANTOWER.PREPARE, 1) addEvent(doStartGranTower, GRANTOWER.PREPARETIME * 60 * 1000) addEvent(doBroadcastMessage, ((GRANTOWER.PREPARETIME / 2) * 60 * 1000), "[Gran Tower] Missing "..tostring((GRANTOWER.PREPARETIME / 2)).." minutes NPC Melkrapo will release the entrance to the event, get ready!") doBroadcastMessage("[Gran Tower] The event will be started in "..tostring(GRANTOWER.PREPARETIME).." minutes, please prepare your weapons and your team.") else print("[Erro] Gran Tower tentou ser iniciado ja ligado, favor verificar o codigo. (Roksas).") end return true end function doStartGranTower() if ((getGlobalStorageValue(GRANTOWER.PREPARE) ~= -1) and (getGlobalStorageValue(GRANTOWER.RUNNING) ~= 1)) then setGlobalStorageValue(GRANTOWER.RUNNING, 1) setGlobalStorageValue(GRANTOWER.PREPARE, -1) setGlobalStorageValue(GRANTOWER.SAVEWINNERGUILDID, -1) setGlobalStorageValue(GRANTOWER.FINALWINNER, GRANTOWER.EMPTYWINNER) setGlobalStorageValue(GRANTOWER.SAVELASTWINNER, GRANTOWER.EMPTYWINNER) setGlobalStorageValue(GRANTOWER.DESTROYCOUNT, 0) doCreateMonster("Gran Tower", GRANTOWER.TOWERPOSITION) addEvent(doBroadcastMessage, ((GRANTOWER.CLOSETIME - 1) * 60 * 1000), "[Gran Tower] The event will be closed in one minute. Hurry up!") addEvent(doCloseGranTower, GRANTOWER.CLOSETIME * 60 * 1000) doBroadcastMessage("[Gran Tower] Open event! Run to destroy the Gran Tower.") else print("[Erro] Gran Tower tentou ser iniciado já ligado, favor verificar o código.") end return true end function doCloseGranTower() if ((getGlobalStorageValue(GRANTOWER.PREPARE) ~= 1) and (getGlobalStorageValue(GRANTOWER.RUNNING) ~= -1)) then for index, creature in ipairs(getGranTowerPlayers()) do doTeleportThing(creature, getTownTemplePosition(getPlayerTown(creature))) end for index, creature in ipairs(getPlayersOnline()) do if (getPlayerGuildId(creature) >= 1) then if getPlayerGuildId(creature) ~= getGlobalStorageValue(GRANTOWER.SAVEWINNERGUILDID) then setPlayerStorageValue(creature, GRANTOWER.AURA, -1) end end end setGlobalStorageValue(GRANTOWER.RUNNING, -1) if (getCreatureByName("Gran Tower")) then doRemoveCreature(getCreatureByName("Gran Tower"), true) end local TMP_WINNER = getGlobalStorageValue(GRANTOWER.FINALWINNER) doBroadcastMessage("[Gran Tower] The event was completed with "..tostring(getGlobalStorageValue(GRANTOWER.DESTROYCOUNT)).." wrecks to Gran Tower, the final winner was "..(TMP_WINNER)..".") setGlobalStorageValue(GRANTOWER.DESTROYCOUNT, -1) setGlobalStorageValue(GRANTOWER.SAVELASTWINNER, TMP_WINNER) setGlobalStorageValue(GRANTOWER.FINALWINNER, -1) local TMP_WINNER = nil end return true end function getGranTowerPlayers() -- xWhiteWolf local players = {} local andares = math.abs(GRANTOWER.AREA[1].z - GRANTOWER.AREA[2].z) for index, creature in ipairs(getPlayersOnline()) do local z = 0 local pos1 = {x = GRANTOWER.AREA[1].x, y = GRANTOWER.AREA[1].y, z = GRANTOWER.AREA[1].z} local pos2 = {x = GRANTOWER.AREA[2].x, y = GRANTOWER.AREA[2].y, z = GRANTOWER.AREA[2].z} for i = 0, andares do z = z or 0 pos1.z = pos1.z > pos2.z and pos2.z + z or pos1.z + z pos2.z = pos1.z z = 1 if isInArea(getThingPos(creature), pos1, pos2) then table.insert(players, creature) end end end return players end function getGranTowerGuild(guild_id) -- xWhiteWolf local players = {} local andares = math.abs(GRANTOWER.AREA[1].z - GRANTOWER.AREA[2].z) for index, creature in ipairs(getPlayersOnline()) do local z = 0 local pos1 = {x = GRANTOWER.AREA[1].x, y = GRANTOWER.AREA[1].y, z = GRANTOWER.AREA[1].z} local pos2 = {x = GRANTOWER.AREA[2].x, y = GRANTOWER.AREA[2].y, z = GRANTOWER.AREA[2].z} for i = 0, andares do z = z or 0 pos1.z = pos1.z > pos2.z and pos2.z + z or pos1.z + z pos2.z = pos1.z z = 1 if isInArea(getThingPos(creature), pos1, pos2) then if (getPlayerGuildId(creature) == guild_id) then table.insert(players, creature) end end end end return players end -- // Gran Aura \/ function newColor(n) local n = tonumber(n) or 0 local n = n + 19 return tonumber(n) or 0 end function newColor(n) local n = tonumber(n) or 132 local n = n - 19 return tonumber(n) or 132 end -- comentario: se a cor for preta o addon vai para branco sendo que o certo é diminuir 19.. local events = {} function changeOutfit(uid) -- arrumado por xWhiteWolf e adicionado a opção da Shuri local sec = 0.5 local temp = getCreatureOutfit(uid) if (type(temp) == "number") then return true end if getGlobalStorageValue(GRANTOWER.SAVELASTWINNER) ~= getCreatureName(uid) then if getGlobalStorageValue(GRANTOWER.SAVEWINNERGUILDID) ~= getPlayerGuildId(uid) then return true end end if GRANTOWER.SHURIAURA then local pos = getCreaturePosition(uid) local effectPos = { [1] = {x = pos.x - 2, y = pos.y - 2, z = pos.z}, [2] = {x = pos.x + 2, y = pos.y + 2, z = pos.z} } for i = 1, #effectPos do position = effectPos[i + 1] or effectPos[i - 1] doSendDistanceShoot(effectPos[i], position, 27) end end local outfit = { lookType = temp.lookType, lookHead = newColor(temp.lookHead), lookBody = newColor(temp.lookBody), lookLegs = newColor(temp.lookLegs), lookFeet = newColor(temp.lookFeet), lookAddons = getCreatureOutfit(uid).lookAddons, } doSetCreatureOutfit(uid, outfit, sec) local event = addEvent(function() if isCreature(uid) then changeOutfit(uid) end end, 3.0 * sec * 450) events[uid] = event return true end

Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia partindo do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer publicidade para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução! A publicação do seu anuncio é instantânea!

×
×
  • Criar Novo...