Ir para conteúdo

Roksas

Herói
  • Total de itens

    3611
  • Registro em

  • Última visita

  • Dias Ganhos

    60

Histórico de Reputação

  1. Upvote
    Roksas recebeu reputação de JonatasLucasf em Invasão Específica!   
    Iaae galera como vão? Hoje venho trazer para vocês um sistema de Invasão criado por mim.
     
    Ele funciona da seguinte maneira:
     

    /invasao Monster, Amount, Position
     
    Exemplo:
     

    /invasao Dragon, 3, 1000, 1000, 7
     
    O nome do monstro e depois da vírgula a quantidade, legal né?
    Vamos instalar?
     
    Entre na pasta data/talkactions/scripts, crie um arquivo chamado newraid.lua e adicione dentro:
     
     
     
     
    Nesta parte:
    Muito bem, agora siga para o arquivo talkactions.xml e adicione a tag:
     

    <talkaction log="yes" words="/invasao" event="script" value="newraid.lua"/>
     



     
    Façam um bom proveito e uso
     
     
     
  2. Upvote
    Roksas recebeu reputação de rayzinhoxd em Classic Premium v2   
    » CLASSIC PREMIUM V2 ! «


     
     
     
    Versão Testada: TFS 0.3.6: 8.60
     
    Opa galera, esse é mais um tópico meu, agora de Estagiário :))
    Neste tópico irei apresentar-lhes o Classic Premium v2, que usei algumas coisas de base do Perfect System (by Vodkart), agora contém:
     

    • GOD pode checar quantos Premium Days o player tem, pelo comando /checkdays NOMEDOPLAYER • GOD também pode adicionar Premium Days, pelo comando /addpremium NOME, QUANTIDADE • Temos também o comando /removedays NOME, QUANTIDADE que o GOD poderá fazer. • Além disso, temos mais duas novidades, os comandos: !changender e !removeskull, ambos removem 5 Premium Days do player!
     

     
    » Comandos de GOD
     
    Vamos lá, primeiramente vá na pasta data/talkactions, crie um arquivo chamadopremiumtalk.lua e adicione isso dentro:
     

    function onSay(cid, words, param) local player = getPlayerByName(param) local t = string.explode(param, ",") if words == "/checkdays" then if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.") return true end if not isPlayer(player) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return true end return doPlayerPopupFYI(cid, "Player checked have "..getPlayerPremiumDays(player).." days of Premium Account!") end if words == "/addpremium" then local t = string.explode(param, ",") local player = getPlayerByNameWildcard(t[1]) if not tonumber(t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end if(not player)then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return true end doPlayerAddPremiumDays(player, tonumber(t[2])) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You has been added "..tonumber(t[2]).." days of Premium Account to the player! ") doRemoveCreature(player) end if words == "/removedays" then local t = string.explode(param, ",") local player = getPlayerByNameWildcard(t[1]) if not tonumber(t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end if(not player)then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return true end doPlayerRemovePremiumDays(player, tonumber(t[2])) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You has been removed "..tonumber(t[2]).." Premium Account Days of the player!") end return true end
     
    E no arquivo talkactions.xml adicione a tag que vêm a seguir:

    <talkaction words="/addpremium;/removedays;/checkdays" access="4" event="script" value="premiumtalk.lua"/>
     
    » Premium Door e Premium Scroll
     
    Muito bem, agora na pasta data/actions/scripts, crie um arquivo chamado scroll.lua e adicione isso dentro:
     

    local days_gain = 30 -- Dias que ganham function onUse (cid,item,frompos,item2,topos) if not doRemoveItem(item.uid) then return true end doPlayerAddPremiumDays(cid, days_gain) doSendMagicEffect(getCreaturePosition(cid), 14) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você acaba de ganhar 30 dias de Premium Account, terá áreas exclusivas e 35% a mais de EXP como benefício!") return true end
     
    Crie outro arquivo, mas agora com o nome de premiumdoor.lua e ponha isso dentro:
     

    function onUse(cid, item, frompos, item2, topos) if not isPremium(cid) then doPlayerSendTextMessage(cid,22,"Você precisa ter Premium Account para passar!") return false end doTransformItem(item.uid, item.itemid + 1) doTeleportThing(cid, frompos, true) return true end
     
    Abra o arquivo actions.xml e adicione essas tags:
     

    <action itemid="9004" event="script" value="scroll.lua"/> <action actionid="7779" script="premiumdoor.lua"/>
     
    OBS: Para fazer com que a porta seja para Premiums, no seu Map Editor, adicione a seguinte ACTIONID nela: 7779!
     
    » Classic Premium Tile
     
    Em data/movements/scripts, crie um arquivo chamado premiumtile.lua e adicione isso dentro:
     
    function onStepIn(cid, item, position, fromPosition) if not isPremium(cid) then doTeleportThing(cid, fromPosition, true) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você não tem acesso Premium Account!") doSendMagicEffect(getCreaturePosition(cid), 2) return true end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Bem Vindo á Área Premium!") return true end  
    Ea tag no arquivo movements.xml coloque:
     
    <movevent type="StepIn" actionid="19456" event="script" value="premiumtile.lua"/>
     
    Para fazer com que apenas Premiums passe pelo piso, adicione a ACTIONID 19456 pelo seu Map Editor no piso!
     
    » Classic Mods
     
    Na pasta do seu OT, vá na pasta mods, crie um arquivo chamado classic_changender.xml e coloque isso dentro:
     

    <?xml version="1.0" encoding="UTF-8"?> <mod name="ChangeSex Classic" version="1.0" author="Roksas" enabled="yes"> <config name="changender_config"><![CDATA[ config = { costPremiumDays = 5 } ]]></config> <talkaction words="!changender" event="buffer"><![CDATA[ domodlib('changender_config') if(getPlayerSex(cid) >= 2) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao tem sexo para mudar!") return end if(getPlayerPremiumDays(cid) < config.costPremiumDays) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Desculpe, voce nao tem " .. config.costPremiumDays .. " Premium Days necessarios!") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return end if(getPlayerPremiumDays(cid) < 65535) then doPlayerAddPremiumDays(cid, -config.costPremiumDays) end doPlayerSetSex(cid, getPlayerSex(cid) == PLAYERSEX_FEMALE and PLAYERSEX_MALE or PLAYERSEX_FEMALE) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce mudou seu sexo e isso lhe custou " .. config.costPremiumDays .. " days de Premium Account! Relogue para que faca efeito.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_MAGIC_RED) ]]></talkaction> </mod>
     
    E crie outro arquivo, mas com o nome de classic_removeskull.xml e adicione isso:
     

    <?xml version="1.0" encoding="UTF-8"?> <mod name="Classic Remover" version="1.0" author="Roksas" enabled="yes"> <talkaction words="!removeskull" event="script"><![CDATA[ local noRemove = {SKULL_YELLOW} local playerSkull = getPlayerSkullType(cid) if isInArray(noRemove, playerSkull) then doPlayerSendCancel(cid, "Voce nao pode remover esse tipo de skull.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return true elseif playerSkull == SKULL_NONE or getPlayerPremiumDays(cid) < 5 then doPlayerSendCancel(cid, "Voce nao tem skull ou 5 days de Premium Account!") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return true else db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")") doPlayerSendTextMessage(cid, 27, "Seus frags,skull e 5 days de Premium Account foram removidos!") doPlayerRemovePremiumDays (cid,5) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED) doSendAnimatedText(getPlayerPosition(cid), "POFF!", 180) doCreatureSetSkullType(cid,0) doPlayerSetSkullEnd(cid, 0, playerSkull) end return true ]]></talkaction> </mod>
     
    » Classic Premium Rates
     
    Abra a pasta do seu OT, vá em data/creaturescripts/scripts, adicione um arquivo lá chamado premiumrate.lua e coloque isso dentro dele:
     
    function onLogin(cid) local rate = 1.35 local days = getPlayerPremiumDays(cid) if isPremium(cid) then doPlayerSetExperienceRate(cid, rate) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você tem "..((rate - 1)*100).."% de EXP em vantagem, Ainda lhe restam "..days.." dias de Premium!") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Tornesse Premium e tenha "..((rate - 1)*100).."% a mais de EXP!") end return true end
     
     
    Agora abra o arquivo login.lua na mesma pasta, procure por um trecho mais ou menos assim:
     

    registerCreatureEvent(cid, "kill") registerCreatureEvent(cid, "onPrepareDeath") registerCreatureEvent(cid, "PlayerLogout") registerCreatureEvent(cid, "onPrepareDeath")
     
    Ao encontrar, adicione isso no fim ou no começo ou no meio deles:
     

    registerCreatureEvent(cid, "ExpVip")
     
    Muito bem, agora no arquivo creaturescripts.xml adicione essa tag:
     

    <event type="login" name="ExpVip" script="premiumrate.lua"/>
     
    Explicando: Para configurar as rates procure por esse trecho no script:
     

    local rate = 1.35
     
    O número 35, significa a porcentagem. Ou seja, 35% de Exp Rate em vantagem, ajuste como quiser: 20, 50, 60...
     

    Bom galera, isso foi tudo. Espero que tenham gostado da versão v2 do Classic Premium! Aguardo respostas, sugestões e críticas a respeito! Agradeço Vodkart por algumas funções e bases. Encerrarei com algumas ScreenShoots do meu Sistema! Obrigado e BENÇA )
     
    » SCREENSHOOTS
     

     

     

     


  3. Upvote
    Roksas recebeu reputação de Pigot em Retirando Bug Do Rme 8.60   
    Dúvida: Retirando Bug do RME 8.60


     

    • Introdução: Bom, depois de alguns meses voltei ao XTibia, de acordo estava "aposentado" rs.

    Eu sei que há muitos tutoriais deste, de como retirar o bug, mas nenhum funcionou comigo e sempre vi pessoas dizendo que não conseguiram, então resolvi criar este porque comgo o processo foi sucedido!

     

    Chega de conversa, vamos ao que interessa (rimou). =D

       

     

    Primeiramente, abra seu Remeres MapEditor 8.60. Siga estes passos:

     

    File>Preferences>Client Version> Desmarque a caixa "Check file signatures"> Marque Apply e depois>Ok.

     

    Muito bem, agora iremos enteder um pouco este erro: Ele diz que não consegue encontrar os arquivos necessários e quando você clica para encontrar, dá o mesmo erro. Vejamos, então devemos instalar o Client Tibia pelo site do Remeres!

     

    Então, faremos isso. Segue o link de download do Client:

    http://www.remeresma...le=tibia860.exe

     

    Muito bem, após baixar, instalar. Crie uma pasta em seu Desktop chamada "Mapeditor"> Agora vá na pasta do seu Tibia (normalmente se localiza em: Disco Local>Arquivos de Programas>Tibia), agora copie os arquivos "tibia.dat", "tibia.spr" e "tibia.pic". Vá na pasta "Mapeditor" no Desktop e cole-os lá mesmo. Agora abra seu MapEditor RME 8.6! Pronto, use á vontade. (Para quem não deu certo, aperte "Ok" no erro e aparecerá uma caixa para procurar os arquivos, selecione Desktop>E em seguida a pasta Mapeditor. Irá carregá-los e pronto!)

     

     

    Muito obrigado pessoal, espero que dê certo. Fiz com muita dedicação e espero ajudar. Muito obrigado a todos, leiam com atenção e GoGo criar mapas *-*

     

    Créditos> Bom, eu vi este Tutorial em algum lugar, mas esqueci. Mas deu certo. Então infelizmente por não lembrar-me, 100% á quem criou o tutorial inexistente.


  4. Upvote
    Roksas recebeu reputação de Shadow Phantom em [ALL VERSIONS] Mudando IP com HexEitor   
    Iaae galera, sussa? Hoje irei ensiná-los a mudar o IP de qualquer cliente usando o HexEditor, mais especificadamente o Cygnus. Vamos lá!
     

    Mudando IP com HexEditor


     
    Bom galera, primeiramente vocês deverão abrir o cliente desejado com o HexEditor (link para download no final do tópico).
     
    Vá em File > Open e abra o cliente. Em seguida verão todo o código fonte do cliente, todas traduções etc.
     
     
     
     
     



     
    Ok, agora para editar o IP dele, vamos procurar pelo IP que já está nele, você deve saber qual é, caso contrário vá até o fim do tópico e verá dicas para descubrir.
     
    Se for cliente de Tibia comum, o IP será o da CipSoft, agora vamos procurá-lo.
    Abra algum Editor de Texto (bloco de notas/MS Word) e digite o IP do cliente atual, vamos digitar isso:
     

    cipsoft
     
    Agora você seleciona, e copia. Mas por que isso?
    No CTRL+F do Cygnus HexEditor não é possível digitar corretamente, então copie de um Editor de Texto e cole lá no CTRL+F.
     
    Muito bem, após colar, aperte Enter para procurar, procure até encontrar uma sequência de IPS quase iguais e juntos, no caso da CipSoft vamos encontrar:





     
    Para mudar, não pode apagar nadinha, você clica entre o ponto (.) e a letra t, e digita o seu IP e perceberá que vai substituindo letra por letra. Os pontos separam cada IP, são 10 IPS para colocar, você não pode errar se não nem funciona!
     

    1º IP: tibia05.cipsoft.com 2º IP: tibia04.cipsoft.com 3º IP: tibia03.cipsoft.com 4º IP: tibia02.cipsoft.com 5º IP: tibia01.cipsoft.com 6º IP: login05.tibia.com 7º IP: login04.tibia.com 8º IP: login03.tibia.com 9º IP: login02.tibia.com 10º IP: login01.tibia.com
     
    Vai substituindo um por um com o seu IP, um exemplo preenchido:
     



     
    Caso sobrem letras do IP que você substituiu, você as substitui com pontos (....)
     
    Entre cada IP deve ter pelo menos 1 ponto (.), caso contrário o IP é muito grande e você deve trocá-lo para um menor, o máximo é de 19 caractéres por IP!
     
    Agora que já mudou o seu IP, aperte CTRL+F e procure:
     

    124710459426827943004376449897985582167801707960697037164044904862948569380850421396904597686953877022394604239428185498284169068581802277612081027966724336319448537811441719076484340922854929273517308661370727105382899118999403808045846444647284499123164879035103627004668521005328367415259939915284902061793
     
    Substitua por:
     

    109120132967399429278860960508995541528237502902798129123468757937266291492576446330739696001110603907230888610072655818825358503429057592827629436413108566029093628212635953836686562675849720620786279431090218017681061521755056710823876476444260558147179707119674283982419152118103759076030616683978566631413
     
    Após isso, vá em File > Save e prontinho, só abrir e se divertir
    Não encontrei o IP do cliente no HexEditor, oque eu faço?


    Caso for o cliente do PDA Slicer, abra-o com o Cygnus, aperte CTRL+G e cole [b]"1c62f0"[/b], sem as aspas, assim você irá encontrar a sequência de IPS para substituir! Se for Pokemon Nibe é igual do PDA Slicer Se for Tibia normal, é só dar CTRL+F e digitar "cipsoft" sem as aspas.
     
    Download Cygnus HexEditor
    Scan Cygnus HexEditor
  5. Upvote
    Roksas recebeu reputação de pmwrec em Retirando Bug Do Rme 8.60   
    Dúvida: Retirando Bug do RME 8.60


     

    • Introdução: Bom, depois de alguns meses voltei ao XTibia, de acordo estava "aposentado" rs.

    Eu sei que há muitos tutoriais deste, de como retirar o bug, mas nenhum funcionou comigo e sempre vi pessoas dizendo que não conseguiram, então resolvi criar este porque comgo o processo foi sucedido!

     

    Chega de conversa, vamos ao que interessa (rimou). =D

       

     

    Primeiramente, abra seu Remeres MapEditor 8.60. Siga estes passos:

     

    File>Preferences>Client Version> Desmarque a caixa "Check file signatures"> Marque Apply e depois>Ok.

     

    Muito bem, agora iremos enteder um pouco este erro: Ele diz que não consegue encontrar os arquivos necessários e quando você clica para encontrar, dá o mesmo erro. Vejamos, então devemos instalar o Client Tibia pelo site do Remeres!

     

    Então, faremos isso. Segue o link de download do Client:

    http://www.remeresma...le=tibia860.exe

     

    Muito bem, após baixar, instalar. Crie uma pasta em seu Desktop chamada "Mapeditor"> Agora vá na pasta do seu Tibia (normalmente se localiza em: Disco Local>Arquivos de Programas>Tibia), agora copie os arquivos "tibia.dat", "tibia.spr" e "tibia.pic". Vá na pasta "Mapeditor" no Desktop e cole-os lá mesmo. Agora abra seu MapEditor RME 8.6! Pronto, use á vontade. (Para quem não deu certo, aperte "Ok" no erro e aparecerá uma caixa para procurar os arquivos, selecione Desktop>E em seguida a pasta Mapeditor. Irá carregá-los e pronto!)

     

     

    Muito obrigado pessoal, espero que dê certo. Fiz com muita dedicação e espero ajudar. Muito obrigado a todos, leiam com atenção e GoGo criar mapas *-*

     

    Créditos> Bom, eu vi este Tutorial em algum lugar, mas esqueci. Mas deu certo. Então infelizmente por não lembrar-me, 100% á quem criou o tutorial inexistente.


  6. Upvote
    Roksas recebeu reputação de Developer Berg em [Tutorial] Adicionando Transforms Naruto   
    Bom galera, ultimamente bastante membros perguntando como adicionar transformações de Naruto e tals. Decidi criar um Tutorial pra que seja mais fácil e bem explicado a todos!
     
    Irei ensinar completamente, desde adicionando Sprites no client, até adicionando nos Scripts do servidor. Bora )
     
    • Colocando sprites no client!
     
     
     
    • Adicionando as sprites em seu Otserv
     
     
     
     
     
    • Criando as transformações
     
     
     
    Prontinho galera, agora basta entrar em seu Otserv e testar. Boa sorte, espero que tenham gostado e entendido, dúvidas só perguntar. Disponha ^^
     
    OBS: IMAGENS UPADAS POR DynkzDosOts
     
     
    DynkzDosOts
  7. Upvote
    Roksas recebeu reputação de Hamachine em bau shop   
    Procura de novo, na tag é ACTIONID, e não Unique.
  8. Upvote
    Roksas recebeu reputação de gabriel28 em Torneio PVP!   
    Iaaae galera suave braaits ? Hoje venho trazer para vocês um sistema de Torneio, mas, como funciona?
     
    Vários players entram numa sala, falando com o NPC (tem horário configurável para poder falar), e para poder participar deve pagar uma quantia, ao pagar você é teleportado á Arena aonde começa a batalha.
     
    O último que sobreviver vence
    Vamos á instalação?
     
    ~~
     
    Vá em data/npc, copie algum arquivo .XML da pasta e cole, renomeie para Tournament,
    cole isso dentro:
     
     
     
     
    Ok, agora vá em data/npc/scripts, copie algum arquivo dessa pasta e cole, renomeie para tournament, cole isso:
     
     

    Configurando:


    local cfg = { price = 100, -- Money to sign in tournament startPos = {x = 1016, y = 1025, z = 7}, -- Posição central da sala de torneio hour = "18:00:00", -- Hour to start maxhour = "18:15:00" -- Max to start }
     
    Price é o preço que paga para entrar no Torneio, startPos é as coordenadas do meio da sala de Torneio, e Hour é a hora do dia que começa, o Torneio no caso é diário, mude o horário de "18:00:00" para o horário desejado, entre aspas e no formato 00:00:00! Já o maxhour determina até quando o NPC vende inscrições, no caso coloquei por 15 minutos.

     
     
    Agora vamos configurar a alavanca e o baú do vencedor! Vá em data/lib, abra o arquivo 050-function.lua ou function.lua, vá até a última linha de todas, pule 2 linhas e cole isso:
     
     
     
     
    Essa é a lib que usaremos no nosso Torneio, muito bem, agora vá em data/actions/scripts, copie algum arquivo desta pasta e cole, renomeie para tournament e cole isso dentro:
     
     

    Configurando:


    local cfg = { salaAward = {x = 1016, y = 1014 , z = 7}, -- Coordenates of the award place }
     
    salaAward, coloque as coordenadas da sala de prêmio do vencedor do Torneio!
     

    local area = {fromx = 1008, fromy = 1018, fromz = 7, tox = 1025, toy = 1033, toz = 7}
     
    fromx - fromy - fromz, coloque as coordenadas (X,Y e Z) do canto superior esquerdo da sala de Torneio, e tox - toy - toz, coloque as coordenadas (X, Y e Z) do canto inferior direito da sala de Torneio.
     
    local maxhour = "18:15:00", coloque igual ao script do NPC!
     
    Na mesma pasta crie outro arquivo, mas agora com o nome de tournamentchest e adicione isso dentro:
     
    ​Configurando:


    local cfg = { awardId = 2148, -- Item ID of winner prize awardAmount = 100, -- Amount of item ID }
     
    awardId coloque o ID do item que vai receber ao ganhar o Torneio, e awardAmount a quantidade!
     
    Em actions.xml adicione essas tags:
     
    <action actionid="13549" event="script" value="tournament.lua"/> <action uniqueid="5531" event="script" value="tournamentchest.lua"/>
     
    Muito bem, dirija-se á data/creaturescripts/scripts, copie algum arquivo da pasta e cole, renomeie para tournamentdeath, e adicione isso dentro:
     
    ​Configurando:


    local cfg = { leftPos = {x = 1008, y = 1018, z = 7}, rightPos = {x = 1025, y = 1033, z = 7}, }
     
    leftPos coloque as coordenadas do canto superior esquerdo da Sala de Torneio, e rightPos coloque o canto inferior direito da sala
     
    Agora em creaturescripts.xml adicione essa tag:
     

    <event type="preparedeath" name="TournamentDeath" event="script" value="tournamentdeath.lua"/>
     
    Prontinho galera, agora apenas adicione ACTION ID 13549 na alavanca e UNIQUE ID 5531 no baú do campeão
     



     
     
    Download Mapa Tournament (Tibia) - 4shared
  9. Upvote
    Roksas recebeu reputação de djteteh em Fly premium   
    Perdão, ficaram alguns erros de formatação do editor aqui, rsrs. Editei meu post acima, tente agora
  10. Upvote
    Roksas recebeu reputação de LuaniTa em [ # Battle Weekly Event # ] 1.0   
    Battle Weekly 1.0



    Iaiaiaeee meus jovens, tudo suaves? Hoje criei este tópico para oferecer á vocês um evento muito legal criado por mim, chamado Battle Weekly. Ele funciona da seguinte maneira:
    1 - Batalha PVP de categorias (level 20 ao 50, 51 ao 75, etc); 2 - Ganhadores 1º e 2º lugar levam troféis; 3 - Totalmente segura, não perde level nem loot ao morrer; 4 - Fácil de configurar. 5 - Objetivo: Checar á X frags primeiro.
     
    E a configuração é mega simples, basta seguir os passos descritos no README.xml, o local da âncora é este:
     
     
     
     
    Download Battle Weekly 1.0
    Scan Battle Weekly 1.0
    Todas ScreenShoots tiradas estão numa pasta dentro do arquivo baixado.
     
    #GoodLuck.
  11. Upvote
    Roksas deu reputação a Oneshot em Talkactions com erro no console   
    local TRANSFORMATIONS = { -- NARUTO [69] = {outfit = {lookType = 64}, useEffect = 10, pEffect = 18}, [64] = {outfit = {lookType = 31}, useEffect = 24, pEffect = 12}, [31] = {outfit = {lookType = 90}, useEffect = 24, pEffect = 15}, [90] = {outfit = {lookType = 89}, useEffect = 24, pEffect = 11}, -- SASUKE [5] = {outfit = {lookType = 6}, useEffect = 25, pEffect = 9}, [6] = {outfit = {lookType = 7}, useEffect = 23, pEffect = 14}, [7] = {outfit = {lookType = 8}, useEffect = 14, pEffect = 14}, -- SAKURA [9] = {outfit = {lookType = 10}, useEffect = 2, pEffect = 19}, [10] = {outfit = {lookType = 11}, useEffect = 50, pEffect = 19}, [11] = {outfit = {lookType = 12}, useEffect = 33, pEffect = 14}, } local function delayed_magic_effect(cid) if not isCreature(cid) then return true end local outfit = getCreatureOutfit(cid) local tmp = TRANSFORMATIONS[outfit.lookType] if not tmp then return true end doSendMagicEffect(getCreaturePosition(cid), tmp.pEffect) return addEvent(function() delayed_magic_effect(cid) end, 1000) end function onSay(cid, words, param) local outfit = getCreatureOutfit(cid) local tmp = TRANSFORMATIONS[outfit.lookType] if not tmp then return doPlayerSendCancel(cid, "Você não possui transformações.") end local storage = outfit.lookType + 25000 if getCreatureStorage(cid, storage) == 2103 then return doPlayerSendCancel(cid, "Você ainda não completou a quest necessária para usar essa transformação.") end doSendMagicEffect(getCreaturePosition(cid), tmp.useEffect) doSetCreatureOutfit(cid, tmp.outfit, -1) delayed_magic_effect(cid) return true end Dessa vez testei.
     
    Tchau, não volto aqui mais.
  12. Upvote
    Roksas recebeu reputação de pvpwar em Recompense Kill   
    Recompense Kill


     
     



     
    Saudações meus anjos, estive um tempo sem postar absolutamente nada, voltei já com algumas ideias e vim trazer para vocês! Este é um sistema, no qual ao matar um PK (White Skull), você recebe uma recompensa, (25 gold coins por level do PK) - Configurável.
     
    Exemplo, ele tem level 200 (200x25) = 5k para você disfrutar
     
     
     

    Instalação


     
     
     
     



     
    Vá em data/creaturescripts/scripts, copie algum arquivo da pasta e cole, renomeie para recompense.lua e coloque isto dentro:
     
     
     
     
    Abra com o bloco de notas o arquivo creaturescripts.xml e adicione estas tags:
     

    <event type="login" name="LoginRgst" event="script" value="recompense.lua"/> <event type="kill" name="Recompense" event="script" value="recompense.lua"/>
     
     

    Configuração


     
     



     
    Na primeira linha de todas do código, no caso esta:
     

    local moneyPerLevel = 25
     
    Você configura quantos gold coins recebe por level do PK. Assim formando uma conta como explicado na Introdução.
     
    Esta conta irá multiplicar o level do PK pela quantidade de gold coins recebe por level, assim dando uma leve recompensa ao killer.
     
     

    Demonstração


     
     



     



  13. Upvote
    Roksas recebeu reputação de kleitonalan321 em Classic Premium v2   
    » CLASSIC PREMIUM V2 ! «


     
     
     
    Versão Testada: TFS 0.3.6: 8.60
     
    Opa galera, esse é mais um tópico meu, agora de Estagiário :))
    Neste tópico irei apresentar-lhes o Classic Premium v2, que usei algumas coisas de base do Perfect System (by Vodkart), agora contém:
     

    • GOD pode checar quantos Premium Days o player tem, pelo comando /checkdays NOMEDOPLAYER • GOD também pode adicionar Premium Days, pelo comando /addpremium NOME, QUANTIDADE • Temos também o comando /removedays NOME, QUANTIDADE que o GOD poderá fazer. • Além disso, temos mais duas novidades, os comandos: !changender e !removeskull, ambos removem 5 Premium Days do player!
     

     
    » Comandos de GOD
     
    Vamos lá, primeiramente vá na pasta data/talkactions, crie um arquivo chamadopremiumtalk.lua e adicione isso dentro:
     

    function onSay(cid, words, param) local player = getPlayerByName(param) local t = string.explode(param, ",") if words == "/checkdays" then if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.") return true end if not isPlayer(player) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return true end return doPlayerPopupFYI(cid, "Player checked have "..getPlayerPremiumDays(player).." days of Premium Account!") end if words == "/addpremium" then local t = string.explode(param, ",") local player = getPlayerByNameWildcard(t[1]) if not tonumber(t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end if(not player)then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return true end doPlayerAddPremiumDays(player, tonumber(t[2])) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You has been added "..tonumber(t[2]).." days of Premium Account to the player! ") doRemoveCreature(player) end if words == "/removedays" then local t = string.explode(param, ",") local player = getPlayerByNameWildcard(t[1]) if not tonumber(t[2]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end if(not player)then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return true end doPlayerRemovePremiumDays(player, tonumber(t[2])) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You has been removed "..tonumber(t[2]).." Premium Account Days of the player!") end return true end
     
    E no arquivo talkactions.xml adicione a tag que vêm a seguir:

    <talkaction words="/addpremium;/removedays;/checkdays" access="4" event="script" value="premiumtalk.lua"/>
     
    » Premium Door e Premium Scroll
     
    Muito bem, agora na pasta data/actions/scripts, crie um arquivo chamado scroll.lua e adicione isso dentro:
     

    local days_gain = 30 -- Dias que ganham function onUse (cid,item,frompos,item2,topos) if not doRemoveItem(item.uid) then return true end doPlayerAddPremiumDays(cid, days_gain) doSendMagicEffect(getCreaturePosition(cid), 14) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você acaba de ganhar 30 dias de Premium Account, terá áreas exclusivas e 35% a mais de EXP como benefício!") return true end
     
    Crie outro arquivo, mas agora com o nome de premiumdoor.lua e ponha isso dentro:
     

    function onUse(cid, item, frompos, item2, topos) if not isPremium(cid) then doPlayerSendTextMessage(cid,22,"Você precisa ter Premium Account para passar!") return false end doTransformItem(item.uid, item.itemid + 1) doTeleportThing(cid, frompos, true) return true end
     
    Abra o arquivo actions.xml e adicione essas tags:
     

    <action itemid="9004" event="script" value="scroll.lua"/> <action actionid="7779" script="premiumdoor.lua"/>
     
    OBS: Para fazer com que a porta seja para Premiums, no seu Map Editor, adicione a seguinte ACTIONID nela: 7779!
     
    » Classic Premium Tile
     
    Em data/movements/scripts, crie um arquivo chamado premiumtile.lua e adicione isso dentro:
     
    function onStepIn(cid, item, position, fromPosition) if not isPremium(cid) then doTeleportThing(cid, fromPosition, true) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você não tem acesso Premium Account!") doSendMagicEffect(getCreaturePosition(cid), 2) return true end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Bem Vindo á Área Premium!") return true end  
    Ea tag no arquivo movements.xml coloque:
     
    <movevent type="StepIn" actionid="19456" event="script" value="premiumtile.lua"/>
     
    Para fazer com que apenas Premiums passe pelo piso, adicione a ACTIONID 19456 pelo seu Map Editor no piso!
     
    » Classic Mods
     
    Na pasta do seu OT, vá na pasta mods, crie um arquivo chamado classic_changender.xml e coloque isso dentro:
     

    <?xml version="1.0" encoding="UTF-8"?> <mod name="ChangeSex Classic" version="1.0" author="Roksas" enabled="yes"> <config name="changender_config"><![CDATA[ config = { costPremiumDays = 5 } ]]></config> <talkaction words="!changender" event="buffer"><![CDATA[ domodlib('changender_config') if(getPlayerSex(cid) >= 2) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao tem sexo para mudar!") return end if(getPlayerPremiumDays(cid) < config.costPremiumDays) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Desculpe, voce nao tem " .. config.costPremiumDays .. " Premium Days necessarios!") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return end if(getPlayerPremiumDays(cid) < 65535) then doPlayerAddPremiumDays(cid, -config.costPremiumDays) end doPlayerSetSex(cid, getPlayerSex(cid) == PLAYERSEX_FEMALE and PLAYERSEX_MALE or PLAYERSEX_FEMALE) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce mudou seu sexo e isso lhe custou " .. config.costPremiumDays .. " days de Premium Account! Relogue para que faca efeito.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_MAGIC_RED) ]]></talkaction> </mod>
     
    E crie outro arquivo, mas com o nome de classic_removeskull.xml e adicione isso:
     

    <?xml version="1.0" encoding="UTF-8"?> <mod name="Classic Remover" version="1.0" author="Roksas" enabled="yes"> <talkaction words="!removeskull" event="script"><![CDATA[ local noRemove = {SKULL_YELLOW} local playerSkull = getPlayerSkullType(cid) if isInArray(noRemove, playerSkull) then doPlayerSendCancel(cid, "Voce nao pode remover esse tipo de skull.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return true elseif playerSkull == SKULL_NONE or getPlayerPremiumDays(cid) < 5 then doPlayerSendCancel(cid, "Voce nao tem skull ou 5 days de Premium Account!") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return true else db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")") doPlayerSendTextMessage(cid, 27, "Seus frags,skull e 5 days de Premium Account foram removidos!") doPlayerRemovePremiumDays (cid,5) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED) doSendAnimatedText(getPlayerPosition(cid), "POFF!", 180) doCreatureSetSkullType(cid,0) doPlayerSetSkullEnd(cid, 0, playerSkull) end return true ]]></talkaction> </mod>
     
    » Classic Premium Rates
     
    Abra a pasta do seu OT, vá em data/creaturescripts/scripts, adicione um arquivo lá chamado premiumrate.lua e coloque isso dentro dele:
     
    function onLogin(cid) local rate = 1.35 local days = getPlayerPremiumDays(cid) if isPremium(cid) then doPlayerSetExperienceRate(cid, rate) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você tem "..((rate - 1)*100).."% de EXP em vantagem, Ainda lhe restam "..days.." dias de Premium!") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Tornesse Premium e tenha "..((rate - 1)*100).."% a mais de EXP!") end return true end
     
     
    Agora abra o arquivo login.lua na mesma pasta, procure por um trecho mais ou menos assim:
     

    registerCreatureEvent(cid, "kill") registerCreatureEvent(cid, "onPrepareDeath") registerCreatureEvent(cid, "PlayerLogout") registerCreatureEvent(cid, "onPrepareDeath")
     
    Ao encontrar, adicione isso no fim ou no começo ou no meio deles:
     

    registerCreatureEvent(cid, "ExpVip")
     
    Muito bem, agora no arquivo creaturescripts.xml adicione essa tag:
     

    <event type="login" name="ExpVip" script="premiumrate.lua"/>
     
    Explicando: Para configurar as rates procure por esse trecho no script:
     

    local rate = 1.35
     
    O número 35, significa a porcentagem. Ou seja, 35% de Exp Rate em vantagem, ajuste como quiser: 20, 50, 60...
     

    Bom galera, isso foi tudo. Espero que tenham gostado da versão v2 do Classic Premium! Aguardo respostas, sugestões e críticas a respeito! Agradeço Vodkart por algumas funções e bases. Encerrarei com algumas ScreenShoots do meu Sistema! Obrigado e BENÇA )
     
    » SCREENSHOOTS
     

     

     

     


  14. Upvote
    Roksas recebeu reputação de Alexclusive em [LEIA] Conhecendo o Editor de Texto   
    Conhecendo o Editor!

    Este tópico está relacionado ao entendimento do Editor Completo, aonde temos diversos botões e diversas dúvidas:
    Menu Geral:  
     

    Enquetes:  


    Finalização:  
     
  15. Upvote
    Roksas recebeu reputação de TioItachi em [ # Battle Weekly Event # ] 1.0   
    Battle Weekly 1.0



    Iaiaiaeee meus jovens, tudo suaves? Hoje criei este tópico para oferecer á vocês um evento muito legal criado por mim, chamado Battle Weekly. Ele funciona da seguinte maneira:
    1 - Batalha PVP de categorias (level 20 ao 50, 51 ao 75, etc); 2 - Ganhadores 1º e 2º lugar levam troféis; 3 - Totalmente segura, não perde level nem loot ao morrer; 4 - Fácil de configurar. 5 - Objetivo: Checar á X frags primeiro.
     
    E a configuração é mega simples, basta seguir os passos descritos no README.xml, o local da âncora é este:
     
     
     
     
    Download Battle Weekly 1.0
    Scan Battle Weekly 1.0
    Todas ScreenShoots tiradas estão numa pasta dentro do arquivo baixado.
     
    #GoodLuck.
  16. Upvote
    Roksas recebeu reputação de WillOliveira em getValueSize(values_arr, size[,ind])   
    getValueSize(values_arr, size[,ind])
     
    Olá pessoas e pessoas, criei uma função até que útil, ela indica o maior/menor valor de uma array, de acordo com seu segundo parâmetro:
     
     
    http://pastebin.com/MtziqCns
     
    Modo de uso:
     
     
     
    local tmp = {1, 500, -1} getValueSize(tmp, "higher") -- Retorna o maior valor desta array; getValueSize(tmp, "lower") -- Retorna o menor valor desta array; getValueSize(tmp, "higher"/"lower", 2) -- Retorna o SEGUNDO maior/menor valor desta array.
  17. Upvote
    Roksas recebeu reputação de CaioValverde em [Encerrado] [PEDIDO] Item consumível que dar Velocidade ao player   
    Tente desta forma:
     
    Vá em data/actions/scripts, cre um arquivo chamado sp_use.lua e adicione dentro:
     
     
    function onUse(cid) local sp = 200 if getPlayerStorageValue(cid, 14049) < 1 then doSendMagicEffect(getThingPos(cid), 14) doChangeSpeed(cid, (getCreatureSpeed(cid) + sp)) else doPlayerSendCancel(cid, "Você já obteve a velocidade.") return true end return true end  
    Em actions.xml adicione a tag:
     
     
    <action itemid="ID DO ITEM" event="script" value="sp_use.lua"/>  
    #Boa sorte.
  18. Upvote
    Roksas recebeu reputação de Kluivert em [Exercícios - Aula 9] Respostas   
    Iae amados alunos, vocês estão aprendendo rápido e bem neste período, alguns tiveram dificuldades. A Escolinha em si, está praticamente no fim e restaram apenas 3 alunos rsrs. Neste tópico estarei postando as respostas da penúltima aula



    Allan Harlen:
     
     
     
     
    Matheus Ribeiro:
     
     
     
     
    Zilde Neto:
     
     
     
     
    Parabéns anjos, estudem
  19. Upvote
    Roksas recebeu reputação de Alexclusive em Cast [TV] System 1.0   
    Cast System 1.0


    Como vãao galera? Há quanto tempo não? Hoje eu vim trazer para vocês um sisteminha bem simples e legal, aonde você pode assistir os outros jogadores e vice-versa.
     
    Versão testada: TFS 8.6 0.4 and TFS 0.3.6 8.6
     
    Comandos utilizados in-game:
    !cast on -- Ativa o seu Cast System, e permite os outros jogadores te assistirem; !cast off -- Desativa o seu Cast System; !cast exit -- Você sai do Cast no qual está assistindo; !cast NAME -- Começa a assistir um jogador (NAME). Instalação


    Vá em data/talkactions/scripts crie um arquivo chamado castSys.lua e adicione o seguinte código dentro do mesmo:
    --[[ Perfect Cast System 1.0 by Roksas Acesse ja XTibia.com =) ]]-- function onSay(cid, words, param) local player = getPlayerByName(param) if not isInArray({"list", "exit", "off", "on"}, param) and not param or param == "" then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Enter the name of the player, which you want to cast in parameters.") return true end if param == "on" then if getPlayerStorageValue(cid, 10359) >= 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Your Cast System is already running ONLINE!") return true end castOn(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You have activated your Cast System, now others can cast you, to disable this feature, use the parameter '!cast off'.") return true end if param == "off" then if getPlayerStorageValue(cid, 10359) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "Your Cast System is already OFFLINE!") return true end castOff(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You have disabled your Cast System, from now on no one can watch you, unless you turn on the Cast, using the parameter '!cast on'.") return true end if param == "exit" then if getPlayerStorageValue(cid, 12269) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "You no are casting players.") return true end cancelCast(cid) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You stopped casting, use the parameter '!cast list' to see who can be casted.") return true end if param == "list" then if #whoCasted() < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "At this time, no player can be casted, try again later.") return true end doPlayerSendTextMessage(cid, 20, "Players can be casteds:\n\n") for k, v in ipairs(whoCasted()) do doPlayerSendTextMessage(cid, 20, " - "..getCreatureName(v).."") end return true end if not isPlayer(player) then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "This player is offline or does not exist. Use the parameter '!cast list' to see who can be casted.") return true end if getPlayerStorageValue(player, 10359) < 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "You can only cast one person with the Cast System is activated, use the parameter '!cast list' to see who can be assisted.") return true end if getPlayerStorageValue(cid, 10359) >= 1 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 20, "To cast a player, you must first disable your Cast System using the parameter '!cast off'.") return true end if not getTileInfo(getThingPos(cid)).protection then return doPlayerSendTextMessage(cid, 20, "You need enter in Protection Zone to use the Cast System.") and true end setPlayerStorageValue(cid, 12269, 1) castPlayer(cid, player) doSendMagicEffect(getThingPos(cid), 39) doPlayerSendTextMessage(cid, 20, "You are casting the player "..getCreatureName(player)..", to exit just use the command '!cast exit'.") doPlayerSendTextMessage(player, 20, "You are casted by "..getCreatureName(cid).." player to disable your Cast, simply use the parameter '!cast off'.") return true end function cancelCast(uid) mayNotMove(uid, false) doCreatureSetHideHealth(uid, false) setPlayerStorageValue(uid, 12269, -1) doRemoveCondition(uid, CONDITION_OUTFIT) return doTeleportThing(uid, getTownTemplePosition(getPlayerTown(uid))) or doTeleportThing(uid, getPlayerMasterPos(uid)) and true end function castOn(uid) return setPlayerStorageValue(uid, 10359, 1) and true end function castOff(uid) return setPlayerStorageValue(uid, 10359, -1) and true end function castPlayer(uid, player) if not isPlayer(player) then cancelCast(uid) return true end if getPlayerStorageValue(player, 10359) < 1 then cancelCast(uid) return true end if getPlayerStorageValue(uid, 12269) < 1 then cancelCast(uid) return true end mayNotMove(uid, true) doSetItemOutfit(uid, 1934, -1) doCreatureSetHideHealth(uid, true) doTeleportThing(uid, getThingPos(player)) return addEvent(castPlayer, 1 * 1000, uid, player) and true end function whoCasted() local casteds = {} for _, pid in ipairs(getPlayersOnline()) do if getPlayerStorageValue(pid, 10359) >= 1 then table.insert(casteds, pid) end end return #casteds > 0 and casteds or {} end Volte uma pasta (data/talkaction) abra com algum editor de texto o arquivo talkactions.xml e adicione essa tag em qualquer lugar:
    <talkaction words="!cast;/cast" event="script" value="castSys.lua"/> Muito bem, após isso siga para a pasta data/creaturescripts/scripts, faça o mesmo, crie um arquivo chamado castSys.lua e adicione isso dentro:
    function onLogout(cid) if getPlayerStorageValue(cid, 12269) > 0 then doPlayerSendCancel(cid, "To logout, you need to exit the Cast System first. Use the parameter '!cast exit'.") return false end setPlayerStorageValue(cid, 10359, -1) return true end function onStatsChange(cid, attacker, type, combat, value) if not isCreature(cid) then return true end if getPlayerStorageValue(cid, 12269) >= 1 and isMonster(attacker) or isPlayer(attacker) then return false end return true end function onAttack(cid, target) if not isPlayer(cid) or not isPlayer(target) then return true end if getPlayerStorageValue(cid, 12269) > 0 then doRemoveCondition(cid, CONDITION_INFIGHT) return false end return true end Já no arquivo creaturescripts.xml, você vai adicionar essa tag:
    <event type="attack" name="castAttack" event="script" value="castSys.lua"/> <event type="statschange" name="castHits" event="script" value="castSys.lua"/> <event type="logout" name="castLogout" event="script" value="castSys.lua"/> E no arquivo login.lua você vai adicionar essas 3 linhas:
    registerCreatureEvent(cid, "castAttack") registerCreatureEvent(cid, "castHits") registerCreatureEvent(cid, "castLogout") Para que o player que está assitindo ao outro não use magias enquanto está assistindo, coloque essas linhas abaixo dentro de cada script das magias, debaixo da linha:
    function onCastSpell(cid, var) Coloque:
    if getPlayerStorageValue(cid, 12269) >= 1 then return doPlayerSendCancel(cid, "You is casting, not is possible.") and false end Faça a mesma coisa com as quests, embaixo de:
    function onUse(cid, item, frompos, item2, topos) Prontinho galera, basta reiniciar o servidor e usar, é isto por hoje, espero que tenham gostado, ideias/sugestões para futuras versões, bugs ou críticas sobre o sistema, basta deixar um simples comentário aí no tópico, estarei aqui para atendê-los.
     
    Obrigado pela atenção, façam bom uso.
     
     
     
  20. Upvote
    Roksas recebeu reputação de DavyziinC em GOD   
    data/creaturescripts/scripts crie um arquivo chamado login_god.lua e adicione isso dentro:
     

    function onLogin(cid) if getPlayerGroupId(cid) >= 4 then doBroadcastMessage(""..getCreatureName(cid).." logou no servidor! Bem vindo.") end return true end
     
    Em creaturescripts.xml adicione essa tag:
     

    <event type="login" name="login_god" event="script" value="login_god.lua"/>
     
    Em login.lua adicione na penúltima linha:
     

    registerCreatureEvent(cid, "login_god")
  21. Upvote
    Roksas recebeu reputação de Diogozera em Erro na script da Ultimate Survival   
    Troque por:
     
     
     
     
    #GoodLuck.
  22. Upvote
    Roksas recebeu reputação de Vodkart em [ # Battle Weekly Event # ] 1.0   
    Battle Weekly 1.0



    Iaiaiaeee meus jovens, tudo suaves? Hoje criei este tópico para oferecer á vocês um evento muito legal criado por mim, chamado Battle Weekly. Ele funciona da seguinte maneira:
    1 - Batalha PVP de categorias (level 20 ao 50, 51 ao 75, etc); 2 - Ganhadores 1º e 2º lugar levam troféis; 3 - Totalmente segura, não perde level nem loot ao morrer; 4 - Fácil de configurar. 5 - Objetivo: Checar á X frags primeiro.
     
    E a configuração é mega simples, basta seguir os passos descritos no README.xml, o local da âncora é este:
     
     
     
     
    Download Battle Weekly 1.0
    Scan Battle Weekly 1.0
    Todas ScreenShoots tiradas estão numa pasta dentro do arquivo baixado.
     
    #GoodLuck.
  23. Upvote
    Roksas recebeu reputação de WillOliveira em [ # Battle Weekly Event # ] 1.0   
    Battle Weekly 1.0



    Iaiaiaeee meus jovens, tudo suaves? Hoje criei este tópico para oferecer á vocês um evento muito legal criado por mim, chamado Battle Weekly. Ele funciona da seguinte maneira:
    1 - Batalha PVP de categorias (level 20 ao 50, 51 ao 75, etc); 2 - Ganhadores 1º e 2º lugar levam troféis; 3 - Totalmente segura, não perde level nem loot ao morrer; 4 - Fácil de configurar. 5 - Objetivo: Checar á X frags primeiro.
     
    E a configuração é mega simples, basta seguir os passos descritos no README.xml, o local da âncora é este:
     
     
     
     
    Download Battle Weekly 1.0
    Scan Battle Weekly 1.0
    Todas ScreenShoots tiradas estão numa pasta dentro do arquivo baixado.
     
    #GoodLuck.
  24. Upvote
    Roksas recebeu reputação de Mophus em [ # Battle Weekly Event # ] 1.0   
    Battle Weekly 1.0



    Iaiaiaeee meus jovens, tudo suaves? Hoje criei este tópico para oferecer á vocês um evento muito legal criado por mim, chamado Battle Weekly. Ele funciona da seguinte maneira:
    1 - Batalha PVP de categorias (level 20 ao 50, 51 ao 75, etc); 2 - Ganhadores 1º e 2º lugar levam troféis; 3 - Totalmente segura, não perde level nem loot ao morrer; 4 - Fácil de configurar. 5 - Objetivo: Checar á X frags primeiro.
     
    E a configuração é mega simples, basta seguir os passos descritos no README.xml, o local da âncora é este:
     
     
     
     
    Download Battle Weekly 1.0
    Scan Battle Weekly 1.0
    Todas ScreenShoots tiradas estão numa pasta dentro do arquivo baixado.
     
    #GoodLuck.
  25. Upvote
    Roksas recebeu reputação de JonatasLucasf em [ # Battle Weekly Event # ] 1.0   
    Battle Weekly 1.0



    Iaiaiaeee meus jovens, tudo suaves? Hoje criei este tópico para oferecer á vocês um evento muito legal criado por mim, chamado Battle Weekly. Ele funciona da seguinte maneira:
    1 - Batalha PVP de categorias (level 20 ao 50, 51 ao 75, etc); 2 - Ganhadores 1º e 2º lugar levam troféis; 3 - Totalmente segura, não perde level nem loot ao morrer; 4 - Fácil de configurar. 5 - Objetivo: Checar á X frags primeiro.
     
    E a configuração é mega simples, basta seguir os passos descritos no README.xml, o local da âncora é este:
     
     
     
     
    Download Battle Weekly 1.0
    Scan Battle Weekly 1.0
    Todas ScreenShoots tiradas estão numa pasta dentro do arquivo baixado.
     
    #GoodLuck.
  • Quem Está Navegando   0 membros estão online

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