Ir para conteúdo

SamuelOficial

Campones
  • Total de itens

    3
  • Registro em

  • Última visita

Sobre SamuelOficial

Informações

  • Forma que conheci o xTibia
    Sites de Busca
  • Sou
    Hoster

Últimos Visitantes

150 visualizações

SamuelOficial's Achievements

  1. ESSE AQUI NAO PEGA <?xml version="1.0" encoding="UTF-8"?> <mod name="Blessed Task" version="3.0" author="Vodkart" contact="xtibia.com" enabled="yes"> <config name="task_func"><![CDATA[ tasktabble = { ["asuras"] = {monster_race={"asuras"}, storage_start = 200284, storage = 91084, count = 717217, exp = 100000000000000, money = 100000000000}, ["bashmus"] = {monster_race={"bashmus"}, storage_start = 200285, storage = 91085, count = 717217, exp = 100000000000000, money = 100000000000}, ["carnivors"] = {monster_race={"carnivors"}, storage_start = 200286, storage = 91086, count = 717217, exp = 100000000000000, money = 100000000000}, ["deathlings"] = {monster_race={"deathlings"}, storage_start = 200287, storage = 91087, count = 717217, exp = 100000000000000, money = 100000000000}, ["dreamelves"] = {monster_race={"dreamelves"}, storage_start = 200288, storage = 91088, count = 717217, exp = 100000000000000, money = 100000000000}, ["forest monsters"] = {monster_race={"forest monsters"}, storage_start = 200289, storage = 91089, count = 717217, exp = 100000000000000, money = 100000000000}, ["lost souls"] = {monster_race={"lost souls"}, storage_start = 200290, storage = 91090, count = 717217, exp = 100000000000000, money = 100000000000}, ["underwaters"] = {monster_race={"underwaters"}, storage_start = 200291, storage = 91091, count = 717217, exp = 100000000000000, money = 100000000000}, ["goannas"] = {monster_race={"goannas"}, storage_start = 200292, storage = 91092, count = 717217, exp = 100000000000000, money = 100000000000}, ["iksupans"] = {monster_race={"iksupans"}, storage_start = 200293, storage = 91093, count = 717217, exp = 100000000000000, money = 100000000000}, ["ingols"] = {monster_race={"ingols"}, storage_start = 200294, storage = 91094, count = 717217, exp = 100000000000000, money = 100000000000}, ["mercurial menace"] = {monster_race={"mercurial menace"}, storage_start = 200295, storage = 91095, count = 717217, exp = 1000000000000000, money = 100000000000}, ["nagas"] = {monster_race={"nagas"}, storage_start = 200296, storage = 91096, count = 717217, exp = 100000000000000, money = 100000000000}, ["savants"] = {monster_race={"savants"}, storage_start = 200297, storage = 91097, count = 717217, exp = 100000000000000, money = 100000000000}, ["spectres"] = {monster_race={"spectres"}, storage_start = 200298, storage = 91098, count = 717217, exp = 100000000000000, money = 100000000000}, ["wingeds"] = {monster_race={"wingeds"}, storage_start = 200299, storage = 91099, count = 717217, exp = 100000000000000, money = 100000000000}, } configbosses_task = { {race = "minotaur",Playerpos = {x = 189, y = 57, z = 7}, FromPosToPos = {{x = 186, y = 54, z = 7},{x = 193, y = 60, z = 7}},time = 5}, {race = "necromancer",Playerpos = {x = 196, y = 39, z = 7}, FromPosToPos = {{x = 195, y = 37, z = 7},{x = 198, y = 41, z = 7}}, time = 5}, {race = "dragon",Playerpos = {x = 208, y = 59, z = 7}, FromPosToPos = {{x = 206, y = 56, z = 7},{x = 209, y = 65, z = 7}}, time = 5} } function CheckTask(cid) for k, v in pairs(tasktabble) do if getPlayerStorageValue(cid,v.storage_start) >= 1 then return true end end return false end function finisheAllTask(cid) local config = { exp = {true,1000}, money = {true,200000}, items ={false,{{2124,2},{2173,1}}}, premium ={true,5} } local x = true for k, v in pairs(tasktabble) do if tonumber(getPlayerStorageValue(cid,v.storage)) then x = false end end if x == true then setPlayerStorageValue(cid, 521456, 0) local b = getGlobalStorageValue(63005) if b == -1 then b = 1 end if b < 11 then setGlobalStorageValue(63005,b+1) doBroadcastMessage('[Task Mission Complete] '..getCreatureName(cid)..' was the '..b..' to finish the task!.') doPlayerAddPremiumDays(cid, config.premium[1] == true and config.premium[2] or 0) doPlayerAddExp(cid, config.exp[1] == true and config.exp[2] or 0) doPlayerAddMoney(cid, config.money[1] == true and config.money[2] or 0) if config.items[1] == true then doAddItemsFromList(cid,config.items[2]) end doItemSetAttribute(doPlayerAddItem(cid, 7369), "name", "trophy "..getCreatureName(cid).." completed all the task.") end end end function HavePlayerPosition(cid, from, to) return isInRange(getPlayerPosition(cid), from, to) and true or false end function getRankStorage(cid, value, max, RankName) -- by vodka local str ="" str = "--[".. (RankName == nil and "RANK STORAGE" or ""..RankName.."") .."]--\n\n" local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;") if (query:getID() ~= -1) then k = 1 repeat if k > max then break end str = str .. "\n " .. k .. ". "..getPlayerNameByGUID(query:getDataString("player_id")).." - [" .. query:getDataInt("value") .. "]" k = k + 1 until not query:next() end return doShowTextDialog(cid, 2529, str) end function getItemsInContainerById(container, itemid) -- Function By Kydrai local items = {} if isContainer(container) and getContainerSize(container) > 0 then for slot=0, (getContainerSize(container)-1) do local item = getContainerItem(container, slot) if isContainer(item.uid) then local itemsbag = getItemsInContainerById(item.uid, itemid) for i=0, #itemsbag do table.insert(items, itemsbag[i]) end else if itemid == item.itemid then table.insert(items, item.uid) end end end end return items end function doPlayerAddItemStacking(cid, itemid, quant) -- by mkalo local item = getItemsInContainerById(getPlayerSlotItem(cid, 3).uid, itemid) local piles = 0 if #item > 0 then for i,x in pairs(item) do if getThing(x).type < 100 then local it = getThing(x) doTransformItem(it.uid, itemid, it.type+quant) if it.type+quant > 100 then doPlayerAddItem(cid, itemid, it.type+quant-100) end else piles = piles+1 end end else return doPlayerAddItem(cid, itemid, quant) end if piles == #item then doPlayerAddItem(cid, itemid, quant) end end function getItemsFromList(items) -- by vodka local str = '' if table.maxn(items) > 0 then for i = 1, table.maxn(items) do str = str .. items[i][2] .. ' ' .. getItemNameById(items[i][1]) if i ~= table.maxn(items) then str = str .. ', ' end end end return str end function doAddItemsFromList(cid,items) -- by vodka if table.maxn(items) > 0 then for i = 1, table.maxn(items) do local count = items[i][2] while count > 0 do if isItemStackable(items[i][1]) then doPlayerAddItemStacking(cid, items[i][1], 1) else doPlayerAddItem(cid, items[i][1],1) end count = count - 1 end end end end function pairsByKeys(t, f) local a = {} for n in pairs(t) do table.insert(a, n) end table.sort(a, f) local i = 0 local iter = function () i = i + 1 if a[i] == nil then return nil else return a[i], t[a[i]] end end return iter end ]]></config> <event type="login" name="TaskLogin" event="script"><![CDATA[ function onLogin(cid) registerCreatureEvent(cid, "KillTask") return true end]]></event> <talkaction words="!taskrgb" event="buffer"><![CDATA[ domodlib('task_func_rgb') local param = string.lower(param) if param == "rank" then getRankStorage(cid, 521456, 20, "Task Rank Finalizadas") return true end local str = "" str = str .. "-=[Task Completed]=-\n\n" for k, v in pairsByKeys(tasktabble) do local contagem = getPlayerStorageValue(cid, v.storage) if (contagem == -1) then contagem = 1 end str = str..k.." = ".. (not tonumber(contagem) and "["..contagem.."]" or "["..((contagem)-1).."/"..v.count.."]") .."\n" end str = str .. "" return doShowTextDialog(cid, 8983, str) ]]></talkaction> <event type="kill" name="KillTask" event="script"><![CDATA[ domodlib('task_func') function onKill(cid, target, lastHit) if(isMonster(target) == true) then local n = string.lower(getCreatureName(target)) for race, mob in pairs(tasktabble) do if getPlayerStorageValue(cid,mob .storage_start) >= 1 then for i = 1,#mob.monster_race do if n == mob.monster_race[i] then local contagem = getPlayerStorageValue(cid, mob.storage) if (contagem == -1) then contagem = 1 end if not tonumber(contagem) then return true end if contagem > mob.count then return true end if contagem > mob.count then return true end setPlayerStorageValue(cid, mob.storage, contagem+1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE,""..(contagem == mob.count and "Congratulations! You finished the task of "..race.."." or "defeated. Total [" .. contagem .. "/" .. mob.count .. "] " .. race .. ".").."") end end end end end return true end]]></event> </mod> domodlib('task_func') local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid local msg = string.lower(msg) if isInArray({"task","tasks","missao","mission"}, msg) then npcHandler:say("Me diga o nome do monstro que você deseja fazer a task!", cid) talkState[talkUser] = 1 elseif talkState[talkUser] == 1 then if tasktabble2[msg] then if CheckTask(cid) ~= true then local contagem = getPlayerStorageValue(cid, tasktabble2[msg].storage) if (contagem == -1) then contagem = 1 end if not tonumber(contagem) then npcHandler:say('Desculpe, mas você já terminou a task do '..msg, cid) return true end setPlayerStorageValue(cid, tasktabble2[msg].storage_start, 1) npcHandler:say("Parabéns, agora você está participando da missão task do "..msg..", falta matar "..string.sub(((contagem)-1)-tasktabble2[msg].count, 2).." "..msg, cid) talkState[talkUser] = 0 else npcHandler:say('Desculpe, mas você já faz parte de uma task!', cid) talkState[talkUser] = 0 end else npcHandler:say('digite o nome correto da missão task! para mais informações digite {!taskrgb}', cid) talkState[talkUser] = 1 end elseif isInArray({"receber","reward","recompensa","report","reportar"}, msg) then if CheckTask(cid) then for k, v in pairs(tasktabble2) do racetype = k if getPlayerStorageValue(cid,v.storage_start) >= 1 then local contagem = getPlayerStorageValue(cid, v.storage) if (contagem == -1) then contagem = 1 end if not tonumber(contagem) then npcHandler:say('você só pode receber os items uma única vez!', cid) return true end if (((contagem)-1) >= v.count) then for _, check in pairs(configbosses_task) do if string.lower(check.race) == string.lower(racetype) then local on = getPlayersOnline() for i=1, #on do if HavePlayerPosition(on[i], check.FromPosToPos[1],check.FromPosToPos[2]) then selfSay('aguarde alguns instantes, tem pessoas fazendo a task.', cid) return true end end doTeleportThing(cid, check.Playerpos) local function checkArea(cid) if not isCreature(cid) then return LUA_ERROR end if HavePlayerPosition(cid, check.FromPosToPos[1],check.FromPosToPos[2]) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end end addEvent(checkArea, check.time*60*1000, cid) end end local str = "" if v.exp ~= nil then doPlayerAddExp(cid, v.exp ) str = str.."".. (str == "" and "" or ",") .." "..v.exp.." de exp" end if v.money ~= nil then doPlayerAddMoney(cid, v.money) str = str.."".. (str == "" and "" or ",") ..""..v.money.." gps" end if v.reward ~= nil then doAddItemsFromList(cid,v.reward) str = str.."".. (str == "" and "" or ",") ..""..getItemsFromList(v.reward) end npcHandler:say("Obrigado pela sua ajuda Recompensas: "..(str == "" and "nenhuma" or ""..str.."").." por ter completado a task do "..k, cid) setPlayerStorageValue(cid, v.storage, "Finished") setPlayerStorageValue(cid, v.storage_start, 0) setPlayerStorageValue(cid, 521456, getPlayerStorageValue(cid, 521456) == -1 and 1 or getPlayerStorageValue(cid, 521456)+1) finisheAllTask(cid) else npcHandler:say('Desculpe,mas você só matou '..((contagem)-1)..' de '..v.count..' '..k, cid) end end end else npcHandler:say("você não está em nenhuma missão task", cid) end elseif isInArray({"sair","leave","exit"}, msg) then if CheckTask(cid) then talkState[talkUser] = 2 for k, v in pairs(tasktabble2) do if getPlayerStorageValue(cid,v.storage_start) >= 1 then storagesair = v.storage_start local contagem = getPlayerStorageValue(cid, v.storage) if (contagem == -1) then contagem = 1 end npcHandler:say('você está participando de uma missão task do '..k..' e já tem '..((contagem)-1)..' '..k..' mortos, deseja mesmo sair?', cid) end end else npcHandler:say("você não está em nenhuma missão task", cid) end elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then setPlayerStorageValue(cid, storagesair, 0) npcHandler:say("Você foi retirado da task com sucesso!", cid) elseif msg == "no" then selfSay("Tudo bem então", cid) talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) simple_task.lua Simple Task.xml simple_task funciona menos blessed task que nao simple_task pega
  2. COMO COMPILAR TFS 0.3.6 PRA 64 BITS TENTEI COM -m64 NÃO DEU FALO DEV C++ NÃO É PRA 64BITS EU QUERIA COMPILA TFS 0.3.6 PRA 64 BITS EU JA TENHO A SOURCE
  3. function onStatsChange(cid, attacker, type, combat, value) -- Verificar se o Reflection está ativo if getPlayerStorageValue(cid, 12978) > os.time() then -- Garantir que o atacante é válido e está vivo if isCreature(attacker) and getCreatureHealth(attacker) > 0 then doCreatureAddHealth(attacker, -getCreatureHealth(attacker)) -- Matar atacante doSendMagicEffect(getThingPosition(attacker), CONST_ME_HOLYDAMAGE) doSendAnimatedText(getThingPosition(attacker), "[OWNED!]", 35) end return false -- Impede que o jogador perca vida else -- Desativar evento quando o Reflection expira unregisterCreatureEvent(cid, "Reflection/statschange") setPlayerStorageValue(cid, 12978, -1) end return true end local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local itemID = 11192 -- id do anel local quantRemove = 100 -- quantidade do item acima que sera removido local storageGain = 12978 -- storage que o player vai ganhar quando o item for removido if (msgcontains(msg, 'yes') and doPlayerRemoveItem(cid, itemID, quantRemove)) then selfSay('Parabens Voce Ganhou Magia (Edit) Digite {Reflection} no Default...', cid) setPlayerStorageValue(cid, storageGain, 1) else selfSay('Vendo Storage de Magia Digite, {Reflection} no Default Tenha [50K] de Vip Coin Digite: {yes}.', cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) local msg = "You are immortal for 24 hours." local STORAGE = 91845 local immortal_time = 86400 -- 24 hours in seconds. function onCastSpell(cid, var) -- Checks if the player is a donor if getPlayerStorageValue(cid, 12967) < 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You need to be a donor to use this spell.") doSendMagicEffect(getThingPosition(cid), CONST_ME_POFF) return false end -- Checks if the player is already immortal if getPlayerStorageValue(cid, STORAGE) > os.time() then doPlayerSendCancel(cid, "You are already immortal.") doSendMagicEffect(getThingPosition(cid), CONST_ME_POFF) return false end -- Grants immortality to the player setPlayerStorageValue(cid, STORAGE, os.time() + immortal_time) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, msg) doSendMagicEffect(getThingPosition(cid), CONST_ME_HOLYDAMAGE) return true end
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...