Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 06/15/10 em todas áreas
-
[Action] Mount System 1.4 - 100% Inovador!
PamelaCarioka e 7 outros reagiu a Doidin por um tópico no fórum
Mount System - 100% inovador! Fala galerinha, é mais uma vez eu trazendo Scripts para o pessoal do XTibia, dessa vez eu dei uma "inovadinha" no script e fiz um vídeo explicando sobre ele, confira! Vídeo sobre o sistema: http://www.youtube.com/watch?v=xpyI4FtY7dM Bom vamos logo ao script: Primeiramente vamos fazer uma pequena alteração no arquivo items.xml, abra-o e procure por "giant eye", mude esse nome para "mysterious pet", assim: <item id="11191" name="mysterious pet"><attribute key="weight" value="120" /></item> Agora vamos adicionar as actions, vá até a pasta "Actions" e abra o arquivo "Actions.xml" e adicione esta tag: <action itemid="11191" event="script" value="mount.lua"/> Ok, agora volte a pasta "Actions" e abra a pasta "Scripts", faça uma arquivo chamado "mount.lua" e adicione isto: -- [( Mount System 1.4 created by Doidin for XTibia.com )] --function onUse(cid, item)local outfit = {lookType = 342} -- Outfit da montaria!local exhaust = 60 -- Tempo para player poder usar o item novamente! (tempo em segundos)local time = 60 -- Tempo para ficar na montaria! (tempo em segundos)local speed = 300 -- Velocidade adicionada ao player após usar o item! (300 = velocidade, quanto maior mais rapido...)local mana = 1300 -- Quantidade de mana que o player necessita para usar o sistema!local premium = "yes" -- Apenas players premium accounts "yes" or "no"!?local storage = 9393 -- Não mexa aqui!if premium == "yes" and not isPremium(cid) thenreturn doPlayerSendTextMessage(cid, 23, "Sorry, only premium players.")endif(getCreatureMana(cid) < mana) thenreturn doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTENOUGHMANA)endif (getPlayerStorageValue(cid, storage) <= os.time()) thendoCreatureSay(cid, "Yeeeah!!!\nYou went up on his ride.", 19)doSetCreatureOutfit(cid, outfit, time*1000)doChangeSpeed(cid, speed)doSendMagicEffect(getCreaturePosition(cid), 34)setPlayerStorageValue(cid, storage, os.time()+exhaust)doPlayerAddMana(cid, -mana)addEvent(doChangeSpeed, time*1000+40, cid, -speed)addEvent(doPlayerSendTextMessage, time*1000+45, cid, 23, "Mount System is time out!")addEvent(doSendMagicEffect, time*1000+50, getCreaturePosition(cid), 2)doRemoveItem(item.uid, 1)elsedoPlayerSendCancel(cid, "Sorry, you only can again use this item after "..exhaust.." seconds.")endreturn TRUEend Pronto agora configure o script da maneira que você quiser! Caso queira mudar a outfit da sua montaria clique aqui e saiba mais. OBS: A inteção do script é algum NPC te vender um item que no caso é o "mysterious pet" e esse item é super raríssimo, ele tem a função de te dar um "PET" misterioso por um certo tempo para você usar ele como montaria! Aaah só pra constatar eu tive uma pequena ajuda dos meus amigos MatheusMkalo e do Vodkart.. ;] Espero que tenham gostado do script e do vídeo! ;] <* Não poste em outros fórums, exclusivo ao XTibia.com *>8 pontos -
[ Talkaction ]Teleport Por Talk. Para Vip
Rikutachimoto reagiu a Vodkart por um tópico no fórum
script é simples,jogadores vip poderão ser teleportado para os lugar por talkactions basta usar o comando teleportvip.lua --[[script By Vodkart]]-- function onSay(cid, words, param) local config = { pz = true, -- players precisam estar em protection zone para usar? (true or false) battle = true, -- players deve estar sem battle (true or false) custo = true, -- se os teleport irão custa (true or false) need_level = true, -- se os teleport irão precisar de level (true or false) premium = true -- se precisa ser premium account (true or false) } --[[ Config lugares]]-- local lugar = { ["depot"] = { -- nome do lugar pos = {x=129, y=54, z=6},level = 5,price = 1000}, ["templo"] = { -- nome do lugar pos = {x=160, y=54, z=7},level = 10, price = 2000}, ["arena"] = { -- nome do lugar pos = {x=125, y=351, z=9},level = 15,price = 3000}, ["area vip"] ={ -- nome do lugar pos = {x=280, y=87, z=4},level = 20,price = 4000} } --[[ Lista de Viagem (Não mexa) ]]-- if (param == "lista") then local str = "" str = str .. "lista de viagem :\n\n" for name, pos in pairs(lugar) do str = str..name.."\n" end str = str .. "" doShowTextDialog(cid, 6579, str) return TRUE end local a = lugar[param] if not(a) then doPlayerSendTextMessage(cid, 22, "desculpe,este lugar não existe") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return TRUE elseif config.pz == true and getTilePzInfo(getCreaturePosition(cid)) == FALSE then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder teleportar.") return TRUE elseif config.premium == true and not isPremium(cid) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players com premium account podem teleportar.") return TRUE elseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder teleportar.") return TRUE elseif config.need_level == true and getPlayerLevel(cid) < a.level then doPlayerSendTextMessage(cid, 22, "Desculpe,Voce não tem level. voce precisa "..a.level.." level ou mais para ser teleportado.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return TRUE elseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE then doPlayerSendTextMessage(cid, 22, "Desculpe,voce nao tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return TRUE end doTeleportThing(cid, a.pos) doSendMagicEffect(a.pos, CONST_ME_TELEPORT) doPlayerSendTextMessage(cid, 22, "" .. getPlayerName(cid) .. " foi teleportado para: \n " .. param .. ".") return TRUE end em talkactions.xml adicione <talkaction words="!tp" script="teleportvip.lua"/>1 ponto -
Este script serve para o monitoramento dos jogadores online no servidor, mostrando suas informações e criando um log com elas. Primeiramente, abra a pasta data/logs do seu servidor e crie uma nova pasta chamada 'Players'. Agora, vá em data/creaturescripts/scripts e crie o arquivo chamado log.lua, contendo isto: function onLogin(cid) local logs = { "Character informations at " .. os.date("%d/%m/%y - %H:%M:%S - ") .. ":\n", "Nome : " .. getCreatureName(cid) .. "\n", "Ip : " .. doConvertIntegerToIp(getPlayerIp(cid)) .. "\n", "Level : " .. getPlayerLevel(cid) .. "\n", "Experience : " .. getPlayerExperience(cid) .. "\n", "Health now : " .. getCreatureHealth(cid) .. "\n", "Mana now : " .. getCreatureMana(cid) .. "\n", "Citizen from : " .. getTownName(getPlayerTown(cid)) .. "\n\n\n" } setPlayerStorageValue(cid, 35789, os.time()) registerCreatureEvent(cid, "LogLogin") registerCreatureEvent(cid, "LogLogout") arq = io.open(getDataDir() .."/logs/Players/".. getCreatureName(cid) ..".txt", "a+") arq:write(unpack(logs)) arq:close() return TRUE end function onLogout(cid) local logs = { "Character informations at " .. os.date("%d/%m/%y - %H:%M:%S - ") .. ":\n", "Nome : " .. getCreatureName(cid) .. "\n", "Ip : " .. doConvertIntegerToIp(getPlayerIp(cid)) .. "\n", "Level : " .. getPlayerLevel(cid) .. "\n", "Experience : " .. getPlayerExperience(cid) .. "\n", "Health now : " .. getCreatureHealth(cid) .. "\n", "Mana now : " .. getCreatureMana(cid) .. "\n", "Citizen from : " .. getTownName(getPlayerTown(cid)) .. "\n", "Online time : " .. math.floor(os.time()-getPlayerStorageValue(cid, 35789)) .. " seconds\n\n\n", } setPlayerStorageValue(cid, 35789, 0) arq = io.open(getDataDir() .."/logs/Players/".. getCreatureName(cid) ..".txt", "a+") arq:write(unpack(logs)) arq:close() return TRUE end Salve e feche. Abra o arquivo creaturescripts.xml e adicione as seguintes tags: <event type="logout" name="LogLogin" event="script" value="log.lua"/> <event type="logout" name="LogLogout" event="script" value="log.lua"/> Salve e feche. Pronto. Sempre que um jogador entrar/abandonar seu servidor, este será monitorado. Para visualizar os logs, vá até data/logs/Players e escolha o arquivo que deseja visualizar. Os arquivos terão os nomes dos respectivos jogadores. Caso necessite de adicionar mais parâmetros, basta ter conhecimento mínimo de tabelas. Favor não postar em outros fóruns flw1 ponto
-
Alavanca Para 4 Pessoas
Henrique Moura reagiu a Dobol por uma questão
Galera XTibiana, preciso de um script para uma alavanca com 4 pessoas. É o seguinte, esta tudo certo com o script que estou usando, mais acontece um pequeneo BUG depois do uso, ela não volta, ele fica como "1946" e fica impossivel de usar, dando apenas para o GOD voltar para "1945" para a proxima turma poder usar. Meu script esta assim: -- The Quest 1 function onUse(cid, item, frompos, item2, topos) if item.uid == 7006 and item.itemid == 1945 then player1pos = {x=960, y=1130, z=13, stackpos=253} player1 = getThingfromPos(player1pos) player2pos = {x=962, y=1130, z=13, stackpos=253} player2 = getThingfromPos(player2pos) player3pos = {x=964, y=1130, z=13, stackpos=253} player3 = getThingfromPos(player3pos) player4pos = {x=966, y=1130, z=13, stackpos=253} player4 = getThingfromPos(player4pos) if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then queststatus1 = getPlayerStorageValue(player1.uid,7006) queststatus2 = getPlayerStorageValue(player2.uid,7006) queststatus3 = getPlayerStorageValue(player3.uid,7006) queststatus4 = getPlayerStorageValue(player4.uid,7006) if queststatus1 == -1 and queststatus2 == -1 and queststatus3 == -1 and queststatus4 == -1 then nplayer1pos = {x=949, y=1122, z=13} nplayer2pos = {x=958, y=1122, z=13} nplayer3pos = {x=967, y=1122, z=13} nplayer4pos = {x=975, y=1122, z=13} doSendMagicEffect(player1pos,2) doSendMagicEffect(player2pos,2) doSendMagicEffect(player3pos,2) doSendMagicEffect(player4pos,2) doTeleportThing(player1.uid,nplayer1pos) doTeleportThing(player2.uid,nplayer2pos) doTeleportThing(player3.uid,nplayer3pos) doTeleportThing(player4.uid,nplayer4pos) doSendMagicEffect(nplayer1pos,10) doSendMagicEffect(nplayer2pos,10) doSendMagicEffect(nplayer3pos,10) doSendMagicEffect(nplayer4pos,10) doTransformItem(item.uid,item.itemid+1) else doPlayerSendCancel(cid,"Somebody in your team has already done this quest.") end else doPlayerSendCancel(cid,"Precisa de 4 players para puchar a alavanca.") end elseif item.uid ==7006 and item.itemid == 1946 then if getPlayerAccess(cid) > 0 then doTransformItem(item.uid,item.itemid-1) else doPlayerSendCancel(cid,"Desculpe, isso não é possivel.") end else return 0 end return 1 end Aguardo respostas, obrigado desde já.1 ponto -
[ Scripting Geral ]Ranks Atualizando Rapidamente
felipedorgas reagiu a gui56 por uma questão
A respeito do Rank atualizando eu não sei. Agora ao Atack Speed, não se abaixa o attk speed da arma, até porque ela não tem attk speed. Você deve ir em data\XML\vocations.xml. Abra o vocations.xml e procure por isso: Lembrando que quanto menor o valor que voce colocar, maior vai ser o ataque speed. Cada vocação tem um attk speed diferente, então voce pode editar a de todos. Quanto a SD, para editar a força dela vá em data\spells\scripts\attack, e edite essa linha: Altere apenas os numeros! E Para modificar a velocidade em que o player manda a SD vá em data\spells, procure por : Vermelho: Modifique aqui para alterar a velocidade em que o player ataca a runa.1 ponto -
Nossa cara que script foda! Adorei a criatividade kkkkk ² Realmente, muito util. Assim Mostrando quem está na Guild, Informando quem é Vice-lider, Lider.. Se tivesse como aparecer o level de cada membro, Vice - lider e do Lider, seria mais perfeito ainda ;] Mesmo assim está otimo. -Davi1 ponto
-
Alavanca Para 4 Pessoas
Henrique Moura reagiu a joaohd por uma questão
Tente usar este ( não sei se funciona, fiz às pressas na escola ): function onUse(cid, item, frompos, item2, topos) local pPos = { {x=960, y=1130, z=13, stackpos=253}, {x=962, y=1130, z=13, stackpos=253}, {x=964, y=1130, z=13, stackpos=253}, {x=966, y=1130, z=13, stackpos=253} } local nPos = { {x=949, y=1122, z=13}, {x=958, y=1122, z=13}, {x=967, y=1122, z=13}, {x=975, y=1122, z=13} } if item.itemid == 1945 then for i = 1, #pPos do if getThingfromPos(pPos[i]) ~= LUA_ERROR then if getThingfromPos(pPos[i]).itemid ~= 0 then if getPlayerStorageValue(getThingfromPos(pPos[i]).uid, 70006) <= 0 then for x = 1,#nPos do doTeleportThing(getThingfromPos(pPos[i]).uid, nPos[x]) doSendMagicEffect(pPos[i], 2) doSendMagicEffect(nPos[x], 10) doTransformItem(item.uid,item.itemid+1) end else doPlayerSendCancel(cid,"Someone in your team has already done this quest.") end else doPlayerSendCancel(cid,"This quest need be done with 4 players.") end end end elseif item.itemid == 1946 then doTransformItem(item.uid,item.itemid-1) end return TRUE end flw1 ponto -
Tbm quero um servidor de Poketibia ja procurei e nao achei ;/1 ponto
-
Vitima System
Henrique Moura reagiu a DevilMoon por um tópico no fórum
Ta AGORA AONDE TA AKELE FI D MAE DO SNOOZ? QUANDO EU FAÇO ISSO LUGAR ERRADO , REPORTADO OU OUTRA COISA ELE VEM ALERTANDO CADE ELE PORR@!-1 pontos