() and () | |
<> and <> | |
Category | Operators |
Type | Boolean |
Introduced in | 11Oct03 |
The () and () block is an Operators Block and a Boolean Block. The block joins two boolean blocks so they both have to be true to return true. If they are both true, the block returns true; if only one is true or none are true, it returns false.
This block can be stacked inside itself, which can be used to test more conditions.
Example Uses
This block is used for checking if two or more conditions are true at the same time. Some cases of this are:
- Lose health if "I'm touching the fire and I do not have my shield up."
forever if <<touching color [#f48302]?> and <not <(costume [number v]) = [2]>>> then change [lives v] by (-1)
- Say a button is clicked if the mouse is touching it and the mouse is down.
forever say <<mouse down?> and <touching (mouse-pointer v)?>>
- Checking if the final level has been beaten and the player has enough points
forever if <<(level) = (20)> and <(score) > (999)>> :: control C say [Congratulations! You beat the game!] for (5) seconds stop [all v]
Workaround
- Main article: List of Block Workarounds
This block can be replicated with one of the following:
not <<not <. . .:: grey>> or <not <. . .:: grey>>>
set [and v] to [false] if <. . .::grey> then if <. . .::grey> then set [and v] to [true] end end
<(<. . .:: grey> * <. . .:: grey>) = (1)>
This works since false booleans are evaluated as 0, and true booleans are evaluated as 1.
See Also
() + () • () - () • () * () • () / () • Pick Random () to () • () < () • () = () • () > () • () and () • () or () • Not () • Join ()() • Letter () of () • Length of () • () Mod () • Round () • () of ()More blocks...
|