
Tudo que xWhiteWolf postou
-
Correr (Poketibia)
- [Boss Skill] Aegis of Immortal
-
Training Monk Fail
tem ctza q o monk q vc tá editando é o trainning monk que está no jogo? Verifica em data/monsters/monsters.xml.. e uma dica: se o monk não tá aguentando os players o ideal seria aumentar a cura de vida dele, não a vida total.
-
Filmes
o dracula untold foi um dos filmes do drácula que eu mais gostei, a história é boa e as razões são muito verossímeis. O teenacious D é um filme meio de comédia besteirol, mas é um clássico e as músicas são demais haha, espero q cê curta.
-
[Boss Skill] Aegis of Immortal
depende muito d como seu server interpreta a function onKill.. se ele executar pra todos q ajudaram a matar vc precisa editar o aegis.lua no creaturescript e troca onde tá cid por lasthit como fica : function onKill(cid, target, lastHit) local killed = getPlayerStorageValue(lasthit,config.storagekill) local skill = getPlayerStorageValue(lasthit, config.storageaegis) if isMonster(target) and getCreatureName(target):lower() == 'aegis' then if killed < config.times then doCreatureSay(target, "I'll be back mortal...", 20) doSendMagicEffect(getThingPos(target), config.effect1) setPlayerStorageValue(lasthit, config.storagekill, killed+1) addEvent(doSendMagicEffect, 1000*config.tempo, getThingPos(target), config.effect2) addEvent(doCreateMonster, 1000*config.tempo, "Aegis", getCreaturePosition(target), true) end if killed >= config.times then setPlayerStorageValue(lasthit, config.storagekill, 0) if skill < config.charges then doPlayerSendTextMessage(lasthit,22,"Congratulations, you just killed "..getCreatureName(target).." and earned Aegis of Immortal skill!") setPlayerStorageValue(lasthit, config.storageaegis, config.charges) end end end return true end (lembra q vc tem que fazer checagens pra verificar se o lasthit é player, se ele existe.. etc.) Não sei como funciona nos outros servers mas o meu chama o onKill só para o lasthit então o parametro cid ja é o lasthit e o parametro lasthit é um booleano. e como era function onKill(cid, target, lastHit) local killed = getPlayerStorageValue(cid,config.storagekill) local skill = getPlayerStorageValue(cid, config.storageaegis) if isMonster(target) and getCreatureName(target):lower() == 'aegis' then if killed < config.times then doCreatureSay(target, "I'll be back mortal...", 20) doSendMagicEffect(getThingPos(target), config.effect1) setPlayerStorageValue(cid, config.storagekill, killed+1) addEvent(doSendMagicEffect, 1000*config.tempo, getThingPos(target), config.effect2) addEvent(doCreateMonster, 1000*config.tempo, "Aegis", getCreaturePosition(target), true) end if killed >= config.times then setPlayerStorageValue(cid, config.storagekill, 0) if skill < config.charges then doPlayerSendTextMessage(cid,22,"Congratulations, you just killed "..getCreatureName(target).." and earned Aegis of Immortal skill!") setPlayerStorageValue(cid, config.storageaegis, config.charges) end end end return true end
-
Filmes
Laranja Mecânica Clube da Luta Lista de Schindler O poderoso Chefão Matrix Watchmen A onda (DIE WELLE) Dracula Untold Tenacious D - Pick of Destiny O iluminado
-
Colocar aleatoriedade
deixa assim local texts, eff = {"´ . ,", ". ´ ,", "` . ,", ", ´ ."}[math.random(1, 4)]
- Magnus Challenger
- Magnus Challenger
-
CAIXA DE INFORMAÇÃO - TIBIA
source editing.. não tem como editar isso via Lua
-
Correr (Poketibia)
esse erro q vc mandou é de que não tá achando o arquivo.. agr se vc disse q corrigiu isso e não tá aparecendo a fala vc precisa verificar algumas coisas como por exemplo esse numero 20 ali doCreatureSay(cid, "Strong Haste: ".. t[2], 20, false, 0, pos) vai em data/lib/constant.lib e vê isso daqui: TALKTYPE_MONSTER = 19 TALKTYPE_MONSTER_YELL = 20 Eu botei 20 pq o TALKTYPE_MONSTER_YELL é 20, mas se no seu for outro numero vc tem que trocar nos dois CreatureSay, nesse e no q tá mais em cima no script. Se não tiver TALKTYPE_MONSTER_YELL usa só o numero do TALKTYPE_MONSTER
- Gran Castle Event (8.54+)
-
Tibia Guitar Hero [0.3.6~0.4]
pras primeiras alterações é só vc ver onde q solta os efeitos da nota queimando e o do poff e botar a função de soltar animated text. Na segunda de aparecer perfect vc pode configurar quando for teleportar o player pra fora da sala verificar se ele acertou tudo e já ver se foi maior que o numero mínimo pro prêmio e ja teleportar. Tenta fazer sozinho..
-
Sempre que item for criado, executar tal ação, tem como?
item criado como? no /i?
-
Usando pick em pedra, mas me parece que o itemEx me retorna algum outro id de um item que está no mesmo tile...
o itemEx é sempre o item referente ao item q vc deu use With. Independente do que tá embaixo dele.
- New Library v. 1.2
-
Tem como 'pular linha' na descrição de um item?
<attribute key="description" value="The blade is a magic flame.\nIt has a 10% chance to burn the target for each physical attack." /> \n é o comando de quebra de linha. Edit: acabei de ler q vc tentou usar, foi mal. Usar duas descriptions nao dá certo pq qnd ele declara a segunda ele exclui a primeira... talvez usando specialdescription ou botando espaço manualmente na frase vc consiga forçar essa quebra de linha
- Novo Sistema de Trainer [0.36~0.4]
-
Correr (Poketibia)
pra funcionar em 1.0 vc tem q fazer algumas alterações no código.. tenta rodar ele assim e ve quais erros q dá, fica mais fácil de saber onde arrumar
-
Novo Sistema de Trainer [0.36~0.4]
local position = {x = 156, y = 45, z = 6} -- posicao da primeira pos (linha 1 coluna 1) local config = { distX= 12, -- distancia em X entre cada sala (de uma mesma linha) distY= 9, -- distancia em Y entre cada sala (de uma mesma coluna) rX= 2, -- numero de colunas rY= 2 -- numero de linhas } local storage = 18481 -- storage que salva a ultima vez que o player entrou (pra evitar spams) local function isWalkable(pos, creature, proj, pz)-- by Nord -- só adicione se vc já não tiver ela if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and pz then return false, true end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end local function check_disponivel(npos) if isWalkable(npos, true, true) then return true end return false end local function countdown(pos, Arraypos) if not check_disponivel(pos) then for lugares = 1, #Arraypos do creature = getTopCreature(Arraypos[lugares]).uid if not isCreature(creature)then doCreateMonster("Trainer", Arraypos[lugares]) doSendAnimatedText(Arraypos[lugares], "GO!!", TEXTCOLOR_ORANGE) doSendMagicEffect(Arraypos[lugares], 10) end end end end local function fazQualquerCoisa(cid, pos, i, j) -- isso é o coração do nosso script, nao mexa nisso j = j or 0 p = i or 0 if p >= config.rX then p = 0 j = j < config.rY -1 and j + 1 or false end if j then posi = {x = pos.x + ( p * config.distX), y = pos.y + (j * config.distY), z = pos.z} if check_disponivel(posi) then doTeleportThing(cid, posi) doSendMagicEffect(posi, 10) countdown(posi, {{x = posi.x - 1, y = posi.y + 1, z = posi.z}, {x = posi.x + 1 , y = posi.y + 1, z = posi.z}}) else fazQualquerCoisa(cid, pos, p + 1, j) end else doPlayerSendCancel(cid, "Couldn't find any position for you right now.") end end function onStepIn(cid, item, pos, lastPos, fromPos, toPos, actor) if getPlayerStorageValue(cid, storage) - os.time() <= 0 then fazQualquerCoisa(cid, position) else doTeleportThing(cid, fromPos) doPlayerSendCancel(cid, "You gotta wait a few seconds before you can enter trainning room again") end return true end usa assim, dsclpa qlqer inconveniência
- Novo Sistema de Trainer [0.36~0.4]
-
Novo Sistema de Trainer [0.36~0.4]
1- Não, a menos que vc edite a função isWalkable 2- a distancia é a partir da posição que o player irá ficar até a outra posição que o player irá ficar. Pensa assim: se não houvessem obstáculos, qnts sqm's eu teria que andar pra chegar exatamente na posição que outro player iria ficar na cabine ao lado? coloca a função check_disponivel em cima da function fazQualquerCoisa (atualmente ela tá embaixo) local function check_disponivel(npos) if isWalkable(npos, true, true) then return true end return false end
-
(Resolvido)[Pedido] Alterar effect
pode usar o script, só modifica a checagem antes de dar o efeito if storage == getPlayerGuildId(cid) then vai virar if storage > 0 then
-
Experience System
não tem, a menos q vc modifique o script todo pra aceitar o level em algum attribute novo criado sobre o item. Da forma q tá ele procura o +X pra definir o level do item diretamente no nome
-
Frozen Orb
local orb = doCreateItem(2180, 1, position) coloca -- na frente q ja era