Limite De Criaturas

vidalokkka
em Scripts

vidalokkka

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 20/01/12Posts: 15Char no Tibia: pally

to tentando fazer comando pra criar bicho pq gm criar muitos com /m

eu queria que tivesse um limite cria 1 ou 2 ai quando player mata ele vai pode criar outro pq tem vez que fica muito lag gm faz muitos mostros de vez

function onSay(cid, words, param)
doSummonCreature("demon", getThingPos(cid))
end

LuckOake

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 23/07/12Posts: 1104Gênero: MasculinoChar no Tibia: Luck Oake

 

function onSay(cid, words, param, channel)

local quantia = 2 -- Quantia de monstros permitida

local pid = cid

local t = string.explode(param, ",")

if(t[2]) then

pid = getPlayerByNameWildcard(t[2])

if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[2] .. " not found.")

return true

end

end

 

if getCreatureSummons(cid) == quantia then

doPlayerSendCancel(cid, "Máximo de summons atingido.")

return true

end

 

local effect = CONST_ME_MAGIC_RED

local ret = doSummonMonster(pid, t[1])

if(ret ~= RETURNVALUE_NOERROR) then

effect = CONST_ME_POFF

doPlayerSendDefaultCancel(cid, ret)

end

 

doSendMagicEffect(getCreaturePosition(cid), effect)

return true

end

 

 

Tó.

Eskylo

boa sorte
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 11/08/10Posts: 477Gênero: Masculino

 

function onSay(cid, words, param, channel)

local quantia = 2 -- Quantia de monstros permitida

local pid = cid

local t = string.explode(param, ",")

if(t[2]) then

pid = getPlayerByNameWildcard(t[2])

if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[2] .. " not found.")

return true

end

end

 

if getCreatureSummons(cid) == quantia then

doPlayerSendCancel(cid, "Máximo de summons atingido.")

return true

end

 

local effect = CONST_ME_MAGIC_RED

local ret = doSummonMonster(pid, t[1])

if(ret ~= RETURNVALUE_NOERROR) then

effect = CONST_ME_POFF

doPlayerSendDefaultCancel(cid, ret)

end

 

doSendMagicEffect(getCreaturePosition(cid), effect)

return true

end

 

 

Tó.

 

nao vai funcionar, a checagem q vc criou

 

if getCreatureSummons(cid) == quantia then

 

ta totalmente errada.

 

primeiro, q para comparar a quantidade summons tem q por #getCreatureSummons(cid) mesmo assim nao daria, pq o /m sumona o monstro, porem o monstro sumonado é como um monstro qualquer do mapa e nao um summon do gm (em termos de script).

 

ps. sem tempo pra fazer ;/ indo dormir já, boa noite

Atenciosamente, Eskylo

 

 

Ironman-icon.png

.

.

LuckOake

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 23/07/12Posts: 1104Gênero: MasculinoChar no Tibia: Luck Oake

@Eskylo

 

Na verdade, só faltou o operador (#) mesmo. O Script que eu peguei foi o do /s (summon monster), não o do /m (create monster). Não está totalmente errada, igual você falou, apenas faltou um caractere.

 

@Topic

 

Corrigindo.

 

function onSay(cid, words, param, channel)

local quantia = 2 -- Quantia de monstros permitida

local pid = cid

local t = string.explode(param, ",")

if(t[2]) then

pid = getPlayerByNameWildcard(t[2])

if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[2] .. " not found.")

return true

end

end

 

if #getCreatureSummons(cid) == quantia then

doPlayerSendCancel(cid, "Máximo de summons atingido.")

return true

end

 

local effect = CONST_ME_MAGIC_RED

local ret = doSummonMonster(pid, t[1])

if(ret ~= RETURNVALUE_NOERROR) then

effect = CONST_ME_POFF

doPlayerSendDefaultCancel(cid, ret)

end

 

doSendMagicEffect(getCreaturePosition(cid), effect)

return true

end

 

~~ Edit ~~

 

Agora que eu vi, você pediu do /m. Se o Eskylo não fizer, eu faço.

Eskylo

boa sorte
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 11/08/10Posts: 477Gênero: Masculino

@Eskylo

 

Na verdade, só faltou o operador (#) mesmo. O Script que eu peguei foi o do /s (summon monster), não o do /m (create monster). Não está totalmente errada, igual você falou, apenas faltou um caractere.

 

como vc disse no fim, sim ele pediu o /m

#getCreatureSummons() nao serve pra contar monstros sumonados pelo /m

Atenciosamente, Eskylo

 

 

Ironman-icon.png

.

.

vidalokkka

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 20/01/12Posts: 15Char no Tibia: pally

@LuckOake e @Eskylo vcs me deiraram na mão me ajuda please

 

pode ser assim mesmo

function onSay(cid, words, param)
doSummonCreature("demon", getThingPos(cid))
end

de criar so um tipo de monster do mapa

mais quero limite de 1 ou 2 ou 3

assim coloco comando pro gm não posso tirar gm pq cara meu irmão colocando esse comando ele não vai deixa muito lag

caotic

Afinal de contas,sou um mordomo e tanto
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 04/03/11Posts: 1599Char no Tibia: No Have

Eu acho particulmanete melhor você adicionar um tempo.

 

Ficando assim:

 

 

 

 

 

Coloquei por tempo ele tem que esperar um pouco antes de invocar outra criatura

 

 

local config = {

exhaust = 120,

check = 33821

}

local monster = "Demon" --- Nome do monstro a ser sumonando

function onUse(cid, item, fromPosition, itemEx, toPosition)

if (getPlayerStorageValue(cid, config.check) >= os.time()) then

doPlayerSendCancel(cid,"Desculpe, Isto não e possivel pois tera que esperar")

return true

end

doSummonCreature(monster, getThingPos(cid))

setPlayerStorageValue(cid,config.check,os.time()+config.exhaust)

return true

end

 

vidalokkka

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 20/01/12Posts: 15Char no Tibia: pally

caotic

 

testei aki contia dando pra criar um monte

 

não da erro no console

caotic

Afinal de contas,sou um mordomo e tanto
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 04/03/11Posts: 1599Char no Tibia: No Have

Editei la em cima.

 

Com certeza irá funcionar