[RESOLVIDO] Como faço pro inimigo dar dano no personagem (jogo 2D de plataforma)
3 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO] Como faço pro inimigo dar dano no personagem (jogo 2D de plataforma)
Este é meu código, só não sei como faço pro inimigo dar dano no meu player
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class SimpleEnemy : MonoBehaviour
{
public float velocity = 10f;
public Transform visaoStart;
public Transform visaoEnd;
public Transform weakness;
public bool colliding;
Rigidbody2D body;
Animator anim;
void Start()
{
body = GetComponent<Rigidbody2D>();
anim = GetComponent<Animator>();
}
void Update()
{
body.velocity= new Vector2 (velocity, body.velocity.y);
colliding = Physics2D.Linecast(visaoStart.position, visaoEnd.position);
if (colliding)
{
transform.localScale = new Vector2(transform.localScale.x * -1, transform.localScale.y);
velocity *= -1;
}
}
private void OnDrawGizmos()
{
Gizmos.color = Color.magenta;
Gizmos.DrawLine(visaoStart.position, visaoEnd.position);
}
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject.tag== "Player")
{
float height = collision.contacts[0].point.y - weakness.position.y;
if (height > 0)
Dies();
collision.rigidbody.AddForce(new Vector2(0, 300));
}
}
void Dies()
{
anim.SetBool("dieCondition", true);
Destroy(this.gameObject, 0.5f);
}
void DieScreen()
{
SceneManager.LoadScene(3);
}
}
darkrj- Avançado
- PONTOS : 2325
REPUTAÇÃO : 15
Respeito as regras :
Re: [RESOLVIDO] Como faço pro inimigo dar dano no personagem (jogo 2D de plataforma)
Se for o caso, basta adicionar um BoxCollider2D em seu inimigo e quando for efetivado a colisão com o player inicializar a ação:
- Código:
- Código:
private void OnCollisionEnter(Collision2D collision)
{
if (collision.gameObject.tag == "Inimigo")
{
// Chamar a ação que retire a vida do player.
}
}
Tegh- Avançado
- PONTOS : 2655
REPUTAÇÃO : 97
Idade : 23
Respeito as regras :
Re: [RESOLVIDO] Como faço pro inimigo dar dano no personagem (jogo 2D de plataforma)
Como o brother falou
Mais de uma olhadinha aqui tambem tem umas dicas Dano,Vida e morte
Mais de uma olhadinha aqui tambem tem umas dicas Dano,Vida e morte
Re: [RESOLVIDO] Como faço pro inimigo dar dano no personagem (jogo 2D de plataforma)
Funcionou, mas agora eu tenho um novo problema... Eu não consigo matar o meu inimigo, ele sempre me mata independente se eu pular em cima dele.Tegh escreveu:Se for o caso, basta adicionar um BoxCollider2D em seu inimigo e quando for efetivado a colisão com o player inicializar a ação:Espero que se encaixe em seu projeto, não compreendi muito bem como deseja estruturar o mesmo. Espero ter ajudado.
- Código:
- Código:
private void OnCollisionEnter(Collision2D collision)
{
if (collision.gameObject.tag == "Inimigo")
{
// Chamar a ação que retire a vida do player.
}
}
darkrj- Avançado
- PONTOS : 2325
REPUTAÇÃO : 15
Respeito as regras :
Re: [RESOLVIDO] Como faço pro inimigo dar dano no personagem (jogo 2D de plataforma)
De qualquer jeito já dei um jeito e resolvi aqui o problema, obrigado a todos que responderam
darkrj- Avançado
- PONTOS : 2325
REPUTAÇÃO : 15
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO] Como faço para uma plataforma cair ao player colidir com ela?
» [RESOLVIDO] Como faço uma seta na direção do inimigo?
» [RESOLVIDO] Como faço inimigo em muiltiplayer cooperativo?
» Como faço pra fazer o meu personagem andar no meu jogo isometrico
» [RESOLVIDO] Tomar dano do inimigo e causar dano no mesmo
» [RESOLVIDO] Como faço uma seta na direção do inimigo?
» [RESOLVIDO] Como faço inimigo em muiltiplayer cooperativo?
» Como faço pra fazer o meu personagem andar no meu jogo isometrico
» [RESOLVIDO] Tomar dano do inimigo e causar dano no mesmo
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos