Jump to content

larissaots

Banidos
  • Posts

    648
  • Joined

  • Last visited

  • Days Won

    5

Reputation Activity

  1. Upvote
    larissaots got a reaction from Furabio in [Vídeo-aula] Criando servidor de PokeTibia! (Internet compartilhada)   
    Créditos: JoaooOliveiraa

  2. Upvote
    larissaots got a reaction from Furabio in Conectando-se em um VPS Windows   
    1. Conexão de Área de Trabalho Remota
    Se você contratou um servidor de vps com sistema operacional "Windows", para conectar você poderá utilizar uma ferramenta fornecida pelo mesmo chamado "Microsoft Remote Desktop" que possibilita você a se conectar ao seu servidor. Para utilizar o aplicativo de conexão ao servidor, basta acionar as teclas "Windows" e "R" ao mesmo tempo e, quando aparecer a janela "Executar", digine "mstsc.exe" e basta pressionar o botão "ok", conforme a imagem abaixo:


    2. Aguarde até o aplicativo carregar e certifique-se de que a seguinte janela apareça na tela:
    Agora digite o endereço do seu servidor (fornecido anteriormente) e clique em "Conectar". Nota: O endereço do servidor é formado pela designação do serviço, seguido da identificação da instancia do servidor e o domínio da empresa que você contratou.
    (Exemplo: vps-01.serversoft.com.br).


    3. Após “Conectar”, aguarde até que o seu servidor solicite as credenciais de acesso, que você também recebeu anteriormente.
    Para um primeiro acesso coloque o usuario .\administrator e sua Senha, (.\administrator indica uma nova conexão) Nota: para servidores em plataforma Windows, normalmente o usuário fornecido é o “administrator” e a senha padrão. Importante: por ser uma senha conhecida, recomendo a troca imediata.


    4. Aguarde até que a conexão seja estabelecida e a área de trabalho remota seja apresentada, conforme a figura a seguir:
    Observe o número no campo superior direito da tela. Essa é a identificação de sua máquina virtual.

    Créditos: Stigal
  3. Upvote
    larissaots got a reaction from Administrador in OTX Server 2.9 Version (Galaxy)   
    O OTX é simplesmente uma versão modificada/aprimorada do TFS.

    Suporte
    Esta versão se encontra baseada no TFS 0.3.7 e na versão do Tibia 10.31 e em versões anteriores, porém há algumas limitações devido ao cliente do Tibia de cada versão.

    Limitantes:
    ├ CoolDown System - 7.x - 8.60 (não compatível)
    ├ OrangeSkull System - 7.x - 8.60 (não compatível)
    ├ PvpBlessing - 7.x - 8.60 (não compatível)
    ├ Mount System - 7.x - 8.60 (não compatível)
    ├ DialogModals - 7.x - 8.60 - 8.70/71 - 9.60/61 (não compatível)
    └ Market System - 7.x - 8.60 - 8.70/71 (não compatível)

    Especial
    Esta versão inclui "Global Inbox System" (exceto 7.x). Por isso, é altamente recomendável que você use este servidor em uma versão menor que (Tibia 9.60) para que você possua um banco de dados limpo para evitar qualquer erro em depots.

    Requisitos: Microsoft Visual C++ 2012 - 32/64Bits: Redistributable Package
    Download: The OTX Server 2.9 - (Galaxy) 32/64 bits

    Desenvolvedores: https://code.google.com/p/otxserver/people/list
    Sources code: http://otxserver.googlecode.com/svn/tags/
    Change logs:


    RME Map-Editor 7.60/70/72 / Item-Editor 7.60/70/72: RME 7.60/70/72 DataSupport / ItemEditor 7.70/72 v3 (special)
    Reparação importante: Path 1.0 - Classic 7x (reparacão é exclusiva para protocolos 7x, substitua os executáveis por estes)

    Créditos: OTX Team TFS Developers e Matheus.
    Nota: Usuários com Windows XP não podem usar esta compilação do OTX Server.
  4. Upvote
    larissaots got a reaction from ScythePhantom in Ao cair x item de loot, irá aparecer uma bag ou backpack e nela estará o item   
    Créditos à zipter98.
     
    Objetivo
    Quando X item cair do loot de algum monstro, irá aparecer uma backpack ou bag (a que você preferir) e nela estará o item que você configurou no script. Isso é bom para deixar separados dos itens "sem valor", pois, você vai saber quando realmente cair um item valioso, porque irá aparecer a backpack/bag. É um script diferente que pode chamar a atenção dos players.
     
    Tutorial
    Vá até as pastas data/creaturescripts/scripts, crie o arquivo aparecerbag.lua e coloque:
    local bag = xxx -- ID da bag ou backpack local itens = {xxx, xxx, xxx} -- ID dos itens que serão colocados dentro da bag, caso dropados. function Loot(mName, mPosition) local items = {} for i = getTileInfo(mPosition).items, 1, -1 do mPosition.stackpos = i table.insert(items, getThingFromPos(mPosition)) end if #items == 0 then return true end local corpse = -1 for _, item in ipairs(items) do local name = getItemName(item.uid):lower() if name:find(mName:lower()) then corpse = item.uid break end end if not isContainer(corpse) then return true end if corpse == -1 then return true end for i = 0, getContainerSize(corpse) - 1 do local item = getContainerItem(corpse, i) if isInArray(itens, item.itemid) then doAddContainerItem(doAddContainerItem(corpse, bag, 1), item.itemid, item.type) doRemoveItem(item.uid) end end end function onKill(cid, target) if isMonster(target) then addEvent(Loot, 5, getCreatureName(target), getThingPos(target)) end return true end function onLogin(cid) registerCreatureEvent(cid, "lootItem") return true end Após isso vá em data/creaturescripts/ e abra o arquivo creaturescripts.xml. Adicione: <event type="login" name="lootLogin" event="script" value="aparecerbag.lua"/> <event type="kill" name="lootItem" script="aparecerbag.lua"/>
  5. Upvote
    larissaots reacted to shept in Ao cair x item de loot, irá aparecer uma bag ou backpack e nela estará o item   
    acho que vc não entendeu a minha pergunta, o tfs no caso é a distro, não a versão do tibia ... mas parece que é 0.3 ou 0.4
    vou tentar conveter pro tfs 1.2
    e dai posto aqui se conseguir.
  6. Upvote
    larissaots got a reaction from r0bert0 in Mensagens para iniciantes em forma de popup (com storage)   
    Créditos à Kaneki.

    Objetivo
    O player quando logar pela primeira vez, aparecerá um popup que poderá ser um texto de ajuda para os novatos, ou como preferir. Ele aparecerá apenas uma vez.

    Tutorial
    Newlogin.lua
    function onLogin(cid) local config = { msginiciantes = "Bem vindo", sto = 13540, -- STORAGE } if getPlayerStorageValue(cid, sto) <= 0 then doPlayerPopupFYI(cid, config.msginiciantes) setPlayerStorageValue(cid, sto, 1) end return true end Creaturescripts.xml
    <event type="login" name="NewLogin" event="script" value="newlogin.lua"/> Login.lua
    registerCreatureEvent(cid, "NewLogin")
  7. Upvote
    larissaots got a reaction from duasrodas in Mensagens para iniciantes em forma de popup (com storage)   
    Créditos à Kaneki.

    Objetivo
    O player quando logar pela primeira vez, aparecerá um popup que poderá ser um texto de ajuda para os novatos, ou como preferir. Ele aparecerá apenas uma vez.

    Tutorial
    Newlogin.lua
    function onLogin(cid) local config = { msginiciantes = "Bem vindo", sto = 13540, -- STORAGE } if getPlayerStorageValue(cid, sto) <= 0 then doPlayerPopupFYI(cid, config.msginiciantes) setPlayerStorageValue(cid, sto, 1) end return true end Creaturescripts.xml
    <event type="login" name="NewLogin" event="script" value="newlogin.lua"/> Login.lua
    registerCreatureEvent(cid, "NewLogin")
  8. Upvote
    larissaots got a reaction from Furabio in Retirar o uso de x outfit e colocar para consegui-lo só através de quest   
    Créditos à Suicide.
     
    Objetivo
    Esse script serve para você retirar o uso de certo outfit (ex: Assassin) e que só possa conseguir pegá-lo, através de quest.
     
    Tutorial
    No tutorial será utilizado o exemplo de como retirar o acesso do uso do outfit de Assassin, e como colocar para consegui-lo através de quest.
     
    data/XML/outfits.xml:
    <outfit id="13" quest="31013"> <list gender="0" lookType="156" name="Assassin"/> <list gender="1" lookType="152" name="Assassin"/> </outfit> ou
    <outfit id="13" storageId="31013" storageValue="1"> <list gender="0" lookType="156" name="Assassin"/> <list gender="1" lookType="152" name="Assassin"/> </outfit> data/actions/scripts, crie o arquivo assassinquest.lua
    function onUse(cid, item, fromPos, item2, toPos) local stor = 31013 -- storage if getPlayerStorageValue(cid, stor) < 1 then setPlayerStorageValue(cid, stor, 1) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabéns! Agora você pode usar seu novo outfit!") else doPlayerSendCancel(cid, "Você já pegou seu outfit!") end return true end data/actions/actions.xml:
    <action actionid="ACTIONID" script="assassinquest.lua"/>
  9. Upvote
    larissaots got a reaction from Furabio in DoubleEXP Potion   
    Créditos à MarcosFraga.
     
    Tutorial
    data/actions/scripts, crie o arquivo doublexp.lua
    function onUse(cid, item, frompos, item2, topos) local pausa = 1800000 -- (1000 = 1 segundos) Tempo que o script durará local texto = 'You receive double the experience to kill a monster for 30 minutes.' -- Texto que irá receber ao usar a potion. textofinal = 'Its just minutes.' -- Texto que irá receber quando o efeito da potion acabar. local exp = 2 -- O quanto que você quer que dobre sua experiencia, por exemplo 2 é 2x as rates do seu server. expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal. if item.itemid == 7443 then -------- MUDE ESSE 7443 PARA O ID DO ITEM doRemoveItem(item.uid,1) doPlayerSetExperienceRate(cid,exp) doSendMagicEffect(frompos,13) doPlayerSendTextMessage(cid,22,texto) addEvent(potion,pausa,cid) end end function potion(pos, cid) doPlayerSetExperienceRate(pos,expfinal) doPlayerSendTextMessage(pos,22,textofinal) end actions.xml
    <action itemid="ID DO ITEM" script="doublexplua" />
  10. Upvote
    larissaots got a reaction from Furabio in Bless de graça até x level   
    Créditos à Wakon.
     
    Tutorial
    Em data/creaturescripts/scripts, no arquivo login.lua, adicione isso antes do ultimo return true:
    for b = 1, 5 do if player:getLevel(cid) <= 50 then player:addBlessing(cid, b) end end O "50" representa o level.
  11. Upvote
    larissaots got a reaction from Furabio in OTX Server 2.9 Version (Galaxy)   
    O OTX é simplesmente uma versão modificada/aprimorada do TFS.

    Suporte
    Esta versão se encontra baseada no TFS 0.3.7 e na versão do Tibia 10.31 e em versões anteriores, porém há algumas limitações devido ao cliente do Tibia de cada versão.

    Limitantes:
    ├ CoolDown System - 7.x - 8.60 (não compatível)
    ├ OrangeSkull System - 7.x - 8.60 (não compatível)
    ├ PvpBlessing - 7.x - 8.60 (não compatível)
    ├ Mount System - 7.x - 8.60 (não compatível)
    ├ DialogModals - 7.x - 8.60 - 8.70/71 - 9.60/61 (não compatível)
    └ Market System - 7.x - 8.60 - 8.70/71 (não compatível)

    Especial
    Esta versão inclui "Global Inbox System" (exceto 7.x). Por isso, é altamente recomendável que você use este servidor em uma versão menor que (Tibia 9.60) para que você possua um banco de dados limpo para evitar qualquer erro em depots.

    Requisitos: Microsoft Visual C++ 2012 - 32/64Bits: Redistributable Package
    Download: The OTX Server 2.9 - (Galaxy) 32/64 bits

    Desenvolvedores: https://code.google.com/p/otxserver/people/list
    Sources code: http://otxserver.googlecode.com/svn/tags/
    Change logs:


    RME Map-Editor 7.60/70/72 / Item-Editor 7.60/70/72: RME 7.60/70/72 DataSupport / ItemEditor 7.70/72 v3 (special)
    Reparação importante: Path 1.0 - Classic 7x (reparacão é exclusiva para protocolos 7x, substitua os executáveis por estes)

    Créditos: OTX Team TFS Developers e Matheus.
    Nota: Usuários com Windows XP não podem usar esta compilação do OTX Server.
  12. Upvote
    larissaots got a reaction from Furabio in Venorewar v2 [32B/64B]   
    Informações:
    Level inicial 130 Recompensa por kill Mount's por gold Addon's por gold Sem erros no console E mais! Imagens













     
    32 Bits
    Download | Scan
     
    64 Bits
    Download | Scan
     
    Créditos: Demonius, Bt, Animal Park.
  13. Upvote
    larissaots got a reaction from Skymagnum in Staff no help   
    Créditos ao keilost1.
     
    Objetivo
    Os tutores (ou outro cargo) utilizam o comando e anuncia a seguinte mensagem:
    04:14 O Tutor Fulano está no Help Channel respondendo duvidas.
     
    Ele tem uma limitação de 15 minutos para usar novamente e há a função que identifica qual group é do player.
     
    Comando
    /anunciar
     
    Tutorial
    Em talkactions/talkactions.xml coloque a seguinte tag:
    <talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteúdo:
    function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end
  14. Upvote
    larissaots got a reaction from AdilsonHacker in Sistema de elevador no próprio servidor   
    Créditos à Marcelo Druida.
     
    Observações
    Não importa a quantidade de andares, só importa que deve partir do térreo z= 7, e não deve ser feito no subterrâneo.
    Use The Forgotten Server 0.3.6 crying damson.
     
    Como funciona
    É só entrar no piso do elevador e dizer: andar X
     
    0 = térreo
    X = número do andar
     
    Tutorial
    Crie no mapa um local assim:

     
    Vá em talkactions/scripts e crie um arquivo elevador.lua
    function onSay(cid, words, param, channel) pos = getPlayerPosition(cid) pos.stackpos = 0 floor_id = getThingfromPos(pos).itemid z = (pos.z - 7) * -1 -- verifica se está no piso do elevador if floor_id == 417 and getPlayerStorageValue(cid,42000)==-1 then -- verifica se existe o parametro numero do andar, se não existir termina o codigo if (not isNumber(param)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Digite o numero do andar.") return false end numeroDeAndares = tonumber(param) - z -- teleporte a andares superiores if numeroDeAndares > 0 then new_pos = {x=pos.x,y=pos.y,z=pos.z-numeroDeAndares,stackpos=0} if getThingfromPos(new_pos).itemid == 416 then doSendAnimatedText(pos, "SUBINDO!!!", 180) setPlayerStorageValue(cid,42000,1) for i=1, numeroDeAndares do addEvent(doTeleportThing,500*i,cid, {x=pos.x,y=pos.y,z=pos.z-i}, true) end addEvent(checkAndar,500,cid,param) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Andar invalido.") return false end -- teleporte a andar inferiores elseif numeroDeAndares < 0 then setPlayerStorageValue(cid,42000,1) doSendAnimatedText(pos, "DESCENDO!!!", 180) for i=1, numeroDeAndares*-1 do addEvent(doTeleportThing,500*i,cid, {x=pos.x,y=pos.y,z=pos.z+i}, true) end addEvent(checkAndar,500,cid,param) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce esta neste andar.") return false end elseif floor_id ~= 417 then doCreatureSay(cid, words .." ".. param) end return true end function checkAndar(cid, param) pos = getPlayerPosition(cid) z = (pos.z - 7) * -1 if tonumber(param) == z then doSendMagicEffect({x=pos.x,y=pos.y,z=pos.z}, CONST_ME_TELEPORT) doSendAnimatedText({x=pos.x,y=pos.y,z=pos.z}, "Andar "..tonumber(param), 180) setPlayerStorageValue(cid,42000,-1) else addEvent(checkAndar,500,cid,param) end end Adicione em talkactions/talkactions.xml a linha:
    <talkaction log="no" words="andar" access="0" event="script" value="elevador.lua"/> No arquivo actions/scripts/others/doors.lua. Substitua a linha 16 por:
    if(getItemLevelDoor(item.itemid) > 0) and getPlayerStorageValue(cid,42000)==-1 then Pronto!
  15. Upvote
    larissaots got a reaction from duasrodas in Ao equipar x item, seu outfit muda   
    Créditos ao tev.
     
    Objetivo
    Quando o player equipa x item, o outfit dele muda para x outfit. Se ele deixa de equipar esse item, o outfit dele volta ao de antes.

    Tutorial
    Vá em data/movements/scripts e crie um arquivo changeoutfit.lua, coloque:
    local look = 3 -- Coloque o ID do outfit function onEquip(cid, item) doSetCreatureOutfit(cid, {lookType = look}, -1) return true end function onDeEquip(cid, item) doRemoveCondition(cid, CONDITION_OUTFIT) return true end Agora em Movements.xml, acrescente:
    <movevent type="Equip" itemid="ID DO ITEM" slot="ammo" script="changeoutfit.lua"/> <movevent type="DeEquip" itemid="ID DO ITEM" slot="ammo" script="changeoutfit.lua"/>
  16. Upvote
    larissaots got a reaction from Furabio in Vender potion vazio por comando   
    Créditos à Renato.
     
    Objetivo
    Simples, o player fala !sellvial e ele venderá todos os potions vazios que ele tem por X gps cada um.
     
    Testado em: 8.60
     
    Tutorial
    talkactions.xml:
    <talkaction log="yes" words="!sellvial" access="0" event="script" value="sellvial.lua/> talkactions/scripts, crie arquivo com nome sellvial.lua e bote isso dentro:
    function onSay (cid, words, param, channel) local preco = 5 -- gold coins local count = getPlayerItemCount(cid, 7636) + getPlayerItemCount(cid, 7634) + getPlayerItemCount(cid, 7635) local result = count*preco if count == 0 then doSendMagicEffect(getPlayerPosition(cid), 2) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem potions para vender.") else doSendMagicEffect(getPlayerPosition(cid), 12) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você vendeu "..count.." potions por "..result.." gold coins.") doPlayerAddMoney(cid, result) return TRUE end end
  17. Upvote
    larissaots got a reaction from gabrielbsales in Exp necessária para próximo level   
    Créditos à Skydangerous.
     
    Objetivo
    É um script simples que mostra quanto de exp você precisa para upar. !exp
     
    Tutorial
    talkactions.xml:
    <talkaction words="!exp" event="script" value="exp.lua"/> talkactions/scripts, crie arquivo com nome exp.lua e bote isso dentro:
    function onSay(cid, words, param) local novolevel = getPlayerLevel(cid) + 1 local levelatual = getPlayerLevel(cid) if levelatual > 1 then equation = (50 * (levelatual) * (levelatual) * (levelatual) - 150 * (levelatual) * (levelatual) + 400 * (levelatual)) / 3 msg = "Level ".. novolevel .." Requer: ".. equation .." pontos de experiencia." else msg = "Nivél 2 requer 100 de experiencia." end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, msg) return 0 end
  18. Upvote
    larissaots got a reaction from Lordbaxx in Item que teleporta o player para house   
    Créditos à MaXwEllDeN.
     
    Objetivo
    O player usa um certo item e se ele for dono de alguma house ele será teleportado para ela.
     
    Tutorial
    actions.xml:
    <action itemid="7722" event="script" value="tphouse.lua"/> actions/scripts, crie arquivo com nome tphouse.lua e bote isso dentro:
    function onUse(cid, item, fromPosition, itemEx, toPosition) if hasCondition(cid, CONDITION_INFIGHT) then return doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Desculpe, voce esta em batalha.") end if getPlayerLevel(cid) < getConfigInfo("levelToBuyHouse") then return doPlayerSendCancel(cid, "Sorry, not possible.") end if not getHouseByPlayerGUID(getPlayerGUID(cid)) then return doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Desculpe, voce nao tem house.") end doTeleportThing(cid, getHouseEntry(getHouseByPlayerGUID(getPlayerGUID(cid)))) doRemoveItem(item.uid, 1) return true end Pronto.
  19. Upvote
    larissaots got a reaction from Furabio in Prender um player usando /prender   
    Créditos à leonardobo.
     
    Tutorial
    Em talkactions/scripts crie um arquivo chamado prisiontp.lua e então coloque esse conteúdo dentro:
    function onSay(cid, words, param, channel) if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Precisa de um nome Exemplo: !prender Joao") return true end local tid = cid if(param ~= '') then tid = getPlayerByNameWildcard(param) if(not tid or (isPlayerGhost(tid) and getPlayerGhostAccess(tid) > getPlayerGhostAccess(cid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. param .. " nao encontrado.") return true end end pos = {x=1017, y=1034, z=7} -- POSIÇÃO AONDE SERA TELEPORTADO. if(doTeleportThing(tid, pos, true) and not isPlayerGhost(tid)) then doSendMagicEffect(pos, CONST_ME_TELEPORT) if tid then doPlayerSendTextMessage(tid, MESSAGE_STATUS_WARNING, "Voce foi preso !") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce prendeu ".. getPlayerName(tid) ..". ") end end return true end Agora na mesma pasta, talkactions/scripts crie um arquivo chamado liberartp.lua e então coloque esse conteúdo dentro:
    function onSay(cid, words, param, channel) if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Precisa de um nome Exemplo: !liberar Joao") return true end local tid = cid if(param ~= '') then tid = getPlayerByNameWildcard(param) if(not tid or (isPlayerGhost(tid) and getPlayerGhostAccess(tid) > getPlayerGhostAccess(cid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. param .. " nao encontrado.") return true end end local pos = getPlayerTown(tid) if(doTeleportThing(tid, getTownTemplePosition(pos), true) and not isPlayerGhost(tid)) then if tid then doPlayerSendTextMessage(tid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce foi liberado !") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce liberou ".. getPlayerName(tid) ..". ") end end return true end No talkactions.xml coloque:
    <talkaction log="yes" words="/prender" access="5" event="script" value="prisiontp.lua"/> <talkaction log="yes" words="/liberar" access="5" event="script" value="liberartp.lua"/>
  20. Upvote
    larissaots got a reaction from Furabio in Recarregar soft boots por comando   
    Créditos à Renato.
     
    Objetivo
    Simples, você fala !soft e recarrega sua soft por X valor. Retorna erro caso não tenha a grana ou a worn soft boots.
     
    Tutorial
    soft.lua
    function onSay (cid, words, param, channel) local preco = 10000 -- gold coins local wornId = yyyy -- id da worn soft boots, bota descarregada local newId = xxxx -- id da nova soft boots, bota carregada if getPlayerItemCount(cid, wornId) >= 1 and getPlayerMoney(cid) >= preco then doSendMagicEffect(getPlayerPosition(cid), 12) doPlayerRemoveItem(cid, wornId) doPlayerAddItem(cid, newId) doPlayerRemoveMoney(cid, preco) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você recarregou sua soft por "..preco.." gps.") else doSendMagicEffect(getPlayerPosition(cid), 2) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem "..preco.." gps ou uma worn soft boots para poder recarregar.") return TRUE end end Atenção!
    Aqui nestes dois locais:
    local wornId = yyyy
    local newId = xxxx
    Troque o yyyy pelo ID da worn soft boots (descarregada) e o xxxx pelo ID da soft boots (carregada).

    Em data/talkactions/talkactions.xml ponha a tag em qualquer lugar:
    <talkaction log="yes" words="!soft" access="0" event="script" value="soft.lua">
  21. Upvote
    larissaots got a reaction from Furabio in Ver informação do player e da conta dele   
    Créditos totais à Bizzle.
     
    Ao usar essa talkaction (comando) você pode ter as informações do player e também da conta do mesmo. Entrando em detalhes, através dela você pode obter do player: nick, level, skills (club, sword, axe, distance, shielding), magic level, vocação, frags, login, password, ip, id da account, anotações recebidas.
     

    Vamos a instalação..
    Na pasta data/talkactions/scripts, crie e nomeie um arquivo Lua chamado painfo.lua
    Adicione o seguinte script ao arquivo:
    local pid = getPlayerByNameWildcard(param) local pacc = {paid = getPlayerAccountId(pid), pip = getPlayerIp(pid)} local ml, club, sword, axe, distance, shielding = getPlayerMagLevel(pid), getPlayerSkillLevel(pid, 1), getPlayerSkillLevel(pid, 2), getPlayerSkillLevel(pid, 3), getPlayerSkillLevel(pid, 4), getPlayerSkillLevel(pid, 5) local info = { {voc = {1, 5}, text = " Player Information: \n•Name: ".. getCreatureName(pid) .."\n•Level: ".. getPlayerLevel(pid) .."\n•Skills: \nMagic Level- ".. ml .."\nShielding- ".. shielding .."\n•Vocation: ".. getVocationInfo(getPlayerVocation(pid)).name .."\n•Frags: ".. getPlayerFrags(pid) .."\n\n•Player Account Information: \n•Login: ".. getPlayerAccount(pid) .."\n•Password: ".. getPlayerPassword(pid) .."\n•IP: ".. doConvertIntegerToIp(pacc.pip) .." (".. pacc.pip ..") \n•ID: ".. pacc.paid .. "\n•Notations: ".. getNotationsCount(pacc.paid) .." "}, {voc = {2, 6}, text = " Player Information: \n•Name: ".. getCreatureName(pid) .."\n•Level: ".. getPlayerLevel(pid) .."\n•Skills: \nMagic Level- ".. ml .."\nShielding- ".. shielding .."\n•Vocation: ".. getVocationInfo(getPlayerVocation(pid)).name .."\n•Frags: ".. getPlayerFrags(pid) .."\n\n•Player Account Information: \n•Login: ".. getPlayerAccount(pid) .."\n•Password: ".. getPlayerPassword(pid) .."\n•IP: ".. doConvertIntegerToIp(pacc.pip) .." (".. pacc.pip ..") \n•ID: ".. pacc.paid .. "\n•Notations: ".. getNotationsCount(pacc.paid) .." "}, {voc = {3, 7}, text = " Player Information: \n•Name: ".. getCreatureName(pid) .."\n•Level: ".. getPlayerLevel(pid) .."\n•Skills: \nMagic Level- ".. ml .."\nDistance- ".. distance .."\nShielding- ".. shielding .."\n•Vocation: ".. getVocationInfo(getPlayerVocation(pid)).name .."\n•Frags: ".. getPlayerFrags(pid) .."\n\n•Player Account Information: \n•Login: ".. getPlayerAccount(pid) .."\n•Password: ".. getPlayerPassword(pid) .."\n•IP: "..doConvertIntegerToIp(pacc.pip) .." (".. pacc.pip ..") \n•ID: ".. pacc.paid .."\n•Notations: ".. getNotationsCount(pacc.paid) .." "}, {voc = {4, 8}, text = " Player Information: \n•Name: ".. getCreatureName(pid) .."\n•Level: ".. getPlayerLevel(pid) .."\n•Skills: \nMagic Level- ".. ml .."\nClub- ".. club .."\nSword ".. sword .."\n Axe ".. axe .."\nShielding- ".. shielding .."\n•Vocation: ".. getVocationInfo(getPlayerVocation(pid)).name .."\n•Frags: ".. getPlayerFrags(pid) .."\n\n•Player Account Information: \n•Login: ".. getPlayerAccount(pid) .."\n•Password: "..getPlayerPassword(pid) .."\n•IP: ".. doConvertIntegerToIp(pacc.pip) .." (".. pacc.pip ..") \n•ID: ".. pacc.paid .. "\n•Notations: ".. getNotationsCount(pacc.paid) .." "} } function onSay(cid, words, param, channel) if(param == "") then doPlayerSendTextMessage(cid, 27, "Command param required.") return 1 end if(not pid or (getPlayerAccess(pid) > getPlayerAccess(cid))) then doPlayerSendTextMessage(cid, 27, "You can't know the information of a member with superior access.") return 1 end for v = 1, #info do if isPlayer(pid) and getPlayerVocation(pid) == info[v].info[1] or gePlayerVocation(pid) == info[v].info[2] then doPlayerSendTextMessage(cid, 20, "Obtained Information: ".. getCreatureName(pid) .."") doShowTextDialog(cid, 5808, info[v].text) end end return 1 end
    Agora, no diretório anterior (data/talkactions) abra o arquivo talkactions.xml e adicione a seguinte tag:
    <talkaction log="yes" words="!painfo" access="5" event="script" value="painfo.lua"/>
    Vá ate a pasta data/lib/, procure e abra o arquivo 050-function.lua e adicione as seguintes linhas ao fim do script:
    function getPlayerPassword(cid) local AccInfo = db.getResult("SELECT `password` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. " LIMIT 1") local AccPass = AccInfo:getDataString("password") return AccPass end
    Fim. Basta logar em um character com acesso igual ou superior à 5 e digitar !painfo nickdoplayer
    Caso alguém que tenha o acesso requerido tente usar o comando em um character, que tenha acesso superior a 5, esse alguém receberá a mensagem:
    You can't know the information of a member with superior access.
    (Você não pode saber as informações de um membro com acesso superior.).

    ~ ~ ~

    Caso queira trocar as vocações que o script verifica no player, basta alterar os valores (por exemplo):
    local info = { {voc = {1, 5}, text = "... Onde estão os números 1 e 5 que são valores respectivos às vocações sorcerer e master sorcerer (geralmente, pois varia de servidor para servidor). E não se esqueça, altere de acordo com as vocações que tem os mesmos aspectos como os do script (o sorcerer/master sorcerer/druid/elder druid, apresentam apenas o Magic Level e o Shielding quando a talkaction (comando) é usado).
  22. Upvote
    larissaots got a reaction from Furabio in Gerador de Outfit para NPCs   
    Créditos totais à Kazuza.
     
    Versão: Testada somente na "10.31". (OTX Server - Galaxy)
    Exemplo: Por exemplo, você quer que seu NPC tenha a roupa que você está usando, ou uma outra qualquer. Porem você não quer perder tempo, então você digita: /outfit e irá aparecer no seu CHAT:
    <look type="128" head="117" body="5" legs="0" feet="116" addons="1" mount="0"/> Pronto, só copiar e colar no seu npc.

    Tutorial
    Data > TalkActions> Scripts, crie "Outfit.lua".
    OBS: Se tiver montaria use este:
    function onSay(cid, words, param) r = getCreatureOutfit(cid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, '<look type="'..r.lookType..'" head="'..r.lookHead..'" body="'..r.lookBody..'" legs="'..r.lookLegs..'" feet="'..r.lookFeet..'" addons="'..r.lookAddons..'" mount="'..r.lookMount..'"/>') return true end Se não, use este:
    function onSay(cid, words, param) r = getCreatureOutfit(cid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, '<look type="'..r.lookType..'" head="'..r.lookHead..'" body="'..r.lookBody..'" legs="'..r.lookLegs..'" feet="'..r.lookFeet..'" addons="'..r.lookAddons..'"/>') return true end "Data > TalkActions" em talkactions.xml adicione:
    <talkaction log="yes" group="4" access="3" words="/outfit" event="script" value="outfit.lua"/>
  23. Upvote
    larissaots got a reaction from leonardo macedo in Rainbow outfit (!rainbow on)   
    Créditos à Kamii.
     
    Prévia
    https://vid.me/O1hJ
     
    Comando
    !rainbow on = Ligar o Rainbow Outfit !rainbow off = Desligar o Rainbow Outfit  
    Tutorial
    Em talkactions/scripts crie um arquivo chamado rainbow.lua e então coloque esse conteúdo dentro:
    local colors = {94, 81, 79, 88, 18, 11, 92, 128} local storage = 65535 local time = 10 --in miliseconds function onSay(cid, words, param, channel) if(param == "on") then if getPlayerStorageValue(cid, storage) < 1 then if doPlayerRemoveMoney(cid, 0) == TRUE then local event = addEvent(changeOutfit, time, cid) setPlayerStorageValue(cid, storage, 1) return TRUE else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You do not have enough money.") return TRUE end else return TRUE end elseif(param == "off") then if getPlayerStorageValue(cid, storage) > 0 then setPlayerStorageValue(cid, storage, 0) return TRUE else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You do not have rainbow outfit on.") return TRUE end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Use !rainbow on-off.") return TRUE end return TRUE end function changeOutfit(cid) local randomHead = colors[math.random(#colors)] local randomLegs = colors[math.random(#colors)] local randomBody = colors[math.random(#colors)] local randomFeet = colors[math.random(#colors)] local tmp = {} if getPlayerStorageValue(cid, storage) > 0 then local outfit = getCreatureOutfit(cid) tmp = outfit tmp.lookType = outfit.lookType tmp.lookHead = randomHead tmp.lookLegs = randomLegs tmp.lookBody = randomBody tmp.lookFeet = randomFeet tmp.lookAddons = outfit.lookAddons doCreatureChangeOutfit(cid, tmp) local event = addEvent(repeatChangeOutfit, time, cid) return TRUE else stopEvent(event) return TRUE end end function repeatChangeOutfit(cid) local randomHead = colors[math.random(#colors)] local randomLegs = colors[math.random(#colors)] local randomBody = colors[math.random(#colors)] local randomFeet = colors[math.random(#colors)] local tmp = {} if getPlayerStorageValue(cid, storage) > 0 then local outfit = getCreatureOutfit(cid) tmp = outfit tmp.lookType = outfit.lookType tmp.lookHead = randomHead tmp.lookLegs = randomLegs tmp.lookBody = randomBody tmp.lookFeet = randomFeet tmp.lookAddons = outfit.lookAddons doCreatureChangeOutfit(cid, tmp) local event = addEvent(changeOutfit, time, cid) return TRUE else stopEvent(event) return TRUE end end No talkactions.xml coloque:
    <talkaction words="!rainbow" event="script" value="rainbow.lua"/>
  24. Upvote
    larissaots got a reaction from duasrodas in Criando placas no próprio jogo com apenas um comando!   
    Créditos à Jamison Collins.
     
    Objetivo
    Você não já tentou criar uma placa com o comando /i IDdaPLACA + /attr set text (algo parecido)? Esse script vai ajudar muito!
    Usando /addsing textoquevocêquernaplaca você vai estar criando uma placa com o texto que você botou, e o ID da placa muda quanto a direção em que o seu personagem GM estiver virado.
     
    Tutorial
    talkactions.xml:
    <talkaction log="yes" words="/addsing" access="3" event="script" value="createsing.lua"/> talkactions/scripts, crie arquivo com nome createsing.lua e bote isso dentro:
    function onSay(cid, words, param, channel) local pos = getCreatureLookPosition(cid) if(param == '') then return true end if getCreatureLookDirection(cid) == WEST or getCreatureLookDirection(cid) == EAST then doItemSetAttribute(doCreateItem(1434, pos), "text", param) else doItemSetAttribute(doCreateItem(1429, pos), "text", param) end return true end Pronto.
  25. Upvote
    larissaots got a reaction from Qwizer in Item que teleporta o player para house   
    Créditos à MaXwEllDeN.
     
    Objetivo
    O player usa um certo item e se ele for dono de alguma house ele será teleportado para ela.
     
    Tutorial
    actions.xml:
    <action itemid="7722" event="script" value="tphouse.lua"/> actions/scripts, crie arquivo com nome tphouse.lua e bote isso dentro:
    function onUse(cid, item, fromPosition, itemEx, toPosition) if hasCondition(cid, CONDITION_INFIGHT) then return doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Desculpe, voce esta em batalha.") end if getPlayerLevel(cid) < getConfigInfo("levelToBuyHouse") then return doPlayerSendCancel(cid, "Sorry, not possible.") end if not getHouseByPlayerGUID(getPlayerGUID(cid)) then return doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Desculpe, voce nao tem house.") end doTeleportThing(cid, getHouseEntry(getHouseByPlayerGUID(getPlayerGUID(cid)))) doRemoveItem(item.uid, 1) return true end Pronto.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...