Ir para conteúdo
  • Cadastre-se

(Resolvido)Spell sumon por level


Ir para solução Resolvido por zipter98,

Posts Recomendados

Quero uma spell que seu sumon mudar de acordo com seu level.

25 sumonar rat

50 sumonar dragon

75 sumonar dragon lord

100 sumonar demon

rep+

Editado por ZwhiteDog (veja o histórico de edições)

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

Up

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

Tem limite de summon ? Ou é sumonado ilimitadamente ?

                              _
                          .-'` `}
                  _./)   /       }
                .'o   \ |       }
                '.___.'`.\    {`
                /`\_/  , `.    }                                      ME DA UMA NOZ!
                \=' .-'   _`\  {
                 `'`;/      `,  }
                    _\   @   ;  }
                   /__`;-...'--'

Cluck!

Link para o post
Compartilhar em outros sites
function onCastSpell(cid, var)

	local config = {	 	
	 	max_summons = 1, -- Max de summons pode ser criado...
	 	monster_summon = {"Rat", "Dragon", "Dragon Lord", "Demon"}, -- Nome do summon
	 }

 	if #getCreatureSummons(cid) < config.max_summons then
 		if getPlayerLevel(cid) >= 25 and getPlayerLevel(cid) <= 49 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[1], getThingPos(cid)))
 		elseif getPlayerLevel(cid) >= 50 and getPlayerLevel(cid) <= 74 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[2], getThingPos(cid)))
 		elseif getPlayerLevel(cid) >= 75 and getPlayerLevel(cid) <= 99 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[3], getThingPos(cid)))
 		elseif getPlayerLevel(cid) >= 100 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[4], getThingPos(cid)))
 		end
 	else
 		doSendMagicEffect(getThingPos(cid), 12)
 		doPlayerSendTextMessage(cid, 19, "Voce so pode invocar ".. config.max_summons .. " summons.")
 	end

 	return true
 end

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

Tem limite de summon ? Ou é sumonado ilimitadamente ?

 

N so ate lvl 300

 

 

function onCastSpell(cid, var)

	local config = {	 	
	 	max_summons = 1, -- Max de summons pode ser criado...
	 	monster_summon = {"Rat", "Dragon", "Dragon Lord", "Demon"}, -- Nome do summon
	 }

 	if #getCreatureSummons(cid) < config.max_summons then
 		if getPlayerLevel(cid) >= 25 and getPlayerLevel(cid) <= 49 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[1], getThingPos(cid)))
 		elseif getPlayerLevel(cid) >= 50 and getPlayerLevel(cid) <= 74 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[2], getThingPos(cid)))
 		elseif getPlayerLevel(cid) >= 75 and getPlayerLevel(cid) <= 99 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[3], getThingPos(cid)))
 		elseif getPlayerLevel(cid) >= 100 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[4], getThingPos(cid)))
 		end
 	else
 		doSendMagicEffect(getThingPos(cid), 12)
 		doPlayerSendTextMessage(cid, 19, "Voce so pode invocar ".. config.max_summons .. " summons.")
 	end

 	return true
 end

 

Tem como coloca uma mensagem em cima do sumon ao cria

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

N so ate lvl 300

 

 

 

Tem como coloca uma mensagem em cima do sumon ao cria

 

Ou seja trocar o nome da criatura ? se sim só adicionando essa função na source e fazendo uns POG no script(algo que deixo claro, que eu não farei).

 

https://otland.net/threads/change-existing-monster-name-in-game.131643/

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

Ou seja trocar o nome da criatura ? se sim só adicionando essa função na source e fazendo uns POG no script(algo que deixo claro, que eu não farei).

 

https://otland.net/threads/change-existing-monster-name-in-game.131643/

 

n eu n quero troca o nome da criatura quero  que aparece um mensagem simples tipo " Cheguei " subindo no sumon so ao cria. e outra coisa eu quero o monster n atake o seu dono,

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

Assim ?

function onCastSpell(cid, var)

	local config = {	 	
	 	max_summons = 1, -- Max de summons pode ser criado...
	 	monster_summon = {"Rat", "Dragon", "Dragon Lord", "Demon"}, -- Nome do summon
	 }

 	if #getCreatureSummons(cid) < config.max_summons then
 		if getPlayerLevel(cid) >= 25 and getPlayerLevel(cid) <= 49 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[1], getThingPos(cid)))
 			doCreatureSay(cid, "Cheguei", TALKTYPE_ORANGE_1)
 		elseif getPlayerLevel(cid) >= 50 and getPlayerLevel(cid) <= 74 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[2], getThingPos(cid)))
 			doCreatureSay(cid, "Cheguei", TALKTYPE_ORANGE_1)
 		elseif getPlayerLevel(cid) >= 75 and getPlayerLevel(cid) <= 99 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[3], getThingPos(cid)))
 			doCreatureSay(cid, "Cheguei", TALKTYPE_ORANGE_1)
 		elseif getPlayerLevel(cid) >= 100 then
 			doConvinceCreature(cid, doSummonCreature(config.monster_summon[4], getThingPos(cid)))
 			doCreatureSay(cid, "Cheguei", TALKTYPE_ORANGE_1)
 		end
 	else
 		doSendMagicEffect(getThingPos(cid), 12)
 		doPlayerSendTextMessage(cid, 19, "Voce so pode invocar ".. config.max_summons .. " summons.")
 	end

 	return true
 end

Se o monstro que tu sumonou está te atacando vai no XML do monster e em :

		<flag convinceable="1"/>

coloca 1, vai estar em 0 se ele está te atacando.

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

tem como fazer igua á esse n

function onCastSpell(cid, var)


local from,to = {x=962, y=885, z=7},{x=973, y=892, z=7} -- começo e final do mapa
local from2,to2 = {x=979, y=901, z=7},{x=991, y=905, z=7} -- começo e final do mapa
local playerpos = getPlayerPosition(cid)
local position1 = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y+1, z=getPlayerPosition(cid).z}
local position2 = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
local MaximoSummon = 1 --- Maximo de Monstros Sumonados!!

local summons = getCreatureSummons(cid)
if isInRange(getCreaturePosition(cid), from, to) or isInRange(getCreaturePosition(cid), from2, to2) then
doPlayerSendCancel(cid, "Você não pode usar Summons Aqui!") return true
end
if(table.maxn(summons) < MaximoSummon) then -- no summons
local clone = doCreateMonster("Gama Bunta", playerpos)
doConvinceCreature(cid, clone)
doSendMagicEffect(position1, 152)
doSendMagicEffect(position2, 111)
doPlayerSendTextMessage(cid,27,'Kuchyose no Jutsu.')
return TRUE
end
end

 

pq o monster que o player vai cria, vai ser tanto monster e tanto sumon sendo o mesmo monster.

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

sera que eu add isso resolver

doConvinceCreature(cid, clone)

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

Cara para de inventar coisas e faz o que eu falei porque se tu soubesse alguma coisa, não teria criado esse tópico(não estou sendo ignorante, só falando a verdade)

 

abrçs

I must not fear. Fear is the mind killer.

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

Se não se importa, escrevi uma versão deste script mais simplificada e de melhor manipulação.

PS: Resolvi postá-la apenas para demonstrar uma outra maneira de escrever o mesmo código, não para remover os créditos do Stinger.

local config = {
    maxSummons = 1,         --Limite de summons.
    summons = {
        [25] = "Rat",       --[level] = "summon",
        [50] =  "Dragon",
        [75] =  "Dragon Lord",
        [100] =  "Demon",
    },
}
function onCastSpell(cid)
    if #getCreatureSummons(cid) < config.maxSummons then
        local summon
        for level, summonName in pairs(config.summons) do
            if getPlayerLevel(cid) >= level then
                summon = summonName
            end
        end
        if summon then
            doConvinceCreature(cid, doSummonCreature(summon, getThingPos(cid)))
            doCreatureSay(getCreatureSummons(cid)[#getCreatureSummons(cid)], "Cheguei", TALKTYPE_ORANGE_1)
        end
    else
        doSendMagicEffect(getThingPos(cid), 12)
        doPlayerSendTextMessage(cid, 19, "Voce so pode invocar "..config.maxSummons.." summons.")
    end
    return true
end
Editado por zipter98 (veja o histórico de edições)

não respondo pms solicitando suporte em programação/scripting

Link para o post
Compartilhar em outros sites

/\ poderia jogar ate um break em baixo de 

summon = summonName
break

pra ficar perfect  :D

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

Assim que eu queria vlw Zipter e tb Stinger

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

Na verdade, se o loop fosse quebrado neste momento, o summon seria sempre o mesmo. Supondo que o level do jogador fosse 57, na primeira instância da iteração summon assumiria o valor de Rat. Apenas na segunda o break seria viável. Visto que não há como saber quando seu uso será ou não viável, o recomendado é não usá-lo (neste caso, claro).

Editado por zipter98 (veja o histórico de edições)

não respondo pms solicitando suporte em programação/scripting

Link para o post
Compartilhar em outros sites

FAltou uma coisa só amigos. a mensagem "cheguei" n é pra aparece em cima de min e sim em cima do monster.

 

Tipo: minha posiçao é X e a onde o monstre nasce é  Y. quando falo a magia a mensagem " Cheguei " aparece n posiçao em cima do monster. e n em cima de min rs

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

o monstre n nasce em cima de min

Administração é a arte de criar os caminhos que levam a humanidade à excelência de suas realizações.

 

fHEDOxC.png

Link para o post
Compartilhar em outros sites

Na verdade, se o loop fosse quebrado neste momento, o summon seria sempre o mesmo. Supondo que o level do jogador fosse 57, na primeira instância da iteração summon assumiria o valor de Rat. Apenas na segunda o break seria viável. Visto que não há como saber quando seu uso será ou não viável, o recomendado é não usá-lo (neste caso, claro).

 

Verdade eu reli o código, e entendi a lógica, logo o break quebraria o for na primeira instância rat.

I must not fear. Fear is the mind killer.

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.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo