FragMate CommunityLog in

FragMate - Software and Game Developer Community, including Resources, Forums, Marketplace & More.


descriptionAdd Points When Enemy Dies

So I have a script, and I want to add 1000 points when the Skeleton Hard.prefab gameobject is killed. I also want +1000 to be displayed for the character to see, any solutions?


using UnityEngine;
using System.Collections;

public class health : MonoBehaviour {
   //max health. you set this to what you want his health to be
   public int maxhealth=50;
   public int currenthealth;
   //cant die
   public bool invincible;
   public bool dead;
   //check if ou want to enable health regeneration
   public bool regenerate;
   //time between each generate
   public float regenerationtime=0.8f;
   //the timer
   private float regtimer;
   //amount of hp to regenerate per generate
   public int regenerationamount=2;
   private int healthsave;
   public bool givereward;
   private bool rewardgiven;
   public int xptogive=10;
   public int goldtogive=10;
   // Use this for initialization
   void Start () {
      AI ai=(AI)GetComponent("AI");
   // Update is called once per frame
   void Update () {
      //tell ai when health is changed
         AI ai=(AI)GetComponent("AI");
         AI ai=(AI)GetComponent("AI");
         //tell ai that he is dead
      else givereward=true;
      if(currenthealth>=maxhealth) currenthealth=maxhealth;
      //if health is less than zero
         //check if invincible if not death
         else dead=true;

-One Knife Games

descriptionRe: Add Points When Enemy Dies

when the AI is dead talk to a GameManager Script or your score script, generally i do this by having a GameManager Empty Gameobject with a script on it called GameManager and have all the important game related code/variables here such as cash, score kills etc.

an easy way to do this would be adding the GameManager to your Ai so it has something to reference and a score variable on it like this

~Put this in your AI Code~


public GameObject = gm;

void Start()
gm = GameObject.Find("GameManager");

~Extend AI Code~


 if (dead)
            AI ai = (AI)GetComponent("AI");
            //tell ai that he is dead
gm.GetComponent<GameManager>().points += 1000;
            if (ai) ai.dead = true;         


~~create a canvas and add a Text Element to it (using unity 4.6+ or unity 5+)~~

~on a new Empty GameObject create a Script called GameManager~


//include the UI;
using UnityEngine.UI;

public int points;
public Text score;

void LateUpdate()
//this is how we will show the player their score.
score.text =  "Score: " + gm.Getcomponent<GameManager>().points;

add the new text UI element you created to the GameManager scripts, score in the inspector.

that is all.

Permissions in this forum:
You cannot reply to topics in this forum