1
0
Fork 0
Bildschirmflausch-LD41/Assets/Scripts/Entities/Attack/SingleShot.cs

48 lines
1.2 KiB
C#
Raw Normal View History

using System;
using System.Collections.Generic;
using UnityEngine;
namespace Assets.Scripts.Entities.Attack {
class SingleShot : IAttack {
int damage = 12;
float cooldown = 1;
int range = 4;
GameObject owner;
GameObject bulletPrefab;
Transform spawn;
public SingleShot(GameObject owner) {
this.owner = owner;
}
public void SetSpawn(Transform t) {
spawn = t;
}
public void SetPrefab(GameObject bullet) {
this.bulletPrefab = bullet;
}
public void Attack() {
if ( bulletPrefab == null )
return;
2018-04-23 18:52:21 +02:00
GameObject b = UnityEngine.Object.Instantiate(bulletPrefab);
b.transform.rotation = spawn.rotation;
b.transform.position = spawn.position;
Bullet bu = b.GetComponent<Bullet>();
bu.SetDamage(damage);
bu.SetOwner(owner);
2018-04-23 18:52:21 +02:00
GameController.instance.GetAudioControl().SfxPlay(AudioControl.Sfx.shoot);
}
public float GetCooldownTime() {
return cooldown;
}
public float GetRange() {
return range;
}
}
}