-
Total de itens
93 -
Registro em
-
Última visita
Tudo que bilaux postou
-
bom dia galera, no meu gesior, todas abas ficam fechadas, só a events aberta até ai tudo bem, mais se eu clico em qualquer evento da aba events, ele fecha a própria e abre as outras todas, como faz pra corrigir isso ?? obrigado
-
tem como fazer de hora em hora, todos os dias ??
-
não da erro mais tbm não funciona, obrigado config = { days = { "Monday-09:00", "Monday-10:00", "Monday-11:00", "Monday-12:00", "Monday-13:00", "Monday-14:00", "Monday-15:00", "Monday-16:00", "Monday-17:00", "Monday-18:00", "Monday-19:00", "Monday-20:00", "Monday-21:00", "Monday-22:00", "Tuesday-09:00", "Tuesday-10:00", "Tuesday-11:00", "Tuesday-12:00", "Tuesday-13:00", "Tuesday-14:00", "Tuesday-15:00", "Tuesday-16:00", "Tuesday-17:00", "Tuesday-18:00", "Tuesday-19:00", "Tuesday-20:00", "Tuesday-21:00", "Tuesday-22:00", "Wednesday-09:00", "Wednesday-10:00", "Wednesday-11:00", "Wednesday-12:00", "Wednesday-13:00", "Wednesday-14:00", "Wednesday-15:00", "Wednesday-16:00", "Wednesday-17:00", "Wednesday-18:00", "Wednesday-19:00", "Wednesday-20:00", "Wednesday-21:00", "Wednesday-22:00", "Thursday-09:00", "Thursday-10:00", "Thursday-11:00", "Thursday-12:00", "Thursday-13:00", "Thursday-14:00", "Thursday-15:00", "Thursday-16:00", "Thursday-17:00", "Thursday-18:00", "Thursday-19:00", "Thursday-20:00", "Thursday-21:00", "Thursday-22:00", "Friday-09:00", "Friday-10:00", "Friday-11:00", "Friday-12:00", "Friday-13:00", "Friday-16:39", "Friday-15:00", "Friday-16:00", "Friday-17:00", "Friday-18:00", "Friday-19:00", "Friday-20:00", "Friday-21:00", "Friday-22:00", "Saturday-09:00", "Saturday-10:00", "Saturday-11:00", "Saturday-12:00", "Saturday-13:00", "Saturday-14:00", "Saturday-15:00", "Saturday-16:00", "Saturday-17:00", "Saturday-18:00", "Saturday-19:00", "Saturday-20:00", "Saturday-21:00", "Saturday-22:00", "Sunday-09:00", "Sunday-10:00", "Sunday-11:00", "Sunday-12:00", "Sunday-13:00", "Sunday-14:00", "Sunday-15:00", "Sunday-16:00", "Sunday-17:00", "Sunday-18:00", "Sunday-19:00", "Sunday-20:00", "Sunday-21:00", "Sunday-22:00" }, Tp = {{x=1003, y=1500, z=13},{x = 155, y = 50, z = 7}} , TpTime = 2 -- em minutos } function onThink(interval, lastExecution) for i = 1, #config.days do if isInArray(config.days[1], os.date("%A")) and isInArray(config.days[2], tostring(os.date("%X")):sub(1, 5)) then function removeTp(config) local t = getTileItemById(config.Tp[1], 1387) if t then doRemoveItem(t.uid, 1) doSendMagicEffect(config.Tp[1], CONST_ME_POFF) broadcastMessage("O teleporte se fechou.",22) end end doCreateTeleport(1387, config.Tp[2], config.Tp[1]) broadcastMessage("O evento foi aberto, você tem "..config.TpTime.." minutos para entrar no teleport.",22) addEvent(removeTp, config.TpTime100060, config) end break end return true end
-
[Encerrado] AJUDA SCRIPTS ACTION - TFS 0.4
tópico respondeu ao bilaux de bilaux em Tópicos Sem Resposta
@Yan Liima -
@Yan Liima
-
redSkullLength = 2 * 24 * 60 * 60 blackSkullLength = 2 * 24 * 60 * 60 dailyFragsToRedSkull = 20 weeklyFragsToRedSkull = 40 monthlyFragsToRedSkull = 60 dailyFragsToBlackSkull = 20 weeklyFragsToBlackSkull = 40 monthlyFragsToBlackSkull = 70 blackSkulledDeathHealth = 40 blackSkulledDeathMana = 0 useBlackSkull = true advancedFragList = false ficaria assim pra ele pegar red e depois black ???? se eu desativar o black skull ele vai pegar red e não black ??
-
boa tarde, tem um cara no meu ot, falou q pegou black direto com 8 frags, meu config.lua está assim.. useFragHandler = true redSkullLength = 2 * 24 * 60 * 60 blackSkullLength = 2 * 24 * 60 * 60 dailyFragsToRedSkull = 20 weeklyFragsToRedSkull = 40 monthlyFragsToRedSkull = 60 dailyFragsToBlackSkull = dailyFragsToRedSkull weeklyFragsToBlackSkull = weeklyFragsToRedSkull monthlyFragsToBlackSkull = monthlyFragsToRedSkull dailyFragsToBanishment = dailyFragsToRedSkull weeklyFragsToBanishment = weeklyFragsToRedSkull monthlyFragsToBanishment = monthlyFragsToRedSkull blackSkulledDeathHealth = 40 blackSkulledDeathMana = 0 useBlackSkull = true advancedFragList = true
-
meu bomberman quando se suicida tu ganha o premio de vez ir pro jogador, os seus tbm são assim ??
-
agora funciono abre o tp, tu passa em cima acontece nada...
-
tfs 0.3 [0.3.6] Player Spoof System
tópico respondeu ao JairKevick de bilaux em Linguagens de Programação
como faz pro !online, reconhecer o spoof... -
event ontime not found error - tfs 0.4
-
Fazendo Com Que O Seu Ot Aceite Qualquer Item.otb!
tópico respondeu ao dreigon67 de bilaux em Tutoriais de Programação
como sempre salvando agora, falta arrumar o cast pra mim colocar, e eu vou testar aquele script do tile do lv e reset lá, agora to com msm distro q tu... -
Fazendo Com Que O Seu Ot Aceite Qualquer Item.otb!
tópico respondeu ao dreigon67 de bilaux em Tutoriais de Programação
oxi tfs 0.4 3884, não acho nenhuma das linhas.. -
@Vodkart [9:45:47.378] [Error - TalkAction Interface] [9:45:47.378] In a timer event called from: [9:45:47.378] data/talkactions/scripts/bomb.lua:onSay [9:45:47.378] Description: [9:45:47.378] (luaGetCreatureName) Creature not found [9:45:47.378] [Error - TalkAction Interface] [9:45:47.378] In a timer event called from: [9:45:47.378] data/talkactions/scripts/bomb.lua:onSay [9:45:47.378] Description: [9:45:47.378] data/talkactions/scripts/bomb.lua:133: attempt to concatenate a boolean value [9:45:47.378] stack traceback: [9:45:47.378] data/talkactions/scripts/bomb.lua:133: in function 'loopDir' [9:45:47.378] data/talkactions/scripts/bomb.lua:178: in function <data/talkactions/scripts/bomb.lua:87>
-
bom dia galera, teria como tirar do script pra ele refinar só itens de de defesa e nenhuma armas.. --[[ PERFECT UPGRADE SYSTEM 2.0 Criado por Oneshot É proibido a venda ou a cópia sem os devidos créditos desse script. ]]-- UpgradeHandler = { levels = { [1] = {100, false, false}, [2] = {90, false, false}, [3] = {75, false, false}, [4] = {60, true, false}, [5] = {45, true, false}, [6] = {30, true, false}, [7] = {25, true, false}, [8] = {20, true, true}, [9] = {15, true, true}, [10] = {10, true, true}, [11] = {10, true, true}, [12] = {10, true, true}, [13] = {10, true, true}, [14] = {10, true, true}, [15] = {5, true, true} }, broadcast = 7, attributes = { ["defense"] = 200, ["armor"] = 200 }, message = { console = "Trying to refine %s to level +%s with %s%% success rate.", success = "You have upgraded %s to level +%s", fail = "You have failed in upgrade of %s to level +%s", downgrade = "The upgrade level of %s has downgraded to +%s", erase = "The upgrade level of %s has been erased.", maxlevel = "The targeted %s is already on max upgrade level.", notupgradeable = "This item is not upgradeable.", broadcast = "The player %s was successful in upgrading %s to level +%s.\nCongratulations!!", invalidtool = "This is not a valid upgrade tool.", toolrange = "This upgrade tool can only be used in items with level between +%s and +%s" }, tools = { [8306] = {range = {0, 10}, info = {chance = 0, removeable = false}}, }, isEquipment = function(self) local weaponType = self:getItemWeaponType() return ((weaponType > 0 and weaponType < 7) or self.item.armor ~= 0) end, setItemName = function(self, name) return doItemSetAttribute(self.item.uid, "name", name) end, chance = function(self) local chances = {} chances.upgrade = (self.levels[self.item.level + 1][1] or 100) chances.downgrade = (self.item.level * 5) chances.erase = (self.item.level * 3) return chances end } function UpgradeHandler:new(item) local obj, ret = {} obj.item = {} obj.item.level = 0 obj.item.uid = item.uid for key, value in pairs(getItemInfo(item.itemid)) do obj.item[key] = value end ret = setmetatable(obj, {__index = function(self, index) if _G[index] then return (setmetatable({callback = _G[index]}, {__call = function(self, ...) return self.callback(item.uid, ...) end})) else return UpgradeHandler[index] end end}) if ret:isEquipment() then ret:update() return ret end return false end function UpgradeHandler:update() self.item.level = (tonumber(self:getItemName():match("%+(%d+)")) or 0) end function UpgradeHandler:refine(uid, item) if not self.item then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, self.message.notupgradeable) return "miss" end local tool = self.tools[item.itemid] if(tool == nil) then doPlayerSendTextMessage(uid, MESSAGE_EVENT_DEFAULT, self.message.invalidtool) return "miss" end if(self.item.level > #self.levels) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.maxlevel:format(self.item.name)) return "miss" end if(self.item.level < tool.range[1] or self.item.level >= tool.range[2]) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.toolrange:format(unpack(tool.range))) return "miss" end local chance = (self:chance().upgrade + tool.info.chance) doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, self.message.console:format(self.item.name, (self.item.level + 1), math.min(100, chance))) if(tool.info.removeable == false) then doRemoveItem(item.uid, 1) end if chance * 100 > math.random(1, 10000) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_ORANGE, self.message.success:format(self.item.name, (self.item.level + 1))) if (self.item.level + 1) >= self.broadcast then doBroadcastMessage(self.message.broadcast:format(getCreatureName(uid), self.item.name, (self.item.level + 1))) end self:setItemName((self.item.level > 0 and self:getItemName():gsub("%+(%d+)", "+".. (self.item.level + 1)) or (self:getItemName() .." +1"))) for key, value in pairs(self.attributes) do if getItemAttribute(self.item.uid, key) ~= nil or self.item[key] ~= 0 then doItemSetAttribute(self.item.uid, key, (self.item.level > 0 and getItemAttribute(self.item.uid, key) or self.item[key]) + value) end end return "success" else if(self.levels[self.item.level][3] == true and (self:chance().erase * 100) > math.random(1, 10000)) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.erase:format(self.item.name)) self:setItemName(self.item.name) for key, value in pairs(self.attributes) do if self.item[key] > 0 then doItemSetAttribute(self.item.uid, key, self.item[key]) end end elseif(self.levels[self.item.level][2] == true and (self:chance().downgrade * 100) > math.random(1, 10000)) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.downgrade:format(self.item.name, (self.item.level - 1))) self:setItemName((self.item.level == 1 and self.item.name or self:getItemName():gsub("%+(%d+)", "+".. (self.item.level - 1)))) for key, value in pairs(self.attributes) do if getItemAttribute(self.item.uid, key) ~= nil or self.item[key] ~= 0 then doItemSetAttribute(self.item.uid, key, (self.item[key] + value * (self.item.level - 1))) end end else doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.fail:format(self.item.name, (self.item.level + 1))) end return "fail" end end
-
[Encerrado] [Encerrado] AJUDA SCRIPT - TFS 0.4 - ALAVANCAS
um tópico no fórum postou bilaux Tópicos Sem Resposta
boa noite, como faz pra unificar, exemplo a primeira coluna, a id 7130, da todos os items de uma vez da primeira coluna, a segunda 7138, e por aí vai ?? obrigado local lever = { [7130] = {100,2474}, [7131] = {100,12568}, [7132] = {100,2469}, [7133] = {100,11114}, [7134] = {100,2181}, [7135] = {100,7365}, [7136] = {100,8905}, [7137] = {100,11301}, [7138] = {130,7903}, [7139] = {130,7884}, [7140] = {130,7885}, [7141] = {130,7886}, [7142] = {130,8911}, [7143] = {130,7363}, [7144] = {130,7460}, [7145] = {130,7390}, [7146] = {160,7900}, [7147] = {160,7899}, [7148] = {160,7894}, [7149] = {160,7891}, [7100] = {160,12597}, [7151] = {160,12391}, [7152] = {160,3974}, [7153] = {160,2446}, [7155] = {190,7902}, [7156] = {190,7897}, [7157] = {190,7896}, [7158] = {190,7892}, [7159] = {190,12288}, [7160] = {190,2547}, [7161] = {190,3975}, [7162] = {190,7404}, [7163] = {220,7901}, [7164] = {220,7898}, [7165] = {220,7895}, [7166] = {220,7893}, [7167] = {220,7735}, [7168] = {220,12286}, [7169] = {220,2532}, [7170] = {220,8930} } local storage,exausted = 98762, 2 local Stackable = {7365,7363,12286,2547,12391,12597} -- coloque o ID aqui dos que só vem 1 function onUse(cid,item,fromPosition,itemEx,toPosition) if getotfunPoints(cid) < lever[item.actionid][1] then return doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "Você precisa de "..lever[item.actionid][1].." Ot Fun points.") elseif getPlayerStorageValue(cid, storage) >= os.time() then return doPlayerSendCancel(cid, "espere " .. getPlayerStorageValue(cid, storage) - os.time() .. " alguns segundos e tente novamente.") end doPlayerAddItem(cid,lever[item.actionid][2], isItemStackable(lever[item.actionid][2]) and isInArray(Stackable, lever[item.actionid][2]) and 1 or 100) doPlayerRemoveotfunPoints(cid,lever[item.actionid][1]) setPlayerStorageValue(cid, storage, os.time()+exausted) doPlayerSendTextMessage(cid,22,"Você comprou um " .. getItemNameById(lever[item.actionid][2])) doSendMagicEffect(getCreaturePosition(cid), math.random(28,30)) return true end -
boa tarde, é o seguinte eu queria q o script ficasse da mesma forma, por pontos, a diferença q o cara puxa uma alavanca e já pega todos os itens q está listado ali da primeira coluna, o cara puxa a segunda e pega tudo da segunda coluna e etc.. local lever = { [7200] = {12,2474}, [7131] = {12,12568}, [7132] = {12,2469}, [7133] = {12,11114}, [7134] = {12,2181}, [7135] = {12,7365}, [7136] = {12,8905}, [7137] = {12,12001}, [7138] = {200,7903}, [7139] = {200,7884}, [7140] = {200,7885}, [7141] = {200,7886}, [7142] = {200,8911}, [7143] = {200,7363}, [7144] = {200,7460}, [7145] = {200,7390}, [7146] = {300,7900}, [7147] = {300,7899}, [7148] = {300,7894}, [7149] = {300,7891}, [712] = {300,12597}, [7151] = {300,12391}, [7152] = {300,3974}, [7153] = {300,2446}, [7155] = {280,7902}, [7156] = {280,7897}, [7157] = {280,7896}, [7158] = {280,7892}, [7159] = {280,12288}, [7300] = {280,2547}, [7161] = {280,3975}, [7162] = {280,7404}, [7163] = {200,7901}, [7164] = {200,7898}, [7165] = {200,7895}, [7166] = {200,7893}, [7167] = {200,7735}, [7168] = {200,12286}, [7169] = {200,2532}, [7170] = {200,8930} } local storage,exausted = 98762, 2 local Stackable = {7365,7363,12286,2547,12391,12597} -- coloque o ID aqui dos que só vem 1 function onUse(cid,item,fromPosition,itemEx,toPosition) if getotfunPoints(cid) < lever[item.actionid][1] then return doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "Você precisa de "..lever[item.actionid][1].." Ot Fun points.") elseif getPlayerStorageValue(cid, storage) >= os.time() then return doPlayerSendCancel(cid, "espere " .. getPlayerStorageValue(cid, storage) - os.time() .. " alguns segundos e tente novamente.") end doPlayerAddItem(cid,lever[item.actionid][2], isItemStackable(lever[item.actionid][2]) and isInArray(Stackable, lever[item.actionid][2]) and 1 or 12) doPlayerRemoveotfunPoints(cid,lever[item.actionid][1]) setPlayerStorageValue(cid, storage, os.time()+exausted) doPlayerSendTextMessage(cid,22,"Você comprou um " .. getItemNameById(lever[item.actionid][2])) doSendMagicEffect(getCreaturePosition(cid), math.random(28,30)) return true end
-
Compilando e Rodando OTserv em Linux Ubuntu 12.04
tópico respondeu ao Beeki de bilaux em Tutoriais de Infraestrutura
já está assim como tu pediu pra alterar e está dando e luascript.cpp:741:23: error: ‘class boost::filesystem::directory_entry’ has no member named ‘leaf’ std::string s = it->leaf(); ^ luascript.cpp:744:59: error: no match for ‘operator+’ (operand types are ‘boost::filesystem::path’ and ‘const char [2]’) if(recursively && !loadDirectory(it->path().filename() + "/" + s, npc, recursively)) ^ Makefile:540: recipe for target 'luascript.o' failed make[1]: *** [luascript.o] Error 1 make[1]: ** Esperando que outros processos terminem. mv -f .deps/items.Tpo .deps/items.Po make[1]: Leaving directory '/home/dcp/z' Makefile:396: recipe for target 'all' failed make: *** [all] Error 2 rro.- 24 respostas
-
- compilar otserv
- linux
- (e 6 mais)
-
creatureevent Monitorando todos os trades do servidor (Trade log)
tópico respondeu ao larissaots de bilaux em Globalevents e Spells
isso conta, itens de alavanca ou só trade de player para player ?? -
@Vodkart essa segunda versão tem q criar q pasta no logs ??
-
creatureevent Monitorando todos os trades do servidor (Trade log)
tópico respondeu ao larissaots de bilaux em Globalevents e Spells
log vai aparecer na pasta data/logs ??? @Yan Liima -
[Encerrado] [Encerrado] Dano Variar Pela ml -TFS 0.4
um tópico no fórum postou bilaux Tópicos Sem Resposta
boa tarde, tem como acrescentar no script, pra ter uma variação de acordo com magic level ?? local min, max = 25000,25000 --Ataque mínimo e ataque máximo local w = { [1] = {ef = 47, sh = 35, dmg = COMBAT_ENERGYDAMAGE}, } function onUseWeapon(cid, var) local effect = getPlayerStorageValue(cid, 4561) local target = getCreatureTarget(cid) if target ~= 0 then local wx = w[effect] or w[math.random(#w)] doSendDistanceShoot(getThingPos(cid), getThingPos(target), wx.sh) addEvent(doAreaCombatHealth, 100, cid, wx.dmg, getThingPos(target), 0, -min, -max, wx.ef) end return true end -
bom dia galera, eu gostaria q todos players q tivessem lv menos q 100k não passassem e quem tiver lv 10k com 1 reset pra cima passasse, obrigado local config = { pos = {x = 1000, y = 1500, z = 13}, level = 100000, levelreset = 10000, msgWelcome = "Use !magiasnovas", msgWelcomeReset = "Bem-vindo!", msgCancel = "Vc Precisa 100k , upe nos rotworms, use !magiasnovas" } function onStepIn(cid, item, position, fromPosition) function getPlayerReset(cid) local qr = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..getPlayerGUID(cid)..";") rss = qr:getDataInt("reset", getPlayerGUID(cid)) if rss <= 0 then rss = 0 end return tonumber(rss) end if getPlayerReset(cid) >= 1 and getPlayerLevel(cid) >= config.levelreset then doTeleportThing(cid, config.pos) doPlayerSendTextMessage(cid, 22, config.msgWelcomeReset) else if getPlayerLevel(cid) >= config.level then doTeleportThing(cid, config.pos) doPlayerSendTextMessage(cid, 22, config.msgWelcome) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) else doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doPlayerPopupFYI(cid, config.msgCancel) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) end end return true end
-
bom dia, galera essas são storages do meu castle 24h, eu gostaria q 4 portas do castelo só quem tivesse essas storage conseguisse passar, obrigado function onUse(cid, item, frompos, item2, topos) local castle_one_name = "Castle24h" -- Nome do castelo 1 local storages = {154154,54321,123123} -- Storages ( se vc eh iniciante, deixe como está...)
-
[Encerrado] [Encerrado] Npc ou item Que muda vocação em piramide - tfs 04
um tópico no fórum postou bilaux Tópicos Sem Resposta
boa noite, galera meu ot tem 5 quest, ai eu estou querendo em cada quest coloca um npc no final dela, ai a primeira quest o cara faz a quest e ganha uma vocação nova, exemplo super knight, se eel for kina, super paladin e etc, e na segunda quest outro npc q da vocação, aí for super knight, ele vira hiper knight e por aí vai, ate a 5 quest, cada quest ele vira uma vocação nova, alguém poderia fazer pra mim ?? obrigado
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.