dano inimigo 2D
5 participantes
Página 1 de 1
dano inimigo 2D
minha conta esta dando errado na vida do inimigo help guys!!!
using System.Collections;
public class Inimigo : MonoBehaviour {
public int vidaInimigo = 100;
public int vidaTotalInimigo;
bool chamouMorte = false;
void Update () {
if (vidaTotalInimigo <= 0) {
vidaTotalInimigo = 0;
if (chamouMorte == false) {
chamouMorte = true;
StartCoroutine ("Morrer");
}
}
}
//IEnumerator Morrer(){
//eu posso colocar qualquer coisa que o inimigo faça na morte
//}
}
using System.Collections.Generic;
using UnityEngine;
public class BalaScript : MonoBehaviour {
public Vector2 speed = new Vector2 (20, 0);
private Rigidbody2D rbBullet;
public int danoPorTiro = 40;
public Inimigo ini;
void Start ()
{
GetComponent rbBullet = GetComponent<Rigidbody2D> ();
rbBullet.velocity = speed * this.transform.localScale.x;
Destroy (gameObject, 2f);
}
void OnTriggerEnter2D(Collider2D col){
if (col.tag == "inimigo") {
Destroy (gameObject);
ini.vidaInimigo = -danoPorTiro;
}
}
}
- Código:
Inimigo
using System.Collections;
public class Inimigo : MonoBehaviour {
public int vidaInimigo = 100;
public int vidaTotalInimigo;
bool chamouMorte = false;
void Update () {
if (vidaTotalInimigo <= 0) {
vidaTotalInimigo = 0;
if (chamouMorte == false) {
chamouMorte = true;
StartCoroutine ("Morrer");
}
}
}
//IEnumerator Morrer(){
//eu posso colocar qualquer coisa que o inimigo faça na morte
//}
}
- Código:
BalaScript
using System.Collections.Generic;
using UnityEngine;
public class BalaScript : MonoBehaviour {
public Vector2 speed = new Vector2 (20, 0);
private Rigidbody2D rbBullet;
public int danoPorTiro = 40;
public Inimigo ini;
void Start ()
{
GetComponent
rbBullet.velocity = speed * this.transform.localScale.x;
Destroy (gameObject, 2f);
}
void OnTriggerEnter2D(Collider2D col){
if (col.tag == "inimigo") {
Destroy (gameObject);
ini.vidaInimigo = -danoPorTiro;
}
}
}
strange- Iniciante
- PONTOS : 2524
REPUTAÇÃO : 0
Respeito as regras :
Re: dano inimigo 2D
- Código:
void OnTriggerEnter2D(Collider2D col){
if (col.tag == "inimigo") {
Destroy (gameObject);
ini.vidaInimigo = -danoPorTiro;
}
Re: dano inimigo 2D
Olá Amigo, Dicas : sempre coloque os Scripts dentro da caixinha Script para um melhor intendimento, especifique ,de mais informacoes como seria esse Erro;
como vemos "GetComponent()" Desaparece aalguns Codigos,
se vc estiver ovendo uma bala Use a;
como vemos "GetComponent()" Desaparece aalguns Codigos,
se vc estiver ovendo uma bala Use a;
- Código:
void Update(){}
Re: dano inimigo 2D
Assim
- Código:
using UnityEngine;
using System.Collections;
public class Inimigo : MonoBehaviour {
public int vidaInimigo = 100;
public int vidaTotalInimigo;
bool chamouMorte = false;
void Start () {
vidaTotalInimigo = vidaInimigo;//Iniciando a vida
}
void Update () {
if (vidaTotalInimigo <= 0) {
vidaTotalInimigo = 0;
if (chamouMorte == false) {
chamouMorte = true;
StartCoroutine ("Morrer");
}
}
}
public void DamageReceived(int damage){
vidaTotalInimigo -= damage;
}
//IEnumerator Morrer(){
//eu posso colocar qualquer coisa que o inimigo faça na morte
//}
}
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class BalaScript : MonoBehaviour {
public Vector2 speed = new Vector2 (20, 0);
private Rigidbody2D rbBullet;
public int danoPorTiro = 40;
public Inimigo ini;
void Start ()
{
GetComponent ();
rbBullet = GetComponent ();
rbBullet.velocity = speed * this.transform.localScale.x;
Destroy (gameObject, 2f);
}
void OnTriggerEnter2D(Collider2D col){
if (col.gameObject.tag == "inimigo") {
col.gameObject.GetComponent<EnemyStats>().DamageReceived(danoPorTiro);
Destroy (gameObject);
}
}
}
Re: dano inimigo 2D
oi acho que sei o q pode ser
vc não esta chamando a morte do inimigo
[list=linenums]
[*]if (vidaTotalInimigo <= 0) {
[*]vidaTotalInimigo = 0;
[*]if (chamouMorte == false) {
[*]chamouMorte = true;
[/list]
devia ser algo do tipo:
vc não esta chamando a morte do inimigo
[list=linenums]
[*]if (vidaTotalInimigo <= 0) {
[*]vidaTotalInimigo = 0;
[*]if (chamouMorte == false) {
[*]chamouMorte = true;
[/list]
devia ser algo do tipo:
- Código:
if (vidaTotalInimigo <= 0)
{
ChamouMorte == true;
}
if (chamouMorte == true) {
Morre();
}
Maniaco- Iniciante
- PONTOS : 2785
REPUTAÇÃO : 1
Idade : 28
Áreas de atuação : programação modelagem
Respeito as regras :
Re: dano inimigo 2D
Pode ser assim
- Código:
using UnityEngine;
using System.Collections;
public class Inimigo : MonoBehaviour {
public int vidaInimigo = 100;
public int vidaTotalInimigo;
bool chamouMorte = false;
void Start () {
vidaTotalInimigo = vidaInimigo;//Iniciando a vida
}
void Update () {
if (vidaTotalInimigo <= 0) {//Se avida for menor ou igual a 0
vidaTotalInimigo = 0;
if (chamouMorte == false) {//Inimigo morreu
chamouMorte = true;
StartCoroutine (Morrer());
}
}
}
public void DamageReceived(int damage){
vidaTotalInimigo -= damage;
}
//IEnumerator Morrer(){//Morte do inimigo
GetComponent<MeshRenderer> ().material.color = Color.red;
yield return new WaitForSeconds (2);
Destroy (gameObject);
//}
}
Tópicos semelhantes
» (Ajuda) Dano ao inimigo
» Dano no inimigo
» Dano do inimigo
» Problema com Dano ao Inimigo
» dano inimigo em player
» Dano no inimigo
» Dano do inimigo
» Problema com Dano ao Inimigo
» dano inimigo em player
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos