Recommended Posts

Estou querendo fazer com que o player inicie uma animação e ele fique congelado.

Isso foi o que eu fiz:

function anim (player)
  local animation = setPedAnimation (player, "int_house", "wash_up", 10000, true, false, false, false)
  if animation then
    setElementFrozen (player, true)
    setTimer (setElementFrozen, 10000, 1, player, false)
    end
  end
addEventHandler ("onMarkerHit", m1, anim)

 

Share this post


Link to post

Eu fiz um teste aqui e por algum motivo a animação só executa depois que digita o comando pela segunda vez, não sei se é uma falha da função, se quiser testar:

addCommandHandler ("teste", function (thePlayer, cmd)
	setPedAnimation (thePlayer, "int_house", "wash_up", 1000, false, false, nil, false)
	setElementFrozen (thePlayer, true)
	outputChatBox ("@TRAVADO", thePlayer, 255, 0, 0)
	setTimer (function ()
		outputChatBox ("@DESTRAVADO", thePlayer, 0, 255, 0)
		setElementFrozen (thePlayer, false)
		setPedAnimation (thePlayer)
	end, 1000, 1)
end)

Sobre o ficar travado esta funcionando, só não entendi realmente o porque da animação não funcionar.

Share this post


Link to post

Sim, eu fiz um teste com bool e mesmo assim ele continuou funcionando após a segunda execução do comando, acho que é alguma falha na função.

@Lord Henry

Share this post


Link to post

Sim, testei agora e não funciona de qualquer maneira.

local myMarker = createMarker (-2511, -481, 90, "cylinder", 1.5, 255, 255, 0, 170)

addEventHandler ("onMarkerHit", myMarker, function (hitElement, matchingDimension) 
	setPedAnimation (hitElement, "int_house", "wash_up", 1000, false, false, false, false)
	setElementFrozen (hitElement, true)
	outputChatBox ("@TRAVADO", hitElement, 255, 0, 0)
	setTimer (function ()
		outputChatBox ("@DESTRAVADO", hitElement, 0, 255, 0)
		setElementFrozen (hitElement, false)
		setPedAnimation (hitElement)
	end, 1000, 1)
end)

 

Já vi gente falar disso do setPedAnimation mas nunca havia testado e realmente parece que tem uma falha.

Share this post


Link to post

Então, esse é meu problema, quando o jogador passa pelo marker ele freeza primeiro e nem inicia a animação (apenas se der restart no resource em cima do marker)

Share this post


Link to post
Posted (edited)

Então cara. Eu testei aqui. Solução:

Aparentemente o setElementFrozen é capaz de cancelar animações. Quando vc anima o personagem na linha anterior, ao dar freeze na linha seguinte, cancela a animação. Trocando as linhas de lugar, corrige o problema.

local m1 = createMarker (-2511, -481, 90, "cylinder", 1.5, 255, 255, 0, 170) -- Marker do Jonas^ substitua pelo seu.

addEventHandler ("onMarkerHit", m1, function (hitElement, matchingDimension)
	setElementFrozen (hitElement, true)
	setPedAnimation (hitElement, "int_house", "wash_up", 10000, true, false, false, false)
	setTimer (setElementFrozen, 10000, 1, hitElement, false)
end)

 

Edited by Lord Henry
  • Thanks 1

Share this post


Link to post
11 minutes ago, Lord Henry said:

Então cara. Eu testei aqui. Solução:

Aparentemente o setElementFrozen é capaz de cancelar animações. Quando vc anima o personagem na linha anterior, ao dar freeze na linha seguinte, cancela a animação. Trocando as linhas de lugar, corrige o problema.


local m1 = createMarker (-2511, -481, 90, "cylinder", 1.5, 255, 255, 0, 170) -- Marker do Jonas^ substitua pelo seu.

addEventHandler ("onMarkerHit", m1, function (hitElement, matchingDimension)
	setElementFrozen (hitElement, true)
	setPedAnimation (hitElement, "int_house", "wash_up", 10000, true, false, false, false)
	setTimer (setElementFrozen, 10000, 1, hitElement, false)
end)

 

Estranho na wiki deveria informar que o frozen cancelava qualquer tipo de animação.

Share this post


Link to post

Sim, acabei de testar colocando o setElementFrozen após 1 segundo de animação, ele realmente cancela a animação ao ser chamado, no caso, a animação durou só aquele 1 segundo antes do freeze.

Share this post


Link to post

Interessante descoberta uashasuas, o certo era a página da wiki do frozen ser atualizada informando isso.

Share this post


Link to post
9 minutes ago, Jonas^ said:

o certo era a página da wiki do frozen ser atualizada informando isso

Leia a página novamente. 8)

Share this post


Link to post
7 minutes ago, Lord Henry said:

Leia a página novamente. 8)

Agora sim aeuhafueefa

Share this post


Link to post

Se me permitem, eu faria um upgrade nesse script de congelar, ficaria assim:

local m1 = createMarker (-2511, -481, 90, "cylinder", 1.5, 255, 255, 0, 170) -- Marker do Jonas^ Brothers

addEventHandler ("onMarkerHit", m1, function (hitElement, matchingDimension) 
	if hitElement and getElementType (hitElement) == "player" and matchingDimension then
		setElementFrozen (hitElement, true)
		toggleAllControls (hitElement, false)
		setTimer (function ()
			setPedAnimation (hitElement, "int_house", "wash_up", 10000, true, false, false, false)
			setTimer (function ()
				setElementFrozen (hitElement, false)
				toggleAllControls (hitElement, true)
			end, 10000, 1)
		end, 1000, 1)
	end
end)

 

  • Haha 2

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.