diff options
Diffstat (limited to 'doc/classes/bool.xml')
-rw-r--r-- | doc/classes/bool.xml | 86 |
1 files changed, 19 insertions, 67 deletions
diff --git a/doc/classes/bool.xml b/doc/classes/bool.xml index dc94d72e25..af54c58f82 100644 --- a/doc/classes/bool.xml +++ b/doc/classes/bool.xml @@ -1,90 +1,42 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="bool" version="4.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - Boolean built-in type. + A built-in boolean type. </brief_description> <description> - Boolean is a built-in type. There are two boolean values: [code]true[/code] and [code]false[/code]. You can think of it as a switch with on or off (1 or 0) setting. Booleans are used in programming for logic in condition statements, like [code]if[/code] statements. - Booleans can be directly used in [code]if[/code] statements. The code below demonstrates this on the [code]if can_shoot:[/code] line. You don't need to use [code]== true[/code], you only need [code]if can_shoot:[/code]. Similarly, use [code]if not can_shoot:[/code] rather than [code]== false[/code]. + A [bool] is always one of two values: [code]true[/code] or [code]false[/code], similar to a switch that is either on or off. Booleans are used in programming for logic in condition statements. + Booleans can be directly used in [code]if[/code] and [code]elif[/code] statements. You don't need to add [code]== true[/code] or [code]== false[/code]: [codeblocks] [gdscript] - var _can_shoot = true - - func shoot(): - if _can_shoot: - pass # Perform shooting actions here. + if can_shoot: + launch_bullet() [/gdscript] [csharp] - private bool _canShoot = true; - - public void Shoot() + if (canShoot) { - if (_canShoot) - { - // Perform shooting actions here. - } + launchBullet(); } [/csharp] [/codeblocks] - The following code will only create a bullet if both conditions are met: action "shoot" is pressed and if [code]can_shoot[/code] is [code]true[/code]. - [b]Note:[/b] [code]Input.is_action_pressed("shoot")[/code] is also a boolean that is [code]true[/code] when "shoot" is pressed and [code]false[/code] when "shoot" isn't pressed. + Many common methods and operations return [bool]s, for example, [code]shooting_cooldown <= 0.0[/code] may evaluate to [code]true[/code] or [code]false[/code] depending on the number's value. + [bool]s are usually used with the logical operators [code]and[/code], [code]or[/code], and [code]not[/code] to create complex conditions: [codeblocks] [gdscript] - var _can_shoot = true + if bullets > 0 and not is_reloading: + launch_bullet() - func shoot(): - if _can_shoot and Input.is_action_pressed("shoot"): - create_bullet() + if bullets == 0 or is_reloading: + play_clack_sound() [/gdscript] [csharp] - private bool _canShoot = true; - - public void Shoot() - { - if (_canShoot && Input.IsActionPressed("shoot")) - { - CreateBullet(); - } - } - [/csharp] - [/codeblocks] - The following code will set [code]can_shoot[/code] to [code]false[/code] and start a timer. This will prevent player from shooting until the timer runs out. Next [code]can_shoot[/code] will be set to [code]true[/code] again allowing player to shoot once again. - [codeblocks] - [gdscript] - var _can_shoot = true - @onready var _cool_down = $CoolDownTimer - - func shoot(): - if _can_shoot and Input.is_action_pressed("shoot"): - create_bullet() - _can_shoot = false - _cool_down.start() - - func _on_cool_down_timer_timeout(): - _can_shoot = true - [/gdscript] - [csharp] - private bool _canShoot = true; - private Timer _coolDown; - - public override void _Ready() - { - _coolDown = GetNode<Timer>("CoolDownTimer"); - } - - public void Shoot() + if (bullets > 0 && !isReloading) { - if (_canShoot && Input.IsActionPressed("shoot")) - { - CreateBullet(); - _canShoot = false; - _coolDown.Start(); - } + launchBullet(); } - public void OnCoolDownTimerTimeout() + if (bullets == 0 || isReloading) { - _canShoot = true; + playClackSound(); } [/csharp] [/codeblocks] @@ -109,14 +61,14 @@ <return type="bool" /> <param index="0" name="from" type="float" /> <description> - Cast a [float] value to a boolean value, this method will return [code]false[/code] if [code]0.0[/code] is passed in, and [code]true[/code] for all other floats. + Cast a [float] value to a boolean value. This method will return [code]false[/code] if [code]0.0[/code] is passed in, and [code]true[/code] for all other values. </description> </constructor> <constructor name="bool"> <return type="bool" /> <param index="0" name="from" type="int" /> <description> - Cast an [int] value to a boolean value, this method will return [code]false[/code] if [code]0[/code] is passed in, and [code]true[/code] for all other ints. + Cast an [int] value to a boolean value. This method will return [code]false[/code] if [code]0[/code] is passed in, and [code]true[/code] for all other values. </description> </constructor> </constructors> |