ChardScript If...Else

ChardScript Conditions and If statements

ChardScript supports the usual logical conditions from mathematics:

  • Equals: a == b

  • Not Equals: a != b

  • Less than: a < b

  • Less than or equal to: a <= b

  • Greater than: a > b

  • Greater than or equal to: a >= b

These conditions can be used in several ways, most commonly in "if statements" and loops.

An "if statement" is written by using the if keyword.

Example

If statement:

call a = 33
call b = 200
if b > a then
  echo("b is greater than a")
end

In this example we use two variables, a and b, which are used as part of the if statement to test whether b is greater than a. As a is 33, and b is 200, we know that 200 is greater than 33, and so we print to screen that "b is greater than a".

No end in If statement

We can not use end but also the code below the if statement will run under the if statement

Example

call a = 33
call b = 200
if b > a then
  echo("b is greater than a")

Elseif

The elseif keyword is pythons way of saying "if the previous conditions were not true, then try this condition".

Example

call a = 33
call b = 33
if b > a then
  echo("b is greater than a")
elseif a == b then
  echo("a and b are equal")
end

In this example a is equal to b, so the first condition is not true, but the elseif condition is true, so we print to screen that "a and b are equal".

Else

The elsekeyword catches anything which isn't caught by the preceding conditions.

Example

call a = 200
call b = 33
if b > a then
  echo("b is greater than a")
elseif a == b then
  echo("a and b are equal")
else
  echo("a is greater than b")
end

In this example a is greater than b, so the first condition is not true, also the elseif condition is not true, so we go to the else condition and print to screen that "a is greater than b".

You can also have an else without the elif:

Example

call a = 200
call b = 33
if b > a then
  echo("b is greater than a")
else
  echo("b is not greater than a")
end

Short Hand If

If you have only one statement to execute, you can put it on the same line as the if statement and can be without end.

Example

if a > b then echo("a is greater than b")

Short Hand If ... Else

If you have only one statement to execute, one for if, and one for else, you can put it all on the same line:

Example

if a > b then echo("A") else echo("B")

This technique is known as Ternary Operators, or Conditional Expressions.

And

The and keyword is a logical operator, and is used to combine conditional statements:

Example

Test if a is greater than b, AND if c is greater than a:

call a = 200
call b = 33
call c = 500
if a > b and c > a then
  echo("Both conditions are True")
end

Or

The or keyword is a logical operator, and is used to combine conditional statements:

Example

Test if a is greater than b, OR if a is greater than c:

call a = 200
call b = 33
call c = 500
if a > b or a > c then
  echo("At least one of the conditions is True")
end

Nested If

You can have if statements inside if statements, this is called nested if statements.

Example

call x = 41

if x > 10 then
  print("Above ten,")
  if x > 20 then
    print("and also above 20!")
  else
    print("but not above 20.")
  end
end

Last updated