Ir para conteúdo
  • Cadastre-se

(Resolvido)Summon que cura o Player


Ir para solução Resolvido por Cerberus,

Posts Recomendados

  • Respostas 63
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

vai ser assim configurando monstro primeiro   Tag do creatureevent <event type="cast" name="cura" event="script" value="Cura.lua"/> dentro do creatureevent o script com nome de Cura.lua     agora vai no spelll na TAG.   dentro da pasta Summon/Gnomo  cria o arquivo chamado Gnomo.lua e poe isso dentro     pode marcar esse como melhor resposta ao terminar blz.... ai vai ajuda outros com a mesma duvida.

a sua TFS usa o tempo correto em ves de milisegundos entao use 1 mesmo em vez de 1000 que e igual 1 segundo em outras distro xd.quanto ao valor estando fizo faz seguinte poe ele diretamento no script e testa fica assim   onde tem doCreatureAddHealth(master,cfg.life)   poe assim  doCreatureAddHealth(master,math.random(cfg.min,cfg.max)) e lem cima no Cfg  no lugar de life vc escreve local cfg = { min =  100 , max = 400, storage = 9999, tempo = 10 -- em segundos

retira a linha toda do convence pq ja usei o creature summonem ves do create monster   doConvinceCreature(cid,mons) life = math.random(100,400)   ou poeseparado   min = 100, max = 400, life = math.random(cfg.min,cfg.max ) não esquece de marcar melhor resposta xD.

Posted Images

  Em 06/05/2018 em 04:19, mullino disse:

intendii obrigadoooo

mas tem como fazer por action??

au clicar ne item x sumona o gnomo

Mostrar mais  

Ai ja não sei, mas creio que tenha.

Não entendo muito de scripts...

Link para o post
Compartilhar em outros sites
local max = 1
local ID = 2394 -- id do item para sumonar
local ActionID = 2394 -- action no item
local name = "Gnomo"
local remover = true -- se por false não remove o item ao sumonar o gnomo
function onUse(cid, item, fromPosition, itemEx, toPosition)
	  if item.itemid == ID then
			if item.actionid == ActionID then

			  local dir = getPlayerLookDir(cid)
			  local ppos = getPlayerPosition(cid)

			  if(dir==1)then
				ppos.x = ppos.x + 1
			  end
			  local count, pos = #getCreatureSummons(cid), getThingPos(cid)
			  if count == max then
				doPlayerSendCancel(cid, 'Voce não pode sumonar mais criaturas.')
				doSendMagicEffect(pos, CONST_ME_POFF)
				return false
			  end
			  local summon = getCreatureSummons(cid)
			 if getPlayerItemCount(cid,ID) >= 1 then
			  if (table.maxn(summon) < max) then
				local mons = doSummonMonster(cid, name)
				doPlayerSendTextMessage(cid,22,'Você invocou o '..name..'.')
				if remover == true then
				  doPlayerRemoveItem(cid, ID, 1) then
				end
			  end
			else   	
			  doPlayerSendCancel(cid, "Voce precisa de um Fragmento de "..name..".")
			end 
		  end
	end
end
return true
end

 

editei ai para remover ou não o item do summon ai depende de vc xD poe true = remove false = não remove.

Editado por Cerberus (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

gente eu to acompanhando o forum e esse topico, entao fui testar no meu sv e da isso

image.thumb.png.cc3f621554d555cc2a2502795c6a303a.png

 

enquanto o monstro fica brilhando em baixo dele

 

image.thumb.png.e3374831a056956ee2ed9fcfe6f4f24c.png

 

e caso eu morra ainda continua contando, e se eu deslogar tbm continua contando.

 

O que podemos fazer?

Link para o post
Compartilhar em outros sites
  Em 06/05/2018 em 15:48, Luzetti disse:

gente eu to acompanhando o forum e esse topico, entao fui testar no meu sv e da isso

image.thumb.png.cc3f621554d555cc2a2502795c6a303a.png

 

enquanto o monstro fica brilhando em baixo dele

 

image.thumb.png.e3374831a056956ee2ed9fcfe6f4f24c.png

 

e caso eu morra ainda continua contando, e se eu deslogar tbm continua contando.

 

O que podemos fazer?

Expand   Mostrar mais  


Ola, aqui também estava assim, ali em cima o Cerberus explicou o pq acontece isso... 

Respondendo: É pq a sua TFS usa o tempo normal e não em Milésimos de segundo, então faça assim, coloque assim no creature events:

 

	local cfg = {
    min =  20 ,
	max = 50,
	storage = 1,
	tempo = 1 -- em segundos
    }
	
	function onCast(cid, target)
    local master = getCreatureMaster(cid)
	if exhaustion.check(master, cfg.storage) == false then
			local pos = getCreaturePosition(master)
            local pos2 = getCreaturePosition(target)
			doCreatureAddHealth(master,math.random(cfg.min,cfg.max))
			doSendAnimatedText(pos2, "Sana!", TEXTCOLOR_GREEN)
			exhaustion.set(master, cfg.storage,cfg.tempo*1)
            doSendMagicEffect(pos, 12)
	else
	-- exhaustion.set(master, cfg.storage,0)
        return doPlayerSendTextMessage(master, 27, "Voce se sente calmo com a presensa do Gnomo.")--doPlayerSendCancel(master, "Você vai ser curando em " ..exhaustion.get(cid, cfg.storage).." segundos.")	
    end
return true 
end

E configura o tempo que sera curado pelo arquivo montro.xml nessa linha: 

	<defense name="healing" interval="5000" chance="50" min="1" max="25">

Obs: Esse min e max será que o monstro irá se curar.
Obss: Quando for testar essa scrit tem que trocar de char, se não vai continuar contando os 9999 segundos.

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.

  • Estatísticas dos Fóruns

    96844
    Tópicos
    519600
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo