Skip to content

Commit

Permalink
Fix typo in if statement causing bugs`
Browse files Browse the repository at this point in the history
  • Loading branch information
WingedSeal committed Oct 30, 2022
1 parent d115389 commit c751856
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 6 deletions.
6 changes: 3 additions & 3 deletions src/jmc/lexer.py
Original file line number Diff line number Diff line change
Expand Up @@ -386,7 +386,7 @@ def parse_if_else(self, tokenizer: Tokenizer,
output = [
f"scoreboard players set {VAR} {DataPack.var_name} 0",
f"{precommand}execute {condition} run {self.datapack.add_custom_private_function(name, if_else_box[0][1], tokenizer, count, postcommands=[f'scoreboard players set {VAR} {DataPack.var_name} 1'])}",
f"execute if score {VAR} {DataPack.var_name} matches 0 run function {self.datapack.namespace}:{DataPack.private_name}/{VAR}/{count_alt}"]
f"execute if score {VAR} {DataPack.var_name} matches 0 run function {self.datapack.namespace}:{DataPack.private_name}/{name}/{count_alt}"]
del if_else_box[0]

if if_else_box[-1][0] is None:
Expand All @@ -408,8 +408,8 @@ def parse_if_else(self, tokenizer: Tokenizer,
count_alt = self.datapack.get_count(name)

self.datapack.add_raw_private_function(name, [
f"{precommand}execute {condition} run function {self.datapack.namespace}:{DataPack.private_name}/{VAR}/{count}",
f"execute if score {VAR} {DataPack.var_name} matches 0 run function {self.datapack.namespace}:{DataPack.private_name}/{VAR}/{count_alt}"
f"{precommand}execute {condition} run function {self.datapack.namespace}:{DataPack.private_name}/{name}/{count}",
f"execute if score {VAR} {DataPack.var_name} matches 0 run function {self.datapack.namespace}:{DataPack.private_name}/{name}/{count_alt}"
], count_tmp)

self.datapack.add_custom_private_function(name, else_if[1], tokenizer, count, postcommands=[
Expand Down
6 changes: 3 additions & 3 deletions src/tests/integration/test_flow_controls.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ def test_if_else(self):
scoreboard objectives add __int__ dummy
scoreboard players set __if_else__ __variable__ 0
execute if condition run function TEST:__private__/if_else/0
execute if score __if_else__ __variable__ matches 0 run function TEST:__private__/__if_else__/1
execute if score __if_else__ __variable__ matches 0 run function TEST:__private__/if_else/1
> VIRTUAL/data/TEST/functions/__private__/if_else/0.mcfunction
say TRUE
scoreboard players set __if_else__ __variable__ 1
Expand Down Expand Up @@ -86,12 +86,12 @@ def test_if_elif(self):
scoreboard objectives add __int__ dummy
scoreboard players set __if_else__ __variable__ 0
execute if condition run function TEST:__private__/if_else/0
execute if score __if_else__ __variable__ matches 0 run function TEST:__private__/__if_else__/1
execute if score __if_else__ __variable__ matches 0 run function TEST:__private__/if_else/1
> VIRTUAL/data/TEST/functions/__private__/if_else/0.mcfunction
say CONDITION1
scoreboard players set __if_else__ __variable__ 1
> VIRTUAL/data/TEST/functions/__private__/if_else/1.mcfunction
execute if condition2 run function TEST:__private__/__if_else__/2
execute if condition2 run function TEST:__private__/if_else/2
> VIRTUAL/data/TEST/functions/__private__/if_else/2.mcfunction
say CONDITION2
scoreboard players set __if_else__ __variable__ 1
Expand Down

0 comments on commit c751856

Please sign in to comment.