Ir para conteúdo
  • Cadastre-se

(Resolvido)[Summon] Spell ou talkaction que sumona monstros de acordo com o level


Ir para solução Resolvido por antharaz,

Posts Recomendados

Ola, Gostaria de 1 script que quando o player fale uma palavra (EX: "utevo gran res") sumonasse 1x monstro por vez de acordo com o level do player:

gostaria de colocar 6 monstros em 1 script só (tipo um PET que ataque o monstro que o player atacar)

(lvl 1 ~ 100)    --> monstro 1 (configuravel)

(lvl 100 ~ 200)  -->  monstro 2 (configuravel)

(lvl 200 ~ 300)  --> monstro 3 (configuravel)

(lvl 300 ~ 400) ---> monstro 4 (configuravel)
(lvl 400 ~ 500)  ---> monstro 5 (configuravel)
(lvl 500 ~ 600)   ---> monstro 6 (configuravel)
se possivel alguem poderia me mandar um script semelhante ou igual a esse? obg

script como base só tenho esse (ta sumonando monstro infinito), mas nao sei editar como eu quero, ajuda plos =/
 

Talkaction

Citar

 

function onSay(cid, words, param, channel)

local monster = "bat"
local pos = getThingPos(cid)

 if getTilePzInfo(getPlayerPosition(cid)) then
 doPlayerSendCancel(cid, "Este item nao e permitida em uma zona de Pz.")
 doSendMagicEffect(fromPosition, CONST_ME_POFF)
 else
 doPlayerSendCancel(cid, "Voce sumonou um "..monster)
 doConvinceCreature(monster,pos)
doConvinceCreature(cid, doSummonCreature(monster,pos))
 end
 return true
end

 

 

Editado por poko360 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
function onSay(cid, words, param, channel)
    local config = {
        ["Monstro1"] = (l = 1, h = 99),
        ["Monstro2"] = (l = 100, h = 199),
        ["Monstro3"] = (l = 200, h = 999)
    }
    local pos = getThingPos(cid)
    for var, monstro in pairs(config) do
        if getTilePzInfo(getPlayerPosition(cid)) then
            doPlayerSendCancel(cid, "Isto não é permitido em zona de proteção.")
            doSendMagicEffect(fromPosition, CONST_ME_POFF)
        else
            if doPlayerGetLevel(cid) >= config[monstro].l and doPlayerGetLevel(cid) <= config[monstro].h then
                doPlayerSendCancel(cid, "Você sumonou um " .. config[monstro] .. ".")
                doConvinceCreature(config[monstro],pos)
                doConvinceCreature(cid, doSummonCreature(config[monstro],pos))
            else
                doPlayerSendCancel(cid, "Não existe summon para seu nível.")
            end
        end
    end
    return true
end

Não testei, disponha :)

Link para o post
Compartilhar em outros sites
local config = {
        ["Monstro1"] = (l = 1, h = 99),
        ["Monstro2"] = (l = 100, h = 199),
        ["Monstro3"] = (l = 200, h = 999)
    }

 

local config = {
        ["Monstro1"] = {l = 1, h = 99},
        ["Monstro2"] = {l = 100, h = 199},
        ["Monstro3"] = {l = 200, h = 999}
    }

 

Link para o post
Compartilhar em outros sites
6 horas atrás, buchal disse:

local config = {
        ["Monstro1"] = (l = 1, h = 99),
        ["Monstro2"] = (l = 100, h = 199),
        ["Monstro3"] = (l = 200, h = 999)
    }

 


local config = {
        ["Monstro1"] = {l = 1, h = 99},
        ["Monstro2"] = {l = 100, h = 199},
        ["Monstro3"] = {l = 200, h = 999}
    }

 

agora o error sumiu, quando dou /reload talkactions n aparece nada, mas n funciona tbm =s

Link para o post
Compartilhar em outros sites

@poko360 

 

Acho que o que você procura é algo assim:

 

Spoiler

local monstros = {
					["Dragon"] = {lvlmin = 1, lvlmax = 100},
					["Dragon Lord"] = {lvlmin = 100, lvlmax = 200},
					["Demodras"] = {lvlmin = 200, lvlmax = 300},
					["Demon"] = {lvlmin = 300, lvlmax = 400}
}

function onSay(cid, words, param, channel)
	for name,t in pairs(monstros) do
		if getPlayerLevel(cid) > t.lvlmin and getPlayerLevel(cid) <= t.lvlmax then
				doSummonMonster(cid,name)
				break
		end
	end
	return true
end

 

 

Link para o post
Compartilhar em outros sites

 

3 horas atrás, antharaz disse:

@poko360 

 

Acho que o que você procura é algo assim:

 

  Mostrar conteúdo oculto


local monstros = {
					["Dragon"] = {lvlmin = 1, lvlmax = 100},
					["Dragon Lord"] = {lvlmin = 100, lvlmax = 200},
					["Demodras"] = {lvlmin = 200, lvlmax = 300},
					["Demon"] = {lvlmin = 300, lvlmax = 400}
}

function onSay(cid, words, param, channel)
	for name,t in pairs(monstros) do
		if getPlayerLevel(cid) > t.lvlmin and getPlayerLevel(cid) <= t.lvlmax then
				doSummonMonster(cid,name)
				break
		end
	end
	return true
end

 

 

eu coloquei o script , dei /reload talkactions, e nao funcionou, tbm n deu nada no distro =s

Editado por poko360 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
43 minutos atrás, antharaz disse:

@poko360 Tem 2 opções, ou vc n ta entre nenhum lvl min e max, ou vc colocou no arquivo errado. Testei aqui e ta 100%, pedi para um amigo testar e ta 100% tbm.

verifiquei umas 3x, ta td certo, mas nao funciona, n aparece nada na tela =//


        <talkaction words="utevo gran res" event="script" value="utevo gran res.lua"/>

 


image.thumb.png.2aaf455c326bb56879ee23a4d82c1936.png

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

Essa talkaction se estiver correta, não está rodando o scriupt que eu fiz, pois nele a fala do cara não sai DE NENHUMA MANEIRA na tela. Caso queira, me passe skype por pm que te ajudo.

 

 

---- EDITADO

 

Coloquei em forma de spell e com limite de 1 summon conforme solicitado:

 

Spoiler

local monstros = {
					["Dragon"] = {lvlmin = 1, lvlmax = 100},
					["Dragon Lord"] = {lvlmin = 100, lvlmax = 200},
					["Demodras"] = {lvlmin = 200, lvlmax = 300},
					["Demon"] = {lvlmin = 300, lvlmax = 400}
}


function onCastSpell(cid, var)
	if #getCreatureSummons(cid) >= 1 then
		doSendMagicEffect(getThingPos(cid),2)
		return false
	end
	for name,t in pairs(monstros) do
		if getPlayerLevel(cid) > t.lvlmin and getPlayerLevel(cid) <= t.lvlmax then
				doSummonMonster(cid,name)
				break
		end
	end
	return true
end

 

 

Editado por antharaz (veja o histórico de edições)
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