Ir para conteúdo
  • Cadastre-se

(Resolvido)Animate Dead Spell


Ir para solução Resolvido por So volto tarde,

Posts Recomendados

Alguém podeira me ajudar nessa Spell. Ela summona um monstro quando a Corpse por perto, queria que tivesse um limite, queria no max 4. Se alguém poder me ajudar, agradeço.

 

local function doTargetCorpse(cid, pos)
    local getPos = pos
    getPos.stackpos = STACKPOS_TOP_MOVEABLE_ITEM_OR_CREATURE

    local corpse = getThingFromPos(getPos)
    if(corpse.uid > 0 and isCorpse(corpse.uid) and isMoveable(corpse.uid) and getCreatureSkullType(cid) ~= SKULL_BLACK) then
        doRemoveItem(corpse.uid)
        local creature = doCreateMonster(cid, "Skeleton", pos)
        doConvinceCreature(cid, creature)

        doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE)
        return true
    end

    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
    doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
    return false
end

function onCastSpell(cid, var)
    local pos = variantToPosition(var)
    if(pos.x ~= 0 and pos.y ~= 0) then
        return doTargetCorpse(cid, pos)
    end

    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
    doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
    return false
end
 

Link para o post
Compartilhar em outros sites
  • Moderador
  • Solução
Citar

local function doTargetCorpse(cid, pos)
    local getPos = pos
    getPos.stackpos = STACKPOS_TOP_MOVEABLE_ITEM_OR_CREATURE

    local corpse = getThingFromPos(getPos)
    if(corpse.uid > 0 and isCorpse(corpse.uid) and isMoveable(corpse.uid) and getCreatureSkullType(cid) ~= SKULL_BLACK and #getCreatureSummons(cid) < 4) then
        doRemoveItem(corpse.uid)
        local creature = doCreateMonster(cid, "Skeleton", pos)
        doConvinceCreature(cid, creature)

        doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE)
        return true
    end

    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
    doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
    return false
end

function onCastSpell(cid, var)
    local pos = variantToPosition(var)
    if(pos.x ~= 0 and pos.y ~= 0) then
        return doTargetCorpse(cid, pos)
    end

    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
    doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
    return false
end

 

Link para o post
Compartilhar em outros sites
  • Moderador
Em 21/07/2021 em 21:53, TheFrost disse:

Vlw, deu certin. Só mais uma coisinha, teria como colocar tipo nos 4 corpse, nascer um monster diferente?

 

com certeza, porém eu não tenho tal conhecimento pra isso xd

uma coisa que daria pra fazer é randomizar o monstro que nasce em cada corpse

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo