Ir para conteúdo

Fabi Marzan

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    Fabi Marzan recebeu reputação de Mateus Robeerto em Gesior - Baiak-PvP 2020   
    Pra quem tem esse problema:
     
    Warning: parse_ini_file(cache/DONT_EDIT_serverstatus.txt) [function.parse-ini-file]: failed to open stream: No such file or directory in C:\xampp\htdocs\system\load.compat.php on line 750 Warning: fopen(cache/DONT_EDIT_serverstatus.txt) [function.fopen]: failed to open stream: No such file or directory in C:\xampp\htdocs\system\load.compat.php on line 772 Warning: rewind() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 779 Warning: fwrite() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 780 Warning: fclose() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 781 Warning: fopen(cache/DONT_EDIT_usercounter.txt) [function.fopen]: failed to open stream: No such file or directory in C:\xampp\htdocs\system\load.compat.php on line 798 Warning: fputs() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 800 Warning: fclose() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 801  
    basta ir em htdocs/config: 
    Dentro você encontrará uma pasta chamada Cache, mova essa pasta para fora da config e restar a página e isso será resolvido.
     
    Outro problema:

     
    Você tem que ir para config.php e procurar por esta linha
    $config['site']['google_captcha_enabled'] = true; mude para false
     
     
     
  2. Obrigado
    Fabi Marzan recebeu reputação de Nerivalhs em Gesior - Baiak-PvP 2020   
    Pra quem tem esse problema:
     
    Warning: parse_ini_file(cache/DONT_EDIT_serverstatus.txt) [function.parse-ini-file]: failed to open stream: No such file or directory in C:\xampp\htdocs\system\load.compat.php on line 750 Warning: fopen(cache/DONT_EDIT_serverstatus.txt) [function.fopen]: failed to open stream: No such file or directory in C:\xampp\htdocs\system\load.compat.php on line 772 Warning: rewind() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 779 Warning: fwrite() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 780 Warning: fclose() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 781 Warning: fopen(cache/DONT_EDIT_usercounter.txt) [function.fopen]: failed to open stream: No such file or directory in C:\xampp\htdocs\system\load.compat.php on line 798 Warning: fputs() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 800 Warning: fclose() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\system\load.compat.php on line 801  
    basta ir em htdocs/config: 
    Dentro você encontrará uma pasta chamada Cache, mova essa pasta para fora da config e restar a página e isso será resolvido.
     
    Outro problema:

     
    Você tem que ir para config.php e procurar por esta linha
    $config['site']['google_captcha_enabled'] = true; mude para false
     
     
     
  3. Curtir
    Fabi Marzan recebeu reputação de Mateus Robeerto em Spell Effect na direção que o player esta olhando   
    Imagino que o CONST_ME_SLASH seja igual para todos os direçãos, você teria que criar outro efeito mas para o outro lado
    então você tem que usar
    if creature:getDirection() == DIRECTION_NORTH then
    if creature:getDirection() == DIRECTION_EAST then
    if creature:getDirection() == DIRECTION_SOUTH then
    if creature:getDirection() == DIRECTION_WEST then
  4. Curtir
    Fabi Marzan deu reputação a Nother em Procuro parceiro para criar um server de Jujutsu   
    Estou a fim de criar um server de Jujutsu, porém criar sozinho é intensamente maçante pois tudo que fazemos não temos com quem compartilhar e as ideias são muito limitadas quando tem só uma pessoa fazendo, e aos poucos os projetos vão perdendo o brilho. E sei que pessoas com experiencia cobram e estão mais que certas. Então estou disposto a ensinar tudo que sei para quem quiser entrar no projeto. Não sei tudo, na verdade tenho conhecimento bem básico em criar server, mas o que sei já é o suficiente para fazer a ideia sair do papel e ficar on, e sobre remuneração, iremos repartir lucros quando o server estiver online, então é um investimento de tempo a longo prazo.
    Quem tiver interesse me chama la no discord (nother0705).
  5. Obrigado
    Fabi Marzan recebeu reputação de L3K0T em (Resolvido)Ocultar msg do comando   
    Fiquei confuso, é return true
     
    function onSay(cid, words, param) local playerCoinsItemId = 2625 -- ID do item de moeda local itemToSellId = 10311 -- ID do item a ser vendido if doPlayerRemoveItem(cid, playerCoinsItemId, 8) then -- Verifica se o jogador tem as moedas necessárias local newItem = doPlayerAddItem(cid, itemToSellId, 1) -- Adiciona o item ao jogador if newItem > 0 then doItemSetAttribute(newItem, "owner", getPlayerGUID(cid)) -- Define o dono do item como o jogador atual doItemSetAttribute(newItem, "Descricao", "Item Comprado por " .. getCreatureName(cid) .. ".") -- Define a descrição do item doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MORTAREA) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce comprou o item.") else -- Lidar com o caso de falha ao adicionar o item ao jogador end else doPlayerSendCancel(cid, 'Voce nao tem 8 Fiapo Credito.') doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FLAMEAREA) end return true end  
  6. Curtir
    Fabi Marzan deu reputação a Gabrielx17 em Problema Em Spell   
    obrigado funcionou perfeitamente, consegui enteder tambem mais ou menos por cima de como usar o else pois não sabia que existia elseif!
    obrigado funcionou perfeitamente! e obrigado por me falar onde estava o erro consegui compreender mais ou menos pois não sabia que existia o elseif!
  7. Obrigado
    Fabi Marzan recebeu reputação de Gabrielx17 em Problema Em Spell   
    Comecei a olhar seu código e você tinha um END demais.
     
    local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_ORANGE) setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -135.8, 0, -140.9, 0) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_HITCOLOR, COLOR_RED) setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -170.8, 0, -175.9, 0) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -150.8, 0, -155.9, 0) local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, parameters.combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, parameters.combat3, parameters.var) end function yagai1(cid) if isCreature(cid) and isCreature(getCreatureTarget(cid)) then local position = { x = getThingPosition(getCreatureTarget(cid)).x + 1, y = getThingPosition(getCreatureTarget(cid)).y, z = getThingPosition(getCreatureTarget(cid)).z } doSendMagicEffect(position, 399) end end function yagai2(cid) if isCreature(cid) and isCreature(getCreatureTarget(cid)) then local position = { x = getThingPosition(getCreatureTarget(cid)).x + 2, y = getThingPosition(getCreatureTarget(cid)).y + 2, z = getThingPosition(getCreatureTarget(cid)).z } doSendMagicEffect(position, 411) end end function yagai3(cid) if isCreature(cid) and isCreature(getCreatureTarget(cid)) then local position = { x = getThingPosition(getCreatureTarget(cid)).x + 1, y = getThingPosition(getCreatureTarget(cid)).y, z = getThingPosition(getCreatureTarget(cid)).z } doSendMagicEffect(position, 398) end end function yagai4(cid) if isCreature(cid) and isCreature(getCreatureTarget(cid)) then local position = { x = getThingPosition(getCreatureTarget(cid)).x + 2, y = getThingPosition(getCreatureTarget(cid)).y + 2, z = getThingPosition(getCreatureTarget(cid)).z } doSendMagicEffect(position, 396) end end function yagai5(cid) if isCreature(cid) and isCreature(getCreatureTarget(cid)) then local position = { x = getThingPosition(getCreatureTarget(cid)).x + 1, y = getThingPosition(getCreatureTarget(cid)).y, z = getThingPosition(getCreatureTarget(cid)).z } doSendMagicEffect(position, 438) end end function yagai6(cid) if isCreature(cid) and isCreature(getCreatureTarget(cid)) then local position = { x = getThingPosition(getCreatureTarget(cid)).x + 2, y = getThingPosition(getCreatureTarget(cid)).y + 2, z = getThingPosition(getCreatureTarget(cid)).z } doSendMagicEffect(position, 439) end end function onCastSpell(cid, var) local waittime = 3.0 -- Tempo de exhaustion local storage = 143512 -- não mecha local storage2 = 55512 if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.") return false end local parameters = {cid = cid, var = var, combat1 = combat1, combat2 = combat2, combat3 = combat3} if getPlayerStorageValue(cid, storage2) == 5 then addEvent(onCastSpell2, 650, parameters) addEvent(yagai3, 50, cid) addEvent(yagai4, 650, cid) elseif getPlayerStorageValue(cid, storage2) == 4 then addEvent(onCastSpell2, 650, parameters) addEvent(yagai3, 50, cid) addEvent(yagai4, 650, cid) elseif getPlayerStorageValue(cid, storage2) == 3 then addEvent(onCastSpell3, 650, parameters) addEvent(yagai5, 50, cid) addEvent(yagai6, 650, cid) else addEvent(onCastSpell1, 650, parameters) addEvent(yagai1, 50, cid) addEvent(yagai2, 650, cid) end exhaustion.set(cid, storage, waittime) return true end  
  8. Curtir
    Credits
    @slaw
    I just edited the tibiacom template.
    Full customizable.
    I have an organized repo for this 'My-AAC last version', I will release I just need to fix something's

    Just check the template live version.

    How Install
    Rename your tibiacom folder and paste the downloaded one.

    Picture News - Boosted Boss works well in this picture the boosted boss of the day was not in image folder.


    DOWNLOAD:
    thetibiaking/ttk-my-aac at layout-changes (github.com)
  9. Curtir
    Fabi Marzan deu reputação a Under em [BOOSTED CREATURE] Vamos melhorar esse código ? TFS 1x   
    Olá pessoal! Estou trabalhando em um sistema para criaturas e chefes boostados no meu servidor TFS 1x. Não estou interessado em integrar este sistema ao código-fonte por razões óbvias, já que isso facilitaria a edição para outros servidores. Estou postando isso para colaborar na melhoria do sistema atual implementando novos conceitos e refinando os existentes.
     
    Sobre o código: GlobalEvents: Estou usando Eventos Globais para atualizar a criatura e o chefe boostado na inicialização do servidor. Para evitar a necessidade de reinicializar o servidor ao alterar o chefe, estou considerando mudar de onStartup para onThink e especificar um horário preciso para o evento ocorrer. Simultaneamente, armazeno o índice da criatura em um armazenamento global para evitar consultas ao banco de dados ao procurar o monstro boostado do dia.
     
    CreatureScript: Com o monstro atualizado no banco de dados e o armazenamento global configurado com o índice do monstro atual, verifico em um CreatureScript qual monstro o jogador está derrotando. Usando dmgMap, posso identificar um ou mais jogadores contribuindo para a morte do monstro boostado diário. Certifico-me de registrar o evento quando um jogador faz login para evitar problemas potenciais.
    Sobre as melhorias: Em vez de criar uma função responsável por passar boostedCreature(tipo, nomeDoMonstro), o que seria ideal, criei duas funções - uma para chefes e outra para criaturas. Esta é uma melhoria significativa que pode simplificar consideravelmente o código adicionando esta função de utilidade.
     
    Melhorias importantes: A função onKill do sistema de criatura boostada está funcional e sem problemas. No entanto, alguns conceitos estão faltando. Atualmente, todos os jogadores que contribuem para a morte da criatura recebem o XP total. Há uma parte comentada no código onde o compartilhamento de XP da criatura é aplicado, mas não está funcional. Isso precisa ser ajustado - sinta-se à vontade para compartilhar quaisquer insights aqui!
     
    O que está faltando: Além do XP, o monstro também deve fornecer saques extras (A fazer). Também estou trabalhando em adicionar o evento para a morte do chefe (Em andamento).
    Outras melhorias: Sinta-se à vontade para sugerir melhorias adicionais para o sistema!
     
    Alterações aqui
    Boosted system creaturescript globalevents lib by Underewarrr · Pull Request #1 · thetibiaking/forgottenserver (github.com)
  10. Curtir
    Fabi Marzan deu reputação a FeK em CSTibia (beta) - 01/03 às 16:00 | Counter Strike + Tibia   
    CSTibia (beta) | 01/03 às 16:00

    CSTibia é um jogo PvP que conecta Counter Strike e Tibia, proporcionando uma experiência única para aqueles que gostam de PvP.

    São 2 modos de jogo, 6 mapas e mais de 50 armas disponíveis para jogar!

    #Modos de jogo: Mata-mata e Torneio x1.

    #Mapas: Dust2, Inferno, Mirage, India, IceWorld e PoolDay.

    O beta estará disponível a partir do dia 01/03 às 16 horas! Ele terá duração de 1 mês e no dia 01/04 iniciará a Session 1.

    #Download: 01/03 às 12 horas.

    ▶️ Crie já sua conta!
    http://www.cstibia.com

    🎮 Discord: https://discord.gg/zdxdTTURpq

    📸 Instagram: https://www.instagram.com/cstibia
  11. Gostei
    Fabi Marzan recebeu reputação de paulo thush em (Resolvido)Ocultar msg do comando   
    Fiquei confuso, é return true
     
    function onSay(cid, words, param) local playerCoinsItemId = 2625 -- ID do item de moeda local itemToSellId = 10311 -- ID do item a ser vendido if doPlayerRemoveItem(cid, playerCoinsItemId, 8) then -- Verifica se o jogador tem as moedas necessárias local newItem = doPlayerAddItem(cid, itemToSellId, 1) -- Adiciona o item ao jogador if newItem > 0 then doItemSetAttribute(newItem, "owner", getPlayerGUID(cid)) -- Define o dono do item como o jogador atual doItemSetAttribute(newItem, "Descricao", "Item Comprado por " .. getCreatureName(cid) .. ".") -- Define a descrição do item doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MORTAREA) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce comprou o item.") else -- Lidar com o caso de falha ao adicionar o item ao jogador end else doPlayerSendCancel(cid, 'Voce nao tem 8 Fiapo Credito.') doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FLAMEAREA) end return true end  
  12. Haha
    @Fabi MarzanOlha o que eu encontrei no GitHub para modal window... Se não me engano, está correto. Vale a pena dar uma olhada.
    https://github.com/otland/forgottenserver/pull/27/commits/790ab135d258d4f802b17d76d0ea36f6bee7c3ed
  13. Curtir
    Fabi Marzan recebeu reputação de Muvukaa em [SQLite] -=[TFS]=- 0.4 8.60 Não funciona [Movements]   
    ?????
    Eu não vejo o problema
    a única coisa foi que você colocou ao contrário
    doPlayerSendTextMessage(cid, 22, "Você precisa ser VIP ou falar com o ADM para passar por este piso.")
    e
     doPlayerSendTextMessage(cid, 22, "Você precisa ser level 717217 ou falar com o ADM para passar por este piso.")
    function onStepIn(cid, item, position, fromPosition) if getPlayerGuildId(cid) > 0 then if getPlayerLevel(cid) >= 717217 then if getPlayerStorageValue(cid, 13545) - os.time() <= 0 then doPlayerSendTextMessage(cid, 22, "WELCOME!") doSendMagicEffect(getCreaturePosition(cid), 28) else doTeleportThing(cid, fromPosition) doPlayerSendTextMessage(cid, 22, "Você precisa ser VIP ou falar com o ADM para passar por este piso.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doTeleportThing(cid, fromPosition) doPlayerSendTextMessage(cid, 22, "Você precisa ser level 717217 ou falar com o ADM para passar por este piso.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doTeleportThing(cid, fromPosition) doPlayerSendTextMessage(cid, 22, "Você precisa fazer parte de alguma guild ou fala com ADM para passar por este piso.") doSendMagicEffect(getCreaturePosition(cid), 2) end return TRUE end  
  14. Curtir
    Conheço alguém que vende modal window e mounts para oldclient a um preço justo.
    Discord: Sharingan
  15. Haha
    Para aqueles que estão interessados em adotar a base do Nekiro, gostaria de anunciar que as montarias e a modal widow agora estão disponíveis. Se você deseja implementar sistemas como o de crafting com modal e outros recursos, sinta-se à vontade para fazer o download e testar.
    É importante observar que o Nekiro não incluiu mapas nesta versão. Portanto, será necessário migrar seus próprios mapas para o TFS 1.5 8.6. Alternativamente, você pode considerar utilizar a base do Luciano, conhecida como STYLLER OT. Após realizar testes, posso confirmar que essa é uma opção bastante interessante. Esta versão já está completa, permitindo que você utilize seus próprios mapas sem dificuldades significativas.
    Além disso, estou disponibilizando os sprites no formato 13x para a versão 8.6, juntamente com os arquivos items.otb e XML. Quanto à correção de eventuais erros, isso fica a seu critério, mas gostaria de ressaltar que não é uma tarefa difícil de realizar.
     
    É com satisfação que compartilho que a source está agora disponível para acesso público. Caso você deseje, pode realizar atualizações através dos commits. Estou preparando uma lista abrangente de atualizações necessárias, pois há muitas modificações a serem feitas.
    Para acessar a source, por favor, clique no link abaixo:
    https://www.mediafire.com/file/0680a4b624163pd/TFS-1.5-Downgrades-8.60.rar/file
     
    Dentro da SRC que implementei, você encontrará os seguintes recursos:
    Sistema de Montaria: Agora você pode adicionar essa funcionalidade ao seu servidor.
    Modal Window: Esta é uma janela modal, proporcionando uma experiência mais interativa para os jogadores.
     
    Custom Attributes(Boost e Relfect:: https://github.com/otland/forgottenserver/pull/2807/commits/18f5afa52a36a02ea56dae97b29e683233d15c25.
     
    Além disso, gostaria de compartilhar três repositórios no GitHub que podem ser valiosos para você. Três deles são mantidos pelos usuários @Movie e @ralke23 e a Sarah (MillhioreBT). Esses repositórios contêm recursos e scripts úteis que podem aprimorar a experiência do seu servidor. Sinta-se à vontade para explorar e utilizar esses recursos conforme necessário.
    https://github.com/moviebr/TFS-1.5-Downgrades
    https://github.com/ralke23/Greed-TFS-1.5-Downgrades
    https://github.com/MillhioreBT/forgottenserver-downgrade
     
    Para os interessados nos sprites 13x para a versão 8.6, estou disponibilizando o link para download abaixo:
    https://mega.nz/folder/5FQEnT4R#pAbmAAhpBhmcP1jaVkXm8Q
     
    Recomendo também o uso do ObjectBuilder_0_5_5-dev para facilitar o processo:
    https://github.com/punkice3407/ObjectBuilder/releases/tag/v0.5.5
     
    Para aqueles que enfrentam dificuldades na compilação do executável, estou disponibilizando um arquivo para download que pode ajudar:
    https://www.mediafire.com/file/cxirgq7n1cm2p3i/dlls+e+exe.rar/file
     
     
    Quanto à ativação do sistema de montarias via OTClient, basta acessar o arquivo game_features/features.lua e localizar a linha: 'if(version >= 860) then!' e adicionar abaixo 'g_game.enableFeature(GamePlayerMounts)'.
     
    É necessário baixar ambos os arquivos, mounts.xml e outfits.xml, para que o OtClient funcione corretamente. Sem esses arquivos, o cliente pode apresentar bugs ou até mesmo crashar sozinho. É obrigatório o uso desses arquivos. Basta fazer o download e colocá-los na base do Luciano. Basta ir até a pasta data/xml e inserir os arquivos lá. Se você estiver usando seu próprio mapa, os arquivos são igualmente necessários, independentemente de suas preferências.
    outfits.xml
    mounts.xml
     

    ATENÇÃO: Sobre a base do Luciano ou do Nekiro downgrade que você baixou (schemas.sql), ela está totalmente limpa, sem implementações adicionais. Cabe a você implementar por conta própria. Por exemplo, se você for usar o Znote, ele solicitará o esquema e as colunas necessárias. Isso não são erros, são apenas avisos. Você deve procurar pelas colunas necessárias e inseri-las para que funcione corretamente. Isso não é difícil de fazer.
    https://github.com/slawkens/myaac
    https://github.com/gesior/Gesior2012
    https://github.com/Znote/ZnoteAAC/tree/v2
     
     
    Antes de prosseguir com o download, sugiro que realize uma verificação de vírus nos arquivos. Seguem os links para o scan:
     
    Scan da SRC
    https://www.virustotal.com/gui/file/1364b14cab10a34ca7102d3581e427396f8224cc5156d6bc3859b4ebcb155de6?nocache=1
    Scan das DLLs e Executável
    https://www.virustotal.com/gui/file/603c853dbd5b40ff21b0b0004c129e5039c9954277da22722b2980fcbfcbe0ce?nocache=1
     
    IMPORTANTE: Por favor, note que a funcionalidade de montaria e janela modal não está disponível para versão old do client (CipSoft). Infelizmente, não estou oferecendo suporte para essas versões no momento. No entanto, é possível adquirir uma DLL especial que pode ser injetada no client old (CipSoft) para habilitar essas funcionalidades. Caso esteja interessado, conheço um vendedor confiável que oferece essa DLL. Para mais informações, por favor, entre em contato através do Discord: Sharingan.
  16. Gostei
    Fabi Marzan recebeu reputação de Vorkhon em [SPELL] METEORO   
    Honestamente, nao sou especialista em lua ou em fazer spells, mas fiz algo rapido para voce aqui:
    local combatOne = createCombatObject() setCombatParam(combatOne, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combatOne, COMBAT_PARAM_HITCOLOR, COLOR_MAYABLUE) setCombatFormula(combatOne, COMBAT_FORMULA_LEVELMAGIC, -1.0, -500, -1.0, -650) setCombatArea(combatOne,createCombatArea( {{1, 1, 1}, {1, 3, 1}, -- Area 3X3 {1, 1, 1}} )) local function meteor_1(cid, target) if isCreature(target) then local pos = getCreaturePosition(target) local post = getThingPosition(getCreatureTarget(cid)) local fromposition = {x = pos.x - math.random(2, 5), y = pos.y - 4, z = pos.z} local toposition = {x = post.x - math.random(1, 2), y = post.y, z = post.z} doSendDistanceShoot(fromposition, toposition, CONST_ANI_FIRE) doSendMagicEffect(pos, CONST_ME_FIREAREA) end end local function meteor_2(cid, target) if isCreature(target) then local pos = getCreaturePosition(target) local post = getThingPosition(getCreatureTarget(cid)) local fromposition = {x = pos.x + math.random(2, 5), y = pos.y - 4, z = pos.z} local toposition = {x = post.x + math.random(1, 2), y = post.y, z = post.z} doSendDistanceShoot(fromposition, toposition, CONST_ANI_FIRE) doSendMagicEffect(pos, CONST_ME_FIREAREA) end end local function meteor_3(cid, target) if isCreature(target) then local pos = getCreaturePosition(target) local post = getThingPosition(getCreatureTarget(cid)) local fromposition = {x = pos.x, y = pos.y - 4, z = pos.z} local toposition = {x = post.x, y = post.y, z = post.z} doSendDistanceShoot(fromposition, toposition, CONST_ANI_FIRE) doSendMagicEffect(pos, CONST_ME_FIREAREA) end end local config = { hit = 1, time = 1200, -- meteor_1 time_2 = 1300, -- meteor_2 time_3 = 1500, -- meteor_3 numberOfAttacks = 3, attackInterval = 200 } function onCastSpell(cid, var) addEvent(function() doCombat(cid, combatOne, var) end, 1200) local pos = getCreaturePosition(cid) for i = 1, config.numberOfAttacks do addEvent(function() doSendDistanceShoot(pos, {x = pos.x - math.random(4, 6), y = pos.y - 5, z = pos.z}, CONST_ANI_FIRE) end, config.attackInterval * i) end for fbn = 1, config.hit do addEvent(meteor_1, config.time * fbn, cid, getCreatureTarget(cid)) addEvent(meteor_2, config.time_2 * fbn, cid, getCreatureTarget(cid)) addEvent(meteor_3, config.time_3 * fbn, cid, getCreatureTarget(cid)) end return true end  
  17. Curtir
    Não tenho conhecimento disso
    mas o jeito que eu sei seria modificar os scripts para que não detecte os nomes da lista, como neste caso os scripts acima
     
    if not isInArray(blocked_name, getPlayerName(cid)) then -- scripts return true end  
  18. Obrigado
    mas você quer que ele cure enquanto o jogador ainda está no chão?
    Acabei de mover o addEvent e use StopEvent.
     
    local level = 717217 -- Até que level pode healar local delay = 4 -- de quanto em quanto tempo irá adicionar (no caso, 1 segundo) local mana = 1000000000 -- quanto de mana vai ser adicionado local vida = 1000000000 -- quanto de health vai ser adicionado local eventId function doHealPlayer(cid) if getPlayerStorageValue(cid, 98910) == 1 then doCreatureAddHealth(cid, mana) doPlayerAddMana(cid,vida) doSendAnimatedText(getCreaturePos(cid), "|ROX|...", 138) doSendMagicEffect(getCreaturePosition(cid),53) eventId = addEvent(doHealPlayer, delay*1000, cid) end return true end function onStepIn(cid, item, position, lastPosition, fromPosition) if getPlayerLevel(cid) >= level then doPlayerSendCancel(cid,"Você já é acima do level ".. level .."") else setPlayerStorageValue(cid, 98910, 1) doHealPlayer(cid) end return true end function onStepOut(cid, item, position, lastPosition, fromPosition) setPlayerStorageValue(cid, 98910, -1) stopEvent(eventId) return true end  
  19. Obrigado
    Fabi Marzan recebeu reputação de Doidodepeda em Movement com max de player   
    Se não funcionar para você, tenho esse que fica na área.
     
    Essa será a área
    From = {x = 1069, y = 1027, z = 6}, -- Area Left
    To = {x = 1071, y = 1030, z = 7}, -- Area Corner
    local c = { limit = 5, -- Limit players msgCancel = "Nao pode entrar mais.", area = { From = {x = 1069, y = 1027, z = 6}, -- Area Left To = {x = 1071, y = 1030, z = 7}, -- Area Corner }, pos = {x = 1070, y = 1030, z = 7}, -- TPS Players } local function getPlayersInArea(fromPos, toPos) local t = {} for _, cid in ipairs(getPlayersOnline()) do if isInRange(getThingPos(cid), fromPos, toPos) then table.insert(t, cid) end end return t end function onStepIn(cid, item, fromPos, toPos) if isPlayer(cid) then if table.getn(getPlayersInArea(c.area.From, c.area.To)) < c.limit then doSendMagicEffect(fromPos, CONST_ME_TELEPORT) doTeleportThing(cid, c.pos) doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT) else doPlayerSendCancel(cid, c.msgCancel) doTeleportThing(cid, toPos, false) end end return true end  
  20. Curtir
    function onSay(cid, words, param, channel) local moedaId = 11192 local itemCount = getPlayerItemCount(cid, moedaId) local itemName = getItemNameById(moedaId) if itemCount > 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have " .. itemCount .. " " .. itemName .. (itemCount > 1 and "s" or "") .. " coin" .. (itemCount ~= 1 and "s" or "") .. ".") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don't have any " .. getItemNameById(moedaId) .. " coin.") end return false end  
  21. Curtir
    mas você quer que ele cure enquanto o jogador ainda está no chão?
    Acabei de mover o addEvent e use StopEvent.
     
    local level = 717217 -- Até que level pode healar local delay = 4 -- de quanto em quanto tempo irá adicionar (no caso, 1 segundo) local mana = 1000000000 -- quanto de mana vai ser adicionado local vida = 1000000000 -- quanto de health vai ser adicionado local eventId function doHealPlayer(cid) if getPlayerStorageValue(cid, 98910) == 1 then doCreatureAddHealth(cid, mana) doPlayerAddMana(cid,vida) doSendAnimatedText(getCreaturePos(cid), "|ROX|...", 138) doSendMagicEffect(getCreaturePosition(cid),53) eventId = addEvent(doHealPlayer, delay*1000, cid) end return true end function onStepIn(cid, item, position, lastPosition, fromPosition) if getPlayerLevel(cid) >= level then doPlayerSendCancel(cid,"Você já é acima do level ".. level .."") else setPlayerStorageValue(cid, 98910, 1) doHealPlayer(cid) end return true end function onStepOut(cid, item, position, lastPosition, fromPosition) setPlayerStorageValue(cid, 98910, -1) stopEvent(eventId) return true end  
  22. Gostei
    Fabi Marzan recebeu reputação de Vorkhon em NPC de barco que checa Addon   
    if player:hasOutfit(153) and player:hasOutfit(157) then Troca pra 
     
    if not player:hasOutfit(153) and not player:hasOutfit(157) then  
    local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end local function creatureSayCallback(cid, type, msg) if not npcHandler:isFocused(cid) then return false end local player = Player(cid) if not player:isPlayer() then return false end if msgcontains(msg, "sail") then if player:hasOutfit(153) and player:hasOutfit(157) then if player:removeMoney(50) then npcHandler:say("Good luck.", cid) npcHandler:releaseFocus(cid) player:teleportTo(Position(32227, 31756, 7)) else npcHandler:say("Nao tem dinheiro.", cid) npcHandler:releaseFocus(cid) end else npcHandler:say("Voce não pode, voce é da classe X.", cid) npcHandler:releaseFocus(cid) end end return true end npcHandler:setMessage(MESSAGE_GREET, 'Olá, com meu barco você pode {sail} para x.') npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())  
  23. Curtir
    function onUse(cid, item, frompos, item2, topos) if item.uid == 1664 then queststatus = getPlayerStorageValue(cid,1664) if queststatus == -1 then if getPlayerLevel(cid) >= 300 then doPlayerSendTextMessage(cid,25,"Parabens Ganho 3kk.") doPlayerAddItem(cid,2160,300) doPlayerAddItem(cid,2383,1) doPlayerAddItem(cid,2390,1) doPlayerAddItem(cid,10518,1) doPlayerAddItem(cid,2471,1) doPlayerAddItem(cid,2646,1) doPlayerAddItem(cid,2469,1) doPlayerAddItem(cid,2523,1) doPlayerAddItem(cid,2494,1) doPlayerAddItem(cid,8926,1) doPlayerAddItem(cid,7431,1) doPlayerAddItem(cid,7368,1) doPlayerAddItem(cid,8910,1) doPlayerAddItem(cid,2789,100) doPlayerAddItem(cid,10518,1) setPlayerStorageValue(cid,1664,1) else doPlayerSendTextMessage(cid,22,"Precisa do level 300 pra ussar.") end else doPlayerSendTextMessage(cid,22,"Voce ja pegou o bonus") end else return 0 end return 1 end  
  24. Curtir
    Os revscripts são utilizados a partir da versão 1.3, no seu caso é um mods que a 0.4 utiliza e não faço ideia de como o utilizar, deixei de utilizar a versão 0.X há muito tempo.
  25. Gostei
    function onSay(cid, words, param) if getPlayerLevel(cid) == 717217 and getPlayerStorageValue(cid, 13545) == 1 then if doPlayerRemoveMoney(cid, 0) == TRUE then local bp = doPlayerAddItem(cid, 5805, 1) doCreatureSay(cid, "Você comprou um item para desbugar a CAP.", TALKTYPE_ORANGE_1) else doCreatureSay(cid, "Item grátis", TALKTYPE_ORANGE_1) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end else doCreatureSay(cid, "Você não atende aos requisitos para comprar o item.", TALKTYPE_ORANGE_1) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end end  
    basta eliminar: and isPremium(cid)

Informação Importante

Confirmação de Termo