- Home /
2 player damage script
Hello im new Im trying to get a damage script that i shoot my player1 with player2 i do like 5 damage to player 1 they both have 100 hp its a platformer game 3d so heres my hp script also i play 1 player with wasd and one with arrow keys
public class hpP1 : MonoBehaviour {
public const int maxHealth = 100;
public int currentHealth = maxHealth;
public void TakeDamage(int amount)
{
currentHealth -= amount;
if (currentHealth <= 0)
{
currentHealth = 0;
Debug.Log("Dead!");
}
}
}
and shoot script:
public class shoot2 : MonoBehaviour {
public Rigidbody projectile;
public float speed = 20;
// Update is called once per frame
void Update()
{
if (Input.GetButtonDown("Fire1"))
{
Rigidbody instantiatedProjectile = Instantiate(projectile, transform.position, transform.rotation) as Rigidbody;
instantiatedProjectile.velocity = transform.TransformDirection(new Vector3(speed, 0, 0));
}
}
}
hope somebody can help me :)
Answer by OmarMoya · Dec 13, 2017 at 08:35 PM
You will also need two collider components: one for the player and the other for the bullet. In the script, you need to check if the bullet has collide with something, if that something is the player, the it should do the damage to that player. Check this https://docs.unity3d.com/ScriptReference/MonoBehaviour.OnCollisionEnter.html and this https://docs.unity3d.com/ScriptReference/Collider.OnTriggerEnter.html. Hope it helps!
thank you Omar$$anonymous$$oya but i dont really get it how to do it or how it works
Your answer
Follow this Question
Related Questions
I kill all myenemies instead of one 1 Answer
Identifying the attacker in multiplayer 0 Answers
How do I make my melee script do damage. 1 Answer
Trouble setting a parameter with a collision 1 Answer
How do I make the bullet do damage 2 Answers