using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class PlayerHealth : MonoBehaviour
{
public static PlayerHealth Instance;
public int health;
public GameObject deathEffect;
void Awake()
{
if (Instance == null)
{
DontDestroyOnLoad(gameObject);
Instance = this;
}
else if (Instance != this)
{
Destroy(gameObject);
}
FindObjectOfType(typeof(Transform));
}
public void TakeDamage(int damage)
{
health -= damage;
StartCoroutine(DamageAnimation());
if (health <= 0)
{
Die();
}
}
void Die()
{
SceneManager.LoadScene("Game Over");
}
public void Damage(int dmg)
{
health -= dmg;
}
IEnumerator DamageAnimation()
{
SpriteRenderer[] srs = GetComponentsInChildren<SpriteRenderer>();
for (int i = 0; i < 3; i++)
{
foreach (SpriteRenderer sr in srs)
{
Color c = sr.color;
c.a = 0;
sr.color = c;
}
yield return new WaitForSeconds(.1f);
foreach (SpriteRenderer sr in srs)
{
Color c = sr.color;
c.a = 1;
sr.color = c;
}
yield return new WaitForSeconds(.1f);
}
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Enemyflip : MonoBehaviour
{
public Transform player;
public bool isFlipped = false;
public void LookAtPlayer()
{
Vector3 flipped = transform.localScale;
flipped.z *= -1f;
if (transform.position.x > player.position.x && isFlipped)
{
transform.localScale = flipped;
transform.Rotate(0f, 180f, 0f);
isFlipped = false;
}
else if (transform.position.x < player.position.x && !isFlipped)
{
transform.localScale = flipped;
transform.Rotate(0f, 180f, 0f);
isFlipped = true;
}
}
}
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class HealthBar : MonoBehaviour
{
public PlayerHealth playerHealth;
public Slider slider;
void Start()
{
slider.maxValue = playerHealth.health;
DontDestroyOnLoad(gameObject);
}
// Update is called once per frame
void Update()
{
slider.value = playerHealth.health;
}
internal void SetmaxHealth(int maxHealth)
{
throw new NotImplementedException();
}
internal void SetHealth(int maxHealth)
{
throw new NotImplementedException();
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class ScoreController : MonoBehaviour
{
//static ScoreController Instance;
public Text scoreText ;
private int score;
void Start()
{
score = 0;
UpdateScore();
}
public void AddScore(int newScorevalue)
{
score += newScorevalue;
UpdateScore();
}
// Update is called once per frame
void UpdateScore()
{
scoreText.text= "Score:" + score;
}
}
public class ScoreController : MonoBehaviour
{
public Text scoreText ;
private int score;
void Start()
{
score = 0;
UpdateScore();
}
public void AddScore(int newScorevalue)
{
score += newScorevalue;
UpdateScore();
}
// Update is called once per frame
void UpdateScore()
{
scoreText.text= "Score:" + score;
}
}