Ir para conteúdo
  • 0

Limite De Criaturas


vidalokkka

Pergunta

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

Editado por vidalokkka
Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

 

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ó.

Link para o comentário
Compartilhar em outros sites

  • 0

 

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

Link para o comentário
Compartilhar em outros sites

  • 0

@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.

Editado por LuckOake
Link para o comentário
Compartilhar em outros sites

  • 0

@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

Link para o comentário
Compartilhar em outros sites

  • 0

@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

Link para o comentário
Compartilhar em outros sites

  • 0

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

 

Editado por caotic
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...