Histórico de Curtidas
-
loreal recebeu reputação de Doidodepeda em (Resolvido)Push Delay Distance [source]em player.cpp procure por
if(!Position::areInRange<1,1,0>(it->second->getPosition(), getPosition())) containers.push_back(it->second); } mude para
if(!Position::areInRange<3,3,0>(it->second->getPosition(), getPosition())) containers.push_back(it->second); } -
loreal recebeu reputação de Nerivalhs em como abrir 2 remeres map editor 8.60 help!tipo quero abrir 2 wolrd
tipo quero abrir duas abas com 2 maps diferentes. em file new e diferente n da certo..
-
loreal deu reputação a Nailanb13 em [Tutorial] Baixando as imagens da Store do Tibia Global para utilizar em seu Store SystemEai galera do TK!
Descobri uma coisa hoje e não sei se já tem por aí...
Então trouxe aqui pra vocês pois é um grande adianto pra quem ta procurando as imagens do store.
Vamos aos passos:
Logue sua conta no tibia global com o cliente normal da cipsoft.
Abra a store e navegue por todos os items/categorias.
(Perceba que os novos items que você acessa a imagem demora um pouco para carregar, isso por que está sendo salva no seu PC!)
Após feito isso, abra o command prompt (Atalho: Windows+R) e digite o %appdata%.
(A janela que vai abrir é onde ficam guardados todos os arquivos de cache dos seus aplicativos.)
Navegue até a pasta Tibia->ImageCache. Eis aqui o pote de ouro!
Cada pasta de o nome final do arquivo, copie o nome da pasta e cole renomeando sua imagem.
E voilá eis o seu arquivo de imagem em png já com o nome!
É isso aí galera, se gostou do tutorial... REP+
-
loreal deu reputação a MaTTch em Help com Target ColorsO sistema do gif é completamente possível em lua, usando creaturescripts. A função que se usa é essa:
doSendCreatureSquare(cid, color[, player])
-
loreal recebeu reputação de malucooo em [Link Quebrado]GLOBAL FULL DOWNLOAD 10.95 [TFS 1.2/FERUMBRAS QUEST/KRAILOS/NEW ARENA/CAST/NEW ITEMS/REWARD/EVENTS/CASINO] ~ AtualizaçõesVlw pelo link fiz modificações aqui na source esse sistema de Hotkay ajustado pelo ninjalulz ta 100% vlw
-
loreal deu reputação a Demonbholder em modificar esse script de blessColoca 0.15
-
loreal deu reputação a Demonbholder em modificar esse script de blessOi,
o problema de usar o doPlayerSetLossPercent é que só muda uma variável na fórmula do cálculo da perde de experiência.
Pelo que eu percebi, você está usando o tfs 0.4, certo?
Se sim, vai em player.cpp e altera a função getLostExperience por isso:
obs: Antes de testar, faça um backup de tudo, pois eu não estou muito familiarizado com as sources do tfs 0.4.
-
loreal recebeu reputação de Skydangerous em [PEDIDO] BANNER PARA O MEU OTSERVbk
banner
-
loreal deu reputação a Wakon em (Resolvido)Como por acentos em scripts .lua?Tem que salvar com codificação em ANSI, só sei como salvar pelo notepad que é clicando em Formatar no menu horizontal e selecionando a codificação em ANSI.
-
loreal recebeu reputação de QuebradaZN em (Resolvido)[Erro] Event Zombietenta assim amigo.
ocal config = {playerCount = 2001, -- Global storage for counting the players left/entered in the event zombieCount = 2002, -- Global storage for counting the zombies in the event teleportActionId = 2000, -- Action id of the teleport needed for the movement script teleportPosition = {x = 32364, y = 32232, z = 7, stackpos = 1}, -- Where the teleport will be created teleportToPosition = {x = 32324, y = 31941, z = 7}, -- Where the teleport will take you teleportId = 1387, -- Id of the teleport timeToStartEvent = 5, -- Minutes, after these minutes the teleport will be removed and the event will be declared started timeBetweenSpawns = 20, -- Seconds between each spawn of zombie zombieName = "event zombie", -- Name of the zombie that should be summoned playersNeededToStartEvent = 5, -- Players needed before the zombies can spawn. -- Should be the same as in the creaturescript! -- The zombies will spawn randomly inside this area fromPosition = {x = 32298, y = 31915, z = 7}, -- top left cornor of the playground toPosition = {x = 32357, y = 31970, z = 7}, -- bottom right cornor of the playground } function onTime() local tp = doCreateTeleport(config.teleportId, config.teleportToPosition, config.teleportPosition) doItemSetAttribute(tp, "aid", config.teleportActionId) doBroadcastMessage("Zombie Event iniciara em " .. config.timeToStartEvent .. " Minutos! O Teleporte sera fechado quando der inicio ao Evento!", MESSAGE_STATUS_WARNING) setGlobalStorageValue(config.playerCount, 0) setGlobalStorageValue(config.zombieCount, 0) addEvent(startEvent, config.timeToStartEvent * 1000 * 60) print(getGlobalStorageValue(2001)) end function startEvent() local get = getThingfromPos(config.teleportPosition) if get.itemid == config.teleportId then doRemoveItem(get.uid, 1) end local fromp, top = config.fromPosition, config.toPosition if getGlobalStorageValue(config.playerCount) >= config.playersNeededToStartEvent then addEvent(spawnZombie, config.timeBetweenSpawns * 1000) doBroadcastMessage("Boa Sorte Participantes! O Teleporte Foi Fechado", MESSAGE_STATUS_WARNING) for x = fromp.x, top.x do for y = fromp.y, top.y do for z = fromp.z, top.z do areapos = {x = x, y = y, z = z, stackpos = 253} getPlayers = getThingfromPos(areapos) if isPlayer(getPlayers.uid) then doPlayerSendTextMessage(getPlayers.uid, MESSAGE_EVENT_ADVANCE, "Os Primeiros Zombie Vao aparecer em " .. config.timeBetweenSpawns .. " Segundos! Boa Sorte!") end end end end else doBroadcastMessage("O Evento Zombie nao pode iniciar devido a alguns Participantes.\n Pelo Menos " .. config.playersNeededToStartEvent .. " Participantes Necessarios!", MESSAGE_STATUS_WARNING) for x = fromp.x, top.x do for y = fromp.y, top.y do for z = fromp.z, top.z do areapos = {x = x, y = y, z = z, stackpos = 253} getPlayers = getThingfromPos(areapos) if isPlayer(getPlayers.uid) then doTeleportThing(getPlayers.uid, getTownTemplePosition(getPlayerTown(getPlayers.uid)), false) doSendMagicEffect(getPlayerPosition(getPlayers.uid), CONST_ME_TELEPORT) end end end end end end function spawnZombie() if getGlobalStorageValue(config.playerCount) >= 2 then pos = {x = math.random(config.fromPosition.x, config.toPosition.x), y = math.random(config.fromPosition.y, config.toPosition.y), z = math.random(config.fromPosition.z, config.toPosition.z)} doSummonCreature(config.zombieName, pos) doSendMagicEffect(pos, CONST_ME_MORTAREA) setGlobalStorageValue(config.zombieCount, getGlobalStorageValue(config.zombieCount)+1) doBroadcastMessage("Um Zombie Tem Gerado! Nao Existe Atualmente " .. getGlobalStorageValue(config.zombieCount) .. " Zombie em Caso Zombies!", MESSAGE_STATUS_CONSOLE_RED) addEvent(spawnZombie, config.timeBetweenSpawns * 1000) end end -
loreal deu reputação a Wise em help comando em talkactions!(:
function onSay(cid, words, param) local femaleOutfits = { ["citizen"]={136}, ["hunter"]={137}, ["mage"]={138}, ["knight"]={139}, ["noblewoman"]={140}, ["summoner"]={141}, ["warrior"]={142}, ["barbarian"]={147}, ["druid"]={148}, ["wizard"]={149}, ["oriental"]={150}, ["pirate"]={155}, ["assassin"]={156}, ["beggar"]={157}, ["shaman"]={158}, ["norsewoman"]={252}, ["nightmare"]={269}, ["jester"]={270}, ["brotherhood"]={279}, ["demonhunter"]={288}, ["yalaharian"]={324}, ["warmaster"]={336} } local maleOutfits = { ["citizen"]={128}, ["hunter"]={129}, ["mage"]={130}, ["knight"]={131}, ["nobleman"]={132},["summoner"]={133}, ["warrior"]={134}, ["barbarian"]={143}, ["druid"]={144}, ["wizard"]={145}, ["oriental"]={146}, ["pirate"]={151}, ["assassin"]={152}, ["beggar"]={153}, ["shaman"]={154}, ["norsewoman"]={251}, ["nightmare"]={268}, ["jester"]={273}, ["brotherhood"]={278}, ["demonhunter"]={289}, ["yalaharian"]={325}, ["warmaster"]={335}, ["wayfarer"]={366} } local msg = {"Command requires GOOD param!", "You dont have Addon Doll!", "Bad param!", "Full Addon Set sucesfully added!"} local x = string.explode(param, " ") if getPlayerItemCount(cid, 9693) > 0 then if param ~= "" then if maleOutfits[x[2]:lower()] and femaleOutfits[x[2]:lower()] then if (x[1] == 'first' or x[1] == 'second') then doPlayerRemoveItem(cid, 9693, 1) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[4]) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_GIFT_WRAPS) if getPlayerSex(cid) == 0 then doPlayerAddOutfit(cid, femaleOutfits[x[2]:lower()][1], x[1] == 'first' and 1 or 2) else doPlayerAddOutfit(cid, maleOutfits[x[2]:lower()][1], x[1] == 'first' and 1 or 2) end else doPlayerSendTextMessage(cid, 27, msg[3]) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[3]) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[1]) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[2]) end return true end -
loreal recebeu reputação de r0bert0lol em [Pedido] Banners para campeonatosmlz pela demora espero que gostem xD
-
loreal recebeu reputação de r0bert0lol em [Pedido] Banners para campeonatosespero que gostem abraço
-
loreal deu reputação a klipstyle em (Resolvido)Help comando em talkactionstenta checar dessa forma amigo.
" .. exhaustion.get(cid, 502) .. "
-
loreal deu reputação a klipstyle em (Resolvido)Help comando em talkactionspode ser feito sem storage.
use isso para verificar exaust. if exhaustion.get(cid, 502) then doPlayerSendCancel(cid, 'You can use this command only once per 10 minuts.') return true end e ao ser teleportado use isso para adicionar o exaust. exhaustion.set(cid, 502, 600) obg: ja esta certo para os 10 minutos. -
loreal deu reputação a Vodkart em Trade OFF 8.60local config = { levelRequiredToAdd = 20, maxOffersPerPlayer = 30, SendOffersOnlyInPZ = true, blocked_items = {2165, 2152, 2148, 2160, 2166, 2167, 2168, 2169, 2202, 2203, 2204, 2205, 2206, 2207, 2208, 2209, 2210, 2211, 2212, 2213, 2214, 2215, 2343, 2433, 2640, 6132, 6300, 6301, 9932, 9933} } function onSay(cid, words, param, channel) if(param == 'help') then doPlayerPopupFYI(cid, "#######Commands#######\n---------------------------------\n!market add, itemName, itemPrice, itemCount \nexample: !market add, plate armor, 500, 1 \n---------------------------------\n!market buy, AuctionID \nexample: !market buy, 1943 \n---------------------------------\n!market remove, AuctionID - example: !market remove, 1943 \n!market receber - Use this command to get money for sold items.\n---------------------------------") return true end local t = string.explode(param, ",") if(t[1] == "add") then if((not t[2]) or (not t[3]) or (not t[4])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.") return true end if(not tonumber(t[3]) or (not tonumber(t[4]))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don't set valid price or items count.") return true end if(string.len(t[3]) > 7 or (string.len(t[4]) > 3)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "This price or item count is too high.") return true end local item = getItemIdByName(t[2]) if(not item) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Item wich such name does not exists.") return true end if(getPlayerLevel(cid) < config.levelRequiredToAdd) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don't have required (" .. config.levelRequiredToAdd .. ") level.") return true end if(isInArray(config.blocked_items, item)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "This item is blocked.") return true end if(getPlayerItemCount(cid, item) < (tonumber(t[4]))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sorry, you don't have this item(s).") return true end local check = db.getResult("SELECT `id` FROM `auction_system` WHERE `player` = " .. getPlayerGUID(cid) .. ";") if(check:getID() == -1) then elseif(check:getRows(true) >= config.maxOffersPerPlayer) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sorry you can't add more offers (max. " .. config.maxOffersPerPlayer .. ")") return true end if(config.SendOffersOnlyInPZ) then if(not getTilePzInfo(getPlayerPosition(cid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You must be in PZ area when you add offert to database.") return true end end if(tonumber(t[4]) < 1 or (tonumber(t[3]) < 1)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to type a number higher than 0.") return true end local itemcount, costgp = math.floor(t[4]), math.floor(t[3]) doPlayerRemoveItem(cid, item, itemcount) db.executeQuery("INSERT INTO `auction_system` (`player`, `item_name`, `item_id`, `count`, `cost`, `date`) VALUES (" .. getPlayerGUID(cid) .. ", \"" .. t[2] .. "\", " .. getItemIdByName(t[2]) .. ", " .. itemcount .. ", " .. costgp ..", " .. os.time() .. ")") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You successfully add " .. itemcount .." " .. t[2] .." for " .. costgp .. " gps to offerts database.") end if(t[1] == "buy") then if(not tonumber(t[2])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Wrong ID.") return true end local buy = db.getResult("SELECT * FROM `auction_system` WHERE `id` = " .. (tonumber(t[2])) .. ";") if(buy:getID() ~= -1) then if(getPlayerMoney(cid) < buy:getDataInt("cost")) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don't have enoguh GP.") buy:free() return true end if(getPlayerName(cid) == getPlayerNameByGUID(buy:getDataInt("player"))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sorry, you can't buy your own items.") buy:free() return true end if(getPlayerFreeCap(cid) < getItemWeightById(buy:getDataInt("item_id"), buy:getDataInt("count")))then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You try to buy a " .. buy:getDataString("item_name") .. ". It weight " .. getItemWeightById(buy:getDataInt("item_id"), buy:getDataInt("count")) .. " cap oz. and you have only " .. getPlayerFreeCap(cid) .. " oz. free capacity. Put some items to depot and try again.") buy:free() return true end local item,amount = buy:getDataString("item_id"), buy:getDataInt("count") local parcel = doCreateItemEx(ITEM_PARCEL) if isItemStackable(item) or amount == 1 then doAddContainerItem(parcel, item, amount) else for i = 1, amount do doAddContainerItem(parcel, item, 1) end end local carta = doAddContainerItem(parcel, 1952) local texto = "[ Item Market ] - "..os.date("%d/%m/%Y ", os.time()).."\n(Buyer) "..getCreatureName(cid).." bought "..amount.."x "..getItemNameById(item).."." doItemSetAttribute(carta, "writer", "Item Market (ID:"..t[2]..")") doItemSetAttribute(carta, "text", texto) doPlayerAddItemEx(cid, parcel) doPlayerRemoveMoney(cid, buy:getDataInt("cost")) db.executeQuery("DELETE FROM `auction_system` WHERE `id` = " .. t[2] .. ";") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You bought " .. buy:getDataInt("count") .. " ".. buy:getDataString("item_name") .. " for " .. buy:getDataInt("cost") .. " gps!") db.executeQuery("UPDATE `players` SET `auction_balance` = `auction_balance` + " .. buy:getDataInt("cost") .. " WHERE `id` = " .. buy:getDataInt("player") .. ";") buy:free() else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Wrong ID.") end end if(t[1] == "remove") then if((not tonumber(t[2]))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Wrong ID.") return true end if(config.SendOffersOnlyInPZ) then if(not getTilePzInfo(getPlayerPosition(cid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You must be in PZ area when you remove offerts from database.") return true end end local delete = db.getResult("SELECT * FROM `auction_system` WHERE `id` = " .. (tonumber(t[2])) .. ";") if(delete:getID() ~= -1) then if(getPlayerGUID(cid) == delete:getDataInt("player")) then db.executeQuery("DELETE FROM `auction_system` WHERE `id` = " .. t[2] .. ";") if(isItemStackable(delete:getDataString("item_id"))) then doPlayerAddItem(cid, delete:getDataString("item_id"), delete:getDataInt("count")) else for i = 1, delete:getDataInt("count") do doPlayerAddItem(cid, delete:getDataString("item_id"), 1) end end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your offert has been deleted from offerts database.") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "This is not your offert!") end delete:free() else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Wrong ID.") end end if(t[1] == "receber") then local balance = db.getResult("SELECT `auction_balance` FROM `players` WHERE `id` = " .. getPlayerGUID(cid) .. ";") if(balance:getDataInt("auction_balance") < 1) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You don't have money on your auction balance.") balance:free() return true end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You got " .. balance:getDataInt("auction_balance") .. " gps from auction system!") doPlayerAddMoney(cid, balance:getDataInt("auction_balance")) db.executeQuery("UPDATE `players` SET `auction_balance` = '0' WHERE `id` = " .. getPlayerGUID(cid) .. ";") balance:free() end return true end
-
loreal deu reputação a Wakon em Alavanca de food help!Assim?
function onUse(cid, item, fromPosition) local maxfood = 1200 local size = 40 if item.itemid == 1945 then doTransformItem(item.uid,item.itemid+1) elseif item.itemid == 1946 then doTransformItem(item.uid, item.itemid-1) end if(getPlayerFood(cid) + size > maxfood) then doPlayerSendCancel(cid, "You are full.") doSendMagicEffect(fromPosition, CONST_ME_POFF) return true end doPlayerFeed(cid, size) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_GREEN) return true end -
loreal deu reputação a Wakon em Alavanca de food help!Tenta assim:
function onUse(cid, item, fromPosition) local maxfood = 1200 local size = 40 if(getPlayerFood(cid) + size > maxfood) then doPlayerSendCancel(cid, "You are full.") doSendMagicEffect(fromPosition, CONST_ME_POFF) return true end doPlayerFeed(cid, size) doSendMagicEffect(fromPosition, CONST_ME_MAGIC_GREEN) return true end -
loreal recebeu reputação de roriscrave em Trocar palavra
-
loreal recebeu reputação de roriscrave em Trocar palavraPronto
-
loreal deu reputação a keilost1 em Potions buga so volta dando reload actionsLoreal,
Não ligue para esses amadores hahaha....
Existe duas possibilidades:
1º Sua distro pode ter alguma falha
2º Existe alguma action que quando executada faz com que as outras pare de pegar, faça o teste, quando o potion parar de pegar tente puxar uma alavanca ou algo do tipo.
-
loreal deu reputação a Vodkart em Duvida sobre esse scriptesse é slot system do mock
se eu n me engano serve pre usar o upgrade system
-
loreal deu reputação a Sanieg em Help clean Time GloballeventsCreio eu que 240000 seja o tempo, não ??
tente repetir a função
-
loreal deu reputação a zipter98 em Help clean Time Globalleventsfunction executeClean(interval) doCleanMap() doBroadcastMessage("Game map cleaned, next clean in " .. table.concat(string.timediff(interval / 1000)) .. ".") return true end function onTime() doBroadcastMessage("Game map cleaning within 30 seconds, please pick up your items!") addEvent(executeClean, 240000, interval) return true end Tags: <globalevent name="Clean1" time="6:00" event="script" value="nome_do_arquivo.lua"/> <globalevent name="Clean2" time="12:00" event="script" value="nome_do_arquivo.lua"/> <globalevent name="Clean3" time="16:00" event="script" value="nome_do_arquivo.lua"/> <globalevent name="Clean4" time="23:00" event="script" value="nome_do_arquivo.lua"/>
-
loreal recebeu reputação de roriscrave em Trocar palavratá ae
sem RASENGAN e
com RASENGAN