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.

Top 10 Popular BuddyPress Themes In 2019
Tuesday October 15, 2019

1.  WPLMS – LMS, Education Theme WPLMS is a WordPress LMS and education theme. You can create a perfect and outstanding website for your online courses using this theme. It also provides WPLMS mobile App through which your courses can be accessed on the go. The App automatically display your courses from WPLMS Site and […]

The post Top 10 Popular BuddyPress Themes In 2019 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#.

LAFS Alumni at SXSW
Wednesday March 20, 2019

South by Southwest just wrapped its 9-day festival and we are still celebrating Every year all eyes turn to Austin, Texas, as SXSW takes over the city giving musicians, artists, filmmakers and creatives a chance to showcase their talents. In its more than 30-year run, SXSW has become synonymous with cool and creative. The festival […]

The post LAFS Alumni at SXSW 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”:

TOP 10 HOTEL BOOKING WORDPRESS THEMES IN 2019
Wednesday July 24, 2019

1. Hotel Marina- Hotel Resort WordPress Theme:- This theme has been designed for hotels, resorts, villas, guest house, and travel and tourism business. The owner can organize all rooms information and services and if you do not want to use the booking system of the theme then you can also interact your site with the […]

The post TOP 10 HOTEL BOOKING WORDPRESS THEMES IN 2019 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!