summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--extras/crystal.py6
-rw-r--r--preprocessor.py8
2 files changed, 5 insertions, 9 deletions
diff --git a/extras/crystal.py b/extras/crystal.py
index 8be7b495d..32c2f7d4d 100644
--- a/extras/crystal.py
+++ b/extras/crystal.py
@@ -2990,8 +2990,6 @@ music_commands_new = {
music_command_enders = [0xEA, 0xEB, 0xEE, 0xFC, 0xFF,]
# special case for 0xFD (if loopchannel.count = 0, break)
-
-
def create_music_command_classes(debug=False):
klasses = [GivePoke]
for (byte, cmd) in music_commands_new.items():
@@ -3010,6 +3008,10 @@ def create_music_command_classes(debug=False):
klass_name = cmd_name+"Command"
klass = classobj(klass_name, (Command,), params)
globals()[klass_name] = klass
+ if klass.macro_name == "notetype":
+ klass.allowed_lengths = [1, 2]
+ elif klass.macro_name in ["togglenoise", "sfxtogglenoise"]:
+ klass.allowed_lengths = [0, 1]
klasses.append(klass)
# later an individual klass will be instantiated to handle something
return klasses
diff --git a/preprocessor.py b/preprocessor.py
index 5758db323..7c1decd37 100644
--- a/preprocessor.py
+++ b/preprocessor.py
@@ -490,12 +490,6 @@ def macro_translator(macro, token, line):
else:
allowed_lengths = [allowed_length]
- if macro.macro_name == "notetype":
- allowed_lengths = [1,2]
- elif macro.macro_name == "togglenoise" \
- or macro.macro_name == "sfxtogglenoise":
- allowed_lengths = [0,1]
-
assert len(params) in allowed_lengths, \
"mismatched number of parameters on this line: " + \
original_line
@@ -589,4 +583,4 @@ def read_line(l):
sys.stdout.write(comment)
for l in sys.stdin:
- read_line(l) \ No newline at end of file
+ read_line(l)