bool

Boolean built-in type.

Description

Boolean is a built-in type. There are two boolean values: true and false. You can think of it as an switch with on or off (1 or 0) setting. Booleans are used in programming for logic in condition statements, like if statements.

Booleans can be directly used in if statements. The code below demonstrates this on the if can_shoot: line. You don't need to use == true, you only need if can_shoot:. Similarly, use if not can_shoot: rather than == false.

var can_shoot = true

func shoot():
    if can_shoot:
        pass # Perform shooting actions here.

The following code will only create a bullet if both conditions are met: action "shoot" is pressed and if can_shoot is true.

Note: Input.is_action_pressed("shoot") is also a boolean that is true when "shoot" is pressed and false when "shoot" isn't pressed.

var can_shoot = true

func shoot():
    if can_shoot and Input.is_action_pressed("shoot"):
        create_bullet()

The following code will set can_shoot to false and start a timer. This will prevent player from shooting until the timer runs out. Next can_shoot will be set to true again allowing player to shoot once again.

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_CoolDownTimer_timeout():
    can_shoot = true

Methods

bool bool ( int from )
bool bool ( float from )
bool bool ( String from )

Method Descriptions

bool bool ( int from )

Cast an int value to a boolean value, this method will return false if 0 is passed in, and true for all other ints.

Cast a float value to a boolean value, this method will return false if 0.0 is passed in, and true for all other floats.

Cast a String value to a boolean value, this method will return false if "" is passed in, and true for all non-empty strings.

Examples: bool("False") returns true, bool("") returns false.

© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_bool.html