Skip to content

Instantly share code, notes, and snippets.

View daniele-quero's full-sized avatar

Daniele Quero daniele-quero

View GitHub Profile
@daniele-quero
daniele-quero / lives.cs
Created June 24, 2021 08:41
lives declaration
[SerializeField]
private int _lives = 3;
@daniele-quero
daniele-quero / damage.cs
Created June 24, 2021 08:42
damage player method
public void Damage(int dmg)
{
_lives -= dmg;
if (_lives < 0)
GameObject.Destroy(this.gameObject);
}
@daniele-quero
daniele-quero / play_coll.cs
Created June 24, 2021 08:43
player collision logic
else if (collision.tag == "Player")
{
Player player = collision.GetComponent<Player>();
if (player != null)
player.Damage(1);
}
@daniele-quero
daniele-quero / getComp.cs
Created June 24, 2021 08:52
example of get component usage
ComponentClass component = gameObjectVariable.GetComponent<ComponentClass>();
@daniele-quero
daniele-quero / coroutin1.cs
Last active June 25, 2021 10:27
coroutine
IEnumerator MyRoutine(){
//do something, maybe repeatedly
yield return null;
}
IEnumerator MyOtherRoutine(){
//stuff to do
yield return new WaitForSeconds(3f);
}
StartCoroutine(MyRoutine());
[SerializeField]
private float _rate = 5f;
[SerializeField]
private GameObject _enemyContainer, _enemyPrefab;
private Vector3 _position = Vector3.zero;
IEnumerator SpawnEnemy(float rate)
{
while (true)
{
Instantiate(_enemyPrefab, _position, Quaternion.identity)
.transform.SetParent(_enemyContainer.transform);
yield return new WaitForSeconds(rate);
}
}
void Start()
{
StartCoroutine(SpawnEnemy(_rate));
}