Scratch To Unity: Control

Beginner Scratch Tutorial Unity

This post provides a handy reference guide to go from Scratch’s “Control” category of code blocks to C# with Unity.

Thử Benchmark và chơi game với ASUS ROG Zephyrus
Tuesday September 08, 2020

[email protected]. 30-12-2017, . 21:07 Đánh giá laptop chơi game ASUS ROG G703 Chimera giá 90 triệu ASUS ROG G703 Chimera là một trong những chiếc laptop chơi game ấn tượng nhất mà mình có cơ hội được trải nghiệm trong năm 2017. 90 triệu cho một chiếc laptop là số tiền không hề nhỏ, nhưng […]

The post Thử Benchmark và chơi game với ASUS ROG Zephyrus appeared first on Dua xe moto.

Code Blocks
Click on the picture of any of these Scratch code blocks to see how to write similar code statements in C#.

ông Riedl nhận chức HLV trưởng ĐT Việt Nam
Tuesday September 08, 2020

Thư Giãn Express – Bản Tin Cuối Ngày [Bóng đá]HLV Alfred Riedl qua đời. Thảo luận trong ‘Thư Giãn Express – Bản Tin Cuối Ngày’ bắt đầu bởi RavenOmega 8/9/20 lúc 19:36. RavenOmega Trọng phụ. Tham gia ngày: 24/9/07 Bài viết: 25,485 Nơi ở: Sakakino Gakuen Nguồn:https://bongdaplus.vn/bong-da-viet-nam/hlv-alfred-riedl-qua-doi-3101282009.html Theo thông tin của CNN Indonesia, . HLV […]

The post ông Riedl nhận chức HLV trưởng ĐT Việt Nam appeared first on Dua xe moto.

IEnumerator Start()
{
// Optional code here
yield return new WaitForSeconds(1f);
// Optional code here
}

for (int i = 0; i < 10; ++i)
{
// Code to repeat
}

You can simply use the “Update” method of a “MonoBehaviour”:

lehmanbear Đô chỉ huy đồng tri
Tuesday September 08, 2020

Phim ảnh DC Extended Universe (DCEU). Thảo luận trong ”Phim ảnh” bắt đầu bởi yreimm0308n90, 4/5/15. Trang 2226 của 2226 trang

The post lehmanbear Đô chỉ huy đồng tri appeared first on Dua xe moto.

void Update()
{
// Code to repeat per frame
}

Or, you can use a “while” loop. Make sure to provide some way to pause execution (like a yield statement in a Coroutine) or you will lock up Unity.

IEnumerator Start()
{
while(true)
{
// Optional code here
yield return null; // wait a frame
// Optional code here
}
}

// "condition" is anything that evaluates to true or false
if (condition)
{
// Code to execute when condition is true
}

// "condition" is anything that evaluates to true or false
if (condition)
{
// Code to execute when condition is true
}
else
{
// Code to execute when condition is false
}

// Optional code here
// "condition" is anything that evaluates to true or false
yield return new WaitUntil(() => condition);
// Optional code here

This is basically a “while” loop where you want the condition to be false:

// "condition" is anything that evaluates to true or false
while (!condition)
{
// Code to repeat
}

You can stop a script by disabling it.

enabled = false;

Or, if you were running a Coroutine you could stop it:

var coroutine = SomeCoroutine();
StartCoroutine(coroutine);
StopCoroutine(coroutine);

There isn’t a “good” equivalent for this, but a possible solution exists based on a pattern Unity has implemented. Whenever a clone is instantiated, the name of the clone will have “(Clone)” added to the end of its name. I only say it isn’t a “good” solution because you can rename an instantiated clone and then wouldn’t have any way to determine that status.

void Start()
{
if (name.Contains("Clone"))
{
Debug.Log("I'm a clone!");
}
}

Instantiate(gameObject);

Destroy(gameObject);

Summary
This should cover all of the code blocks in Scratch’s “Control” category. If you have any questions about this reference guide feel free to ask below.
If you find value in my blog, you can support its continued development by becoming my patron. Visit my Patreon page here. Thanks!