Enemy Can't Take Damage!!!
HI I'm starting my first real RPG and I made a script for the battle system but enemies can't take any damage! Here's my script:
using UnityEngine;
using System.Collections;
public class Player : MonoBehaviour {
public int rand;
public int hp;
public int luck;
public int enemyId;
public bool battle;
public bool myTurn;
public int enemyHP;
public int enemyAttack;
public bool blocking;
public bool enemyBlocking;
void Start () {
}
void Update () {
//Battles and Enemys
if (enemyId == 0) {
battle = false;
}
if (enemyId > 0) {
battle = true;
}
if (battle == true) {
myTurn = true;
//ADD BATTLE UI LATER
if (myTurn == true){
//MY ATTACKS
if (Input.GetKeyDown(KeyCode.Alpha1)){
if (enemyBlocking == false){
rand = Random.Range(1, 100);
if (rand <= luck){
enemyHP = enemyHP - 20;
} else {
enemyHP = enemyHP - 5;
myTurn = false;
}
}
if (enemyBlocking == true){
enemyBlocking = false;
myTurn = false;
}
}
}
}
if (enemyId == 1) {
enemyHP = 30;
if (myTurn == false){
enemyAttack = Random.Range(1, 4);
if (enemyAttack <= 3){
if (blocking == false){
hp = hp - 4;
} if (blocking == true) {
blocking = false;
}
}
if (enemyAttack == 4){
enemyBlocking = true;
}
}
}
}
void OnCollisionEnter2D (Collision2D coll){
//Enemy ID's / Enemy Collisions
if (coll.gameObject.name == "Test Enemy") {
enemyId = 1;
}
}
}
If you can help me that would be great! I think is has to do with where I set the enemy HP.
EDIT: Also colliding with an enemy isn't working so I have been modifying the enemy ID in the inspector to start a battle. With the enemy it's self it will just disappear after a while (not in a battle).
Comment
Your answer
Follow this Question
Related Questions
Player takes damage through collider tag 0 Answers
OverslapSphere dont detect enemyhealth 0 Answers
[Solved] I can't call Method from Referenced Script 1 Answer
My enemy don't take damage. 1 Answer