Ir para conteúdo

maicao22

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    maicao22 recebeu reputação de Mathias Kenfi em Ajuda em script de remover parede ao matar boss   
    Simplesmente perfeito meu amigo.
     
    Muito obrigado mesmo. Nao so pelo script em si, mas por ceder um pouco do seu tempo para me ajudar. Tudo de bom para voce brother!
  2. Curtir
    maicao22 deu reputação a Mathias Kenfi em Ajuda em script de remover parede ao matar boss   
    Editei o post com script alterado
  3. Curtir
    maicao22 deu reputação a Mathias Kenfi em Ajuda em script de remover parede ao matar boss   
    Este tipo de comentário é desnecessário e considerado SPAM!
     
     
    Script:
    --[[Script criado por ~Mathias Kenfi Email: [email protected] Contato: 034991286815 ]]-- local config = { ["Cat"] ={ pos = {x=1023,y=1050,z=7}, -- Position aonde fica a parede e será criado a porta wall = 1100, -- ID da parede door = {1210, 1211}, -- ID da porta fechada e porta aberta aid = 43232, -- Action ID da porta time = 10 -- Tempo em segundos que a porta irá sumir } } function onCreateWall(item, pos, item2, pos2) local teelz = doCreateItem(item, 1, pos) for _, door in ipairs(item2) do if getTileItemById(pos2, door).uid > 100 then doRemoveItem(getTileItemById(pos2, door).uid) doSendMagicEffect(pos, 10) return true end end return false end function onCreateDoor(item, pos, item2, pos2, aid, time) local teelz = doCreateItem(item[1], 1, pos) if getTileItemById(pos2, item2).uid > 100 then doRemoveItem(getTileItemById(pos2, item2).uid) doItemSetAttribute(teelz, "aid", aid) doSendMagicEffect(pos, 10) return addEvent(onCreateWall, time*1000, item2, pos2, item, pos) end return false end function onDeath(cid, corpse, deathList) monster = config[getCreatureName(cid)] if isMonster(cid) and monster then if getTileItemById(monster.pos, monster.wall).uid > 100 then onCreateDoor(monster.door, monster.pos, monster.wall, monster.pos, monster.aid, monster.time) end end return true end Creaturescripts.xml
    <event type="death" name="NOMEDATAG" event="script" value="NOMEDOARQUIVO.lua"/> E lembre-se de colocar a tag no monstro também
    <script> <event name="NOMEDATAG"/> </script> Registre em login.lua
    registerCreatureEvent(cid, "NOMEDATAG")  
  4. Curtir
    maicao22 deu reputação a luanluciano93 em Ajuda com script da anihi modificado   
    Coloque uma storage no teleport de saida setando ela como 0.

    Antes dessa linha: 
    doSendMagicEffect(t.saida[i], CONST_ME_ENERGYAREA) Coloca setando esta storage como 1.

    E na verificação coloca uma condição de teleportar apenas quem tem a storage com valor 1.
    function VarAnihiPlayer(cid) if not isCreature(cid) then return LUA_ERROR end if #getPlayersInArea(config.from, config.to) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end end  
  5. Curtir
    maicao22 deu reputação a Vodkart em Ajuda com script da anihi modificado   
    na verdade n precisa nem atribuir storage, a função da anihi no caso para esse codigo, está errada... use assim:
     
    local config = { from = {x = 22987, y = 19805, z = 7}, -- coordenada do canto superior esquerdo da área. to = {x = 23024, y = 19992, z = 7}, -- coordenada do canto inferior direito da área. } local t = { lvl = 100, Time = 2, -- em minutos entrada = { {x = 23052, y = 19991, z = 7}, -- pos players {x = 23051, y = 19991, z = 7}, {x = 23050, y = 19991, z = 7}, {x = 23049, y = 19991, z = 7} }, saida = { {x = 23017, y = 19985, z = 7}, -- pos para onde eles irão {x = 23019, y = 19985, z = 7}, {x = 23017, y = 19987, z = 7}, {x = 23019, y = 19987, z = 7} }, monstros = { {{x = 23004, y = 19832, z = 7}, "Juggernaut"}, -- defina pos dos montros e nomes {{x = 23004, y = 19834, z = 7}, "Ghazbaran"} } } local function getPlayersInArea(fromPos, toPos) local players = {} for _, pid in ipairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), fromPos, toPos) then table.insert(players, pid) end end return players end local function VarAnihiPlayer(cid) if not isCreature(cid) then return LUA_ERROR end if isInRange(getPlayerPosition(cid), config.from, config.to) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end end function onUse(cid, item, fromPosition, itemEx, toPosition) local check = {} if #getPlayersInArea(config.from, config.to) > 0 then doPlayerSendCancel(cid, 'Aguarde, tem jogadores fazendo a quest.') return true end for _, k in ipairs(t.entrada) do local x = getTopCreature(k).uid if(x == 0 or not isPlayer(x) or getPlayerLevel(x) < t.lvl) then doPlayerSendCancel(cid, 'Está faltando player ou alguém não possui level '..t.lvl..' ou mais.') return true end table.insert(check, x) end for _, summon in pairs(t.monstros) do local creature = getTopCreature(summon[1]).uid if(creature > 0 and not isPlayer(creature)) then doRemoveCreature(creature) end doCleanTile(summon[1]) doCreateMonster(summon[2], summon[1]) end for i, tid in ipairs(check) do doSendMagicEffect(t.entrada[i], CONST_ME_POFF) doTeleportThing(tid, t.saida[i], false) addEvent(VarAnihiPlayer, t.Time*60*1000, tid) doSendMagicEffect(t.saida[i], CONST_ME_ENERGYAREA) end doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945) return true end  
  6. Curtir
    function onStatsChange(cid, attacker, type, combat, value) local monster = "Rabbit" -- nome do boss if not isMonster(cid) then return true end if type == STATSCHANGE_HEALTHLOSS and getCreatureName(cid):lower() == monster:lower() then if #getCreatureSummons(cid) ~= 0 then return false end end return true end  
    Tag
    <event type="statschange" name="NoDamageBoss" event="script" value="nome do seu script.lua"/> Na XML do monstro adc:
    <script> <event name="NoDamageBoss"/> </script>  
  7. Curtir
    @maicao22 seu servidor não tem a função onStats... apaga tudo aí que te mandei, e dentro do xml do monstro apaga o event tbm, claro... (obs: apa as tags tbm)
     
     
     
    agora usa assim:
     
    nome do seu script.lua
    function onLogin(cid)     registerCreatureEvent(cid, "noBossDamage")     return true end function onCombat(cid, target)     if isPlayer(cid) and isMonster(target) then     local monster = "Rabbit" -- nome do boss             if getCreatureName(target):lower() == monster:lower() and #getCreatureSummons(target) ~= 0 then                 return false             end     end      return true  end TAG
    <event type="login" name="noBossLogin" event="script" value="nome do seu script.lua"/> <event type="combat" name="noBossDamage" event="script" value="nome do seu script.lua"/>  
  8. Curtir
    recebo o seguinte erro vodkart.
     
    >>> Loading creaturescripts... [Error - CreatureEvent::configureEvent] No valid type for creature event: sta´╗┐tschange.
  9. Curtir
    maicao22 deu reputação a Mathias Kenfi em Dropar item so se tiver determinada storage   
    Da forma que você quer especificamente, você pode simplesmente criar 1 monstro novo só que com nome de Demon
     

    E para Capacity está aqui V
     
  10. Curtir
    maicao22 deu reputação a Mathias Kenfi em Dropar item so se tiver determinada storage   
    Atualizei o tópico
  11. Curtir
    maicao22 deu reputação a Ackerzin em MONSTRO SE MATANDO COM SEUS SPELLS   
    Em creaturescript
    <event type="statschange" name="noattack" event="script" value="noattackbixo.lua"/> noattackbixo.lua
     
    registra isso no login.lua
    registerCreatureEvent(cid, "noattack") E registra em todos os monstros esse event 
    <script> <event name="noattack"/> </script>  
    Pra não ter que fazer 1 por 1, baixa o Sublime Text3, vai em project > add folder to project > seleciona a pasta monster > clica com o direito na pasta MONSTER que abriu no Sublime > find in folder.
     
     
    Coloca pra procurar por
    </immunities> E substituir por 
    </immunities> <script> <event name="noattack"/> </script> E assim todos seus monstros teram a tag, sucesso!
  12. Obrigado
    maicao22 deu reputação a Wend II em (Resolvido)Alavanca criando monstro   
    Só ir adicionando mais linha, tipo isso que fiz 

    local time = 20 -- tempo em segundos para usar local monster = "Demon" -- "Monstro" entre aspas local monster1 = "Demon" -- "Monstro" entre aspas local pos = {x = 123, y = 456, z = 7} -- Posição que irá nascer. local pos1 = {x = 123, y = 456, z = 7} -- Posição que irá nascer.   function onUse(cid, item, frompos, itemex, topos)   if item.itemid % 2 == 1 then doTransformItem(item.uid, item.itemid + 1) else doTransformItem(item.uid, item.itemid + -1) end   if getStorage(1249) - os.time() < 1 then      doSetStorage(1249, os.time() + time)      addEvent(function() doCreateMonster(monster, pos) end, 10000)      addEvent(function() doCreateMonster(monster1, pos1) end, 10000)      doCreatureSay(cid, "In 10 seconds the boss will appear.", TALKTYPE_MONSTER) else doPlayerSendCancel(cid, "You need wait ".. getStorage(1249) - os.time() .." seconds to use again")      doSendMagicEffect(getThingPos(cid), CONST_ME_POFF)     end     return true   end  
    dupliquei a linha local monster = "Demon" editando apenas o local monster para local monster1
    mesma coisa fiz com a linha local pos = {x = 123, y = 456, z = 7} que dupliquei e editei para local pos1 =
     
    feito isso agora é só duplicar a linha addEvent(function() doCreateMonster(monster, pos) end, 10000) deixando ele configurada , alterando ali (monster, pos) para (monster1, pos1)
  13. Gostei
    maicao22 deu reputação a Vodkart em (Resolvido)[BUG] Script de Healar o Boss   
    local config = { life_ative = 500000, life_add = 300000, seconds_ative = 20, gStorage = 90702, monster = "Gaz'Haragoth" -- nome do monstro } function AddHealth(cid) setGlobalStorageValue(config.gStorage, 0) if not isCreature(cid) then return false end doCreatureAddHealth(cid, config.life_add) doCreatureSay(cid, "Gaz'Haragoth HEALS himself!", TALKTYPE_MONSTER) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_MAGIC_RED) end function onStatsChange(cid, attacker, type, combat, value) if (getGlobalStorageValue(config.gStorage) < 1 and type == STATSCHANGE_HEALTHLOSS and getCreatureName(cid) == config.monster and getCreatureHealth(cid) < config.life_ative) then doCreatureSay(cid, "Gaz'Haragoth beginns to draw on the miniums to HEAL himself!", TALKTYPE_MONSTER) addEvent(AddHealth, config.seconds_ative * 1000, cid) setGlobalStorageValue(config.gStorage, 1) end return true end  
  14. Gostei
    maicao22 deu reputação a Bodak Reborn em gaz'haragoth Spells   
    local voc = {1, 2, 3, 4, 5, 6, 7, 8} arr = { {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, } local area = createCombatArea(arr) local combat = createCombatObject() setCombatArea(combat, area) function onTargetTile(cid, pos) local creatureTable = {} local n, i = getTileInfo({x=pos.x, y=pos.y, z=pos.z}).creatures, 1 if n ~= 0 then local v = getThingfromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i}).uid while v ~= 0 do if isCreature(v) == true then table.insert(creatureTable, v) if n == #creatureTable then break end end i = i + 1 v = getThingfromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i}).uid end end if #creatureTable ~= nil and #creatureTable > 0 then for r = 1, #creatureTable do if creatureTable[r] ~= cid then local min = 30000 local max = 30000 if isPlayer(creatureTable[r]) == true and isInArray(voc, getPlayerVocation(creatureTable[r])) == true then doTargetCombatHealth(cid, creatureTable[r], COMBAT_ENERGYDAMAGE, -min, -max, CONST_ME_NONE) elseif isMonster(creatureTable[r]) == true then doTargetCombatHealth(cid, creatureTable[r], COMBAT_ENERGYDAMAGE, -min, -max, CONST_ME_NONE) end end end end doSendMagicEffect(pos, CONST_ME_PURPLEENERGY) return true end setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile") local function delayedCastSpell(cid) if isCreature(cid) == true then doCombat(cid, combat, positionToVariant(getCreaturePosition(cid))) doCreatureSay(cid, "Gaz'haragoth calls down: DEATH AND DOOM!", TALKTYPE_ORANGE_2) end end function onCastSpell(cid, var) doCreatureSay(cid, "Gaz'haragoth begins to channel DEATH AND DOOM into the area! RUN!", TALKTYPE_ORANGE_2) addEvent(delayedCastSpell, 5000, cid) return true end  
  15. Obrigado
    maicao22 recebeu reputação de DdJs em Dark Complex | Cave Hunt | 8.60   
    Muito bom! Vou usar em meu projeto. Obrigado por compartilhar.
  16. Gostei
    maicao22 deu reputação a DdJs em Dark Complex | Cave Hunt | 8.60   
    Cave hunt - Dark Complex.
     
    Download: Here
     
    Scan: Here

    Imagens:
     

     
     

     
     

     
     

     

     

     
     

     

     

     

  17. Gostei
    maicao22 deu reputação a DdJs em Giant Spiders Cave | Cave Hunt | 8.60   
    Cave hunt - Giant Spiders Cave.
     
    Download: Here
     
    Scan: Here

    Imagens:
     

     

     

     

     

  18. Gostei
    maicao22 deu reputação a maya em (Resolvido)Ajuda refine system mock   
    gainArmor='&p+1',loseArmor='&p-1', gainShield='&s+2',loseShield='&s-2', gainAttack='&a+2',loseAttack='&a-2', gainDefense='&d+2',loseDefense='&d-2', remplaze
     
    gainArmor='&p+1',loseArmor='&p-1', gainShield='&s+1',loseShield='&s-1', gainAttack='&a+1',loseAttack='&a-1', gainDefense='&d+1',loseDefense='&d-1',  
  19. Gostei
    maicao22 deu reputação a KotZletY em (Resolvido)Ajuda refine system mock   
    @maicao22 modifique o ataque para +1 nas configurações do script. De:
    gainAttack='&a+2' para:
    gainAttack='&a+1'  
  20. Gostei
    Tudo correto, verifica se o derrotarboss.lua está na pasta principal do creaturescripts e não dentro de outra.
    Acredito que não seja erro no monster.xml visto que o erro da console é de não ter encontrado o nome do evento...
    verifica ae onde você deixou o arquivo derrotarboss.lua.
     
    por via das dúvidas o monster.xml do que eu testei o script:
    draken spellweaver.xml

Informação Importante

Confirmação de Termo