Jump to content

2 preguntas sobre calculo de un projectil


Rose

Recommended Posts

Quiero hacer algo como las granadas predeterminadas de MTA, mientras dejas precionado el click derecho la lanza más fuerte. Lo que quiero hacer yo es algo similar, solo que quiero que, por ejemplo: si estoy mirando hacia el projectil salga y rebote contra el suelo, y si estoy mirando un poco más arriba pues que salga el projectil con un poco más de fuerza. En pocas palabras lo que quiero es calcular la fuerza dirección del projectil según donde esté apuntando con el arma; estoy usando gerPedWeaponMuzzlePosition para hacer que el projectil 16(la granada) salga por donde dispara las balas. 

Y la otra, ¿cómo puedo calcular (o saber) cuando un projectil hace contacto con un jugador, ped, vehículo u objeto? la idea es que explote al hacer contacto con algún elemento. 

El projectil que uso es la granada, ID 16.

Link to comment

Para hacer uno propio tendrías que tener conocimientos avanzados en física y matemáticas para hacer un sistema así independientemente.

Por otro lado se me ocurre que puedes usar onClientProjectileCreation para detectar si un proyectil es lanzado y pegarle un objeto para simular que es un proyectil distinto que al hacer que el proyectil que será base explote; este destruya el objeto. todo es cuestión de hacer un sistema de armamentos estilo DayZ pero específicamente para granadas. Ya es cuestión tuya de que tipo de proyectil quieras hacer, sólo te digo una teoría que podrías aplicar (aunque nunca he hecho algo así pero puede ser posible).

  • Like 1
Link to comment

Creo que lo dejaré así por el momento, pero gracias por el dato. Lo que si creo que intentaré hacer es para que explote al tacto, pero eso después.

Otra pregunta para no crear otro tema (no tiene nada que ver con los projectiles), si quiero usar ésta función tanto en server-side como en client-side, ¿cómo tendría que hacerlo? ya la puse como función exportada pero aún así me sigue diciendo que esa función no existe, también la intente pasar a client con un trigger pero nada, el output siempre me manda "No existe".

A esto me refiero: 

function isPlayerPickingUpTheBag( player ) -- Pasar esta función a client y poder usarla como el ejemplo de abajo...
	if player then
		if dataPlayer[ player ] == nil then
			return false
		else
			if dataPlayer[ player ] == true then
				return true
			end
		end
	end
end

function aa(player)
  if isPlayerPickingUpTheBag(player) == true) then
  	outputChatBox("existe", player)
  else
  	outputChatBox("no existe", player)
  end
end

Eso en server obviamente funciona, pero en client siempre me marca "no existe" aunque la variable la sea verdadera. La variable se actualiza al entrar en una colshape, lo que quiero es que el jugador pueda precionar tal tecla al estar dataPlayer activa, sino, no podrá usar la tecla.

¿Más fácil usar elementData para esto o seguir haciéndolo así? según sé si se sincroniza una tabla de server > client hace lo mismo que un elementData y consume lo mismo, pero quiero ver qué podría hacer si quiero hacerlo con una función export... Gracias.

 

Link to comment
12 hours ago, Hit+ said:

Creo que lo dejaré así por el momento, pero gracias por el dato. Lo que si creo que intentaré hacer es para que explote al tacto, pero eso después.

Otra pregunta para no crear otro tema (no tiene nada que ver con los projectiles), si quiero usar ésta función tanto en server-side como en client-side, ¿cómo tendría que hacerlo? ya la puse como función exportada pero aún así me sigue diciendo que esa función no existe, también la intente pasar a client con un trigger pero nada, el output siempre me manda "No existe".

A esto me refiero: 


function isPlayerPickingUpTheBag( player ) -- Pasar esta función a client y poder usarla como el ejemplo de abajo...
	if player then
		if dataPlayer[ player ] == nil then
			return false
		else
			if dataPlayer[ player ] == true then
				return true
			end
		end
	end
end

function aa(player)
  if isPlayerPickingUpTheBag(player) == true) then
  	outputChatBox("existe", player)
  else
  	outputChatBox("no existe", player)
  end
end

Eso en server obviamente funciona, pero en client siempre me marca "no existe" aunque la variable la sea verdadera. La variable se actualiza al entrar en una colshape, lo que quiero es que el jugador pueda precionar tal tecla al estar dataPlayer activa, sino, no podrá usar la tecla.

¿Más fácil usar elementData para esto o seguir haciéndolo así? según sé si se sincroniza una tabla de server > client hace lo mismo que un elementData y consume lo mismo, pero quiero ver qué podría hacer si quiero hacerlo con una función export... Gracias.

 

Si, usa element data.

Link to comment
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...