#6 - Корутины (Coroutines)

#6 - Корутины (Coroutines)

В этом уроке мы с вами изучим куратины, а также специальную функцию Invoke, которые позволяют выполнять некий код через несколько секунд.

Видеоурок

Исходный код

Реализация корутин
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Script : MonoBehaviour {

	public GameObject obj;

	void Start () {
		Invoke ("Inst", 2f);
	}

	void Update () {
		if (Input.GetKey (KeyCode.F))
			StartCoroutine (instObj ());
	}

	void Inst () {
		Instantiate (obj, new Vector3 (Random.Range (-10f, 10f), 0f, Random.Range (-10f, 10f)), Quaternion.identity);
	}

	IEnumerator instObj () {
		while (true) {			
			Instantiate (obj, new Vector3 (Random.Range (-10f, 10f), 0f, Random.Range (-10f, 10f)), Quaternion.identity);
			yield return new WaitForSeconds (1.5f);
		}
	}

}

Задание к уроку

Генерация надписей
Сделайте так, чтобы каждые 2.3 секунды в консоль писалась какая-либо информация.
Посмотреть ответ
Вы могли сделать это так:
void Start () {
	StartCoroutine (print ());
}

IEnumerator print () {
	while (true) {
		print ("Какая-либо информация");
		yield return new WaitForSeconds (2.3f);
	}
}

Получить остальные домашние задания можно после подписки на проект

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца

Также стоит посмотреть

Изучение C#, ASP.NET и создание Windows программ
Программа на C# .NET Windows Forms
7 уроков
Изучение языка C# для начинающих
26 уроков
Изучение ASP.NET Core MVC. Создание сайтов на C#
10 уроков
Комментарии для сайта Cackle