Histórico de Curtidas
-
Tchuka deu reputação a Vodkart em (Resolvido)[Ajuda] Script com errolocal table = { itemNeed = 2205, -- Mesmo id do itemid que você colocou na tag xml. delay = 1000 -- Tempo que vai ficar saindo } function doPlayerLoopEff(cid) if not isCreature(cid) then return LUA_ERROR end local sto = getPlayerStorageValue(cid, 2399) - os.time() local x = sto > 0 and 2 or 1 local mpAdd = math.random(500, 500)*x if isPlayer(cid) and getPlayerSlotItem(cid, CONST_SLOT_RING).itemid == table.itemNeed then doSendAnimatedText(getThingPos(cid), "+" .. mpAdd .. "MP", TEXTCOLOR_LIGHTGREEN) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) doCreatureAddMana(cid, mpAdd) addEvent(function() doPlayerLoopEff(cid) end, table.delay) end return true end function onEquip(cid, item, slot) doPlayerLoopEff(cid) return true end
-
Tchuka deu reputação a Vodkart em (Resolvido)Event Creaturescriptslocal config = { playerCount = 3915, -- Global storage for counting the players left/entered in the event fromPosition = {x = 1163, y = 1056, z = 7}, -- top left cornor of the playground toPosition = {x = 1187, y = 1083, z = 7} -- bottom right cornor of the playground } local boss1 = "Agorak" function onDeath(cid) if isMonster and getCreatureName(cid) == boss1 then if isInArea(getPlayerPosition(cid), config.fromPosition, config.toPosition) then doBroadcastMessage("O boss (".. boss1 .. ") foi morto e os jogadores dentro do World Boss Event foram recompensados com 10 event coins, 10 crystal coins e 5 event points.", MESSAGE_STATUS_CONSOLE_BLUE) for _, pid in ipairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), config.fromPosition, config.toPosition) then doPlayerAddItem(pid, 2159, 10) doPlayerAddItem(pid, 2160, 10) doPlayerAddPontos(pid, 5) end end end end return true end
-
Tchuka recebeu reputação de djteteh em Efeito Da Mana RuneEsse +100 e +250 é a quantidade que esta curando ?
-
Tchuka deu reputação a dirso em (Resolvido)Action Health
-
Tchuka deu reputação a WooX em (Resolvido)Cast SystemAcredito que seja em player.h, testa ai.
void addCastViewer(ProtocolGame* pg) { cSpectators[nextSpectator] = pg; nextSpectator++; std::stringstream ss; ss << "Spectator" << cast.curId; pg->viewerName = ss.str().c_str(); cast.curId++; }
-
Tchuka deu reputação a lordzetros em [Ajuda] Script Bugadolocal config = { storage = 489061564, tempo = 6000, -- tempo, em segundos que o efeito demorará para sair. } local eggo = { ["Holy Pet"] = {id = 6541, mon = "Holy Pet", cor = TEXTCOLOR_YELLOW, efeito = 21}, ["Fire Pet"] = {id = 6542, mon = "Fire Pet", cor = TEXTCOLOR_RED, efeito = 6}, ["Ice Pet"] = {id = 6543, mon = "Ice Pet", cor = TEXTCOLOR_TEAL, efeito = 43}, ["Terra Pet"] = {id = 6544, mon = "Terra Pet", cor = TEXTCOLOR_LIGHTGREEN, efeito = 45}, ["Phoenix Pet"] = {id = 2695, mon = "Phoenix Pet", cor = TEXTCOLOR_GREY, efeito = 17}, ["Draug Pet"] = {id = 6544, mon = "Draug Pet", cor = TEXTCOLOR_BROWN, efeito = 37}, ["Many Pet"] = {id = 2695, mon = "Many Pet", cor = TEXTCOLOR_TEAL, efeito = 37}, ["Energy Pet"] = {id = 6545, mon = "Energy Pet", cor = TEXTCOLOR_PURPLE, efeito = 22}, ["Jester Pet"] = {id = 9693, mon = "Jester Pet", cor = TEXTCOLOR_DARKPURPLE, efeito = 31}, ["Ferumbras Pet"] = {id = 11715, mon = "Ferumbras Pet", cor = TEXTCOLOR_DARKRED, efeito = 29} } function onThink(cid, interval) local function Macabro(cid) for k, v in pairs(eggo) do if isCreature(cid) and getCreatureName(cid) == k then if getPlayerStorageValue(cid,config.storage) < 0 then -- aqui ele vai verificar se o level do pokemon representado pelo storage vai ta -1, caso sim, seta como 0 setPlayerStorageValue(cid, config.storage, 0) end doSendMagicEffect(getThingPos(cid), v.efeito) doSendAnimatedText(getThingPos(cid), "Level: " ..(getPlayerStorageValue(cid,config.storage)).. "", v.cor) addEvent(function() Macabro(cid) end, 6000) end end end if (getPlayerStorageValue(cid, 70079)) <= 0 then -- storage que guarda o tempo do efeito. Macabro(cid) setPlayerStorageValue(cid, 70079, config.tempo + os.time()) else return true end return TRUE end Teste com essa verificação aí, o colega de cima deu ideia, acredito que isso já resolva o problema, pois como você já falou, quando fez o teste no book, aparentemente estava correto.
-
Tchuka deu reputação a Cerberus em [Ajuda] Script Bugadoif getPlayerStorageValue(cid, config.storagesorte) < config.levelsorte then
poe assim
if getPlayerStorageValue(cid, config.storagesorte) < 0 then setPlayerStorageValue(cid, config.storagesorte, 0) elseif getPlayerStorageValue(cid, config.storagesorte) >= 0 or getPlayerStorageValue(cid, config.storagesorte) < config.levelsorte then if getPlayerItemCount(cid, config.item) >= config.quant then doPlayerRemoveItem(cid, config.item, config.quant)
ou vocÊ fala como que consegue esse pet. ai da p por storage 0 nele quando ganhar ele..ai e so fala pro npc da level. não tem como vc ganha pet.
-
Tchuka deu reputação a lordzetros em [Ajuda] Script BugadoÉ porque acontece o seguinte: Todos storages, quando declarados, recebem o valor de -1, e de alguma maneira, em outro script que seta o level do seu pokemon, ao invés de definir como 0, o mesmo permanece como padrão, pois não foi setado como outro valor.
Repare nesta parte do código:
doSendAnimatedText(getThingPos(cid), "Level: " ..(getPlayerStorageValue(cid,489061564)).. "", v.cor) o storage 489061564 provavelmente é o que guarda o valor do level do pokemon, certo? E por padrão, quando ele foi declarado, recebeu -1, ou seja, se não houver modificação no level do pokemon, ele vai tá sempre com -1 por não ter sido declarado com valor nulo. É por isso que falei que o código que você está postando, aparentemente, está tudo ok (tirando algumas coisas de configurável ao usuário).
-
Tchuka deu reputação a
Nazoem (Resolvido)Erro Creaturescripts@Tchuka, testa aí:
local level = 0 local config = { tempo = 3, -- tempo, em segundos que o efeito demorará para sair. } local eggo = { ["Holy Pet"] = {id = 6541, mon = "Holy Pet", cor = TEXTCOLOR_YELLOW}, ["Fire Pet"] = {id = 6542, mon = "Fire Pet", cor = TEXTCOLOR_RED}, ["Ice Pet"] = {id = 6543, mon = "Ice Pet", cor = TEXTCOLOR_BLUE}, ["Terra Pet"] = {id = 6544, mon = "Terra Pet", cor = TEXTCOLOR_LIGHTGREEN}, ["Phoenix Pet"] = {id = 2695, mon = "Phoenix Pet", cor = TEXTCOLOR_GREY}, ["Draug Pet"] = {id = 6544, mon = "Draug Pet", cor = TEXTCOLOR_BROWN}, ["Many Pet"] = {id = 2695, mon = "Many Pet", cor = TEXTCOLOR_TEAL}, ["Energy Pet"] = {id = 6545, mon = "Energy Pet", cor = TEXTCOLOR_PURPLE} } function onThink(cid, interval) local function Macabro(cid) for k, v in pairs(eggo) do if(not cid) then break end if isMonster and getCreatureName(cid) == v.mon then doSendMagicEffect(getThingPos(cid), 37) doSendAnimatedText(getThingPos(cid), "level: ".. level .. "", v.cor) return addEvent(Macabro, 3000, cid) end end end if (getPlayerStorageValue(cid, 70071)) <= 0 then -- storage que guarda o tempo do efeito. Macabro(cid) setPlayerStorageValue(cid, 70071, config.tempo + os.time()) else return true end return TRUE end
-
Tchuka deu reputação a Wakon em Dano de spell por storage@Tchuka, é proibido comentar para subir tópicos, isso é considerado flood! Utilize o sistema para subir tópicos:
http://www.tibiaking.com/forum/forums/topic/68780-sistema-de-subir-tópico/
Regras Gerais: http://www.tibiaking.com/forum/forums/topic/1281-regras-gerais-do-tibiaking/
-
Tchuka deu reputação a KotZletY em (Resolvido)Healing@Tchuka em data/lib abra o arquivo 050-function.lua e coloque isso dentro:
Fiz isso /\ apenas para chamar de forma global, e não precisar criar duas tabelas em callbacks diferentes, assim quando você alterar algo, será para ambos. Haushsa
A script action mude para essa:
Tag xml do action:
<action itemid="00000" event="script" value="NomeDoArquivo.lua"/> Coloque o nome do arquivo, e o id do item.
Abra seu login.lua e logo após a função onLogin, adicione o seguinte:
if getPlayerStorageValue(cid, RegenPercent.storage) > os.time() then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você agora está com heal de por "..RegenPercent.hours.." hora"..(RegenPercent.hours == 1 and "." or "s." )) LoopRegen(cid) end
-
Tchuka deu reputação a xWhiteWolf em (Resolvido)Sorte, Sabedoria e Coragempro primeiro pesquisa sobre um ring que aumenta a chance de drop aqui no TK.
Pro segundo, na hora de invocar o monstro edite tudo que você conseguir dele pra deixar mais forte usando as funções. As spells e os ataques que são dificeis de modificar, vc teria que fazer spells próprias e dentro delas colocar algum check pra pegar o storage do caster e ver se for < que determinado valor só retornar false e não soltar a spell. Dessa forma você vai criar o efeito de que conforme o pet evolui ele vai "liberando" novas spells sendo que na vdd elas sempre estiveram lá, só não eram executadas por conta do check do storage.
pro terceiro você teria que modificar todas as weapons OU se fosse TFS 1.X+ daria pra fazer onCreatureChangeHealth multiplicando o primarydamage por algum coeficiente baseado no storage.
Outra opção é modificar a formula de dano na source, mas só recomendo fazer isso se realmente souber o que tá fazendo.