Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by MMDCLXVI · Jan 28, 2013 at 07:48 PM · aiattackhealth

Player attack script + enemy health

To all the people on this planet, I ask for a moment of your time to simple answer a question of my, if you have stayed this far, thanks.

Know onto business, I am wondering if anyone could help me with a little scripting problem that I am having, let me explain, I've downloaded the a simple health system from the Unity Asset store (Grid Digital - Simple Health System). Contain within this file, the health system seems to simple use a integer system, that pretty much seems to remove a unit of health ever time the player takes damage.

The following is the health script....

 var OneHeart : Texture2D; //These variables contain the textures used for the gui.
 var TwoHearts : Texture2D;
 var ThreeHearts : Texture2D;
 var FourHearts : Texture2D;
 var NoHearts : Texture2D;
 
 static var Hearts : int = 4; //This is the amount of hearts the character has.
 
 function Update (){
     if(Hearts == 4){ //These if statements change the Gui Texture based on the static var Hearts.
         guiTexture.texture=FourHearts;
     }
     if(Hearts == 3){
         guiTexture.texture=ThreeHearts;
     }
     if(Hearts == 2){
         guiTexture.texture=TwoHearts;
     }
     if(Hearts == 1){
         guiTexture.texture=OneHeart;
     }
     if(Hearts == 0){
         guiTexture.texture=NoHearts;    
     }
     if(Hearts > 4){ //These two if statements keep the static var Hearts within the 0-4 range.
         Hearts = 4;
     }
 
 }

and this script is what removes health from the player...

 var Amount : int = -1; //This is the amount of damage this does to the character.
 
 function OnTriggerEnter (other : Collider) { //This checks for a collision. For this to work, the object needs to have a collider that is a trigger.
     HeartsGui.Hearts +=Amount; //Applies the damage by sending the data to the HeartsGui.js.
     //Destroy(gameObject); //Destroys the game object.
 }

Know I was wondering if anyone could help me figure out how to make a script that pretty much removes 1 int of health from the enemy character, ever time the player hits him. Any help would be great.

Go dtí an chéad uair eile, slán leat

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by Obliviate · Jun 03, 2013 at 03:49 AM

Here is a EnemyHealth System that I am currently using...

 using UnityEngine;
 using System.Collections;
 
 public class EnemyHealth : MonoBehaviour {
     public int maxHealth = 100;
     public int curHealth = 100;
 
     public float healthBarLength;
 
     // Use this for initialization
     void Start () {
         healthBarLength = Screen.width / 2;
     }
 
     // Update is called once per frame
     void Update () {
         AddjustCurrentHealth(0);
     }
 
     void OnGUI() {
         GUI.Box(new Rect(10, 40, healthBarLength,20), curHealth + "/" + maxHealth);
     }
 
     public void AddjustCurrentHealth(int adj) {
         curHealth += adj;
 
         if(curHealth < 0)
             curHealth = 0;
 
         if(curHealth > maxHealth)
             curHealth = maxHealth;
 
         if(maxHealth < 1)
             maxHealth = 1;
 
         healthBarLength = (Screen.width / 4) * (curHealth / (float)maxHealth);
     }
 }

Let me know if this helps..

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

11 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

AI keeps attacking objects that are not player. 1 Answer

Enemy AI problems 2 Answers

Help implement such attacks 1 Answer

rigidbody enemy goes only forward, no damage delay. 2 Answers

Ai that applies damage in collision? 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges