Beginner Programming Lesson

What's special about this game is that you can actually program your creations with special blocks (called "action blocks"), colors, textures, signals, etc. (see Programming Icons). In this section of the Wiki, you will learn how it works and how to program "super cool" stuff with this awesome iPad app, Blocksworld.
==How it Works?==
When you put a block on the map, (by dragging it out of the inventory,) you will see a little box appear with a arrow in that will be write "does" on. This arrow split the programmation into 2 columns: The IF and the THEN. The IF section (on left) is used for a condition, like "if this block is red...". The other side, the THEN, are used for reactions, like "...then explode". So if we mix all this up, it make "if my block is red, then explode", or in the Blocksworld language, "red does explode". That's that simple, but you will noticed that it can become VERY complex if you make bigger worlds. 
==The IF side==
If you played a little bit with the programmation panel, you will notice that there are some "GUI squares" (the squares in the inventory) that cannot be placed in the programmation box. Don't panic, that's totally normal and logical: You cannot put another 3D shape for condition! So, all kind of blocks cannot be use for programmation. But the colors, textures and some prefab actions (for the action blocks) can be put in there. There's also some sensors that can be use, such as "bump", "in water" or "tap". If there's no conditions, the program will automatically execute the reaction.
You can also put more than one condition just by putting the squares next to the others on the same side of the arrow. It will always make a mix of all the conditions, and if they are all TRUE, then the reaction(s) will be executed. In Blocksworld's language, it will do "red [AND] in water [AND] bump does ...". That can be very useful if you are using a mix of different kind of squares (like colors and signals), but if you only use one visual kind (such as only colors), your program will never work, because the block can't have more than one color or texture.
Unfortunately, there is no OR or NOT logic gates. The only one that exist in this game is AND and is implied by putting a square next to another. Some players are asking the company for putting at least OR gates, which would make a huge difference.
==The THEN side==
For the THEN side, they are also some kind of blocks you cannot use, and it's again totally normal (you can't teleport an object by telling the program "...then 'in water' ! "). As just says, you can't use sensors for the THEN side, but there's some prefab reactions that can be put on any blocks (as the sensors) such as "explode" or "freeze". The biggest problem with these two reactions is that you can't "freeze" a block after it "explodes". 
You can again put more than one reaction on this section. If you put a series of multiple reactions, the program will read them one by one, and when it finish the line, it will return to the beginning if the condition is always TRUE. If it's not, it will just wait until it does. 
The Action Blocks are some very interesting blocks in the game: they can do actions, as the name shows. For example, the wheel can "drive" (go forward), "turn right", "turn left" and "reverse" (go backward). These special actions can only be done by their respective blocks. So, the wheel's actions are only for the wheel, the booster's for the boster, etc. They can also be use for a condition, like "drive does turn left". But be careful: if you use the same action on the two sides, it will do an infinite loop on their line ("fire does fire does fire does fire does...)! 
Another interesting block on the THEN side is "wait", which is a delay or pause. You can use it to synchronize things such as biped's robot legs or laser shots. 
== ==
For information on all programming icons, see Programming Icons. For how to build things using action blocks, see next lesson, Beginner Lessons (Action Constructions)
Category:Learning