diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index c381b50f1b..6bf2034006 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -4,5 +4,5 @@
## **Discord contact info**
-
-
\ No newline at end of file
+
+
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 283e6f8fb5..a99c99283d 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -32,8 +32,9 @@ jobs:
repository: pret/agbcc
- name: Install binutils
- run: sudo apt install gcc-arm-none-eabi binutils-arm-none-eabi
- # build-essential, git, and libpng-dev are already installed
+ run: |
+ sudo apt install gcc-arm-none-eabi binutils-arm-none-eabi libpng-dev
+ # build-essential and git are already installed
# gcc-arm-none-eabi is only needed for the modern build
# as an alternative to dkP
diff --git a/.gitignore b/.gitignore
index 082430d794..f940d26b21 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,7 +21,6 @@ sound/**/*.bin
sound/songs/midi/*.s
tools/agbcc
*.map
-*.ld
*.bat
*.dump
*.sa*
@@ -39,3 +38,5 @@ prefabs.json
*.diff
*.sym
*.js
+/pokeemerald-*.png
+/pokeemerald_modern-*.png
diff --git a/INSTALL.md b/INSTALL.md
index 920e03c713..03b28ba464 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -24,7 +24,7 @@ Unscientific benchmarks suggest **msys2 is 2x slower** than WSL1, and **Cygwin i
All of the Windows instructions assume that the default drive is C:\\. If this differs to your actual drive letter, then replace C with the correct drive letter when reading the instructions.
-**A note of caution**: As Windows 7 is officially unsupported by Microsoft and Windows 8 has very little usage, some maintainers are unwilling to maintain the Windows 7/8 instructions. Thus, these instructions may break in the future with fixes taking longer than fixes to the Windows 10 instructions.
+**A note of caution**: As Windows 7 and Windows 8 are officially unsupported by Microsoft, some maintainers are unwilling to maintain the Windows 7/8 instructions. Thus, these instructions may break in the future with fixes taking longer than fixes to the Windows 10/11 instructions.
## Windows 10/11 (WSL1)
WSL1 is the preferred terminal to build **pokeemerald**. The following instructions will explain how to install WSL1 (referred to interchangeably as WSL).
@@ -33,27 +33,23 @@ WSL1 is the preferred terminal to build **pokeemerald**. The following instructi
- Otherwise, **open WSL** and go to [Choosing where to store pokeemerald (WSL1)](#Choosing-where-to-store-pokeemerald-WSL1).
### Installing WSL1
-1. Open [Windows Powershell **as Administrator**](https://i.imgur.com/QKmVbP9.png), and run the following command (Right Click or Shift+Insert is paste in the Powershell).
+1. Open [Windows Powershell **as Administrator**](https://i.imgur.com/QKmVbP9.png), and run the following commands (Right Click or Shift+Insert is paste in the Powershell).
```powershell
- dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
+ wsl --install -d Ubuntu --enable-wsl1
```
2. Once the process finishes, restart your machine.
-3. The next step is to choose and install a Linux distribution from the Microsoft Store. The following instructions will assume Ubuntu as the Linux distribution of choice.
+3. Open Windows Powershell **as Administrator** again (after restarting), and run the following command to configure Ubuntu to use WSL1.
+
+ ```powershell
+ wsl --set-version Ubuntu 1
+ ```
- Note for advanced users...
+ Note...
- > You can pick a preferred Linux distribution, but setup instructions may differ. Debian should work with the given instructions, but has not been tested.
-
-
-4. Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution.
-
- Notes...
-
- > Note 1: If a dialog pops up asking for you to sign into a Microsoft Account, then just close the dialog.
- > Note 2: If the link does not work, then open the Microsoft Store manually, and search for the Ubuntu app (choose the one with no version number).
+ > WSL may open automatically after restarting, but you can ignore it for now.
### Setting up WSL1
@@ -354,6 +350,13 @@ Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to
> [install devkitARM on Arch Linux](#installing-devkitarm-on-arch-linux).
+### NixOS
+Run the following command to start an interactive shell with the necessary packages:
+```bash
+nix-shell -p pkgsCross.arm-embedded.stdenv.cc git pkg-config libpng
+```
+Then proceed to [Choosing where to store pokeemerald (Linux)](#choosing-where-to-store-pokeemerald-linux).
+
### Other distributions
_(Specific instructions for other distributions would be greatly appreciated!)_
diff --git a/Makefile b/Makefile
index 5c073b36ca..354c335235 100644
--- a/Makefile
+++ b/Makefile
@@ -1,49 +1,53 @@
-TOOLCHAIN := $(DEVKITARM)
-COMPARE ?= 0
+# GBA rom header
+TITLE := POKEMON EMER
+GAME_CODE := BPEE
+MAKER_CODE := 01
+REVISION := 0
+MODERN ?= 0
+KEEP_TEMPS ?= 0
+# `File name`.gba ('_modern' will be appended to the modern builds)
+FILE_NAME := pokeemerald
+BUILD_DIR := build
+
+# Builds the ROM using a modern compiler
+MODERN ?= 0
+# Compares the ROM to a checksum of the original - only makes sense using when non-modern
+COMPARE ?= 0
+
+ifeq (modern,$(MAKECMDGOALS))
+ MODERN := 1
+endif
ifeq (compare,$(MAKECMDGOALS))
COMPARE := 1
endif
+# Default make rule
+all: rom
+
+# Toolchain selection
+TOOLCHAIN := $(DEVKITARM)
# don't use dkP's base_tools anymore
# because the redefinition of $(CC) conflicts
# with when we want to use $(CC) to preprocess files
# thus, manually create the variables for the bin
# files, or use arm-none-eabi binaries on the system
# if dkP is not installed on this system
-
ifneq (,$(TOOLCHAIN))
-ifneq ($(wildcard $(TOOLCHAIN)/bin),)
-export PATH := $(TOOLCHAIN)/bin:$(PATH)
-endif
+ ifneq ($(wildcard $(TOOLCHAIN)/bin),)
+ export PATH := $(TOOLCHAIN)/bin:$(PATH)
+ endif
endif
PREFIX := arm-none-eabi-
OBJCOPY := $(PREFIX)objcopy
OBJDUMP := $(PREFIX)objdump
AS := $(PREFIX)as
-
LD := $(PREFIX)ld
-# note: the makefile must be set up so MODERNCC is never called
-# if MODERN=0
-MODERNCC := $(PREFIX)gcc
-PATH_MODERNCC := PATH="$(PATH)" $(MODERNCC)
-
-ifeq ($(OS),Windows_NT)
-EXE := .exe
-else
EXE :=
-endif
-
-TITLE := POKEMON EMER
-GAME_CODE := BPEE
-MAKER_CODE := 01
-REVISION := 0
-MODERN ?= 0
-
-ifeq (modern,$(MAKECMDGOALS))
- MODERN := 1
+ifeq ($(OS),Windows_NT)
+ EXE := .exe
endif
# use arm-none-eabi-cpp for macOS
@@ -63,81 +67,89 @@ else
CPP := $(PREFIX)cpp
endif
-ROM_NAME := pokeemerald.gba
+ROM_NAME := $(FILE_NAME).gba
+OBJ_DIR_NAME := $(BUILD_DIR)/emerald
+MODERN_ROM_NAME := $(FILE_NAME)_modern.gba
+MODERN_OBJ_DIR_NAME := $(BUILD_DIR)/modern
+
ELF_NAME := $(ROM_NAME:.gba=.elf)
MAP_NAME := $(ROM_NAME:.gba=.map)
-OBJ_DIR_NAME := build/emerald
-
-MODERN_ROM_NAME := pokeemerald_modern.gba
MODERN_ELF_NAME := $(MODERN_ROM_NAME:.gba=.elf)
MODERN_MAP_NAME := $(MODERN_ROM_NAME:.gba=.map)
-MODERN_OBJ_DIR_NAME := build/modern
-SHELL := /bin/bash -o pipefail
-
-ELF = $(ROM:.gba=.elf)
-MAP = $(ROM:.gba=.map)
-SYM = $(ROM:.gba=.sym)
+# Pick our active variables
+ifeq ($(MODERN),0)
+ ROM := $(ROM_NAME)
+ OBJ_DIR := $(OBJ_DIR_NAME)
+else
+ ROM := $(MODERN_ROM_NAME)
+ OBJ_DIR := $(MODERN_OBJ_DIR_NAME)
+endif
+ELF := $(ROM:.gba=.elf)
+MAP := $(ROM:.gba=.map)
+SYM := $(ROM:.gba=.sym)
+# Commonly used directories
C_SUBDIR = src
-GFLIB_SUBDIR = gflib
ASM_SUBDIR = asm
DATA_SRC_SUBDIR = src/data
DATA_ASM_SUBDIR = data
SONG_SUBDIR = sound/songs
MID_SUBDIR = sound/songs/midi
-SAMPLE_SUBDIR = sound/direct_sound_samples
-CRY_SUBDIR = sound/direct_sound_samples/cries
C_BUILDDIR = $(OBJ_DIR)/$(C_SUBDIR)
-GFLIB_BUILDDIR = $(OBJ_DIR)/$(GFLIB_SUBDIR)
ASM_BUILDDIR = $(OBJ_DIR)/$(ASM_SUBDIR)
DATA_ASM_BUILDDIR = $(OBJ_DIR)/$(DATA_ASM_SUBDIR)
SONG_BUILDDIR = $(OBJ_DIR)/$(SONG_SUBDIR)
MID_BUILDDIR = $(OBJ_DIR)/$(MID_SUBDIR)
+SHELL := bash -o pipefail
+
+# Set flags for tools
ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=$(MODERN)
+INCLUDE_DIRS := include
+INCLUDE_CPP_ARGS := $(INCLUDE_DIRS:%=-iquote %)
+INCLUDE_SCANINC_ARGS := $(INCLUDE_DIRS:%=-I %)
+
+O_LEVEL ?= 2
+CPPFLAGS := $(INCLUDE_CPP_ARGS) -Wno-trigraphs -DMODERN=$(MODERN)
ifeq ($(MODERN),0)
-CC1 := tools/agbcc/bin/agbcc$(EXE)
-override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm -g
-ROM := $(ROM_NAME)
-OBJ_DIR := $(OBJ_DIR_NAME)
-LIBPATH := -L ../../tools/agbcc/lib
-LIB := $(LIBPATH) -lgcc -lc -L../../libagbsyscall -lagbsyscall
+ CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef -std=gnu89
+ CC1 := tools/agbcc/bin/agbcc$(EXE)
+ override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O$(O_LEVEL) -fhex-asm -g
+ LIBPATH := -L ../../tools/agbcc/lib
+ LIB := $(LIBPATH) -lgcc -lc -L../../libagbsyscall -lagbsyscall
else
-CC1 = $(shell $(PATH_MODERNCC) --print-prog-name=cc1) -quiet
-override CFLAGS += -mthumb -mthumb-interwork -O2 -mabi=apcs-gnu -mtune=arm7tdmi -march=armv4t -fno-toplevel-reorder -Wno-pointer-to-int-cast
-ROM := $(MODERN_ROM_NAME)
-OBJ_DIR := $(MODERN_OBJ_DIR_NAME)
-LIBPATH := -L "$(dir $(shell $(PATH_MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(PATH_MODERNCC) -mthumb -print-file-name=libnosys.a))" -L "$(dir $(shell $(PATH_MODERNCC) -mthumb -print-file-name=libc.a))"
-LIB := $(LIBPATH) -lc -lnosys -lgcc -L../../libagbsyscall -lagbsyscall
+ # Note: The makefile must be set up to not call these if modern == 0
+ MODERNCC := $(PREFIX)gcc
+ PATH_MODERNCC := PATH="$(PATH)" $(MODERNCC)
+ CC1 := $(shell $(PATH_MODERNCC) --print-prog-name=cc1) -quiet
+ override CFLAGS += -mthumb -mthumb-interwork -O$(O_LEVEL) -mabi=apcs-gnu -mtune=arm7tdmi -march=armv4t -fno-toplevel-reorder -Wno-pointer-to-int-cast
+ LIBPATH := -L "$(dir $(shell $(PATH_MODERNCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(PATH_MODERNCC) -mthumb -print-file-name=libnosys.a))" -L "$(dir $(shell $(PATH_MODERNCC) -mthumb -print-file-name=libc.a))"
+ LIB := $(LIBPATH) -lc -lnosys -lgcc -L../../libagbsyscall -lagbsyscall
+endif
+# Enable debug info if set
+ifeq ($(DINFO),1)
+ override CFLAGS += -g
endif
-CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN)
-ifneq ($(MODERN),1)
-CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef
-endif
-
-LDFLAGS = -Map ../../$(MAP)
-
-SHA1 := $(shell { command -v sha1sum || command -v shasum; } 2>/dev/null) -c
-GFX := tools/gbagfx/gbagfx$(EXE)
-AIF := tools/aif2pcm/aif2pcm$(EXE)
-MID := tools/mid2agb/mid2agb$(EXE)
-SCANINC := tools/scaninc/scaninc$(EXE)
-PREPROC := tools/preproc/preproc$(EXE)
-RAMSCRGEN := tools/ramscrgen/ramscrgen$(EXE)
-FIX := tools/gbafix/gbafix$(EXE)
-MAPJSON := tools/mapjson/mapjson$(EXE)
-JSONPROC := tools/jsonproc/jsonproc$(EXE)
+# Variable filled out in other make files
+AUTO_GEN_TARGETS :=
+include make_tools.mk
+# Tool executables
+GFX := $(TOOLS_DIR)/gbagfx/gbagfx$(EXE)
+AIF := $(TOOLS_DIR)/aif2pcm/aif2pcm$(EXE)
+MID := $(TOOLS_DIR)/mid2agb/mid2agb$(EXE)
+SCANINC := $(TOOLS_DIR)/scaninc/scaninc$(EXE)
+PREPROC := $(TOOLS_DIR)/preproc/preproc$(EXE)
+RAMSCRGEN := $(TOOLS_DIR)/ramscrgen/ramscrgen$(EXE)
+FIX := $(TOOLS_DIR)/gbafix/gbafix$(EXE)
+MAPJSON := $(TOOLS_DIR)/mapjson/mapjson$(EXE)
+JSONPROC := $(TOOLS_DIR)/jsonproc/jsonproc$(EXE)
PERL := perl
-
-# Inclusive list. If you don't want a tool to be built, don't add it here.
-TOOLDIRS := tools/aif2pcm tools/bin2c tools/gbafix tools/gbagfx tools/jsonproc tools/mapjson tools/mid2agb tools/preproc tools/ramscrgen tools/rsfont tools/scaninc
-TOOLBASE = $(TOOLDIRS:tools/%=%)
-TOOLS = $(foreach tool,$(TOOLBASE),tools/$(tool)/$(tool)$(EXE))
+SHA1 := $(shell { command -v sha1sum || command -v shasum; } 2>/dev/null) -c
MAKEFLAGS += --no-print-directory
@@ -148,45 +160,46 @@ MAKEFLAGS += --no-print-directory
# Delete files that weren't built properly
.DELETE_ON_ERROR:
-# Secondary expansion is required for dependency variables in object rules.
-.SECONDEXPANSION:
-
-.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) libagbsyscall modern tidymodern tidynonmodern
+RULES_NO_SCAN += libagbsyscall clean clean-assets tidy tidymodern tidynonmodern generated clean-generated
+.PHONY: all rom modern compare
+.PHONY: $(RULES_NO_SCAN)
infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line))))
-# Build tools when building the rom
-# Disable dependency scanning for clean/tidy/tools
-# Use a separate minimal makefile for speed
-# Since we don't need to reload most of this makefile
-ifeq (,$(filter-out all rom compare modern libagbsyscall syms,$(MAKECMDGOALS)))
-$(call infoshell, $(MAKE) -f make_tools.mk)
-else
-NODEP ?= 1
-endif
-
-# check if we need to scan dependencies based on the rule
-ifeq (,$(MAKECMDGOALS))
- SCAN_DEPS ?= 1
-else
- # clean, tidy, tools, mostlyclean, clean-tools, $(TOOLDIRS), tidymodern, tidynonmodern don't even build the ROM
- # libagbsyscall does its own thing
- ifeq (,$(filter-out clean tidy tools mostlyclean clean-tools $(TOOLDIRS) tidymodern tidynonmodern libagbsyscall,$(MAKECMDGOALS)))
- SCAN_DEPS ?= 0
- else
- SCAN_DEPS ?= 1
+# Check if we need to scan dependencies based on the chosen rule OR user preference
+NODEP ?= 0
+# Check if we need to pre-build tools and generate assets based on the chosen rule.
+SETUP_PREREQS ?= 1
+# Disable dependency scanning for rules that don't need it.
+ifneq (,$(MAKECMDGOALS))
+ ifeq (,$(filter-out $(RULES_NO_SCAN),$(MAKECMDGOALS)))
+ NODEP := 1
+ SETUP_PREREQS := 0
endif
endif
-ifeq ($(SCAN_DEPS),1)
+.SHELLSTATUS ?= 0
+
+ifeq ($(SETUP_PREREQS),1)
+ # If set on: Default target or a rule requiring a scan
+ # Forcibly execute `make tools` since we need them for what we are doing.
+ $(foreach line, $(shell $(MAKE) -f make_tools.mk | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line))))
+ ifneq ($(.SHELLSTATUS),0)
+ $(error Errors occurred while building tools. See error messages above for more details)
+ endif
+ # Oh and also generate mapjson sources before we use `SCANINC`.
+ $(foreach line, $(shell $(MAKE) generated | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line))))
+ ifneq ($(.SHELLSTATUS),0)
+ $(error Errors occurred while generating map-related sources. See error messages above for more details)
+ endif
+endif
+
+# Collect sources
C_SRCS_IN := $(wildcard $(C_SUBDIR)/*.c $(C_SUBDIR)/*/*.c $(C_SUBDIR)/*/*/*.c)
C_SRCS := $(foreach src,$(C_SRCS_IN),$(if $(findstring .inc.c,$(src)),,$(src)))
C_OBJS := $(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(C_SRCS))
-GFLIB_SRCS := $(wildcard $(GFLIB_SUBDIR)/*.c)
-GFLIB_OBJS := $(patsubst $(GFLIB_SUBDIR)/%.c,$(GFLIB_BUILDDIR)/%.o,$(GFLIB_SRCS))
-
-C_ASM_SRCS += $(wildcard $(C_SUBDIR)/*.s $(C_SUBDIR)/*/*.s $(C_SUBDIR)/*/*/*.s)
+C_ASM_SRCS := $(wildcard $(C_SUBDIR)/*.s $(C_SUBDIR)/*/*.s $(C_SUBDIR)/*/*/*.s)
C_ASM_OBJS := $(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o,$(C_ASM_SRCS))
ASM_SRCS := $(wildcard $(ASM_SUBDIR)/*.s)
@@ -204,46 +217,34 @@ SONG_OBJS := $(patsubst $(SONG_SUBDIR)/%.s,$(SONG_BUILDDIR)/%.o,$(SONG_SRCS))
MID_SRCS := $(wildcard $(MID_SUBDIR)/*.mid)
MID_OBJS := $(patsubst $(MID_SUBDIR)/%.mid,$(MID_BUILDDIR)/%.o,$(MID_SRCS))
-OBJS := $(C_OBJS) $(GFLIB_OBJS) $(C_ASM_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS)
+OBJS := $(C_OBJS) $(C_ASM_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS)
OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS))
SUBDIRS := $(sort $(dir $(OBJS)))
$(shell mkdir -p $(SUBDIRS))
-endif
-AUTO_GEN_TARGETS :=
-
-all: rom
-
-tools: $(TOOLDIRS)
-
-syms: $(SYM)
-
-$(TOOLDIRS):
- @$(MAKE) -C $@
+# Pretend rules that are actually flags defer to `make all`
+modern: all
+compare: all
+# Other rules
rom: $(ROM)
ifeq ($(COMPARE),1)
@$(SHA1) rom.sha1
endif
-# For contributors to make sure a change didn't affect the contents of the ROM.
-compare: all
+syms: $(SYM)
-clean: mostlyclean clean-tools
+clean: tidy clean-tools clean-generated clean-assets
+ @$(MAKE) clean -C libagbsyscall
-clean-tools:
- @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);)
-
-mostlyclean: tidynonmodern tidymodern
- find sound -iname '*.bin' -exec rm {} +
+clean-assets:
rm -f $(MID_SUBDIR)/*.s
- find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.rl' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} +
rm -f $(DATA_ASM_SUBDIR)/layouts/layouts.inc $(DATA_ASM_SUBDIR)/layouts/layouts_table.inc
rm -f $(DATA_ASM_SUBDIR)/maps/connections.inc $(DATA_ASM_SUBDIR)/maps/events.inc $(DATA_ASM_SUBDIR)/maps/groups.inc $(DATA_ASM_SUBDIR)/maps/headers.inc
+ find sound -iname '*.bin' -exec rm {} +
+ find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.rl' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} +
find $(DATA_ASM_SUBDIR)/maps \( -iname 'connections.inc' -o -iname 'events.inc' -o -iname 'header.inc' \) -exec rm {} +
- rm -f $(AUTO_GEN_TARGETS)
- @$(MAKE) clean -C libagbsyscall
tidy: tidynonmodern tidymodern
@@ -255,146 +256,105 @@ tidymodern:
rm -f $(MODERN_ROM_NAME) $(MODERN_ELF_NAME) $(MODERN_MAP_NAME)
rm -rf $(MODERN_OBJ_DIR_NAME)
-ifneq ($(MODERN),0)
-$(C_BUILDDIR)/berry_crush.o: override CFLAGS += -Wno-address-of-packed-member
-endif
-
+# Other rules
include graphics_file_rules.mk
include map_data_rules.mk
include spritesheet_rules.mk
include json_data_rules.mk
-include songs.mk
+include audio_rules.mk
-%.s: ;
+# NOTE: Tools must have been built prior (FIXME)
+# so you can't really call this rule directly
+generated: $(AUTO_GEN_TARGETS)
+ @: # Silence the "Nothing to be done for `generated'" message, which some people were confusing for an error.
+
+
+%.s: ;
%.png: ;
%.pal: ;
%.aif: ;
-%.1bpp: %.png ; $(GFX) $< $@
-%.4bpp: %.png ; $(GFX) $< $@
-%.8bpp: %.png ; $(GFX) $< $@
-%.gbapal: %.pal ; $(GFX) $< $@
-%.gbapal: %.png ; $(GFX) $< $@
-%.lz: % ; $(GFX) $< $@
-%.rl: % ; $(GFX) $< $@
-$(CRY_SUBDIR)/%.bin: $(CRY_SUBDIR)/%.aif ; $(AIF) $< $@ --compress
-sound/%.bin: sound/%.aif ; $(AIF) $< $@
+%.1bpp: %.png ; $(GFX) $< $@
+%.4bpp: %.png ; $(GFX) $< $@
+%.8bpp: %.png ; $(GFX) $< $@
+%.gbapal: %.pal ; $(GFX) $< $@
+%.gbapal: %.png ; $(GFX) $< $@
+%.lz: % ; $(GFX) $< $@
+%.rl: % ; $(GFX) $< $@
+clean-generated:
+ @rm -f $(AUTO_GEN_TARGETS)
+ @echo "rm -f "
ifeq ($(MODERN),0)
-$(C_BUILDDIR)/libc.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE)
+$(C_BUILDDIR)/libc.o: CC1 := $(TOOLS_DIR)/agbcc/bin/old_agbcc$(EXE)
$(C_BUILDDIR)/libc.o: CFLAGS := -O2
-
$(C_BUILDDIR)/siirtc.o: CFLAGS := -mthumb-interwork
-
$(C_BUILDDIR)/agb_flash.o: CFLAGS := -O -mthumb-interwork
$(C_BUILDDIR)/agb_flash_1m.o: CFLAGS := -O -mthumb-interwork
$(C_BUILDDIR)/agb_flash_mx.o: CFLAGS := -O -mthumb-interwork
-
$(C_BUILDDIR)/m4a.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE)
-
$(C_BUILDDIR)/record_mixing.o: CFLAGS += -ffreestanding
-$(C_BUILDDIR)/librfu_intr.o: CC1 := tools/agbcc/bin/agbcc_arm$(EXE)
+$(C_BUILDDIR)/librfu_intr.o: CC1 := $(TOOLS_DIR)/agbcc/bin/agbcc_arm$(EXE)
$(C_BUILDDIR)/librfu_intr.o: CFLAGS := -O2 -mthumb-interwork -quiet
else
$(C_BUILDDIR)/librfu_intr.o: CFLAGS := -mthumb-interwork -O2 -mabi=apcs-gnu -mtune=arm7tdmi -march=armv4t -fno-toplevel-reorder -Wno-pointer-to-int-cast
+$(C_BUILDDIR)/berry_crush.o: override CFLAGS += -Wno-address-of-packed-member
endif
-ifeq ($(DINFO),1)
-override CFLAGS += -g
-endif
+# Dependency rules (for the *.c & *.s sources to .o files)
+# Have to be explicit or else missing files won't be reported.
-# The dep rules have to be explicit or else missing files won't be reported.
# As a side effect, they're evaluated immediately instead of when the rule is invoked.
-# It doesn't look like $(shell) can be deferred so there might not be a better way.
+# It doesn't look like $(shell) can be deferred so there might not be a better way (Icedude_907: there is soon).
-ifeq ($(SCAN_DEPS),1)
-ifeq ($(NODEP),1)
$(C_BUILDDIR)/%.o: $(C_SUBDIR)/%.c
-ifeq (,$(KEEP_TEMPS))
+ifneq ($(KEEP_TEMPS),1)
@echo "$(CC1) -o $@ $<"
- @$(CPP) $(CPPFLAGS) $< | $(PREPROC) $< charmap.txt -i | $(CC1) $(CFLAGS) -o - - | cat - <(echo -e ".text\n\t.align\t2, 0") | $(AS) $(ASFLAGS) -o $@ -
+ @$(CPP) $(CPPFLAGS) $< | $(PREPROC) -i $< charmap.txt | $(CC1) $(CFLAGS) -o - - | cat - <(echo -e ".text\n\t.align\t2, 0") | $(AS) $(ASFLAGS) -o $@ -
else
@$(CPP) $(CPPFLAGS) $< -o $(C_BUILDDIR)/$*.i
@$(PREPROC) $(C_BUILDDIR)/$*.i charmap.txt | $(CC1) $(CFLAGS) -o $(C_BUILDDIR)/$*.s
@echo -e ".text\n\t.align\t2, 0\n" >> $(C_BUILDDIR)/$*.s
$(AS) $(ASFLAGS) -o $@ $(C_BUILDDIR)/$*.s
endif
-else
-define C_DEP
-$1: $2 $$(shell $(SCANINC) -I include -I tools/agbcc/include -I gflib $2)
-ifeq (,$$(KEEP_TEMPS))
- @echo "$$(CC1) -o $$@ $$<"
- @$$(CPP) $$(CPPFLAGS) $$< | $$(PREPROC) $$< charmap.txt -i | $$(CC1) $$(CFLAGS) -o - - | cat - <(echo -e ".text\n\t.align\t2, 0") | $$(AS) $$(ASFLAGS) -o $$@ -
-else
- @$$(CPP) $$(CPPFLAGS) $$< -o $$(C_BUILDDIR)/$3.i
- @$$(PREPROC) $$(C_BUILDDIR)/$3.i charmap.txt | $$(CC1) $$(CFLAGS) -o $$(C_BUILDDIR)/$3.s
- @echo -e ".text\n\t.align\t2, 0\n" >> $$(C_BUILDDIR)/$3.s
- $$(AS) $$(ASFLAGS) -o $$@ $$(C_BUILDDIR)/$3.s
-endif
-endef
-$(foreach src, $(C_SRCS), $(eval $(call C_DEP,$(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(src)),$(src),$(patsubst $(C_SUBDIR)/%.c,%,$(src)))))
+
+$(C_BUILDDIR)/%.d: $(C_SUBDIR)/%.c
+ $(SCANINC) -M $@ $(INCLUDE_SCANINC_ARGS) -I tools/agbcc/include $<
+
+ifneq ($(NODEP),1)
+-include $(addprefix $(OBJ_DIR)/,$(C_SRCS:.c=.d))
endif
-ifeq ($(NODEP),1)
-$(GFLIB_BUILDDIR)/%.o: $(GFLIB_SUBDIR)/%.c $$(c_dep)
-ifeq (,$(KEEP_TEMPS))
- @echo "$(CC1) -o $@ $<"
- @$(CPP) $(CPPFLAGS) $< | $(PREPROC) $< charmap.txt -i | $(CC1) $(CFLAGS) -o - - | cat - <(echo -e ".text\n\t.align\t2, 0") | $(AS) $(ASFLAGS) -o $@ -
-else
- @$(CPP) $(CPPFLAGS) $< -o $(GFLIB_BUILDDIR)/$*.i
- @$(PREPROC) $(GFLIB_BUILDDIR)/$*.i charmap.txt | $(CC1) $(CFLAGS) -o $(GFLIB_BUILDDIR)/$*.s
- @echo -e ".text\n\t.align\t2, 0\n" >> $(GFLIB_BUILDDIR)/$*.s
- $(AS) $(ASFLAGS) -o $@ $(GFLIB_BUILDDIR)/$*.s
-endif
-else
-define GFLIB_DEP
-$1: $2 $$(shell $(SCANINC) -I include -I tools/agbcc/include -I gflib $2)
-ifeq (,$$(KEEP_TEMPS))
- @echo "$$(CC1) -o $$@ $$<"
- @$$(CPP) $$(CPPFLAGS) $$< | $$(PREPROC) $$< charmap.txt -i | $$(CC1) $$(CFLAGS) -o - - | cat - <(echo -e ".text\n\t.align\t2, 0") | $$(AS) $$(ASFLAGS) -o $$@ -
-else
- @$$(CPP) $$(CPPFLAGS) $$< -o $$(GFLIB_BUILDDIR)/$3.i
- @$$(PREPROC) $$(GFLIB_BUILDDIR)/$3.i charmap.txt | $$(CC1) $$(CFLAGS) -o $$(GFLIB_BUILDDIR)/$3.s
- @echo -e ".text\n\t.align\t2, 0\n" >> $$(GFLIB_BUILDDIR)/$3.s
- $$(AS) $$(ASFLAGS) -o $$@ $$(GFLIB_BUILDDIR)/$3.s
-endif
-endef
-$(foreach src, $(GFLIB_SRCS), $(eval $(call GFLIB_DEP,$(patsubst $(GFLIB_SUBDIR)/%.c,$(GFLIB_BUILDDIR)/%.o, $(src)),$(src),$(patsubst $(GFLIB_SUBDIR)/%.c,%, $(src)))))
-endif
-
-ifeq ($(NODEP),1)
-$(C_BUILDDIR)/%.o: $(C_SUBDIR)/%.s
- $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@
-else
-define SRC_ASM_DATA_DEP
-$1: $2 $$(shell $(SCANINC) -I include -I "" $2)
- $$(PREPROC) $$< charmap.txt | $$(CPP) -I include - | $$(AS) $$(ASFLAGS) -o $$@
-endef
-$(foreach src, $(C_ASM_SRCS), $(eval $(call SRC_ASM_DATA_DEP,$(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o, $(src)),$(src))))
-endif
-
-ifeq ($(NODEP),1)
$(ASM_BUILDDIR)/%.o: $(ASM_SUBDIR)/%.s
$(AS) $(ASFLAGS) -o $@ $<
-else
-define ASM_DEP
-$1: $2 $$(shell $(SCANINC) -I include -I "" $2)
- $$(AS) $$(ASFLAGS) -o $$@ $$<
-endef
-$(foreach src, $(ASM_SRCS), $(eval $(call ASM_DEP,$(patsubst $(ASM_SUBDIR)/%.s,$(ASM_BUILDDIR)/%.o, $(src)),$(src))))
+
+$(ASM_BUILDDIR)/%.d: $(ASM_SUBDIR)/%.s
+ $(SCANINC) -M $@ $(INCLUDE_SCANINC_ARGS) -I "" $<
+
+ifneq ($(NODEP),1)
+-include $(addprefix $(OBJ_DIR)/,$(ASM_SRCS:.s=.d))
+endif
+
+$(C_BUILDDIR)/%.o: $(C_SUBDIR)/%.s
+ $(PREPROC) $< charmap.txt | $(CPP) $(INCLUDE_SCANINC_ARGS) - | $(PREPROC) -ie $< charmap.txt | $(AS) $(ASFLAGS) -o $@
+
+$(C_BUILDDIR)/%.d: $(C_SUBDIR)/%.s
+ $(SCANINC) -M $@ $(INCLUDE_SCANINC_ARGS) -I "" $<
+
+ifneq ($(NODEP),1)
+-include $(addprefix $(OBJ_DIR)/,$(C_ASM_SRCS:.s=.d))
endif
-ifeq ($(NODEP),1)
$(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s
- $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@
-else
-$(foreach src, $(REGULAR_DATA_ASM_SRCS), $(eval $(call SRC_ASM_DATA_DEP,$(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o, $(src)),$(src))))
-endif
-endif
+ $(PREPROC) $< charmap.txt | $(CPP) $(INCLUDE_SCANINC_ARGS) - | $(PREPROC) -ie $< charmap.txt | $(AS) $(ASFLAGS) -o $@
-$(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s
- $(AS) $(ASFLAGS) -I sound -o $@ $<
+$(DATA_ASM_BUILDDIR)/%.d: $(DATA_ASM_SUBDIR)/%.s
+ $(SCANINC) -M $@ $(INCLUDE_SCANINC_ARGS) -I "" $<
+
+ifneq ($(NODEP),1)
+-include $(addprefix $(OBJ_DIR)/,$(REGULAR_DATA_ASM_SRCS:.s=.d))
+endif
$(OBJ_DIR)/sym_bss.ld: sym_bss.txt
$(RAMSCRGEN) .bss $< ENGLISH > $@
@@ -405,34 +365,32 @@ $(OBJ_DIR)/sym_common.ld: sym_common.txt $(C_OBJS) $(wildcard common_syms/*.txt)
$(OBJ_DIR)/sym_ewram.ld: sym_ewram.txt
$(RAMSCRGEN) ewram_data $< ENGLISH > $@
+# Linker script
ifeq ($(MODERN),0)
-LD_SCRIPT := ld_script.txt
+LD_SCRIPT := ld_script.ld
LD_SCRIPT_DEPS := $(OBJ_DIR)/sym_bss.ld $(OBJ_DIR)/sym_common.ld $(OBJ_DIR)/sym_ewram.ld
else
-LD_SCRIPT := ld_script_modern.txt
+LD_SCRIPT := ld_script_modern.ld
LD_SCRIPT_DEPS :=
endif
-$(OBJ_DIR)/ld_script.ld: $(LD_SCRIPT) $(LD_SCRIPT_DEPS)
- cd $(OBJ_DIR) && sed "s#tools/#../../tools/#g" ../../$(LD_SCRIPT) > ld_script.ld
-
-$(ELF): $(OBJ_DIR)/ld_script.ld $(OBJS) libagbsyscall
- @echo "cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ "
- @cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ $(OBJS_REL) $(LIB)
- $(FIX) $@ -t"$(TITLE)" -c$(GAME_CODE) -m$(MAKER_CODE) -r$(REVISION) --silent
-
-$(ROM): $(ELF)
- $(OBJCOPY) -O binary $< $@
- $(FIX) $@ -p --silent
-
-modern: all
+# Final rules
libagbsyscall:
@$(MAKE) -C libagbsyscall TOOLCHAIN=$(TOOLCHAIN) MODERN=$(MODERN)
-###################
-### Symbol file ###
-###################
+# Elf from object files
+LDFLAGS = -Map ../../$(MAP)
+$(ELF): $(LD_SCRIPT) $(LD_SCRIPT_DEPS) $(OBJS) libagbsyscall
+ @cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ../../$< --print-memory-usage -o ../../$@ $(OBJS_REL) $(LIB) | cat
+ @echo "cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ../../$< --print-memory-usage -o ../../$@ | cat"
+ $(FIX) $@ -t"$(TITLE)" -c$(GAME_CODE) -m$(MAKER_CODE) -r$(REVISION) --silent
+# Builds the rom from the elf file
+$(ROM): $(ELF)
+ $(OBJCOPY) -O binary $< $@
+ $(FIX) $@ -p --silent
+
+# Symbol file (`make syms`)
$(SYM): $(ELF)
$(OBJDUMP) -t $< | sort -u | grep -E "^0[2389]" | $(PERL) -p -e 's/^(\w{8}) (\w).{6} \S+\t(\w{8}) (\S+)$$/\1 \2 \3 \4/g' > $@
diff --git a/asm/macros/battle_frontier/battle_pyramid.inc b/asm/macros/battle_frontier/battle_pyramid.inc
index bb5069f18a..42141d9937 100644
--- a/asm/macros/battle_frontier/battle_pyramid.inc
+++ b/asm/macros/battle_frontier/battle_pyramid.inc
@@ -69,8 +69,8 @@
.endm
@ VAR_RESULT is 1 if player is on a Pyramid floor, 2 if on the Pyramid peak, 0 otherwise
- .macro pyramid_inchallenge
- setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_IS_IN
+ .macro pyramid_getlocation
+ setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_CURRENT_LOCATION
special CallBattlePyramidFunction
.endm
diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc
index ccb887327f..0bb9e072be 100644
--- a/asm/macros/battle_script.inc
+++ b/asm/macros/battle_script.inc
@@ -1044,7 +1044,7 @@
.byte 0xcb
.endm
- .macro callterrainattack
+ .macro callenvironmentattack
.byte 0xcc
.endm
@@ -1192,7 +1192,7 @@
.4byte \ptr
.endm
- .macro settypetoterrain ptr:req
+ .macro settypetoenvironment ptr:req
.byte 0xeb
.4byte \ptr
.endm
diff --git a/asm/macros/contest_ai_script.inc b/asm/macros/contest_ai_script.inc
index 9ab7184c3c..d66d9a8ffd 100644
--- a/asm/macros/contest_ai_script.inc
+++ b/asm/macros/contest_ai_script.inc
@@ -141,25 +141,25 @@
.macro if_points_less_than num:req, destination:req
.byte 0x16
- .byte \num
+ .2byte \num
.4byte \destination
.endm
.macro if_points_more_than num:req, destination:req
.byte 0x17
- .byte \num
+ .2byte \num
.4byte \destination
.endm
.macro if_points_eq num:req, destination:req
.byte 0x18
- .byte \num
+ .2byte \num
.4byte \destination
.endm
.macro if_points_not_eq num:req, destination:req
.byte 0x19
- .byte \num
+ .2byte \num
.4byte \destination
.endm
@@ -171,25 +171,25 @@
.macro if_preliminary_points_less_than num:req, destination:req
.byte 0x1B
- .byte \num
+ .2byte \num
.4byte \destination
.endm
.macro if_preliminary_points_more_than num:req, destination:req
.byte 0x1C
- .byte \num
+ .2byte \num
.4byte \destination
.endm
.macro if_preliminary_points_eq num:req, destination:req
.byte 0x1D
- .byte \num
+ .2byte \num
.4byte \destination
.endm
.macro if_preliminary_points_not_eq num:req, destination:req
.byte 0x1E
- .byte \num
+ .2byte \num
.4byte \destination
.endm
diff --git a/asm/macros/event.inc b/asm/macros/event.inc
index b91ac68210..797d549dc9 100644
--- a/asm/macros/event.inc
+++ b/asm/macros/event.inc
@@ -1,52 +1,55 @@
+ .set ALLOCATE_SCRIPT_CMD_TABLE, 0
+ .include "data/script_cmd_table.inc"
+
@ Does nothing.
.macro nop
- .byte 0x00
+ .byte SCR_OP_NOP
.endm
@ Does nothing.
.macro nop1
- .byte 0x01
+ .byte SCR_OP_NOP1
.endm
@ Terminates script execution.
.macro end
- .byte 0x02
+ .byte SCR_OP_END
.endm
@ Jumps back to after the last-executed call statement, and continues script execution from there.
.macro return
- .byte 0x03
+ .byte SCR_OP_RETURN
.endm
@ Jumps to destination and continues script execution from there. The location of the calling script is remembered and can be returned to later.
.macro call destination:req
- .byte 0x04
+ .byte SCR_OP_CALL
.4byte \destination
.endm
@ Jumps to destination and continues script execution from there.
.macro goto destination:req
- .byte 0x05
+ .byte SCR_OP_GOTO
.4byte \destination
.endm
@ If the result of the last comparison matches condition (see Comparison operators), jumps to destination and continues script execution from there.
.macro goto_if condition:req, destination:req
- .byte 0x06
+ .byte SCR_OP_GOTO_IF
.byte \condition
.4byte \destination
.endm
@ If the result of the last comparison matches condition (see Comparison operators), calls destination.
.macro call_if condition:req, destination:req
- .byte 0x07
+ .byte SCR_OP_CALL_IF
.byte \condition
.4byte \destination
.endm
@ Jumps to the script in gStdScripts at index function.
.macro gotostd function:req
- .byte 0x08
+ .byte SCR_OP_GOTO_STD
.byte \function
.endm
@@ -58,120 +61,123 @@
@ Calls the script in gStdScripts at index function.
.macro callstd function:req
- .byte 0x09
+ .byte SCR_OP_CALL_STD
.byte \function
.endm
@ If the result of the last comparison matches condition (see Comparison operators), jumps to the script in gStdScripts at index function.
.macro gotostd_if condition:req, function:req
- .byte 0x0a
+ .byte SCR_OP_GOTO_STD_IF
.byte \condition
.byte \function
.endm
@ If the result of the last comparison matches condition (see Comparison operators), calls the script in gStdScripts at index function.
.macro callstd_if condition:req, function:req
- .byte 0x0b
+ .byte SCR_OP_CALL_STD_IF
.byte \condition
.byte \function
.endm
@ Equivalent to the 'return' command for a RAM script.
.macro returnram
- .byte 0x0c
+ .byte SCR_OP_RETURNRAM
.endm
@ Equivalent to the 'end' command for a RAM script.
.macro endram
- .byte 0x0d
+ .byte SCR_OP_ENDRAM
.endm
@ Sets the Mystery Event script status (MEVENT_STATUS_*).
.macro setmysteryeventstatus value:req
- .byte 0x0e
+ .byte SCR_OP_SETMYSTERYEVENTSTATUS
.byte \value
.endm
@ Sets the value at the specified script data index to a fixed 4-byte value.
.macro loadword destIndex:req, value:req
- .byte 0x0f
+ .byte SCR_OP_LOAD_WORD
.byte \destIndex
.4byte \value
.endm
@ Sets the value at the specified script data index to a fixed byte value.
.macro loadbyte destIndex:req, value:req
- .byte 0x10
+ .byte SCR_OP_LOAD_BYTE
.byte \destIndex
.byte \value
.endm
@ Sets the value at the specified pointer.
.macro setptr value:req, ptr:req
- .byte 0x11
+ .byte SCR_OP_SETPTR
.byte \value
.4byte \ptr
.endm
@ Sets the value at the specified script data index to the value at pointer 'source'.
.macro loadbytefromptr destIndex:req, source:req
- .byte 0x12
+ .byte SCR_OP_LOADBYTEFROMPTR
.byte \destIndex
.4byte \source
.endm
@ Sets the value at pointer 'destination' to the contents of the script data at 'srcIndex'.
.macro setptrbyte srcIndex:req, destination:req
- .byte 0x13
+ .byte SCR_OP_SETPTRBYTE
.byte \srcIndex
.4byte \destination
.endm
@ Copies the contents of the script data from one index to another.
.macro copylocal destIndex:req, srcIndex:req
- .byte 0x14
+ .byte SCR_OP_COPYLOCAL
.byte \destIndex
.byte \srcIndex
.endm
@ Copies the byte at source to destination, replacing whatever byte was previously there.
.macro copybyte destination:req, source:req
- .byte 0x15
+ .byte SCR_OP_COPYBYTE
.4byte \destination
.4byte \source
.endm
@ Changes the value of destination to value.
- .macro setvar destination:req, value:req
- .byte 0x16
+ .macro setvar destination:req, value:req, warn=TRUE
+ .if \warn && ((\value >= VARS_START && \value <= VARS_END) || (\value >= SPECIAL_VARS_START && \value <= SPECIAL_VARS_END))
+ .warning "setvar with a value that might be a VAR_ constant; did you mean copyvar instead?"
+ .endif
+ .byte SCR_OP_SETVAR
.2byte \destination
.2byte \value
.endm
@ Changes the value of destination by adding value to it. Overflow is not prevented (0xFFFF + 1 = 0x0000).
.macro addvar destination:req, value:req
- .byte 0x17
+ .byte SCR_OP_ADDVAR
.2byte \destination
.2byte \value
.endm
@ Changes the value of destination by subtracting value to it. Overflow is not prevented (0x0000 - 1 = 0xFFFF).
.macro subvar destination:req, value:req
- .byte 0x18
+ .byte SCR_OP_SUBVAR
.2byte \destination
.2byte \value
.endm
@ Copies the value of source into destination.
.macro copyvar destination:req, source:req
- .byte 0x19
+ .byte SCR_OP_COPYVAR
.2byte \destination
.2byte \source
.endm
@ If source is not a variable, then this function acts like setvar. Otherwise, it acts like copyvar.
.macro setorcopyvar destination:req, source:req
- .byte 0x1a
+ .byte SCR_OP_SETORCOPYVAR
.2byte \destination
.2byte \source
.endm
@@ -179,7 +185,7 @@
@ Compares the values of the script data at indexes 'local1' and 'local2'.
@ The result is stored in comparisonResult to be acted on by goto_if / call_if
.macro compare_local_to_local local1:req, local2:req
- .byte 0x1b
+ .byte SCR_OP_COMPARE_LOCAL_TO_LOCAL
.byte \local1
.byte \local2
.endm
@@ -187,7 +193,7 @@
@ Compares the value of the script data at index 'local' to a fixed value.
@ The result is stored in comparisonResult to be acted on by goto_if / call_if
.macro compare_local_to_value local:req, value:req
- .byte 0x1c
+ .byte SCR_OP_COMPARE_LOCAL_TO_VALUE
.byte \local
.byte \value
.endm
@@ -195,7 +201,7 @@
@ Compares the value of the script data at index 'local' to the value at 'ptr'
@ The result is stored in comparisonResult to be acted on by goto_if / call_if
.macro compare_local_to_ptr local:req, ptr:req
- .byte 0x1d
+ .byte SCR_OP_COMPARE_LOCAL_TO_PTR
.byte \local
.4byte \ptr
.endm
@@ -203,7 +209,7 @@
@ Compares the value at 'ptr' to the value of the script data at index 'local'.
@ The result is stored in comparisonResult to be acted on by goto_if / call_if
.macro compare_ptr_to_local ptr:req, local:req
- .byte 0x1e
+ .byte SCR_OP_COMPARE_PTR_TO_LOCAL
.4byte \ptr
.byte \local
.endm
@@ -211,7 +217,7 @@
@ Compares the value at 'ptr' to a fixed value.
@ The result is stored in comparisonResult to be acted on by goto_if / call_if
.macro compare_ptr_to_value ptr:req, value:req
- .byte 0x1f
+ .byte SCR_OP_COMPARE_PTR_TO_VALUE
.4byte \ptr
.byte \value
.endm
@@ -219,7 +225,7 @@
@ Compares the value at 'ptr1' to the value at 'ptr2'.
@ The result is stored in comparisonResult to be acted on by goto_if / call_if
.macro compare_ptr_to_ptr ptr1:req, ptr2:req
- .byte 0x20
+ .byte SCR_OP_COMPARE_PTR_TO_PTR
.4byte \ptr1
.4byte \ptr2
.endm
@@ -227,7 +233,7 @@
@ Compares the value of 'var' to a fixed value.
@ The result is stored in comparisonResult to be acted on by goto_if / call_if
.macro compare_var_to_value var:req, value:req
- .byte 0x21
+ .byte SCR_OP_COMPARE_VAR_TO_VALUE
.2byte \var
.2byte \value
.endm
@@ -235,7 +241,7 @@
@ Compares the value of 'var1' to the value of 'var2'.
@ The result is stored in comparisonResult to be acted on by goto_if / call_if
.macro compare_var_to_var var1:req, var2:req
- .byte 0x22
+ .byte SCR_OP_COMPARE_VAR_TO_VAR
.2byte \var1
.2byte \var2
.endm
@@ -252,26 +258,26 @@
@ Calls the native C function stored at func.
.macro callnative func:req
- .byte 0x23
+ .byte SCR_OP_CALLNATIVE
.4byte \func
.endm
@ Replaces the script with the function stored at func. Execution returns to the bytecode script when func returns TRUE.
.macro gotonative func:req
- .byte 0x24
+ .byte SCR_OP_GOTONATIVE
.4byte \func
.endm
@ Calls a function listed in the table in data/specials.inc.
.macro special function:req
- .byte 0x25
+ .byte SCR_OP_SPECIAL
.2byte SPECIAL_\function
.endm
@ Calls a function listed in the table in data/specials.inc.
@ That function's output (if any) will be written to the variable specified by 'output'.
.macro specialvar output:req, function:req
- .byte 0x26
+ .byte SCR_OP_SPECIALVAR
.2byte \output
.2byte SPECIAL_\function
.endm
@@ -279,77 +285,77 @@
@ Blocks script execution until a command or C code manually unblocks it. Generally used with specific
@ commands and specials. Calling ScriptContext_Enable for instance will allow execution to continue.
.macro waitstate
- .byte 0x27
+ .byte SCR_OP_WAITSTATE
.endm
@ Blocks script execution for frames. (Pokemon Emerald runs at just shy of 60 frames per second.)
.macro delay frames:req
- .byte 0x28
+ .byte SCR_OP_DELAY
.2byte \frames
.endm
@ Sets flag to TRUE.
.macro setflag flag:req
- .byte 0x29
+ .byte SCR_OP_SETFLAG
.2byte \flag
.endm
@ Sets flag to FALSE.
.macro clearflag flag:req
- .byte 0x2a
+ .byte SCR_OP_CLEARFLAG
.2byte \flag
.endm
@ Compares flag to TRUE and stores the result in comparisonResult to be used by goto_if, etc
@ See additional _if_unset and _if_set macros
.macro checkflag flag:req
- .byte 0x2b
+ .byte SCR_OP_CHECKFLAG
.2byte \flag
.endm
@ Initializes the RTC`s local time offset to the given hour and minute.
.macro initclock hour:req, minute:req
- .byte 0x2c
+ .byte SCR_OP_INITCLOCK
.2byte \hour
.2byte \minute
.endm
@ Updates local time using the RTC and runs time based events.
.macro dotimebasedevents
- .byte 0x2d
+ .byte SCR_OP_DOTIMEBASEDEVENTS
.endm
@ Sets the values of variables VAR_0x8000, VAR_0x8001, and VAR_0x8002 to the current hour, minute, and second.
.macro gettime
- .byte 0x2e
+ .byte SCR_OP_GETTIME
.endm
@ Plays the specified sound. Only one sound may play at a time, with newer ones interrupting older ones.
.macro playse song:req
- .byte 0x2f
+ .byte SCR_OP_PLAYSE
.2byte \song
.endm
@ Blocks script execution until the currently-playing sound (triggered by playse) finishes playing.
.macro waitse
- .byte 0x30
+ .byte SCR_OP_WAITSE
.endm
@ Plays the fanfare specified by the song number. If the specified song is not a fanfare it will instead play the first song in sFanfares.
.macro playfanfare song:req
- .byte 0x31
+ .byte SCR_OP_PLAYFANFARE
.2byte \song
.endm
@ Blocks script execution until all currently-playing fanfares finish.
.macro waitfanfare
- .byte 0x32
+ .byte SCR_OP_WAITFANFARE
.endm
@ Plays the specified song. If save_song is TRUE, the
@ specified song will be saved as if savebgm was called with it.
.macro playbgm song:req, save_song:req
- .byte 0x33
+ .byte SCR_OP_PLAYBGM
.2byte \song
.byte \save_song
.endm
@@ -357,30 +363,30 @@
@ Saves the specified song to be played later. Saved music may be played when Overworld_PlaySpecialMapMusic is called. This occurs on
@ exiting most warps.
.macro savebgm song:req
- .byte 0x34
+ .byte SCR_OP_SAVEBGM
.2byte \song
.endm
@ Crossfades the currently-playing song into the map's default song.
.macro fadedefaultbgm
- .byte 0x35
+ .byte SCR_OP_FADEDEFAULTBGM
.endm
@ Crossfades the currently-playing song into the specified song.
.macro fadenewbgm song:req
- .byte 0x36
+ .byte SCR_OP_FADENEWBGM
.2byte \song
.endm
@ Fades out the currently-playing song.
.macro fadeoutbgm speed:req
- .byte 0x37
+ .byte SCR_OP_FADEOUTBGM
.byte \speed
.endm
@ Fades the previously-playing song back in.
.macro fadeinbgm speed:req
- .byte 0x38
+ .byte SCR_OP_FADEINBGM
.byte \speed
.endm
@@ -424,7 +430,7 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro warp map:req, a, b, c
- .byte 0x39
+ .byte SCR_OP_WARP
formatwarp \map, \a, \b, \c
.endm
@@ -432,7 +438,7 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro warpsilent map:req, a, b, c
- .byte 0x3a
+ .byte SCR_OP_WARPSILENT
formatwarp \map, \a, \b, \c
.endm
@@ -440,7 +446,7 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro warpdoor map:req, a, b, c
- .byte 0x3b
+ .byte SCR_OP_WARPDOOR
formatwarp \map, \a, \b, \c
.endm
@@ -448,7 +454,7 @@
@ use the map set by setholewarp. In either case the target coordinates on the destination map will be the
@ player's current position.
.macro warphole map:req
- .byte 0x3c
+ .byte SCR_OP_WARPHOLE
map \map
.endm
@@ -457,7 +463,7 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro warpteleport map:req, a, b, c
- .byte 0x3d
+ .byte SCR_OP_WARPTELEPORT
formatwarp \map, \a, \b, \c
.endm
@@ -465,7 +471,7 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro setwarp map:req, a, b, c
- .byte 0x3e
+ .byte SCR_OP_SETWARP
formatwarp \map, \a, \b, \c
.endm
@@ -473,7 +479,7 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro setdynamicwarp map:req, a, b, c
- .byte 0x3f
+ .byte SCR_OP_SETDYNAMICWARP
formatwarp \map, \a, \b, \c
.endm
@@ -483,7 +489,7 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro setdivewarp map:req, a, b, c
- .byte 0x40
+ .byte SCR_OP_SETDIVEWARP
formatwarp \map, \a, \b, \c
.endm
@@ -494,26 +500,26 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro setholewarp map:req, a=0, b=0, c
- .byte 0x41
+ .byte SCR_OP_SETHOLEWARP
formatwarp \map, \a, \b, \c
.endm
@ Retrieves the player's zero-indexed x- and y-coordinates in the map, and stores them in the specified variables.
.macro getplayerxy x:req, y:req
- .byte 0x42
+ .byte SCR_OP_GETPLAYERXY
.2byte \x
.2byte \y
.endm
@ Retrieves the number of Pokemon in the player's party, and stores that number in VAR_RESULT.
.macro getpartysize
- .byte 0x43
+ .byte SCR_OP_GETPARTYSIZE
.endm
@ Attempts to add quantity of the specified item to the player's Bag. If the player has enough room, the item will
@ be added and VAR_RESULT will be set to TRUE; otherwise, VAR_RESULT is set to FALSE.
.macro additem itemId:req, quantity=1
- .byte 0x44
+ .byte SCR_OP_ADDITEM
.2byte \itemId
.2byte \quantity
.endm
@@ -521,7 +527,7 @@
@ Removes quantity of the specified item from the player's Bag. If the player has fewer than 'quantity' in their bag
@ then none will be removed and VAR_RESULT will be set to FALSE. Otherwise it will be set to TRUE.
.macro removeitem itemId:req, quantity=1
- .byte 0x45
+ .byte SCR_OP_REMOVEITEM
.2byte \itemId
.2byte \quantity
.endm
@@ -529,7 +535,7 @@
@ Checks if the player has enough space in their Bag to hold quantity more of the specified item. Sets VAR_RESULT to
@ TRUE if there is room, or FALSE is there is no room.
.macro checkitemspace itemId:req, quantity=1
- .byte 0x46
+ .byte SCR_OP_CHECKITEMSPACE
.2byte \itemId
.2byte \quantity
.endm
@@ -537,7 +543,7 @@
@ Checks if the player has quantity or more of the specified item in their Bag. Sets VAR_RESULT to TRUE if the player has
@ enough of the item, or FALSE if they have fewer than quantity of the item.
.macro checkitem itemId:req, quantity=1
- .byte 0x47
+ .byte SCR_OP_CHECKITEM
.2byte \itemId
.2byte \quantity
.endm
@@ -545,58 +551,58 @@
@ Checks which Bag pocket the specified item belongs in, and writes the pocket value (POCKET_*) to VAR_RESULT.
@ This is used to show the name of the proper Bag pocket when the player receives an item via callstd.
.macro checkitemtype itemId:req
- .byte 0x48
+ .byte SCR_OP_CHECKITEMTYPE
.2byte \itemId
.endm
@ Adds quantity of the specified item to the player's PC.
.macro addpcitem itemId:req, quantity=1
- .byte 0x49
+ .byte SCR_OP_ADDPCITEM
.2byte \itemId
.2byte \quantity
.endm
@ Checks for quantity of the specified item in the player's PC.
.macro checkpcitem itemId:req, quantity=1
- .byte 0x4a
+ .byte SCR_OP_CHECKPCITEM
.2byte \itemId
.2byte \quantity
.endm
@ Adds a decoration to the player's PC.
.macro adddecoration decoration:req
- .byte 0x4b
+ .byte SCR_OP_ADDDECORATION
.2byte \decoration
.endm
@ Removes a decoration from the player's PC.
.macro removedecoration decoration:req
- .byte 0x4c
+ .byte SCR_OP_REMOVEDECORATION
.2byte \decoration
.endm
@ Checks for decoration in the player's PC.
.macro checkdecor decoration:req
- .byte 0x4d
+ .byte SCR_OP_CHECKDECOR
.2byte \decoration
.endm
@ Checks if the player has enough space in their PC to hold the decoration.
@ Sets VAR_RESULT to TRUE if there is room, or FALSE is there is no room.
.macro checkdecorspace decoration:req
- .byte 0x4e
+ .byte SCR_OP_CHECKDECORSPACE
.2byte \decoration
.endm
@ Applies the movement data at movements to the specified (localId) object. If no map is specified, then the current map is used.
.macro applymovement localId:req, movements:req, map
.ifb \map
- .byte 0x4f
+ .byte SCR_OP_APPLYMOVEMENT
.2byte \localId
.4byte \movements
.else
@ Really only useful if the object has followed from one map to another (e.g. Wally during the catching event).
- .byte 0x50
+ .byte SCR_OP_APPLYMOVEMENTAT
.2byte \localId
.4byte \movements
map \map
@@ -604,15 +610,15 @@
.endm
@ Blocks script execution until the movements being applied to the specified (localId) object finish.
- @ If localId is 0, then the id of the last-moved object will be used instead. If the specified object
- @ is not currently being manipulated with applymovement, then this command does nothing.
+ @ If localId is LOCALID_NONE (0), then the id of the last-moved object will be used instead.
+ @ If the specified object is not currently being manipulated with applymovement, then this command does nothing.
@ If no map is specified, then the current map is used.
- .macro waitmovement localId:req, map
+ .macro waitmovement localId=LOCALID_NONE, map
.ifb \map
- .byte 0x51
+ .byte SCR_OP_WAITMOVEMENT
.2byte \localId
.else
- .byte 0x52
+ .byte SCR_OP_WAITMOVEMENTAT
.2byte \localId
map \map
.endif
@@ -623,10 +629,10 @@
@ If no map is specified, then the current map is used.
.macro removeobject localId:req, map
.ifb \map
- .byte 0x53
+ .byte SCR_OP_REMOVEOBJECT
.2byte \localId
.else
- .byte 0x54
+ .byte SCR_OP_REMOVEOBJECTAT
.2byte \localId
map \map
.endif
@@ -637,10 +643,10 @@
@ If no map is specified, then the current map is used.
.macro addobject localId:req, map
.ifb \map
- .byte 0x55
+ .byte SCR_OP_ADDOBJECT
.2byte \localId
.else
- .byte 0x56
+ .byte SCR_OP_ADDOBJECTAT
.2byte \localId
map \map
.endif
@@ -648,7 +654,7 @@
@ Sets the specified (localId) object's position on the current map.
.macro setobjectxy localId:req, x:req, y:req
- .byte 0x57
+ .byte SCR_OP_SETOBJECTXY
.2byte \localId
.2byte \x
.2byte \y
@@ -656,33 +662,33 @@
@ Sets the specified object's invisibility to FALSE.
.macro showobjectat localId:req, map:req
- .byte 0x58
+ .byte SCR_OP_SHOWOBJECTAT
.2byte \localId
map \map
.endm
@ Sets the specified object's invisibility to TRUE.
.macro hideobjectat localId:req, map:req
- .byte 0x59
+ .byte SCR_OP_HIDEOBJECTAT
.2byte \localId
map \map
.endm
@ Turns the currently selected object (if there is one) to face the player.
.macro faceplayer
- .byte 0x5a
+ .byte SCR_OP_FACEPLAYER
.endm
@ Turns the specified object in the specified direction.
.macro turnobject localId:req, direction:req
- .byte 0x5b
+ .byte SCR_OP_TURNOBJECT
.2byte \localId
.byte \direction
.endm
@ Configures the arguments for a trainer battle, then jumps to the appropriate script in scripts/trainer_battle.inc
.macro trainerbattle type:req, trainer:req, local_id:req, pointer1:req, pointer2, pointer3, pointer4
- .byte 0x5c
+ .byte SCR_OP_TRAINERBATTLE
.byte \type
.2byte \trainer
.2byte \local_id
@@ -741,11 +747,11 @@
@ When used with an event script, you can also pass in an optional flag to disable music
.macro trainerbattle_single trainer:req, intro_text:req, lose_text:req, event_script=FALSE, music=TRUE
.if \event_script == FALSE
- trainerbattle TRAINER_BATTLE_SINGLE, \trainer, 0, \intro_text, \lose_text
+ trainerbattle TRAINER_BATTLE_SINGLE, \trainer, LOCALID_NONE, \intro_text, \lose_text
.elseif \music == TRUE
- trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, \trainer, 0, \intro_text, \lose_text, \event_script
+ trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT, \trainer, LOCALID_NONE, \intro_text, \lose_text, \event_script
.else
- trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC, \trainer, 0, \intro_text, \lose_text, \event_script
+ trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC, \trainer, LOCALID_NONE, \intro_text, \lose_text, \event_script
.endif
.endm
@@ -753,68 +759,68 @@
@ and an optional event script. When used with an event script you can pass in an optional flag to disable music
.macro trainerbattle_double trainer:req, intro_text:req, lose_text:req, not_enough_pkmn_text:req, event_script=FALSE, music=TRUE
.if \event_script == FALSE
- trainerbattle TRAINER_BATTLE_DOUBLE, \trainer, 0, \intro_text, \lose_text, \not_enough_pkmn_text
+ trainerbattle TRAINER_BATTLE_DOUBLE, \trainer, LOCALID_NONE, \intro_text, \lose_text, \not_enough_pkmn_text
.elseif \music == TRUE
- trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE, \trainer, 0, \intro_text, \lose_text, \not_enough_pkmn_text, \event_script
+ trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE, \trainer, LOCALID_NONE, \intro_text, \lose_text, \not_enough_pkmn_text, \event_script
.else
- trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC, \trainer, 0, \intro_text, \lose_text, \not_enough_pkmn_text, \event_script
+ trainerbattle TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC, \trainer, LOCALID_NONE, \intro_text, \lose_text, \not_enough_pkmn_text, \event_script
.endif
.endm
@ Starts a rematch battle. Takes a trainer, intro text and loss text
.macro trainerbattle_rematch trainer:req, intro_text:req, lose_text:req
- trainerbattle TRAINER_BATTLE_REMATCH, \trainer, 0, \intro_text, \lose_text
+ trainerbattle TRAINER_BATTLE_REMATCH, \trainer, LOCALID_NONE, \intro_text, \lose_text
.endm
@ Starts a rematch double battle. Takes a trainer, intro text, loss text, and text for when you have too few pokemon
.macro trainerbattle_rematch_double trainer:req, intro_text:req, lose_text:req, not_enough_pkmn_text:req
- trainerbattle TRAINER_BATTLE_REMATCH_DOUBLE, \trainer, 0, \intro_text, \lose_text, \not_enough_pkmn_text
+ trainerbattle TRAINER_BATTLE_REMATCH_DOUBLE, \trainer, LOCALID_NONE, \intro_text, \lose_text, \not_enough_pkmn_text
.endm
@ Starts a trainer battle, skipping intro text. Takes a trainer and loss text
.macro trainerbattle_no_intro trainer:req, lose_text:req
- trainerbattle TRAINER_BATTLE_SINGLE_NO_INTRO_TEXT, \trainer, 0, \lose_text
+ trainerbattle TRAINER_BATTLE_SINGLE_NO_INTRO_TEXT, \trainer, LOCALID_NONE, \lose_text
.endm
@ Starts a trainer battle using the battle information stored in RAM (usually by the scripts in trainer_battle.inc, which
@ are run by trainerbattle), and blocks script execution until the battle finishes.
.macro dotrainerbattle
- .byte 0x5d
+ .byte SCR_OP_DOTRAINERBATTLE
.endm
@ Goes to address after the trainerbattle command (called by the battle functions, see battle_setup.c)
.macro gotopostbattlescript
- .byte 0x5e
+ .byte SCR_OP_GOTOPOSTBATTLESCRIPT
.endm
@ Goes to address specified in the trainerbattle command (called by the battle functions, see battle_setup.c)
.macro gotobeatenscript
- .byte 0x5f
+ .byte SCR_OP_GOTOBEATENSCRIPT
.endm
@ Checks if the trainer has been defeated by the player (by comparing the flag 'trainer + TRAINER_FLAGS_START' to TRUE).
.macro checktrainerflag trainer:req
- .byte 0x60
+ .byte SCR_OP_CHECKTRAINERFLAG
.2byte \trainer
.endm
@ Sets the trainer flag (trainer + TRAINER_FLAGS_START) to TRUE (defeated).
.macro settrainerflag trainer:req
- .byte 0x61
+ .byte SCR_OP_SETTRAINERFLAG
.2byte \trainer
.endm
@ Sets the trainer flag (trainer + TRAINER_FLAGS_START) to FALSE (not defeated).
.macro cleartrainerflag trainer:req
- .byte 0x62
+ .byte SCR_OP_CLEARTRAINERFLAG
.2byte \trainer
.endm
@ Sets the coordinates of an object's template, so that if the sprite goes off screen
@ it'll still be there when it comes back on screen.
.macro setobjectxyperm localId:req, x:req, y:req
- .byte 0x63
+ .byte SCR_OP_SETOBJECTXYPERM
.2byte \localId
.2byte \x
.2byte \y
@@ -823,13 +829,13 @@
@ Copies a live object event's xy position to its template, so that if the sprite goes off screen
@ it'll still be there when it comes back on screen.
.macro copyobjectxytoperm localId:req
- .byte 0x64
+ .byte SCR_OP_COPYOBJECTXYTOPERM
.2byte \localId
.endm
@ Sets the movement type (MOVEMENT_TYPE_*) for an object's template.
.macro setobjectmovementtype localId:req, movementType:req
- .byte 0x65
+ .byte SCR_OP_SETOBJECTMOVEMENTTYPE
.2byte \localId
.byte \movementType
.endm
@@ -837,51 +843,51 @@
@ If a standard message box (or its text) is being drawn on-screen, this command blocks script execution until the
@ box and its text have been fully drawn.
.macro waitmessage
- .byte 0x66
+ .byte SCR_OP_WAITMESSAGE
.endm
@ Starts displaying a standard message box containing the specified text. If text is a pointer, then the string at
@ that offset will be loaded and used. If text is NULL, then the value of script data 0 will be treated as
@ a pointer to the text. The 'loadword 0' in msgbox sets this value, for instance.
.macro message text:req
- .byte 0x67
+ .byte SCR_OP_MESSAGE
.4byte \text
.endm
@ Closes the current message box.
.macro closemessage
- .byte 0x68
+ .byte SCR_OP_CLOSEMESSAGE
.endm
@ Freezes all objects immediately except the player. The player is frozen once their movement is finished.
.macro lockall
- .byte 0x69
+ .byte SCR_OP_LOCKALL
.endm
@ Freezes all objects immediately except the player and the selected object. The player and selected object are frozen once their movement is finished.
.macro lock
- .byte 0x6a
+ .byte SCR_OP_LOCK
.endm
@ Resumes normal movement for all objects on-screen, and closes any standard message boxes that are still open.
.macro releaseall
- .byte 0x6b
+ .byte SCR_OP_RELEASEALL
.endm
@ Resumes normal movement for the selected object (if there is one) and the player. Also closes any standard message boxes that are still open.
.macro release
- .byte 0x6c
+ .byte SCR_OP_RELEASE
.endm
@ Blocks script execution until the player presses the A or B button.
.macro waitbuttonpress
- .byte 0x6d
+ .byte SCR_OP_WAITBUTTONPRESS
.endm
@ Displays a YES/NO multichoice box at the specified coordinates, and blocks script execution until the user makes a selection.
@ Their selection is stored in VAR_RESULT as NO (0) or YES (1). Pressing B is equivalent to answering NO
.macro yesnobox x:req, y:req
- .byte 0x6e
+ .byte SCR_OP_YESNOBOX
.byte \x
.byte \y
.endm
@@ -890,7 +896,7 @@
@ Lists of options are predefined (sMultichoiceLists) and the one to be used is specified with multichoiceId.
@ If ignoreBPress is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button.
.macro multichoice x:req, y:req, multichoiceId:req, ignoreBPress:req
- .byte 0x6f
+ .byte SCR_OP_MULTICHOICE
.byte \x
.byte \y
.byte \multichoiceId
@@ -902,7 +908,7 @@
@ The default argument determines the initial position of the cursor when the box is first opened; it is zero-indexed, and if it is too large, it is treated as 0.
@ If ignoreBPress is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button.
.macro multichoicedefault x:req, y:req, multichoiceId:req, default:req, ignoreBPress:req
- .byte 0x70
+ .byte SCR_OP_MULTICHOICEDEFAULT
.byte \x
.byte \y
.byte \multichoiceId
@@ -915,7 +921,7 @@
@ The per_row argument determines how many list items will be shown on a single row of the box.
@ If ignoreBPress is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button.
.macro multichoicegrid x:req, y:req, multichoiceId:req, per_row:req, ignoreBPress:req
- .byte 0x71
+ .byte SCR_OP_MULTICHOICEGRID
.byte \x
.byte \y
.byte \multichoiceId
@@ -925,12 +931,12 @@
@ Nopped in Emerald.
.macro drawbox
- .byte 0x72
+ .byte SCR_OP_DRAWBOX
.endm
@ Nopped in Emerald, but still consumes parameters.
.macro erasebox left:req, top:req, right:req, bottom:req
- .byte 0x73
+ .byte SCR_OP_ERASEBOX
.byte \left
.byte \top
.byte \right
@@ -939,7 +945,7 @@
@ Nopped in Emerald, but still consumes parameters.
.macro drawboxtext left:req, top:req, multichoiceId:req, ignoreBPress:req
- .byte 0x74
+ .byte SCR_OP_DRAWBOXTEXT
.byte \left
.byte \top
.byte \multichoiceId
@@ -948,7 +954,7 @@
@ Displays a box containing the front sprite for the specified Pokemon species.
.macro showmonpic species:req, x:req, y:req
- .byte 0x75
+ .byte SCR_OP_SHOWMONPIC
.2byte \species
.byte \x
.byte \y
@@ -956,12 +962,12 @@
@ Hides the box displayed by showmonpic.
.macro hidemonpic
- .byte 0x76
+ .byte SCR_OP_HIDEMONPIC
.endm
@ Draws an image of the winner of the contest. winnerId is any CONTEST_WINNER_* constant.
.macro showcontestpainting winnerId:req
- .byte 0x77
+ .byte SCR_OP_SHOWCONTESTPAINTING
.byte \winnerId
.endm
@@ -969,7 +975,7 @@
@ to convert text to braille, and be preceded by brailleformat. The brailleformat data is skipped over (in RS, these
@ bytes determined the box's size and position, but in Emerald these are calculated automatically).
.macro braillemessage text:req
- .byte 0x78
+ .byte SCR_OP_BRAILLEMESSAGE
.4byte \text
.endm
@@ -987,7 +993,7 @@
@ Gives the player a Pokémon of the specified species and level, holding the specified item. The trailing 0s are unused parameters.
@ VAR_RESULT will be set to MON_GIVEN_TO_PARTY, MON_GIVEN_TO_PC, or MON_CANT_GIVE depending on the outcome.
.macro givemon species:req, level:req, item=ITEM_NONE
- .byte 0x79
+ .byte SCR_OP_GIVEMON
.2byte \species
.byte \level
.2byte \item
@@ -999,7 +1005,7 @@
@ Gives the player an Egg of the specified species.
@ VAR_RESULT will be set to MON_GIVEN_TO_PARTY, MON_GIVEN_TO_PC, or MON_CANT_GIVE depending on the outcome.
.macro giveegg species:req
- .byte 0x7a
+ .byte SCR_OP_GIVEEGG
.2byte \species
.endm
@@ -1007,7 +1013,7 @@
@ If a value greater than PARTY_SIZE is given for partyIndex it will use the last Pokémon in the party instead.
@ Note that this means in vanilla a value equal to PARTY_SIZE for partyIndex will go out of bounds.
.macro setmonmove partyIndex:req, slot:req, move:req
- .byte 0x7b
+ .byte SCR_OP_SETMONMOVE
.byte \partyIndex
.byte \slot
.2byte \move
@@ -1017,7 +1023,7 @@
@ (zero-indexed) slot number of the first Pokemon that knows the move. If not, VAR_RESULT is set to PARTY_SIZE.
@ VAR_0x8004 is also set to this Pokemon's species.
.macro checkpartymove move:req
- .byte 0x7c
+ .byte SCR_OP_CHECKPARTYMOVE
.2byte \move
.endm
@@ -1039,21 +1045,21 @@
@ Writes the name of the given Pokemon species to the specified buffer.
.macro bufferspeciesname stringVarId:req, species:req
- .byte 0x7d
+ .byte SCR_OP_BUFFERSPECIESNAME
stringvar \stringVarId
.2byte \species
.endm
@ Writes the name of the species of the first Pokemon in the player's party to the specified buffer.
.macro bufferleadmonspeciesname stringVarId:req
- .byte 0x7e
+ .byte SCR_OP_BUFFERLEADMONSPECIESNAME
stringvar \stringVarId
.endm
@ Writes the nickname of the Pokemon in 'slot' (zero-indexed) of the player's party to the specified buffer.
@ If an empty or invalid slot is specified, ten spaces ("") are written to the buffer.
.macro bufferpartymonnick stringVarId:req, slot:req
- .byte 0x7f
+ .byte SCR_OP_BUFFERPARTYMONNICK
stringvar \stringVarId
.2byte \slot
.endm
@@ -1061,42 +1067,42 @@
@ Writes the name of the specified item to the specified buffer. If itemId is >= ITEMS_COUNT,
@ then the name of ITEM_NONE ("????????") is buffered instead.
.macro bufferitemname stringVarId:req, item:req
- .byte 0x80
+ .byte SCR_OP_BUFFERITEMNAME
stringvar \stringVarId
.2byte \item
.endm
@ Writes the name of the specified decoration to the specified buffer.
.macro bufferdecorationname stringVarId:req, decoration:req
- .byte 0x81
+ .byte SCR_OP_BUFFERDECORATIONNAME
stringvar \stringVarId
.2byte \decoration
.endm
@ Writes the name of the specified move to the specified buffer.
.macro buffermovename stringVarId:req, move:req
- .byte 0x82
+ .byte SCR_OP_BUFFERMOVENAME
stringvar \stringVarId
.2byte \move
.endm
@ Converts the value of input to a decimal string, and writes that string to the specified buffer.
.macro buffernumberstring stringVarId:req, input:req
- .byte 0x83
+ .byte SCR_OP_BUFFERNUMBERSTRING
stringvar \stringVarId
.2byte \input
.endm
@ Writes the given standard string (STDSTRING_*) to the specified buffer. Invalid std string ids are not handled.
.macro bufferstdstring stringVarId:req, index:req
- .byte 0x84
+ .byte SCR_OP_BUFFERSTDSTRING
stringvar \stringVarId
.2byte \index
.endm
@ Copies the string at the given pointer to the specified buffer.
.macro bufferstring stringVarId:req, text:req
- .byte 0x85
+ .byte SCR_OP_BUFFERSTRING
stringvar \stringVarId
.4byte \text
.endm
@@ -1104,33 +1110,40 @@
@ Opens the Pokemart system, offering the specified products for sale.
@ Products should be a list of .2byte item values preceded by an .align 2
.macro pokemart products:req
- .byte 0x86
+ .byte SCR_OP_POKEMART
.4byte \products
.endm
+ @ Used as the endpoint for a Pokemart item list
+ .macro pokemartlistend
+ .2byte ITEM_NONE
+ release
+ end
+ .endm
+
@ Opens the Pokemart system and treats the list of items as decorations.
@ Products should be a list of .2byte decoration values preceded by an .align 2
.macro pokemartdecoration products:req
- .byte 0x87
+ .byte SCR_OP_POKEMARTDECORATION
.4byte \products
.endm
@ Identical to pokemartdecoration, but with slight changes to the clerk dialogue. See uses of MART_TYPE_DECOR2.
.macro pokemartdecoration2 products:req
- .byte 0x88
+ .byte SCR_OP_POKEMARTDECORATION2
.4byte \products
.endm
@ Starts up the slot machine minigame. id is a SLOT_MACHINE_* value that influences probabilities of certain reel outcomes.
.macro playslotmachine id:req
- .byte 0x89
+ .byte SCR_OP_PLAYSLOTMACHINE
.2byte \id
.endm
@ Sets a berry tree's berry and growth stage. treeId is any BERRY_TREE_* constant (an index into berryTrees in SaveBlock1),
@ berry is any ITEM_TO_BERRY(ITEM_BERRY_NAME) value, and growthStage is any BERRY_STAGE_* constant.
.macro setberrytree treeId:req, berry:req, growthStage:req
- .byte 0x8a
+ .byte SCR_OP_SETBERRYTREE
.byte \treeId
.byte \berry
.byte \growthStage
@@ -1138,34 +1151,34 @@
@ Opens the party menu to select a Pokemon for a contest.
.macro choosecontestmon
- .byte 0x8b
+ .byte SCR_OP_CHOOSECONTESTMON
.endm
@ Starts the appeals round of a contest.
.macro startcontest
- .byte 0x8c
+ .byte SCR_OP_STARTCONTEST
.endm
@ Shows the results screen of a contest.
.macro showcontestresults
- .byte 0x8d
+ .byte SCR_OP_SHOWCONTESTRESULTS
.endm
@ Starts communication to initialize a link contest.
.macro contestlinktransfer
- .byte 0x8e
+ .byte SCR_OP_CONTESTLINKTRANSFER
.endm
@ Stores a random integer between 0 and limit (exclusive of limit) in VAR_RESULT.
.macro random limit:req
- .byte 0x8f
+ .byte SCR_OP_RANDOM
.2byte \limit
.endm
@ Adds value to the player's money. If adding 'value' money would exceed MAX_MONEY, the player's money is set to MAX_MONEY.
@ If 'disable' is set to anything but 0 then this command does nothing.
.macro addmoney value:req, disable=0
- .byte 0x90
+ .byte SCR_OP_ADDMONEY
.4byte \value
.byte \disable
.endm
@@ -1173,7 +1186,7 @@
@ Subtracts value from the player's money. If the player has less than 'value' money, their money is set to 0.
@ If 'disable' is set to anything but 0 then this command does nothing.
.macro removemoney value:req, disable=0
- .byte 0x91
+ .byte SCR_OP_REMOVEMONEY
.4byte \value
.byte \disable
.endm
@@ -1181,7 +1194,7 @@
@ Checks if the player has money >= value. VAR_RESULT is set to TRUE if the player has enough money, or FALSE if they do not.
@ If 'disable' is set to anything but 0 then this command does nothing.
.macro checkmoney value:req, disable=0
- .byte 0x92
+ .byte SCR_OP_CHECKMONEY
.4byte \value
.byte \disable
.endm
@@ -1189,7 +1202,7 @@
@ Creates a window showing how much money the player has.
@ If 'disable' is set to anything but 0 then this command does nothing.
.macro showmoneybox x:req, y:req, disable=0
- .byte 0x93
+ .byte SCR_OP_SHOWMONEYBOX
.byte \x
.byte \y
.byte \disable
@@ -1197,7 +1210,7 @@
@ Destroys the window created by showmoneybox. Consumption of the x and y arguments was dummied out.
.macro hidemoneybox
- .byte 0x94
+ .byte SCR_OP_HIDEMONEYBOX
.byte 0 @ \x
.byte 0 @ \y
.endm
@@ -1205,7 +1218,7 @@
@ Updates the window created by showmoneybox. Consumption of the x and y arguments was dummied out.
@ If 'disable' is set to anything but 0 then this command does nothing.
.macro updatemoneybox disable=0
- .byte 0x95
+ .byte SCR_OP_UPDATEMONEYBOX
.byte 0 @ \x
.byte 0 @ \y
.byte \disable
@@ -1213,19 +1226,19 @@
@ Gets whether the effects of the specified PokeNews program are active. newsKind is a POKENEWS_* constant.
.macro getpokenewsactive newsKind:req
- .byte 0x96
+ .byte SCR_OP_GETPOKENEWSACTIVE
.2byte \newsKind
.endm
@ Fades the screen to and from black and white. Modes are FADE_(TO/FROM)_(WHITE/BLACK)
.macro fadescreen mode:req
- .byte 0x97
+ .byte SCR_OP_FADESCREEN
.byte \mode
.endm
@ Fades the screen to and from black and white. Modes are FADE_(TO/FROM)_(WHITE/BLACK)
.macro fadescreenspeed mode:req, speed:req
- .byte 0x98
+ .byte SCR_OP_FADESCREENSPEED
.byte \mode
.byte \speed
.endm
@@ -1233,64 +1246,64 @@
@ Sets the flash level. A level of 0 is fully bright, a level of 1 is the largest flash radius, a level
@ of 7 is the smallest flash radius, a level of 8 is fully black.
.macro setflashlevel level:req
- .byte 0x99
+ .byte SCR_OP_SETFLASHLEVEL
.2byte \level
.endm
@ Animates the flash radius from its current size to the size it would be at the specified level.
@ Note that this does not actually change the current flash level. It's typically used just before a setflashlevel.
.macro animateflash level:req
- .byte 0x9a
+ .byte SCR_OP_ANIMATEFLASH
.byte \level
.endm
@ Automatically scrolls through the message without player input and at a fixed speed.
.macro messageautoscroll text:req
- .byte 0x9b
+ .byte SCR_OP_MESSAGEAUTOSCROLL
.4byte \text
.endm
@ Executes the specified field effect animation (FLDEFF_*).
.macro dofieldeffect animation:req
- .byte 0x9c
+ .byte SCR_OP_DOFIELDEFFECT
.2byte \animation
.endm
@ Sets the field effect argument at index 'argNum' to 'value.'
.macro setfieldeffectargument argNum:req, value:req
- .byte 0x9d
+ .byte SCR_OP_SETFIELDEFFECTARGUMENT
.byte \argNum
.2byte \value
.endm
@ Blocks script execution until all playing field effect animations complete.
.macro waitfieldeffect animation:req
- .byte 0x9e
+ .byte SCR_OP_WAITFIELDEFFECT
.2byte \animation
.endm
@ Sets which healing location (HEAL_LOCATION_*) the player will return to if all of the Pokemon in their party faint.
.macro setrespawn heallocation:req
- .byte 0x9f
+ .byte SCR_OP_SETRESPAWN
.2byte \heallocation
.endm
@ Checks the player's gender. Stores the result (MALE (0) or FEMALE (1)) in VAR_RESULT.
.macro checkplayergender
- .byte 0xa0
+ .byte SCR_OP_CHECKPLAYERGENDER
.endm
@ Plays the cry of the given species. Mode is any CRY_MODE_* constant.
@ You can use waitmoncry to block script execution until the cry finishes.
.macro playmoncry species:req, mode:req
- .byte 0xa1
+ .byte SCR_OP_PLAYMONCRY
.2byte \species
.2byte \mode
.endm
@ Set the metatile at (x, y) on the current map to the given metatile and impassability.
.macro setmetatile x:req, y:req, metatileId:req, impassable:req
- .byte 0xa2
+ .byte SCR_OP_SETMETATILE
.2byte \x
.2byte \y
.2byte \metatileId
@@ -1299,37 +1312,37 @@
@ Queues a weather change to the default weather for the map.
.macro resetweather
- .byte 0xa3
+ .byte SCR_OP_RESETWEATHER
.endm
@ Queues a weather change to type weather.
.macro setweather type:req
- .byte 0xa4
+ .byte SCR_OP_SETWEATHER
.2byte \type
.endm
@ Executes the weather change queued with resetweather or setweather. The current weather will smoothly fade into the queued weather.
.macro doweather
- .byte 0xa5
+ .byte SCR_OP_DOWEATHER
.endm
@ Enables the overworld task specified by stepCbId (STEP_CB_*). Only 1 can be active at a time. See src/field_tasks.c for more.
.macro setstepcallback stepCbId:req
- .byte 0xa6
+ .byte SCR_OP_SETSTEPCALLBACK
.byte \stepCbId
.endm
@ Sets the current map layout to the one specified by index (LAYOUT_*).
@ This should be done before the layout is loaded, typically in the ON_TRANSITION map script.
.macro setmaplayoutindex index:req
- .byte 0xa7
+ .byte SCR_OP_SETMAPLAYOUTINDEX
.2byte \index
.endm
@ Sets the specified object's sprite's subpriority, and sets fixedPriority to TRUE.
@ Only used to hide the player and Briney behind the boat.
.macro setobjectsubpriority localId:req, map:req, subpriority:req
- .byte 0xa8
+ .byte SCR_OP_SETOBJECTSUBPRIORITY
.2byte \localId
map \map
.byte \subpriority
@@ -1337,7 +1350,7 @@
@ Sets the specified object's fixedPriority to FALSE. Does not change the subpriority field.
.macro resetobjectsubpriority localId:req, map:req
- .byte 0xa9
+ .byte SCR_OP_RESETOBJECTSUBPRIORITY
.2byte \localId
map \map
.endm
@@ -1346,7 +1359,7 @@
@ the object event limit (e.g. Contest / Battle Dome audiences and Union Room group members).
@ The specified id can be used to refer to the sprite again later with turnvobject.
.macro createvobject graphicsId:req, id:req, x:req, y:req, elevation=3, direction=DIR_SOUTH
- .byte 0xaa
+ .byte SCR_OP_CREATEVOBJECT
.byte \graphicsId
.byte \id
.2byte \x
@@ -1357,47 +1370,47 @@
@ Turns a sprite created with createvobject.
.macro turnvobject id:req, direction:req
- .byte 0xab
+ .byte SCR_OP_TURNVOBJECT
.byte \id
.byte \direction
.endm
@ Opens the door metatile at (x, y) with an animation.
.macro opendoor x:req, y:req
- .byte 0xac
+ .byte SCR_OP_OPENDOOR
.2byte \x
.2byte \y
.endm
@ Closes the door metatile at (x, y) with an animation.
.macro closedoor x:req, y:req
- .byte 0xad
+ .byte SCR_OP_CLOSEDOOR
.2byte \x
.2byte \y
.endm
@ Waits for the door animation started with opendoor or closedoor to finish.
.macro waitdooranim
- .byte 0xae
+ .byte SCR_OP_WAITDOORANIM
.endm
@ Sets the door metatile at (x, y) to be open without an animation.
.macro setdooropen x:req, y:req
- .byte 0xaf
+ .byte SCR_OP_SETDOOROPEN
.2byte \x
.2byte \y
.endm
@ Sets the door metatile at (x, y) to be closed without an animation.
.macro setdoorclosed x:req, y:req
- .byte 0xb0
+ .byte SCR_OP_SETDOORCLOSED
.2byte \x
.2byte \y
.endm
@ Consumes its parameters and does nothing. It is implemented but unused in Ruby/Sapphire.
.macro addelevmenuitem a:req, b:req, c:req, d:req
- .byte 0xb1
+ .byte SCR_OP_ADDELEVMENUITEM
.byte \a
.2byte \b
.2byte \c
@@ -1406,19 +1419,19 @@
@ Does nothing. It is implemented but unused in Ruby/Sapphire.
.macro showelevmenu
- .byte 0xb2
+ .byte SCR_OP_SHOWELEVMENU
.endm
@ Gets the number of coins the player has and stores it in the variable 'out'.
.macro checkcoins out:req
- .byte 0xb3
+ .byte SCR_OP_CHECKCOINS
.2byte \out
.endm
@ Gives 'count' coins to the player, up to a total of MAX_COINS.
@ If the player already has MAX_COINS then VAR_RESULT is set to TRUE, otherwise it is set to FALSE.
.macro addcoins count:req
- .byte 0xb4
+ .byte SCR_OP_ADDCOINS
.2byte \count
.endm
@@ -1426,14 +1439,14 @@
@ If the player has fewer than 'count' coins then no coins are taken and VAR_RESULT is set to TRUE.
@ Otherwise VAR_RESULT is set to FALSE.
.macro removecoins count:req
- .byte 0xb5
+ .byte SCR_OP_REMOVECOINS
.2byte \count
.endm
@ Prepares to start a wild battle against a 'species' at 'level' holding 'item'. Running this command will not affect
@ normal wild battles. You start the prepared battle with dowildbattle.
.macro setwildbattle species:req, level:req, item=ITEM_NONE
- .byte 0xb6
+ .byte SCR_OP_SETWILDBATTLE
.2byte \species
.byte \level
.2byte \item
@@ -1441,84 +1454,84 @@
@ Starts a wild battle against the Pokemon generated by setwildbattle. Blocks script execution until the battle finishes.
.macro dowildbattle
- .byte 0xb7
+ .byte SCR_OP_DOWILDBATTLE
.endm
@ Sets a relative address to be used by the other vcommands as part of a Mystery Gift script.
.macro setvaddress pointer:req
- .byte 0xb8
+ .byte SCR_OP_SETVADDRESS
.4byte \pointer
.endm
@ Equivalent to goto using the relative address set by setvaddress.
.macro vgoto destination:req
- .byte 0xb9
+ .byte SCR_OP_VGOTO
.4byte \destination
.endm
@ Equivalent to call using the relative address set by setvaddress.
.macro vcall destination:req
- .byte 0xba
+ .byte SCR_OP_VCALL
.4byte \destination
.endm
@ Equivalent to goto_if using the relative address set by setvaddress.
.macro vgoto_if condition:req, destination:req
- .byte 0xbb
+ .byte SCR_OP_VGOTO_IF
.byte \condition
.4byte \destination
.endm
@ Equivalent to call_if using the relative address set by setvaddress.
.macro vcall_if condition:req, destination:req
- .byte 0xbc
+ .byte SCR_OP_VCALL_IF
.byte \condition
.4byte \destination
.endm
@ Equivalent to message using the relative address set by setvaddress.
.macro vmessage text:req
- .byte 0xbd
+ .byte SCR_OP_VMESSAGE
.4byte \text
.endm
@ Expands the given text at the pointer (- the relative address set by setvaddress) into gStringVar4
.macro vbuffermessage text:req
- .byte 0xbe
+ .byte SCR_OP_VBUFFERMESSAGE
.4byte \text
.endm
@ Equivalent to bufferstring using the relative address set by setvaddress.
.macro vbufferstring stringVarIndex:req, text:req
- .byte 0xbf
+ .byte SCR_OP_VBUFFERSTRING
stringvar \stringVarIndex
.4byte \text
.endm
@ Create a window showing how many Coins the player has.
.macro showcoinsbox x:req, y:req
- .byte 0xc0
+ .byte SCR_OP_SHOWCOINSBOX
.byte \x
.byte \y
.endm
@ Destroys the window created by showcoins. It consumes its arguments but doesn't use them.
.macro hidecoinsbox x:req, y:req
- .byte 0xc1
+ .byte SCR_OP_HIDECOINSBOX
.byte \x
.byte \y
.endm
@ Updates the window created by showcoins. It consumes its arguments but doesn't use them.
.macro updatecoinsbox x:req, y:req
- .byte 0xc2
+ .byte SCR_OP_UPDATECOINSBOX
.byte \x
.byte \y
.endm
@ Increases the value of the specified game stat by 1. The maximum value of a stat is 0xFFFFFF. See include/constants/game_stat.h
.macro incrementgamestat stat:req
- .byte 0xc3
+ .byte SCR_OP_INCREMENTGAMESTAT
.byte \stat
.endm
@@ -1526,78 +1539,78 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro setescapewarp map:req, a, b, c
- .byte 0xc4
+ .byte SCR_OP_SETESCAPEWARP
formatwarp \map, \a, \b, \c
.endm
@ Blocks script execution until cry finishes.
.macro waitmoncry
- .byte 0xc5
+ .byte SCR_OP_WAITMONCRY
.endm
@ Writes the name of the specified PC box to the specified buffer.
.macro bufferboxname stringVarId:req, box:req
- .byte 0xc6
+ .byte SCR_OP_BUFFERBOXNAME
stringvar \stringVarId
.2byte \box
.endm
@ Used only in FireRed/LeafGreen, does nothing in Emerald.
.macro textcolor color:req
- .byte 0xc7
+ .byte SCR_OP_TEXTCOLOR
.byte \color
.endm
@ Used only in FireRed/LeafGreen, does nothing in Emerald.
.macro loadhelp text:req
- .byte 0xc8
+ .byte SCR_OP_LOADHELP
.4byte \text
.endm
@ Used only in FireRed/LeafGreen, does nothing in Emerald.
.macro unloadhelp
- .byte 0xc9
+ .byte SCR_OP_UNLOADHELP
.endm
@ Used only in FireRed/LeafGreen, does nothing in Emerald.
.macro signmsg
- .byte 0xca
+ .byte SCR_OP_SIGNMSG
.endm
@ Used only in FireRed/LeafGreen, does nothing in Emerald.
.macro normalmsg
- .byte 0xcb
+ .byte SCR_OP_NORMALMSG
.endm
@ Used only in FireRed/LeafGreen, does nothing in Emerald.
.macro comparehiddenvar a:req, value:req
- .byte 0xcc
+ .byte SCR_OP_COMPAREHIDDENVAR
.byte \a
.4byte \value
.endm
@ Sets the modernFatefulEncounter bit for the Pokemon in the specified slot of the player's party.
.macro setmodernfatefulencounter slot:req
- .byte 0xcd
+ .byte SCR_OP_SETMODERNFATEFULENCOUNTER
.2byte \slot
.endm
@ Checks if the modernFatefulEncounter bit is set for the Pokemon in the specified slot of the player's party. If it isn't set,
@ VAR_RESULT is TRUE. If the bit is set (or if the specified slot is empty or invalid), VAR_RESULT is FALSE.
.macro checkmodernfatefulencounter slot:req
- .byte 0xce
+ .byte SCR_OP_CHECKMODERNFATEFULENCOUNTER
.2byte \slot
.endm
@ Jumps to the ram script saved from a Wonder Card. If there is no valid saved Wonder Card or if the
@ ram script is invalid then this does nothing.
.macro trywondercardscript
- .byte 0xcf
+ .byte SCR_OP_TRYWONDERCARDSCRIPT
.endm
@ Used only in FireRed/LeafGreen, does nothing in Emerald.
.macro setworldmapflag worldmapflag:req
- .byte 0xd0
+ .byte SCR_OP_SETWORLDMAPFLAG
.2byte \worldmapflag
.endm
@@ -1606,13 +1619,13 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro warpspinenter map:req, a, b, c
- .byte 0xd1
+ .byte SCR_OP_WARPSPINENTER
formatwarp \map, \a, \b, \c
.endm
@ Changes the location where the player caught the Pokemon in the specified slot of their party.
.macro setmonmetlocation slot:req, location:req
- .byte 0xd2
+ .byte SCR_OP_SETMONMETLOCATION
.2byte \slot
.byte \location
.endm
@@ -1620,26 +1633,26 @@
@ For the rotating tile puzzles in Mossdeep Gym / Trick House Room 7. Moves the objects one rotation
@ on the colored puzzle specified by puzzleNumber.
.macro moverotatingtileobjects puzzleNumber:req
- .byte 0xd3
+ .byte SCR_OP_MOVEROTATINGTILEOBJECTS
.2byte \puzzleNumber
.endm
@ For the rotating tile puzzles in Mossdeep Gym / Trick House Room 7. Updates the facing direction of all objects on the puzzle tiles
.macro turnrotatingtileobjects
- .byte 0xd4
+ .byte SCR_OP_TURNROTATINGTILEOBJECTS
.endm
@ For the rotating tile puzzles in Mossdeep Gym / Trick House Room 7. Allocates memory for the puzzle objects.
@ isTrickHouse is needed to determine which of the two maps the puzzle is on, in order to know where in the tileset
@ the puzzle tiles start (TRUE for Trick House Room, FALSE for Mossdeep Gym).
.macro initrotatingtilepuzzle isTrickHouse:req
- .byte 0xd5
+ .byte SCR_OP_INITROTATINGTILEPUZZLE
.2byte \isTrickHouse
.endm
@ For the rotating tile puzzles in Mossdeep Gym / Trick House Room 7. Frees the memory allocated for the puzzle objects.
.macro freerotatingtilepuzzle
- .byte 0xd6
+ .byte SCR_OP_FREEROTATINGTILEPUZZLE
.endm
@ Warp used by the teleport tiles in the Mossdeep Gym. Plays SE_WARP_IN and does a simple fade transition.
@@ -1647,44 +1660,44 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro warpmossdeepgym map:req, a, b, c
- .byte 0xd7
+ .byte SCR_OP_WARPMOSSDEEPGYM
formatwarp \map, \a, \b, \c
.endm
@ Sets the selected object to the id of the currently approaching trainer.
.macro selectapproachingtrainer
- .byte 0xd8
+ .byte SCR_OP_SELECTAPPROACHINGTRAINER
.endm
@ Freezes all objects immediately except the player and the approaching trainers.
@ The player and trainers are frozen once their movement is finished.
.macro lockfortrainer
- .byte 0xd9
+ .byte SCR_OP_LOCKFORTRAINER
.endm
@ Destroys the window created by braillemessage.
.macro closebraillemessage
- .byte 0xda
+ .byte SCR_OP_CLOSEBRAILLEMESSAGE
.endm
@ Prints and draws the message all at once rather than character by character.
@ Does not wait for player input to continue.
.macro messageinstant text:req
- .byte 0xdb
+ .byte SCR_OP_MESSAGEINSTANT
.4byte \text
.endm
@ Equivalent to fadescreen but copies gPlttBufferUnfaded to gPaletteDecompressionBuffer on the fade out
@ and the reverse on the fade in, in effect saving gPlttBufferUnfaded to restore it.
.macro fadescreenswapbuffers mode:req
- .byte 0xdc
+ .byte SCR_OP_FADESCREENSWAPBUFFERS
.byte \mode
.endm
@ Buffers the specified trainer's class name to the given string var.
@ If the trainer id is >= TRAINERS_COUNT it will be treated as TRAINER_NONE.
.macro buffertrainerclassname stringVarId:req, trainerId:req
- .byte 0xdd
+ .byte SCR_OP_BUFFERTRAINERCLASSNAME
stringvar \stringVarId
.2byte \trainerId
.endm
@@ -1692,14 +1705,14 @@
@ Buffers the specified trainer's name to the given string var.
@ If the trainer id is >= TRAINERS_COUNT it will be treated as TRAINER_NONE.
.macro buffertrainername stringVarId:req, trainerId:req
- .byte 0xde
+ .byte SCR_OP_BUFFERTRAINERNAME
stringvar \stringVarId
.2byte \trainerId
.endm
@ Starts a Pokenav call with the given text.
.macro pokenavcall text:req
- .byte 0xdf
+ .byte SCR_OP_POKENAVCALL
.4byte \text
.endm
@@ -1707,14 +1720,14 @@
@ Warp commands can be given either the id of which warp location to go to on the destination map
@ or a pair of x/y coordinates to go to directly on the destination map.
.macro warpwhitefade map:req, a, b, c
- .byte 0xe0
+ .byte SCR_OP_WARPWHITEFADE
formatwarp \map, \a, \b, \c
.endm
@ Buffers the name of the contest category to the buffer.
@ For example a category of CONTEST_CATEGORY_COOL will buffer the string "COOLNESS CONTEST".
.macro buffercontestname stringVarId:req, category:req
- .byte 0xe1
+ .byte SCR_OP_BUFFERCONTESTNAME
stringvar \stringVarId
.2byte \category
.endm
@@ -1723,7 +1736,7 @@
@ and if the quantity is 2 or more, the buffered string will be pluralized ("IES" or "S" appended).
@ If the specified item is >= ITEMS_COUNT then the name of ITEM_NONE ("????????") is buffered instead.
.macro bufferitemnameplural stringVarId:req, item:req, quantity:req
- .byte 0xe2
+ .byte SCR_OP_BUFFERITEMNAMEPLURAL
stringvar \stringVarId
.2byte \item
.2byte \quantity
diff --git a/asmdiff.sh b/asmdiff.sh
index f5a7010747..aca670e324 100755
--- a/asmdiff.sh
+++ b/asmdiff.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
if [[ -d "$DEVKITARM/bin/" ]]; then
OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump"
diff --git a/audio_rules.mk b/audio_rules.mk
new file mode 100644
index 0000000000..0acbccec07
--- /dev/null
+++ b/audio_rules.mk
@@ -0,0 +1,45 @@
+# This file contains rules for making assemblies for most music in the game.
+
+CRY_SUBDIR := sound/direct_sound_samples/cries
+
+MID_ASM_DIR := $(MID_SUBDIR)
+CRY_BIN_DIR := $(CRY_SUBDIR)
+SOUND_BIN_DIR := sound
+
+SPECIAL_OUTDIRS := $(MID_ASM_DIR) $(CRY_BIN_DIR)
+SPECIAL_OUTDIRS += $(SOUND_BIN_DIR) $(SOUND_BIN_DIR)/direct_sound_samples/phonemes $(SOUND_BIN_DIR)/direct_sound_samples/cries
+$(shell mkdir -p $(SPECIAL_OUTDIRS) )
+
+# Assembly song compilation
+$(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s
+ $(AS) $(ASFLAGS) -I sound -o $@ $<
+$(MID_BUILDDIR)/%.o: $(MID_ASM_DIR)/%.s
+ $(AS) $(ASFLAGS) -I sound -o $@ $<
+
+# Compressed cries
+$(CRY_BIN_DIR)/%.bin: $(CRY_SUBDIR)/%.aif
+ $(AIF) $< $@ --compress
+
+# Uncompressed sounds
+$(SOUND_BIN_DIR)/%.bin: sound/%.aif
+ $(AIF) $< $@
+
+# For each line in midi.cfg, we do some trickery to convert it into a make rule for the `.mid` file described on the line
+# Data following the colon in said file corresponds to arguments passed into mid2agb
+MID_CFG_PATH := $(MID_SUBDIR)/midi.cfg
+
+# $1: Source path no extension, $2 Options
+define MID_RULE
+$(MID_ASM_DIR)/$1.s: $(MID_SUBDIR)/$1.mid $(MID_CFG_PATH)
+ $(MID) $$< $$@ $2
+endef
+# source path, remaining text (options)
+define MID_EXPANSION
+ $(eval $(call MID_RULE,$(basename $(patsubst %:,%,$(word 1,$1))),$(wordlist 2,999,$1)))
+endef
+
+$(foreach line,$(shell cat $(MID_CFG_PATH) | sed "s/ /__SPACE__/g"),$(call MID_EXPANSION,$(subst __SPACE__, ,$(line))))
+
+# Warn users building without a .cfg - build will fail at link time
+$(MID_ASM_DIR)/%.s: $(MID_SUBDIR)/%.mid
+ $(warning $< does not have an associated entry in midi.cfg! It cannot be built)
diff --git a/common_syms/AgbRfu_LinkManager.txt b/common_syms/AgbRfu_LinkManager.txt
deleted file mode 100644
index 7ff8cd53dd..0000000000
--- a/common_syms/AgbRfu_LinkManager.txt
+++ /dev/null
@@ -1 +0,0 @@
-lman
diff --git a/common_syms/agb_flash.txt b/common_syms/agb_flash.txt
deleted file mode 100644
index cb421ec80d..0000000000
--- a/common_syms/agb_flash.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-gFlashTimeoutFlag
-PollFlashStatus
-WaitForFlashWrite
-ProgramFlashSector
-gFlash
-ProgramFlashByte
-gFlashNumRemainingBytes
-EraseFlashChip
-EraseFlashSector
-gFlashMaxTime
diff --git a/common_syms/apprentice.txt b/common_syms/apprentice.txt
deleted file mode 100644
index 0d3569dcbb..0000000000
--- a/common_syms/apprentice.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-gApprenticePartyMovesData
-gApprenticeQuestionData
-gApprenticeFunc
diff --git a/common_syms/battle_anim_throw.txt b/common_syms/battle_anim_throw.txt
deleted file mode 100755
index 5e2e8b3ff3..0000000000
--- a/common_syms/battle_anim_throw.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-gMonShrinkDuration
-gMonShrinkDelta
-gMonShrinkDistance
diff --git a/common_syms/battle_factory_screen.txt b/common_syms/battle_factory_screen.txt
deleted file mode 100644
index 3ddeb6d3b1..0000000000
--- a/common_syms/battle_factory_screen.txt
+++ /dev/null
@@ -1 +0,0 @@
-gFactorySelect_CurrentOptionFunc
diff --git a/common_syms/battle_main.txt b/common_syms/battle_main.txt
deleted file mode 100644
index f6f02c48d3..0000000000
--- a/common_syms/battle_main.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-gPreBattleCallback1
-gBattleMainFunc
-gBattleResults
-gLeveledUpInBattle
-gBattlerControllerFuncs
-gHealthboxSpriteIds
-gMultiUsePlayerCursor
-gNumberOfMovesToChoose
-gBattleControllerData
diff --git a/common_syms/battle_tower.txt b/common_syms/battle_tower.txt
deleted file mode 100644
index 7371109d51..0000000000
--- a/common_syms/battle_tower.txt
+++ /dev/null
@@ -1 +0,0 @@
-gFrontierTempParty
diff --git a/common_syms/berry_blender.txt b/common_syms/berry_blender.txt
deleted file mode 100644
index 1b15a33d61..0000000000
--- a/common_syms/berry_blender.txt
+++ /dev/null
@@ -1 +0,0 @@
-gInGameOpponentsNo
diff --git a/common_syms/bg.txt b/common_syms/bg.txt
deleted file mode 100644
index 0a3c3aecca..0000000000
--- a/common_syms/bg.txt
+++ /dev/null
@@ -1 +0,0 @@
-gWindowTileAutoAllocEnabled
diff --git a/common_syms/contest.txt b/common_syms/contest.txt
deleted file mode 100644
index 6a519fb463..0000000000
--- a/common_syms/contest.txt
+++ /dev/null
@@ -1 +0,0 @@
-gContestRngValue
diff --git a/common_syms/contest_painting.txt b/common_syms/contest_painting.txt
deleted file mode 100644
index 32bb8be161..0000000000
--- a/common_syms/contest_painting.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-gContestMonPixels
-gImageProcessingContext
-gContestPaintingWinner
-gContestPaintingMonPalette
diff --git a/common_syms/ereader_screen.txt b/common_syms/ereader_screen.txt
deleted file mode 100644
index 2189eedbc9..0000000000
--- a/common_syms/ereader_screen.txt
+++ /dev/null
@@ -1 +0,0 @@
-gEReaderData
diff --git a/common_syms/evolution_scene.txt b/common_syms/evolution_scene.txt
deleted file mode 100644
index 137cd3e05d..0000000000
--- a/common_syms/evolution_scene.txt
+++ /dev/null
@@ -1 +0,0 @@
-gCB2_AfterEvolution
diff --git a/common_syms/faraway_island.txt b/common_syms/faraway_island.txt
deleted file mode 100755
index e02ca2ec25..0000000000
--- a/common_syms/faraway_island.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-sPlayerToMewDeltaX
-sPlayerToMewDeltaY
-sMewDirectionCandidates
diff --git a/common_syms/field_camera.txt b/common_syms/field_camera.txt
deleted file mode 100644
index 02301ce23c..0000000000
--- a/common_syms/field_camera.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-gFieldCamera
-gTotalCameraPixelOffsetY
-gTotalCameraPixelOffsetX
diff --git a/common_syms/field_control_avatar.txt b/common_syms/field_control_avatar.txt
deleted file mode 100644
index 268f60c641..0000000000
--- a/common_syms/field_control_avatar.txt
+++ /dev/null
@@ -1 +0,0 @@
-gSelectedObjectEvent
diff --git a/common_syms/field_specials.txt b/common_syms/field_specials.txt
deleted file mode 100644
index 7adb3f6692..0000000000
--- a/common_syms/field_specials.txt
+++ /dev/null
@@ -1 +0,0 @@
-gScrollableMultichoice_ListMenuTemplate
diff --git a/common_syms/fieldmap.txt b/common_syms/fieldmap.txt
deleted file mode 100644
index 0ead758462..0000000000
--- a/common_syms/fieldmap.txt
+++ /dev/null
@@ -1 +0,0 @@
-gBackupMapLayout
diff --git a/common_syms/image_processing_effects.txt b/common_syms/image_processing_effects.txt
deleted file mode 100644
index 134f7e88b2..0000000000
--- a/common_syms/image_processing_effects.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-gCanvasColumnStart
-gCanvasPixels
-gCanvasRowEnd
-gCanvasHeight
-gCanvasColumnEnd
-gCanvasRowStart
-gCanvasMonPersonality
-gCanvasWidth
-gCanvasPalette
-gCanvasPaletteStart
diff --git a/common_syms/intro.txt b/common_syms/intro.txt
deleted file mode 100644
index d069b1014f..0000000000
--- a/common_syms/intro.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-gIntroFrameCounter
-gMultibootProgramStruct
diff --git a/common_syms/librfu_rfu.txt b/common_syms/librfu_rfu.txt
deleted file mode 100644
index 4b742dcd25..0000000000
--- a/common_syms/librfu_rfu.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-gRfuSlotStatusUNI
-gRfuSlotStatusNI
-gRfuLinkStatus
-gRfuStatic
-gRfuFixed
diff --git a/common_syms/librfu_sio32id.txt b/common_syms/librfu_sio32id.txt
deleted file mode 100644
index 97395e84b3..0000000000
--- a/common_syms/librfu_sio32id.txt
+++ /dev/null
@@ -1 +0,0 @@
-gRfuSIO32Id
diff --git a/common_syms/librfu_stwi.txt b/common_syms/librfu_stwi.txt
deleted file mode 100644
index a1f7735535..0000000000
--- a/common_syms/librfu_stwi.txt
+++ /dev/null
@@ -1 +0,0 @@
-gSTWIStatus
diff --git a/common_syms/link.txt b/common_syms/link.txt
deleted file mode 100644
index 4118d1eb4b..0000000000
--- a/common_syms/link.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-gLinkPartnersHeldKeys
-gLinkDebugSeed
-gLocalLinkPlayerBlock
-gLinkErrorOccurred
-gLinkDebugFlags
-gLinkFiller1
-gRemoteLinkPlayersNotReceived
-gBlockReceivedStatus
-gLinkFiller2
-gLinkHeldKeys
-gRecvCmds
-gLinkStatus
-gLinkDummy1
-gLinkDummy2
-gReadyToExitStandby
-gReadyToCloseLink
-gReadyCloseLinkType
-gSuppressLinkErrorMessage
-gWirelessCommType
-gSavedLinkPlayerCount
-gSendCmd
-gSavedMultiplayerId
-gReceivedRemoteLinkPlayers
-gLinkTestBGInfo
-gLinkCallback
-gShouldAdvanceLinkState
-gLinkTestBlockChecksums
-gBlockRequestType
-gLinkFiller3
-gLinkFiller4
-gLinkFiller5
-gLastSendQueueCount
-gLink
-gLastRecvQueueCount
-gLinkSavedIme
diff --git a/common_syms/link_rfu_2.txt b/common_syms/link_rfu_2.txt
deleted file mode 100644
index 4b8f02bad8..0000000000
--- a/common_syms/link_rfu_2.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-gRfuAPIBuffer
-gRfu
diff --git a/common_syms/list_menu.txt b/common_syms/list_menu.txt
deleted file mode 100644
index ed5343618c..0000000000
--- a/common_syms/list_menu.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-gListMenuOverride
-gMultiuseListMenuTemplate
diff --git a/common_syms/load_save.txt b/common_syms/load_save.txt
deleted file mode 100644
index 2d3d9b802f..0000000000
--- a/common_syms/load_save.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-gFlashMemoryPresent
-gSaveBlock1Ptr
-gSaveBlock2Ptr
-gPokemonStoragePtr
diff --git a/common_syms/m4a.txt b/common_syms/m4a.txt
deleted file mode 100644
index 0d6b13a79b..0000000000
--- a/common_syms/m4a.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-gSoundInfo
-gPokemonCrySongs
-gPokemonCryMusicPlayers
-gMPlayInfo_BGM
-gMPlayJumpTable
-gCgbChans
-gMPlayInfo_SE1
-gMPlayInfo_SE2
-gPokemonCryTracks
-gPokemonCrySong
-gMPlayMemAccArea
-gMPlayInfo_SE3
diff --git a/common_syms/main.txt b/common_syms/main.txt
deleted file mode 100644
index a620083d19..0000000000
--- a/common_syms/main.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-gKeyRepeatStartDelay
-gLinkTransferringData
-gMain
-gKeyRepeatContinueDelay
-gSoftResetDisabled
-gIntrTable
-gLinkVSyncDisabled
-IntrMain_Buffer
-gPcmDmaCounter
diff --git a/common_syms/mauville_old_man.txt b/common_syms/mauville_old_man.txt
deleted file mode 100644
index 9d77b8692b..0000000000
--- a/common_syms/mauville_old_man.txt
+++ /dev/null
@@ -1 +0,0 @@
-gBardSong
diff --git a/common_syms/overworld.txt b/common_syms/overworld.txt
deleted file mode 100644
index dcada0bbef..0000000000
--- a/common_syms/overworld.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-gOverworldTilemapBuffer_Bg2
-gOverworldTilemapBuffer_Bg1
-gOverworldTilemapBuffer_Bg3
-gHeldKeyCodeToSend
-gFieldCallback
-gFieldCallback2
-gLocalLinkPlayerId
-gFieldLinkPlayerCount
diff --git a/common_syms/party_menu.txt b/common_syms/party_menu.txt
deleted file mode 100644
index 6ed37392c2..0000000000
--- a/common_syms/party_menu.txt
+++ /dev/null
@@ -1 +0,0 @@
-gItemUseCB
diff --git a/common_syms/pokedex.txt b/common_syms/pokedex.txt
deleted file mode 100644
index c7a297b2af..0000000000
--- a/common_syms/pokedex.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-gUnusedPokedexU8
-gPokedexVBlankCB
diff --git a/common_syms/pokedex_cry_screen.txt b/common_syms/pokedex_cry_screen.txt
deleted file mode 100644
index d16ec36d64..0000000000
--- a/common_syms/pokedex_cry_screen.txt
+++ /dev/null
@@ -1 +0,0 @@
-gDexCryScreenState
diff --git a/common_syms/random.txt b/common_syms/random.txt
deleted file mode 100644
index 8037c69586..0000000000
--- a/common_syms/random.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-gRngValue
-gRng2Value
diff --git a/common_syms/rtc.txt b/common_syms/rtc.txt
deleted file mode 100644
index fa00a34d51..0000000000
--- a/common_syms/rtc.txt
+++ /dev/null
@@ -1 +0,0 @@
-gLocalTime
diff --git a/common_syms/save.txt b/common_syms/save.txt
deleted file mode 100644
index 131031d506..0000000000
--- a/common_syms/save.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-gLastWrittenSector
-gLastSaveCounter
-gLastKnownGoodSector
-gDamagedSaveSectors
-gSaveCounter
-gReadWriteSector
-gIncrementalSectorId
-gSaveUnusedVar
-gSaveFileStatus
-gGameContinueCallback
-gRamSaveSectorLocations
-gSaveUnusedVar2
-gSaveAttemptStatus
diff --git a/common_syms/sound.txt b/common_syms/sound.txt
deleted file mode 100644
index 0f6f2fc758..0000000000
--- a/common_syms/sound.txt
+++ /dev/null
@@ -1 +0,0 @@
-gDisableMusic
diff --git a/common_syms/sprite.txt b/common_syms/sprite.txt
deleted file mode 100644
index 627c01c0d0..0000000000
--- a/common_syms/sprite.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-gOamMatrixAllocBitmap
-gReservedSpritePaletteCount
diff --git a/common_syms/start_menu.txt b/common_syms/start_menu.txt
deleted file mode 100644
index 05beaf57c2..0000000000
--- a/common_syms/start_menu.txt
+++ /dev/null
@@ -1 +0,0 @@
-gMenuCallback
diff --git a/common_syms/task.txt b/common_syms/task.txt
deleted file mode 100644
index 6601bd11bb..0000000000
--- a/common_syms/task.txt
+++ /dev/null
@@ -1 +0,0 @@
-gTasks
diff --git a/common_syms/text.txt b/common_syms/text.txt
deleted file mode 100644
index cd8886e5b1..0000000000
--- a/common_syms/text.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-gFonts
-gDisableTextPrinters
-gCurGlyph
-gTextFlags
diff --git a/common_syms/trainer_see.txt b/common_syms/trainer_see.txt
deleted file mode 100644
index 0b30a632a0..0000000000
--- a/common_syms/trainer_see.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-gWhichTrainerToFaceAfterBattle
-gPostBattleMovementScript
-gApproachingTrainers
-gNoOfApproachingTrainers
-gTrainerApproachedPlayer
diff --git a/common_syms/tv.txt b/common_syms/tv.txt
deleted file mode 100644
index 0370f65e1f..0000000000
--- a/common_syms/tv.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-sCurTVShowSlot
-sTV_SecretBaseVisitMovesTemp
-sTV_DecorationsBuffer
-sTV_SecretBaseVisitMonsTemp
diff --git a/common_syms/window.txt b/common_syms/window.txt
deleted file mode 100644
index 24c093a226..0000000000
--- a/common_syms/window.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-gTransparentTileNumber
-gWindowBgTilemapBuffers
diff --git a/data/battle_ai_scripts.s b/data/battle_ai_scripts.s
index a43c889502..19ee9d18a5 100644
--- a/data/battle_ai_scripts.s
+++ b/data/battle_ai_scripts.s
@@ -1613,6 +1613,8 @@ AI_CV_Disable2:
AI_CV_Disable_End:
end
+@ BUG: The original script would score up Counter when the target's types were not physical
+@ This is incorrect since Counter only deals double the damage received if hit by a physical attack
AI_CV_Counter:
if_status AI_TARGET, STATUS1_SLEEP, AI_CV_Counter_ScoreDown1
if_status2 AI_TARGET, STATUS2_INFATUATION, AI_CV_Counter_ScoreDown1
@@ -1625,7 +1627,7 @@ AI_CV_Counter2:
if_random_less_than 100, AI_CV_Counter3
score -1
AI_CV_Counter3:
- if_has_move AI_USER, MOVE_MIRROR_COAT, AI_CV_Counter7
+ if_has_move AI_USER, MOVE_MIRROR_COAT, AI_CV_Counter8
get_last_used_bank_move AI_TARGET
get_move_power_from_result
if_equal 0, AI_CV_Counter5
@@ -1645,15 +1647,24 @@ AI_CV_Counter5:
if_random_less_than 100, AI_CV_Counter6
score +1
AI_CV_Counter6:
+#ifdef BUGFIX
+ get_target_type1
+ if_in_bytes AI_CV_Counter_PhysicalTypeList, AI_CV_Counter7
+ get_target_type2
+ if_in_bytes AI_CV_Counter_PhysicalTypeList, AI_CV_Counter7
+ goto AI_CV_Counter_End
+#else
get_target_type1
if_in_bytes AI_CV_Counter_PhysicalTypeList, AI_CV_Counter_End
get_target_type2
if_in_bytes AI_CV_Counter_PhysicalTypeList, AI_CV_Counter_End
- if_random_less_than 50, AI_CV_Counter_End
+#endif
AI_CV_Counter7:
- if_random_less_than 100, AI_CV_Counter8
- score +4
+ if_random_less_than 50, AI_CV_Counter_End
AI_CV_Counter8:
+ if_random_less_than 100, AI_CV_Counter9
+ score +4
+AI_CV_Counter9:
end
AI_CV_Counter_ScoreDown1:
@@ -2100,6 +2111,8 @@ AI_CV_PsychUp_ScoreDown2:
AI_CV_PsychUp_End:
end
+@ BUG: The original script would score up Mirror Coat when the target's types were not special
+@ This is incorrect since Mirror Coat only deals double the damage received if hit by a special attack
AI_CV_MirrorCoat:
if_status AI_TARGET, STATUS1_SLEEP, AI_CV_MirrorCoat_ScoreDown1
if_status2 AI_TARGET, STATUS2_INFATUATION, AI_CV_MirrorCoat_ScoreDown1
@@ -2132,10 +2145,19 @@ AI_CV_MirrorCoat5:
if_random_less_than 100, AI_CV_MirrorCoat6
score +1
AI_CV_MirrorCoat6:
+#ifdef BUGFIX
+ get_target_type1
+ if_in_bytes AI_CV_MirrorCoat_SpecialTypeList, AI_CV_MirrorCoat7
+ get_target_type2
+ if_in_bytes AI_CV_MirrorCoat_SpecialTypeList, AI_CV_MirrorCoat7
+ goto AI_CV_MirrorCoat_End
+#else
get_target_type1
if_in_bytes AI_CV_MirrorCoat_SpecialTypeList, AI_CV_MirrorCoat_End
get_target_type2
if_in_bytes AI_CV_MirrorCoat_SpecialTypeList, AI_CV_MirrorCoat_End
+#endif
+AI_CV_MirrorCoat7:
if_random_less_than 50, AI_CV_MirrorCoat_End
AI_CV_MirrorCoat_ScoreUp4:
if_random_less_than 100, AI_CV_MirrorCoat_ScoreUp4_End
diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s
index 4519761845..489bffb207 100644
--- a/data/battle_anim_scripts.s
+++ b/data/battle_anim_scripts.s
@@ -2097,7 +2097,7 @@ Move_MEAN_LOOK:
Move_ROCK_THROW:
loadspritegfx ANIM_TAG_ROCKS
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_TARGET, 2, 6, 1, 15, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_TARGET, 2, 6, 1, 15, 1
createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, 0, 1, 0, 0
playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET
delay 6
@@ -2119,7 +2119,7 @@ Move_ROCK_THROW:
Move_ROCK_SLIDE:
loadspritegfx ANIM_TAG_ROCKS
monbg ANIM_DEF_PARTNER
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1
createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, -5, 1, -5, 1
playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET
delay 2
@@ -2909,7 +2909,7 @@ Move_BARRAGE:
createvisualtask AnimTask_BarrageBall, 3
playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER
delay 24
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 40, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 40, 1
createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 0, 4, 20, 1
createvisualtask AnimTask_ShakeMon, 3, ANIM_DEF_PARTNER, 0, 4, 20, 1
loopsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET, 8, 2
@@ -3660,7 +3660,7 @@ Move_SUPERPOWER:
createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 2, ANIM_ATTACKER
playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER
delay 20
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1
createvisualtask SoundTask_PlaySE2WithPanning, 5, SE_M_EARTHQUAKE, 0
delay 40
createsprite gSuperpowerRockSpriteTemplate, ANIM_ATTACKER, 41, 200, 96, 1, 120
@@ -5011,7 +5011,7 @@ SnoreEffect:
playsewithpan SE_M_SNORE, SOUND_PAN_ATTACKER
createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 7, ANIM_ATTACKER, 1
createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 7, 1
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 14, 0, 0
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 14, 0, 0
createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, -42, -38, 24, 0, 0
createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, -42, 24, 0, 0
createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 42, -38, 24, 0, 0
@@ -6871,7 +6871,7 @@ Move_ANCIENT_POWER:
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
setalpha 12, 8
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 10, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 10, 1
createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 20, 32, -48, 50, 2
createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, -38, 25, 5
createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 32, 32, -28, 40, 3
@@ -7292,14 +7292,14 @@ Move_METAL_CLAW:
playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET
createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0
createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, 10, 0
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1
delay 8
createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4
delay 2
playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET
createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, -10, 1
createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, 10, 1
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1
waitforvisualfinish
end
@@ -8515,7 +8515,7 @@ HyperVoiceEffect:
createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1
createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1
createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1
- createvisualtask AnimTask_ShakeBattleTerrain, 2, 1, 0, 6, 1
+ createvisualtask AnimTask_ShakeBattlePlatforms, 2, 1, 0, 6, 1
createvisualtask SoundTask_WaitForCry, 5
return
@@ -8637,7 +8637,7 @@ Move_DRAGON_CLAW:
createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET
createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0
createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, 10, 0
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1
createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER
delay 2
createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER
@@ -8650,7 +8650,7 @@ Move_DRAGON_CLAW:
createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET
createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, -10, 1
createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, 10, 1
- createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1
+ createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1
createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER
delay 2
createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER
@@ -9111,7 +9111,7 @@ Move_BLAST_BURN:
createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 70, 60, -30, 24, 0, 0, 0
createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -4, 3, ANIM_TARGET, 0
createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 12, 0, 20, 1
- createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1
+ createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1
createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 96, 0, 24, 0, 0, 0
createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0
createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0
@@ -9125,32 +9125,32 @@ Move_BLAST_BURN:
Move_ROCK_TOMB:
loadspritegfx ANIM_TAG_X_SIGN
loadspritegfx ANIM_TAG_ROCKS
- createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1
+ createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1
waitforvisualfinish
createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, 20, 12, 64, 114, 0
delay 8
- createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1
+ createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1
playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET
delay 8
createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, -20, 12, 64, 98, 0
delay 8
- createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1
+ createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1
playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET
delay 8
createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 66, 3, 6, 64, 82, 0
delay 8
- createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1
+ createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1
playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET
delay 8
createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, -3, 13, 64, 66, 0
delay 8
- createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1
+ createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1
playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET
delay 24
playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_TARGET
createsprite gRedXSpriteTemplate, ANIM_TARGET, 5, ANIM_TARGET, 50
createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 20, 1
- createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1
+ createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1
waitforvisualfinish
end
@@ -9635,16 +9635,16 @@ Move_SKY_UPPERCUT:
end
Move_SECRET_POWER:
- createvisualtask AnimTask_GetBattleTerrain, 5
- jumpargeq 0, BATTLE_TERRAIN_GRASS, Move_NEEDLE_ARM
- jumpargeq 0, BATTLE_TERRAIN_LONG_GRASS, Move_MAGICAL_LEAF
- jumpargeq 0, BATTLE_TERRAIN_SAND, Move_MUD_SHOT
- jumpargeq 0, BATTLE_TERRAIN_UNDERWATER, Move_WATERFALL
- jumpargeq 0, BATTLE_TERRAIN_WATER, Move_SURF
- jumpargeq 0, BATTLE_TERRAIN_POND, Move_BUBBLE_BEAM
- jumpargeq 0, BATTLE_TERRAIN_MOUNTAIN, Move_ROCK_THROW
- jumpargeq 0, BATTLE_TERRAIN_CAVE, Move_BITE
- jumpargeq 0, BATTLE_TERRAIN_BUILDING, Move_STRENGTH
+ createvisualtask AnimTask_GetBattleEnvironment, 5
+ jumpargeq 0, BATTLE_ENVIRONMENT_GRASS, Move_NEEDLE_ARM
+ jumpargeq 0, BATTLE_ENVIRONMENT_LONG_GRASS, Move_MAGICAL_LEAF
+ jumpargeq 0, BATTLE_ENVIRONMENT_SAND, Move_MUD_SHOT
+ jumpargeq 0, BATTLE_ENVIRONMENT_UNDERWATER, Move_WATERFALL
+ jumpargeq 0, BATTLE_ENVIRONMENT_WATER, Move_SURF
+ jumpargeq 0, BATTLE_ENVIRONMENT_POND, Move_BUBBLE_BEAM
+ jumpargeq 0, BATTLE_ENVIRONMENT_MOUNTAIN, Move_ROCK_THROW
+ jumpargeq 0, BATTLE_ENVIRONMENT_CAVE, Move_BITE
+ jumpargeq 0, BATTLE_ENVIRONMENT_BUILDING, Move_STRENGTH
goto Move_SLAM
Move_TWISTER:
diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s
index 0c0dc72831..00a40fbbb0 100644
--- a/data/battle_scripts_1.s
+++ b/data/battle_scripts_1.s
@@ -2289,7 +2289,7 @@ BattleScript_EffectNaturePower::
attackcanceler
attackstring
pause B_WAIT_TIME_SHORT
- callterrainattack
+ callenvironmentattack
printstring STRINGID_NATUREPOWERTURNEDINTO
waitmessage B_WAIT_TIME_LONG
return
@@ -2799,7 +2799,7 @@ BattleScript_EffectCamouflage::
attackcanceler
attackstring
ppreduce
- settypetoterrain BattleScript_ButItFailed
+ settypetoenvironment BattleScript_ButItFailed
attackanimation
waitanimation
printstring STRINGID_PKMNCHANGEDTYPE
diff --git a/data/event_scripts.s b/data/event_scripts.s
index e8fb9dcbd1..0cc95940f8 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -60,6 +60,7 @@
.section script_data, "aw", %progbits
+ .set ALLOCATE_SCRIPT_CMD_TABLE, 1
.include "data/script_cmd_table.inc"
gSpecialVars::
@@ -563,8 +564,8 @@ gStdScripts_End::
.include "data/maps/Route110_TrickHousePuzzle6/scripts.inc"
.include "data/maps/Route110_TrickHousePuzzle7/scripts.inc"
.include "data/maps/Route110_TrickHousePuzzle8/scripts.inc"
- .include "data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc"
.include "data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc"
+ .include "data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc"
.include "data/maps/Route113_GlassWorkshop/scripts.inc"
.include "data/maps/Route123_BerryMastersHouse/scripts.inc"
.include "data/maps/Route119_WeatherInstitute_1F/scripts.inc"
@@ -774,8 +775,8 @@ EventScript_HideMrBriney::
return
RusturfTunnel_EventScript_SetRusturfTunnelOpen::
- removeobject LOCALID_WANDAS_BF
- removeobject LOCALID_WANDA
+ removeobject LOCALID_RUSTURF_TUNNEL_WANDAS_BF
+ removeobject LOCALID_RUSTURF_TUNNEL_WANDA
clearflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WANDAS_BOYFRIEND
clearflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WANDA
setvar VAR_RUSTURF_TUNNEL_STATE, 6
@@ -784,11 +785,11 @@ RusturfTunnel_EventScript_SetRusturfTunnelOpen::
EventScript_UnusedBoardFerry::
delay 30
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
- showobjectat OBJ_EVENT_ID_PLAYER, 0
+ showobjectat LOCALID_PLAYER, 0
delay 30
- applymovement OBJ_EVENT_ID_PLAYER, Movement_UnusedBoardFerry
+ applymovement LOCALID_PLAYER, Movement_UnusedBoardFerry
waitmovement 0
delay 30
return
@@ -801,7 +802,7 @@ Common_EventScript_FerryDepartIsland::
call_if_eq VAR_FACING, DIR_SOUTH, Ferry_EventScript_DepartIslandSouth
call_if_eq VAR_FACING, DIR_WEST, Ferry_EventScript_DepartIslandWest
delay 30
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
+ hideobjectat LOCALID_PLAYER, 0
call Common_EventScript_FerryDepart
return
diff --git a/data/maps/AquaHideout_B2F/map.json b/data/maps/AquaHideout_B2F/map.json
index bc58b8d6be..fb8bf6ed36 100644
--- a/data/maps/AquaHideout_B2F/map.json
+++ b/data/maps/AquaHideout_B2F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_AQUA_HIDEOUT_MATT",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 23,
"y": 19,
@@ -54,6 +55,7 @@
"flag": "FLAG_ITEM_AQUA_HIDEOUT_B2F_NEST_BALL"
},
{
+ "local_id": "LOCALID_AQUA_HIDEOUT_SUBMARINE",
"graphics_id": "OBJ_EVENT_GFX_SUBMARINE_SHADOW",
"x": 19,
"y": 20,
diff --git a/data/maps/AquaHideout_B2F/scripts.inc b/data/maps/AquaHideout_B2F/scripts.inc
index 8d7a27bee1..234833a8e1 100644
--- a/data/maps/AquaHideout_B2F/scripts.inc
+++ b/data/maps/AquaHideout_B2F/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_MATT, 1
-.set LOCALID_SUBMARINE, 4
-
AquaHideout_B2F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, AquaHideout_B2F_OnTransition
end_map_scripts
@@ -15,7 +12,7 @@ AquaHideout_B2F_EventScript_PreventMattNoticing::
AquaHideout_B2F_EventScript_MattNoticePlayer::
lockall
- setvar VAR_0x8008, LOCALID_MATT
+ setvar VAR_0x8008, LOCALID_AQUA_HIDEOUT_MATT
playse SE_PIN
applymovement VAR_0x8008, Common_Movement_ExclamationMark
waitmovement 0
@@ -32,8 +29,8 @@ AquaHideout_B2F_EventScript_Matt::
end
AquaHideout_B2F_EventScript_SubmarineEscape::
- setvar VAR_0x8008, LOCALID_MATT
- setvar VAR_0x8009, LOCALID_SUBMARINE
+ setvar VAR_0x8008, LOCALID_AQUA_HIDEOUT_MATT
+ setvar VAR_0x8009, LOCALID_AQUA_HIDEOUT_SUBMARINE
applymovement VAR_0x8008, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
delay 20
diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/map.json b/data/maps/BattleFrontier_BattleArenaBattleRoom/map.json
index b7b4e168a6..6aa89f9055 100644
--- a/data/maps/BattleFrontier_BattleArenaBattleRoom/map.json
+++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_ARENA_BATTLE_BLACK_BELT_1",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 5,
"y": 3,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ARENA_BATTLE_BLACK_BELT_2",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 10,
"y": 3,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ARENA_BATTLE_BLACK_BELT_3",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 5,
"y": 9,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ARENA_BATTLE_BLACK_BELT_4",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 10,
"y": 9,
@@ -67,6 +71,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ARENA_BATTLE_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 4,
"y": 5,
@@ -93,6 +98,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ARENA_BATTLE_OPPONENT",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 15,
"y": 6,
@@ -106,6 +112,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ARENA_BATTLE_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 0,
"y": 6,
@@ -119,6 +126,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ARENA_BATTLE_ANNOUNCER",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 7,
"y": 4,
diff --git a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc
index d739735452..38045b8623 100644
--- a/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleArenaBattleRoom/scripts.inc
@@ -1,12 +1,7 @@
-.set LOCALID_BLACK_BELT_1, 1
-.set LOCALID_BLACK_BELT_2, 2
-.set LOCALID_BLACK_BELT_3, 3
-.set LOCALID_BLACK_BELT_4, 4
-.set LOCALID_ATTENDANT, 5
-.set LOCALID_OPPONENT, 7
-.set LOCALID_PLAYER, 8
-.set LOCALID_ANNOUNCER, 9
-
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_ARENA_BATTLE_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_1.
+@ The graphics of the opponent are represented with VAR_OBJ_GFX_ID_0, which will ultimately be set by tower_setopponent.
BattleFrontier_BattleArenaBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleArenaBattleRoom_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleArenaBattleRoom_OnFrame
@@ -14,9 +9,6 @@ BattleFrontier_BattleArenaBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleArenaBattleRoom_OnResume
end_map_scripts
- @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
- @ The player is represented instead by LOCALID_PLAYER, which has the gfx id VAR_OBJ_GFX_ID_1
-
BattleFrontier_BattleArenaBattleRoom_OnResume:
special OffsetCameraForBattle
end
@@ -46,47 +38,47 @@ BattleFrontier_BattleArenaBattleRoom_OnFrame:
BattleFrontier_BattleArenaBattleRoom_EventScript_EnterRoom::
lockall
- showobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerEnter
+ showobjectat LOCALID_ARENA_BATTLE_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerEnter
waitmovement 0
frontier_get FRONTIER_DATA_BATTLE_NUM
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceDown
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceLeft
+ applymovement LOCALID_ARENA_BATTLE_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceLeft
setvar VAR_TEMP_2, 1
frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE
goto BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForOpponent
BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers::
tower_setopponent
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentEnter
+ addobject LOCALID_ARENA_BATTLE_OPPONENT
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentEnter
waitmovement 0
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
playse SE_M_BELLY_DRUM
waitse
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_PlayerStepForward, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForward
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForward
waitmovement 0
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
playse SE_M_BELLY_DRUM
waitse
waitmovement 0
arena_gettrainername
msgbox BattleFrontier_BattleArenaBattleRoom_Text_OpponentStepForward, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForward
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForward
waitmovement 0
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
playse SE_M_BELLY_DRUM
waitse
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_SetKOTourneyBegin, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForward
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForward
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForward
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForward
waitmovement 0
palace_getopponentintro
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -95,11 +87,11 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers::
switch VAR_RESULT
case 1, BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedOpponent
BattleFrontier_BattleArenaBattleRoom_EventScript_DeclareOpponentWinner::
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
- applymovement LOCALID_BLACK_BELT_1, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
- applymovement LOCALID_BLACK_BELT_2, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
- applymovement LOCALID_BLACK_BELT_3, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp
- applymovement LOCALID_BLACK_BELT_4, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp
+ applymovement LOCALID_ARENA_BATTLE_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_BLACK_BELT_1, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_BLACK_BELT_2, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_BLACK_BELT_3, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp
+ applymovement LOCALID_ARENA_BATTLE_BLACK_BELT_4, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp
playse SE_M_SNORE
waitse
waitmovement 0
@@ -117,12 +109,12 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedOpponent::
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
switch VAR_RESULT
case 7, BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerWalkBackToLine
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentExit
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerWalkBackToLine
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentExit
waitmovement 0
- removeobject LOCALID_OPPONENT
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceDown
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceLeft
+ removeobject LOCALID_ARENA_BATTLE_OPPONENT
+ applymovement LOCALID_ARENA_BATTLE_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceLeft
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_MonsWillBeRestored, MSGBOX_DEFAULT
special LoadPlayerParty
@@ -191,8 +183,8 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskRetireChallenge::
BattleFrontier_BattleArenaBattleRoom_EventScript_ContinueChallenge::
closemessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight
+ applymovement LOCALID_ARENA_BATTLE_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight
waitmovement 0
goto BattleFrontier_BattleArenaBattleRoom_EventScript_AnnounceTrainers
waitstate
@@ -269,27 +261,27 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_AskReadyForTycoonNoRecord::
BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta::
call BattleFrontier_EventScript_SetBrainObjectGfx
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight
+ applymovement LOCALID_ARENA_BATTLE_ATTENDANT, BattleFrontier_BattleArenaBattleRoom_Movement_WalkInPlaceRight
waitmovement 0
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
playse SE_M_BELLY_DRUM
waitse
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_PlayerStepForward, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForwardLong
+ applymovement LOCALID_ARENA_BATTLE_PLAYER, BattleFrontier_BattleArenaBattleRoom_Movement_PlayerStepForwardLong
waitmovement 0
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
playse SE_M_BELLY_DRUM
waitse
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_MakeWayForGreta, MSGBOX_DEFAULT
closemessage
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaEnter
+ addobject LOCALID_ARENA_BATTLE_OPPONENT
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaEnter
waitmovement 0
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForward
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForward
waitmovement 0
switch VAR_TEMP_F
case FRONTIER_BRAIN_GOLD, BattleFrontier_BattleArenaBattleRoom_EventScript_IntroGretaGold
@@ -300,11 +292,11 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGreta::
msgbox BattleFrontier_BattleArenaBattleRoom_Text_GretaYoureChallenger, MSGBOX_DEFAULT
closemessage
frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaLookAroundPlayer
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaLookAroundPlayer
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_IsThatRight, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_YouLookWeakTakeThingsEasy, MSGBOX_DEFAULT
BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaSilver::
@@ -317,7 +309,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaSilver::
call BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner
frontier_getsymbols
goto_if_ne VAR_RESULT, 0, BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForwardLong
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForwardLong
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_GretaYoureToughAfterAll, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_SYMBOL
@@ -334,11 +326,11 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_IntroGretaGold::
msgbox BattleFrontier_BattleArenaBattleRoom_Text_GretaLookingForwardToSeeingAgain, MSGBOX_DEFAULT
closemessage
frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaLookAroundPlayer
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaLookAroundPlayer
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_SoAreYouReady, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_GretaWalkBackToCenter
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_WontAllowHalfheartedEffort, MSGBOX_DEFAULT
BattleFrontier_BattleArenaBattleRoom_EventScript_BattleGretaGold::
@@ -351,7 +343,7 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DefeatedGretaGold::
call BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner
frontier_getsymbols
goto_if_eq VAR_RESULT, 2, BattleFrontier_BattleArenaBattleRoom_EventScript_ReturnToLobbyWon
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForwardLong
+ applymovement LOCALID_ARENA_BATTLE_OPPONENT, BattleFrontier_BattleArenaBattleRoom_Movement_OpponentStepForwardLong
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_GretaBlownAway, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_SYMBOL
@@ -382,11 +374,11 @@ BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle::
return
BattleFrontier_BattleArenaBattleRoom_EventScript_DeclarePlayerWinner::
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
- applymovement LOCALID_BLACK_BELT_1, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
- applymovement LOCALID_BLACK_BELT_2, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
- applymovement LOCALID_BLACK_BELT_3, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp
- applymovement LOCALID_BLACK_BELT_4, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp
+ applymovement LOCALID_ARENA_BATTLE_ANNOUNCER, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_BLACK_BELT_1, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_BLACK_BELT_2, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceDown
+ applymovement LOCALID_ARENA_BATTLE_BLACK_BELT_3, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp
+ applymovement LOCALID_ARENA_BATTLE_BLACK_BELT_4, BattleFrontier_BattleArenaBattleRoom_Movement_JumpInPlaceUp
playse SE_BANG
waitse
waitmovement 0
@@ -469,10 +461,10 @@ BattleFrontier_BattleArenaBattleRoom_OnWarp:
end_map_script_table
BattleFrontier_BattleArenaBattleRoom_EventScript_SetUpRoomObjects::
- hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM
- removeobject LOCALID_OPPONENT
+ hideobjectat LOCALID_ARENA_BATTLE_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM
+ removeobject LOCALID_ARENA_BATTLE_OPPONENT
call BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisible
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisible
setvar VAR_TEMP_1, 1
end
diff --git a/data/maps/BattleFrontier_BattleArenaCorridor/map.json b/data/maps/BattleFrontier_BattleArenaCorridor/map.json
index dbf6093250..6ec197aba6 100644
--- a/data/maps/BattleFrontier_BattleArenaCorridor/map.json
+++ b/data/maps/BattleFrontier_BattleArenaCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_ARENA_CORRIDOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 9,
"y": 12,
diff --git a/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc b/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc
index e7e4dc1696..8a9574c64a 100644
--- a/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc
+++ b/data/maps/BattleFrontier_BattleArenaCorridor/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattleArenaCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleArenaCorridor_OnFrame
end_map_scripts
@@ -11,15 +9,15 @@ BattleFrontier_BattleArenaCorridor_OnFrame:
BattleFrontier_BattleArenaCorridor_EventScript_WalkToBattleRoom::
delay 16
setvar VAR_TEMP_0, 1
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaCorridor_Movement_AttendantWalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaCorridor_Movement_PlayerWalkToDoor
+ applymovement LOCALID_ARENA_CORRIDOR_ATTENDANT, BattleFrontier_BattleArenaCorridor_Movement_AttendantWalkToDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaCorridor_Movement_PlayerWalkToDoor
waitmovement 0
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaCorridor_Movement_AttendantFacePlayer
+ applymovement LOCALID_ARENA_CORRIDOR_ATTENDANT, BattleFrontier_BattleArenaCorridor_Movement_AttendantFacePlayer
waitmovement 0
msgbox BattleFrontier_BattleArenaCorridor_Text_PleaseStepIn, MSGBOX_SIGN
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaCorridor_Movement_AttendantMoveOutOfWay
+ applymovement LOCALID_ARENA_CORRIDOR_ATTENDANT, BattleFrontier_BattleArenaCorridor_Movement_AttendantMoveOutOfWay
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaCorridor_Movement_PlayerEnterDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaCorridor_Movement_PlayerEnterDoor
waitmovement 0
setvar VAR_0x8006, 0
warp MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM, 7, 5
diff --git a/data/maps/BattleFrontier_BattleArenaLobby/map.json b/data/maps/BattleFrontier_BattleArenaLobby/map.json
index 210da8118c..0985255d9c 100644
--- a/data/maps/BattleFrontier_BattleArenaLobby/map.json
+++ b/data/maps/BattleFrontier_BattleArenaLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_ARENA_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 7,
"y": 7,
diff --git a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc
index 14e69b3874..aad650f764 100644
--- a/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattleArenaLobby/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattleArenaLobby_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleArenaLobby_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleArenaLobby_OnWarp
@@ -11,7 +9,7 @@ BattleFrontier_BattleArenaLobby_OnWarp:
BattleFrontier_BattleArenaLobby_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattleArenaLobby_OnFrame:
@@ -201,13 +199,13 @@ BattleFrontier_BattleArenaLobby_EventScript_EndCancelChallenge::
end
BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLv50::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToLeftDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToLeftDoor
+ applymovement LOCALID_ARENA_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToLeftDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToLeftDoor
waitmovement 0
opendoor 2, 2
waitdooranim
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerEnterDoor
+ applymovement LOCALID_ARENA_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantEnterDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerEnterDoor
waitmovement 0
closedoor 2, 2
waitdooranim
@@ -250,13 +248,13 @@ BattleFrontier_BattleArenaLobby_Movement_PlayerEnterDoor:
step_end
BattleFrontier_BattleArenaLobby_EventScript_WalkToDoorLvOpen::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToRightDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToRightDoor
+ applymovement LOCALID_ARENA_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantWalkToRightDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerWalkToRightDoor
waitmovement 0
opendoor 11, 2
waitdooranim
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerEnterDoor
+ applymovement LOCALID_ARENA_ATTENDANT, BattleFrontier_BattleArenaLobby_Movement_AttendantEnterDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleArenaLobby_Movement_PlayerEnterDoor
waitmovement 0
closedoor 11, 2
waitdooranim
diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/map.json b/data/maps/BattleFrontier_BattleDomeBattleRoom/map.json
index c2b427cbe3..b4407e55d6 100644
--- a/data/maps/BattleFrontier_BattleDomeBattleRoom/map.json
+++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_DOME_ANNOUNCER",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_M",
"x": 5,
"y": 4,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DOME_AUDIENCE_TWIN",
"graphics_id": "OBJ_EVENT_GFX_TWIN",
"x": 7,
"y": 2,
@@ -80,6 +82,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DOME_AUDIENCE_WALKING",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 4,
"y": 2,
@@ -119,6 +122,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DOME_REFEREE",
"graphics_id": "OBJ_EVENT_GFX_MAN_2",
"x": 0,
"y": 4,
@@ -171,6 +175,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DOME_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 4,
"y": 9,
@@ -197,6 +202,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DOME_OPPONENT",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 11,
"y": 6,
diff --git a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc
index 6391523f8d..744b75d55b 100644
--- a/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleDomeBattleRoom/scripts.inc
@@ -1,9 +1,7 @@
-.set LOCALID_ANNOUNCER, 1
-.set LOCALID_AUDIENCE_TWIN, 2
-.set LOCALID_AUDIENCE_WALKING, 6
-.set LOCALID_REFEREE, 9
-.set LOCALID_PLAYER, 13
-.set LOCALID_OPPONENT, 15
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_DOME_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_1.
+@ The graphics of the opponent are represented with VAR_OBJ_GFX_ID_0, which will ultimately be set by dome_setopponentgfx.
.set NO_DRAW, 0
.set DRAW_TRAINER, 1
@@ -46,20 +44,20 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_EnterRoom::
lockall
call BattleFrontier_BattleDomeBattleRoom_EventScript_GetRoundNum
call_if_eq VAR_RESULT, DOME_ROUND1, BattleFrontier_BattleDomeBattleRoom_EventScript_TryDoAudienceMemberWalkToSeat
- applymovement LOCALID_ANNOUNCER, Common_Movement_WalkInPlaceDown
+ applymovement LOCALID_DOME_ANNOUNCER, Common_Movement_WalkInPlaceDown
waitmovement 0
call BattleFrontier_BattleDomeBattleRoom_EventScript_AnnouncePlayer
msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerHasEnteredDome, MSGBOX_DEFAULT
closemessage
- showobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM
+ showobjectat LOCALID_DOME_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM
goto_if_ne VAR_TEMP_F, DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnter
goto_if_ne VAR_TEMP_E, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnterForTucker
BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnter::
- applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnter
+ applymovement LOCALID_DOME_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnter
goto BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceReactToPlayer
BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerEnterForTucker::
- applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnterForTucker
+ applymovement LOCALID_DOME_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerEnterForTucker
BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceReactToPlayer::
playse SE_M_ENCORE2
call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround
@@ -70,8 +68,8 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleOpponent::
dome_getopponentname
msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTrainer, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_OpponentStepForward
+ applymovement LOCALID_DOME_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward
+ applymovement LOCALID_DOME_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_OpponentStepForward
waitmovement 0
tower_getopponentintro 0
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -90,19 +88,19 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_Draw::
playse SE_M_ENCORE2
call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround
delay 60
- applymovement LOCALID_REFEREE, BattleFrontier_BattleDomeBattleRoom_Movement_RefereeEnter
+ applymovement LOCALID_DOME_REFEREE, BattleFrontier_BattleDomeBattleRoom_Movement_RefereeEnter
waitmovement 0
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerFaceLeft
+ applymovement LOCALID_DOME_ANNOUNCER, BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerFaceLeft
waitmovement 0
delay 180
- applymovement LOCALID_REFEREE, BattleFrontier_BattleDomeBattleRoom_Movement_RefereeExit
+ applymovement LOCALID_DOME_REFEREE, BattleFrontier_BattleDomeBattleRoom_Movement_RefereeExit
waitmovement 0
goto_if_eq VAR_TEMP_2, DRAW_TUCKER, BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent @ Tucker always wins on a draw
dome_compareseeds
switch VAR_RESULT
case 1, BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent
BattleFrontier_BattleDomeBattleRoom_EventScript_LostToOpponent::
- applymovement LOCALID_ANNOUNCER, Common_Movement_WalkInPlaceDown
+ applymovement LOCALID_DOME_ANNOUNCER, Common_Movement_WalkInPlaceDown
waitmovement 0
dome_getopponentname
call_if_eq VAR_TEMP_2, NO_DRAW, BattleFrontier_BattleDomeBattleRoom_EventScript_OpponentWon
@@ -135,7 +133,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerWonDraw::
return
BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent::
- applymovement LOCALID_ANNOUNCER, Common_Movement_WalkInPlaceDown
+ applymovement LOCALID_DOME_ANNOUNCER, Common_Movement_WalkInPlaceDown
waitmovement 0
call_if_eq VAR_TEMP_2, NO_DRAW, BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWon
call_if_eq VAR_TEMP_2, DRAW_TRAINER, BattleFrontier_BattleDomeBattleRoom_EventScript_PlayerWonDraw
@@ -154,7 +152,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_DefeatedOpponent::
waitstate
BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney::
- applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerApproachAudience
+ applymovement LOCALID_DOME_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerApproachAudience
waitmovement 0
frontier_get FRONTIER_DATA_LVL_MODE
switch VAR_RESULT
@@ -340,9 +338,9 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_AnnounceTuckerGold::
msgbox BattleFrontier_BattleDomeBattleRoom_Text_LegendHasReturnedDomeAceTucker, MSGBOX_DEFAULT
BattleFrontier_BattleDomeBattleRoom_EventScript_TuckerEnter::
closemessage
- applymovement LOCALID_AUDIENCE_TWIN, BattleFrontier_BattleDomeBattleRoom_Movement_AudienceTwinJump
- applymovement LOCALID_ANNOUNCER, BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerMoveForTuckerEntrance
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerEnterAndDance
+ applymovement LOCALID_DOME_AUDIENCE_TWIN, BattleFrontier_BattleDomeBattleRoom_Movement_AudienceTwinJump
+ applymovement LOCALID_DOME_ANNOUNCER, BattleFrontier_BattleDomeBattleRoom_Movement_AnnouncerMoveForTuckerEntrance
+ applymovement LOCALID_DOME_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerEnterAndDance
playse SE_M_ENCORE2
call BattleFrontier_BattleDomeBattleRoom_EventScript_AudienceLookAround
waitse
@@ -384,7 +382,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerSilver::
frontier_getsymbols
goto_if_ne VAR_RESULT, 0, BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney
closemessage
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerApproachPlayer
+ applymovement LOCALID_DOME_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerApproachPlayer
waitmovement 0
msgbox BattleFrontier_BattleDomeBattleRoom_Text_SeeYourFrontierPass, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_SYMBOL
@@ -412,7 +410,7 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold::
frontier_getsymbols
goto_if_eq VAR_RESULT, 2, BattleFrontier_BattleDomeBattleRoom_EventScript_WonTourney
closemessage
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerApproachPlayer
+ applymovement LOCALID_DOME_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerApproachPlayer
waitmovement 0
msgbox BattleFrontier_BattleDomeBattleRoom_Text_NeverLostWhenPowerUnleashed, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_SYMBOL
@@ -426,8 +424,8 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_BattleTuckerGold::
BattleFrontier_BattleDomeBattleRoom_EventScript_DoTuckerBattle::
msgbox BattleFrontier_BattleDomeBattleRoom_Text_PlayerVersusTucker, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward2
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerStepForward
+ applymovement LOCALID_DOME_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_PlayerStepForward2
+ applymovement LOCALID_DOME_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_TuckerStepForward
waitmovement 0
call BattleFrontier_BattleDomeBattleRoom_EventScript_DoDomeBattle
return
@@ -462,21 +460,21 @@ BattleFrontier_BattleDomeBattleRoom_OnWarp:
end_map_script_table
BattleFrontier_BattleDomeBattleRoom_EventScript_SetUpObjects::
- hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM
+ hideobjectat LOCALID_DOME_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM
call BattleFrontier_BattleDomeBattleRoom_EventScript_AddAudience
call BattleFrontier_BattleDomeBattleRoom_EventScript_SetPlayerGfx
setvar VAR_TEMP_1, 1
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisible
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisible
frontier_get FRONTIER_DATA_BATTLE_NUM
goto_if_ne VAR_RESULT, DOME_FINAL, BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects
frontier_getbrainstatus
copyvar VAR_TEMP_E, VAR_RESULT
goto_if_eq VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects
call BattleFrontier_EventScript_SetBrainObjectGfx
- setobjectxyperm LOCALID_OPPONENT, 13, 9
- removeobject LOCALID_OPPONENT
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisibleFacingUp
+ setobjectxyperm LOCALID_DOME_OPPONENT, 13, 9
+ removeobject LOCALID_DOME_OPPONENT
+ addobject LOCALID_DOME_OPPONENT
+ applymovement LOCALID_DOME_OPPONENT, BattleFrontier_BattleDomeBattleRoom_Movement_SetInvisibleFacingUp
BattleFrontier_BattleDomeBattleRoom_EventScript_EndSetUpObjects::
end
@@ -869,13 +867,13 @@ BattleFrontier_BattleDomeBattleRoom_EventScript_SetWalkingAudienceMemberPos::
random 2
copyvar VAR_TEMP_D, VAR_RESULT
goto_if_eq VAR_TEMP_D, 0, Common_EventScript_NopReturn
- setobjectxyperm LOCALID_AUDIENCE_WALKING, 2, 0
- setobjectmovementtype LOCALID_AUDIENCE_WALKING, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_DOME_AUDIENCE_WALKING, 2, 0
+ setobjectmovementtype LOCALID_DOME_AUDIENCE_WALKING, MOVEMENT_TYPE_FACE_RIGHT
return
BattleFrontier_BattleDomeBattleRoom_EventScript_TryDoAudienceMemberWalkToSeat::
goto_if_eq VAR_TEMP_D, 0, Common_EventScript_NopReturn
- applymovement LOCALID_AUDIENCE_WALKING, BattleFrontier_BattleDomeBattleRoom_Movement_AudienceMemberWalkToSeat
+ applymovement LOCALID_DOME_AUDIENCE_WALKING, BattleFrontier_BattleDomeBattleRoom_Movement_AudienceMemberWalkToSeat
return
BattleFrontier_BattleDomeBattleRoom_Movement_AudienceTwinJump:
diff --git a/data/maps/BattleFrontier_BattleDomeCorridor/map.json b/data/maps/BattleFrontier_BattleDomeCorridor/map.json
index 5a68af443c..bb2088e7fc 100644
--- a/data/maps/BattleFrontier_BattleDomeCorridor/map.json
+++ b/data/maps/BattleFrontier_BattleDomeCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_DOME_CORRIDOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 23,
"y": 5,
diff --git a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc
index 9dbbc98b5f..e9c049cf00 100644
--- a/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc
+++ b/data/maps/BattleFrontier_BattleDomeCorridor/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattleDomeCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleDomeCorridor_OnFrame
end_map_scripts
@@ -13,26 +11,26 @@ BattleFrontier_BattleDomeCorridor_EventScript_EnterCorridor::
setvar VAR_TEMP_0, 1
frontier_get FRONTIER_DATA_LVL_MODE
goto_if_eq VAR_RESULT, FRONTIER_LVL_OPEN, BattleFrontier_BattleDomeCorridor_EventScript_WalkToBattleRoomLvOpen
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLv50
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLv50
+ applymovement LOCALID_DOME_CORRIDOR_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLv50
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLv50
waitmovement 0
opendoor 13, 3
waitdooranim
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantEnterDoorLv50
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLv50
+ applymovement LOCALID_DOME_CORRIDOR_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantEnterDoorLv50
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLv50
waitmovement 0
closedoor 13, 3
waitdooranim
goto BattleFrontier_BattleDomeCorridor_EventScript_WarpToPreBattleRoom
BattleFrontier_BattleDomeCorridor_EventScript_WalkToBattleRoomLvOpen::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLvOpen
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLvOpen
+ applymovement LOCALID_DOME_CORRIDOR_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantWalkToDoorLvOpen
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerWalkToDoorLvOpen
waitmovement 0
opendoor 37, 3
waitdooranim
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantEnterDoorLvOpen
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLvOpen
+ applymovement LOCALID_DOME_CORRIDOR_ATTENDANT, BattleFrontier_BattleDomeCorridor_Movement_AttendantEnterDoorLvOpen
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeCorridor_Movement_PlayerEnterDoorLvOpen
waitmovement 0
closedoor 37, 3
waitdooranim
diff --git a/data/maps/BattleFrontier_BattleDomeLobby/map.json b/data/maps/BattleFrontier_BattleDomeLobby/map.json
index d47bb0f2b4..283379b0be 100644
--- a/data/maps/BattleFrontier_BattleDomeLobby/map.json
+++ b/data/maps/BattleFrontier_BattleDomeLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_DOME_ATTENDANT_SINGLES",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 5,
"y": 10,
@@ -80,6 +81,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DOME_ATTENDANT_DOUBLES",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 17,
"y": 10,
diff --git a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc
index fa6fccf51a..192f46a7ed 100644
--- a/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattleDomeLobby/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_ATTENDANT_SINGLES, 1
-.set LOCALID_ATTENDANT_DOUBLES, 6
-
BattleFrontier_BattleDomeLobby_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleDomeLobby_OnResume
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleDomeLobby_OnFrame
@@ -17,7 +14,7 @@ BattleFrontier_BattleDomeLobby_OnWarp:
BattleFrontier_BattleDomeLobby_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattleDomeLobby_OnFrame:
@@ -231,14 +228,14 @@ BattleFrontier_BattleDomeLobby_EventScript_EndCancelChallenge::
BattleFrontier_BattleDomeLobby_EventScript_WalkToDoor::
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantWalkToDoor
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantWalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeLobby_Movement_WalkToDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeLobby_Movement_WalkToDoor
waitmovement 0
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleDomeLobby_EventScript_OpenSinglesDoor
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleDomeLobby_EventScript_OpenDoublesDoor
waitdooranim
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantEnterDoor
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomeLobby_Movement_PlayerEnterDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomeLobby_Movement_PlayerEnterDoor
waitmovement 0
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleDomeLobby_EventScript_CloseSinglesDoor
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleDomeLobby_EventScript_CloseDoublesDoor
@@ -246,19 +243,19 @@ BattleFrontier_BattleDomeLobby_EventScript_WalkToDoor::
return
BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantWalkToDoor::
- applymovement LOCALID_ATTENDANT_SINGLES, BattleFrontier_BattleDomeLobby_Movement_WalkToDoor
+ applymovement LOCALID_DOME_ATTENDANT_SINGLES, BattleFrontier_BattleDomeLobby_Movement_WalkToDoor
return
BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantWalkToDoor::
- applymovement LOCALID_ATTENDANT_DOUBLES, BattleFrontier_BattleDomeLobby_Movement_WalkToDoor
+ applymovement LOCALID_DOME_ATTENDANT_DOUBLES, BattleFrontier_BattleDomeLobby_Movement_WalkToDoor
return
BattleFrontier_BattleDomeLobby_EventScript_SinglesAttendantEnterDoor::
- applymovement LOCALID_ATTENDANT_SINGLES, BattleFrontier_BattleDomeLobby_Movement_AttendantEnterDoor
+ applymovement LOCALID_DOME_ATTENDANT_SINGLES, BattleFrontier_BattleDomeLobby_Movement_AttendantEnterDoor
return
BattleFrontier_BattleDomeLobby_EventScript_DoublesAttendantEnterDoor::
- applymovement LOCALID_ATTENDANT_DOUBLES, BattleFrontier_BattleDomeLobby_Movement_AttendantEnterDoor
+ applymovement LOCALID_DOME_ATTENDANT_DOUBLES, BattleFrontier_BattleDomeLobby_Movement_AttendantEnterDoor
return
BattleFrontier_BattleDomeLobby_EventScript_WelcomeSingles::
diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/map.json b/data/maps/BattleFrontier_BattleDomePreBattleRoom/map.json
index a175248ab2..5c5b891797 100644
--- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/map.json
+++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_DOME_PRE_BATTLE_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 5,
"y": 2,
diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc
index 2ab9a56205..c83022f674 100644
--- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattleDomePreBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleDomePreBattleRoom_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleDomePreBattleRoom_OnWarp
@@ -11,7 +9,7 @@ BattleFrontier_BattleDomePreBattleRoom_OnWarp:
BattleFrontier_BattleDomePreBattleRoom_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattleDomePreBattleRoom_OnFrame:
@@ -22,7 +20,7 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_EnterRoom::
goto_if_eq VAR_0x8006, 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReturnFromBattle
frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE
setvar VAR_TEMP_0, 1
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnter
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnter
waitmovement 0
lockall
BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound::
@@ -150,13 +148,13 @@ BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge::
dome_setopponent
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleDomePreBattleRoom_Movement_AttendantMoveAside
+ applymovement LOCALID_DOME_PRE_BATTLE_ATTENDANT, BattleFrontier_BattleDomePreBattleRoom_Movement_AttendantMoveAside
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerWalkToDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerWalkToDoor
waitmovement 0
opendoor 5, 1
waitdooranim
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnterDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnterDoor
waitmovement 0
closedoor 5, 1
waitdooranim
diff --git a/data/maps/BattleFrontier_BattleFactoryBattleRoom/map.json b/data/maps/BattleFrontier_BattleFactoryBattleRoom/map.json
index ef68f89ecb..dca5284cae 100644
--- a/data/maps/BattleFrontier_BattleFactoryBattleRoom/map.json
+++ b/data/maps/BattleFrontier_BattleFactoryBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FACTORY_BATTLE_SCIENTIST_1",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 0,
"y": 6,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FACTORY_BATTLE_OPPONENT",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 7,
"y": 4,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FACTORY_BATTLE_SCIENTIST_2",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 0,
"y": 4,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FACTORY_BATTLE_SCIENTIST_3",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 0,
"y": 8,
@@ -67,6 +71,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FACTORY_BATTLE_SCIENTIST_4",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 12,
"y": 4,
@@ -80,6 +85,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FACTORY_BATTLE_SCIENTIST_5",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 12,
"y": 6,
@@ -93,6 +99,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FACTORY_BATTLE_SCIENTIST_6",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 12,
"y": 8,
@@ -106,6 +113,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FACTORY_BATTLE_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_F",
"x": 5,
"y": 11,
diff --git a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc
index dd7d1f6a74..2d96100a6c 100644
--- a/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleFactoryBattleRoom/scripts.inc
@@ -1,11 +1,7 @@
-.set LOCALID_SCIENTIST_1, 1
-.set LOCALID_OPPONENT, 2
-.set LOCALID_SCIENTIST_2, 3
-.set LOCALID_SCIENTIST_3, 4
-.set LOCALID_SCIENTIST_4, 5
-.set LOCALID_SCIENTIST_5, 6
-.set LOCALID_SCIENTIST_6, 7
-.set LOCALID_PLAYER, 8
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_FACTORY_BATTLE_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_F.
+@ The graphics of the opponent are represented with VAR_OBJ_GFX_ID_0, which will ultimately be set by factory_setopponentgfx.
BattleFrontier_BattleFactoryBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleFactoryBattleRoom_OnTransition
@@ -13,9 +9,6 @@ BattleFrontier_BattleFactoryBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleFactoryBattleRoom_OnFrame
end_map_scripts
- @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
- @ The player is represented instead by LOCALID_PLAYER, which has the gfx id VAR_OBJ_GFX_ID_F
-
BattleFrontier_BattleFactoryBattleRoom_OnTransition:
frontier_settrainers
checkplayergender
@@ -28,7 +21,7 @@ BattleFrontier_BattleFactoryBattleRoom_OnTransition:
BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj::
call BattleFrontier_EventScript_SetBrainObjectGfx
- setobjectxyperm LOCALID_OPPONENT, 7, 9
+ setobjectxyperm LOCALID_FACTORY_BATTLE_OPPONENT, 7, 9
end
BattleFrontier_BattleFactoryBattleRoom_OnWarp:
@@ -37,9 +30,9 @@ BattleFrontier_BattleFactoryBattleRoom_OnWarp:
BattleFrontier_BattleFactoryBattleRoom_EventScript_HideObjects::
setvar VAR_TEMP_1, 1
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM
+ hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM
goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects
- hideobjectat LOCALID_OPPONENT, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM
+ hideobjectat LOCALID_FACTORY_BATTLE_OPPONENT, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM
BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects::
end
@@ -58,9 +51,9 @@ BattleFrontier_BattleFactoryBattleRoom_OnFrame:
BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle::
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_GetAMoveOn, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_NolandMoveToBattle
+ applymovement LOCALID_FACTORY_BATTLE_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_NolandMoveToBattle
+ applymovement LOCALID_FACTORY_BATTLE_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
waitmovement 0
call BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent
@@ -68,15 +61,15 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle::
BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom::
goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle
+ applymovement LOCALID_FACTORY_BATTLE_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
waitmovement 0
call BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle
factory_setopponentgfx
- removeobject LOCALID_OPPONENT
- setobjectxyperm LOCALID_OPPONENT, 7, 1
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter
+ removeobject LOCALID_FACTORY_BATTLE_OPPONENT
+ setobjectxyperm LOCALID_FACTORY_BATTLE_OPPONENT, 7, 1
+ addobject LOCALID_FACTORY_BATTLE_OPPONENT
+ applymovement LOCALID_FACTORY_BATTLE_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter
waitmovement 0
BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent::
goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland
@@ -138,7 +131,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver::
goto_if_ne VAR_RESULT, 0, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_NolandLetsSeeFrontierPass, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland
+ applymovement LOCALID_FACTORY_BATTLE_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland
waitmovement 0
playfanfare MUS_OBTAIN_SYMBOL
message BattleFrontier_BattleFactoryBattleRoom_Text_ReceivedKnowledgeSymbol
@@ -164,7 +157,7 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold::
goto_if_eq VAR_RESULT, 2, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_OutOfMyLeagueLetsSeePass, MSGBOX_DEFAULT
waitmessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland
+ applymovement LOCALID_FACTORY_BATTLE_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland
waitmovement 0
playfanfare MUS_OBTAIN_SYMBOL
message BattleFrontier_BattleFactoryBattleRoom_Text_KnowledgeSymbolTookGoldenShine
@@ -241,12 +234,12 @@ BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles::
end
BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle::
- applymovement LOCALID_SCIENTIST_1, Common_Movement_WalkInPlaceFasterRight
- applymovement LOCALID_SCIENTIST_2, Common_Movement_WalkInPlaceFasterRight
- applymovement LOCALID_SCIENTIST_3, Common_Movement_WalkInPlaceFasterRight
- applymovement LOCALID_SCIENTIST_4, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_SCIENTIST_5, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_SCIENTIST_6, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_FACTORY_BATTLE_SCIENTIST_1, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_FACTORY_BATTLE_SCIENTIST_2, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_FACTORY_BATTLE_SCIENTIST_3, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_FACTORY_BATTLE_SCIENTIST_4, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_FACTORY_BATTLE_SCIENTIST_5, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_FACTORY_BATTLE_SCIENTIST_6, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
diff --git a/data/maps/BattleFrontier_BattleFactoryLobby/map.json b/data/maps/BattleFrontier_BattleFactoryLobby/map.json
index 15d395fd83..1375c5f2b5 100644
--- a/data/maps/BattleFrontier_BattleFactoryLobby/map.json
+++ b/data/maps/BattleFrontier_BattleFactoryLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FACTORY_ATTENDANT_SINGLES",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 4,
"y": 7,
@@ -80,6 +81,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FACTORY_ATTENDANT_DOUBLES",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 14,
"y": 7,
diff --git a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc
index 06745e34a5..0d4b8118a3 100644
--- a/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattleFactoryLobby/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_ATTENDANT_SINGLES, 1
-.set LOCALID_ATTENDANT_DOUBLES, 6
-
BattleFrontier_BattleFactoryLobby_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleFactoryLobby_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleFactoryLobby_OnWarp
@@ -12,7 +9,7 @@ BattleFrontier_BattleFactoryLobby_OnWarp:
BattleFrontier_BattleFactoryLobby_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattleFactoryLobby_OnFrame:
@@ -170,7 +167,7 @@ BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge::
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattleFactoryLobby_EventScript_TalkedToSinglesAttendant
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleFactoryLobby_EventScript_TalkedToDoublesAttendant
applymovement VAR_LAST_TALKED, BattleFrontier_BattleFactoryLobby_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryLobby_Movement_PlayerEnterDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryLobby_Movement_PlayerEnterDoor
waitmovement 0
warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM, 8, 13
setvar VAR_TEMP_CHALLENGE_STATUS, 0
@@ -178,11 +175,11 @@ BattleFrontier_BattleFactoryLobby_EventScript_EnterChallenge::
end
BattleFrontier_BattleFactoryLobby_EventScript_TalkedToSinglesAttendant::
- setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_SINGLES
+ setvar VAR_LAST_TALKED, LOCALID_FACTORY_ATTENDANT_SINGLES
return
BattleFrontier_BattleFactoryLobby_EventScript_TalkedToDoublesAttendant::
- setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_DOUBLES
+ setvar VAR_LAST_TALKED, LOCALID_FACTORY_ATTENDANT_DOUBLES
return
BattleFrontier_BattleFactoryLobby_EventScript_ExplainChallenge::
diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/map.json b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/map.json
index cf4ea2a6b4..9add31441f 100644
--- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/map.json
+++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FACTORY_PRE_BATTLE_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 8,
"y": 12,
diff --git a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc
index 7af1daed2c..0972c1af2e 100644
--- a/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleFactoryPreBattleRoom/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattleFactoryPreBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleFactoryPreBattleRoom_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleFactoryPreBattleRoom_OnWarp
@@ -12,10 +10,10 @@ BattleFrontier_BattleFactoryPreBattleRoom_OnWarp:
BattleFrontier_BattleFactoryPreBattleRoom_EventScript_SetUpObjects::
setvar VAR_TEMP_1, 1
goto_if_ne VAR_0x8006, 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_TurnPlayerNorth
- setobjectxy LOCALID_ATTENDANT, 8, 7
- turnobject LOCALID_ATTENDANT, DIR_SOUTH
+ setobjectxy LOCALID_FACTORY_PRE_BATTLE_ATTENDANT, 8, 7
+ turnobject LOCALID_FACTORY_PRE_BATTLE_ATTENDANT, DIR_SOUTH
BattleFrontier_BattleFactoryPreBattleRoom_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattleFactoryPreBattleRoom_OnFrame:
@@ -25,8 +23,8 @@ BattleFrontier_BattleFactoryPreBattleRoom_OnFrame:
BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterRoom::
goto_if_eq VAR_0x8006, 1, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle
setvar VAR_TEMP_0, 1
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantEnterRoom
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerEnterRoom
+ applymovement LOCALID_FACTORY_PRE_BATTLE_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantEnterRoom
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerEnterRoom
waitmovement 0
goto_if_eq VAR_0x8006, 2, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ResumeChallenge
factory_generaterentalmons
@@ -66,11 +64,11 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_ReturnToRoomFromBattle::
waitse
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_WaitFewMoments, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantMoveToReceiveCall
+ applymovement LOCALID_FACTORY_PRE_BATTLE_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantMoveToReceiveCall
waitmovement 0
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_UnderstoodSirWillDo, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantReturnToPlayer
+ applymovement LOCALID_FACTORY_PRE_BATTLE_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_AttendantReturnToPlayer
waitmovement 0
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_MessageFromHeadComeRightNow, MSGBOX_DEFAULT
closemessage
@@ -378,13 +376,13 @@ BattleFrontier_BattleFactoryPreBattleRoom_EventScript_AskSwapBeforeHead::
case MULTI_B_PRESSED, BattleFrontier_BattleFactoryPreBattleRoom_EventScript_EnterBattleRoom
BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLv50::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLv50
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLv50
+ applymovement LOCALID_FACTORY_PRE_BATTLE_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLv50
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLv50
return
BattleFrontier_BattleFactoryPreBattleRoom_EventScript_WalkToBattleRoomLvOpen::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLvOpen
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLvOpen
+ applymovement LOCALID_FACTORY_PRE_BATTLE_ATTENDANT, BattleFrontier_BattleFactoryPreBattleRoom_Movement_GuideWalkToBattleRoomLvOpen
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerWalkToBattleRoomLvOpen
return
BattleFrontier_BattleFactoryPreBattleRoom_Movement_PlayerEnterRoom:
diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/map.json b/data/maps/BattleFrontier_BattlePalaceBattleRoom/map.json
index a0d00b5c01..e344c99951 100644
--- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/map.json
+++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PALACE_BATTLE_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 1,
"y": 9,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PALACE_BATTLE_OPPONENT",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 13,
"y": 1,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PALACE_BATTLE_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 1,
"y": 4,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PALACE_DUSCLOPS",
"graphics_id": "OBJ_EVENT_GFX_DUSCLOPS",
"x": 13,
"y": 1,
@@ -67,6 +71,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PALACE_AZURILL",
"graphics_id": "OBJ_EVENT_GFX_AZURILL",
"x": 13,
"y": 1,
diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc
index eeae5fcc50..6e53432484 100644
--- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/scripts.inc
@@ -1,8 +1,7 @@
-.set LOCALID_PLAYER, 1
-.set LOCALID_OPPONENT, 2
-.set LOCALID_ATTENDANT, 3
-.set LOCALID_DUSCLOPS, 4
-.set LOCALID_AZURILL, 5
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_PALACE_BATTLE_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_1.
+@ The graphics of the opponent are represented with VAR_OBJ_GFX_ID_0, which will ultimately be set by tower_setopponent.
BattleFrontier_BattlePalaceBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePalaceBattleRoom_OnTransition
@@ -10,10 +9,6 @@ BattleFrontier_BattlePalaceBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePalaceBattleRoom_OnWarp
end_map_scripts
- @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
- @ The player is represented instead by LOCALID_PLAYER, which has the gfx id VAR_OBJ_GFX_ID_0
- @ The opponent is represented by LOCALID_OPPONENT, which has the gfx id VAR_OBJ_GFX_ID_1
-
BattleFrontier_BattlePalaceBattleRoom_OnTransition:
frontier_settrainers
call BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfx
@@ -41,23 +36,23 @@ BattleFrontier_BattlePalaceBattleRoom_OnFrame:
end_map_script_table
BattleFrontier_BattlePalaceBattleRoom_EventScript_EnterRoom::
- showobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM
+ showobjectat LOCALID_PALACE_BATTLE_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM
frontier_get FRONTIER_DATA_BATTLE_NUM
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_BeginChallenge
- applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerReturnToChallenge
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerReturnToChallenge
waitmovement 0
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown
+ applymovement LOCALID_PALACE_BATTLE_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown
setvar VAR_TEMP_2, 1
frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE
goto BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent
BattleFrontier_BattlePalaceBattleRoom_EventScript_BeginChallenge::
- applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerEnterRoom
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_PlayerEnterRoom
waitmovement 0
BattleFrontier_BattlePalaceBattleRoom_EventScript_NextOpponentEnter::
tower_setopponent
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentEnter
+ addobject LOCALID_PALACE_BATTLE_OPPONENT
+ applymovement LOCALID_PALACE_BATTLE_OPPONENT, BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentEnter
waitmovement 0
palace_getopponentintro
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -76,11 +71,11 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedOpponent::
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
switch VAR_RESULT
case 7, BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon
- applymovement LOCALID_OPPONENT, BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentExit
+ applymovement LOCALID_PALACE_BATTLE_OPPONENT, BattleFrontier_BattlePalaceBattleRoom_Movement_OpponentExit
waitmovement 0
- removeobject LOCALID_OPPONENT
- applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceUp
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown
+ removeobject LOCALID_PALACE_BATTLE_OPPONENT
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceUp
+ applymovement LOCALID_PALACE_BATTLE_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown
waitmovement 0
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_LetMeRestoreYourMons, MSGBOX_DEFAULT
special LoadPlayerParty
@@ -148,8 +143,8 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_AskRetireChallenge::
case MULTI_B_PRESSED, BattleFrontier_BattlePalaceBattleRoom_EventScript_AskReadyForOpponent
BattleFrontier_BattlePalaceBattleRoom_EventScript_ContinueChallenge::
- applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight
+ applymovement LOCALID_PALACE_BATTLE_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight
closemessage
goto BattleFrontier_BattlePalaceBattleRoom_EventScript_NextOpponentEnter
@@ -196,16 +191,16 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_BattleSpenser::
call BattleFrontier_EventScript_SetBrainObjectGfx
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_AnnounceArrivalOfSpenser, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight
- setobjectxyperm LOCALID_OPPONENT, 15, 1
- addobject LOCALID_OPPONENT
- hideobjectat LOCALID_OPPONENT, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM
- setobjectxy LOCALID_OPPONENT, 13, 1
- setobjectxyperm LOCALID_OPPONENT, 13, 1
- applymovement LOCALID_DUSCLOPS, BattleFrontier_BattlePalaceBattleRoom_Movement_DusclopsEnter
- applymovement LOCALID_AZURILL, BattleFrontier_BattlePalaceBattleRoom_Movement_AzurillEnter
- applymovement LOCALID_OPPONENT, BattleFrontier_BattlePalaceBattleRoom_Movement_SpenserEnter
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight
+ applymovement LOCALID_PALACE_BATTLE_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceRight
+ setobjectxyperm LOCALID_PALACE_BATTLE_OPPONENT, 15, 1
+ addobject LOCALID_PALACE_BATTLE_OPPONENT
+ hideobjectat LOCALID_PALACE_BATTLE_OPPONENT, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM
+ setobjectxy LOCALID_PALACE_BATTLE_OPPONENT, 13, 1
+ setobjectxyperm LOCALID_PALACE_BATTLE_OPPONENT, 13, 1
+ applymovement LOCALID_PALACE_DUSCLOPS, BattleFrontier_BattlePalaceBattleRoom_Movement_DusclopsEnter
+ applymovement LOCALID_PALACE_AZURILL, BattleFrontier_BattlePalaceBattleRoom_Movement_AzurillEnter
+ applymovement LOCALID_PALACE_BATTLE_OPPONENT, BattleFrontier_BattlePalaceBattleRoom_Movement_SpenserEnter
waitmovement 0
switch VAR_TEMP_F
case FRONTIER_BRAIN_GOLD, BattleFrontier_BattlePalaceBattleRoom_EventScript_IntroSpenserGold
@@ -226,18 +221,18 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserSilver::
frontier_getsymbols
goto_if_ne VAR_RESULT, 0, BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserPostSilverBattle, MSGBOX_DEFAULT
- applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceUp
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceUp
+ applymovement LOCALID_PALACE_BATTLE_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_LetsSeeFrontierPass, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_SYMBOL
message BattleFrontier_BattlePalaceBattleRoom_Text_ReceivedSpiritsSymbol
waitmessage
waitfanfare
frontier_givesymbol
- applymovement LOCALID_OPPONENT, Common_Movement_WalkInPlaceLeft
+ applymovement LOCALID_PALACE_BATTLE_OPPONENT, Common_Movement_WalkInPlaceLeft
waitmovement 0
- applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
- applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PALACE_BATTLE_ATTENDANT, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserAwaitNextTime, MSGBOX_DEFAULT
goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon
@@ -258,18 +253,18 @@ BattleFrontier_BattlePalaceBattleRoom_EventScript_DefeatedSpenserGold::
frontier_getsymbols
goto_if_eq VAR_RESULT, 2, BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserYourTeamIsAdmirable, MSGBOX_DEFAULT
- applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceUp
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceUp
+ applymovement LOCALID_PALACE_BATTLE_ATTENDANT, BattleFrontier_BattlePalaceBattleRoom_Movement_FaceDown
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_HurryWithFrontierPass, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_SYMBOL
message BattleFrontier_BattlePalaceBattleRoom_Text_SpiritsSymbolTookGoldenShine
waitmessage
waitfanfare
frontier_givesymbol
- applymovement LOCALID_OPPONENT, Common_Movement_WalkInPlaceLeft
+ applymovement LOCALID_PALACE_BATTLE_OPPONENT, Common_Movement_WalkInPlaceLeft
waitmovement 0
- applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
- applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PALACE_BATTLE_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PALACE_BATTLE_ATTENDANT, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_SpenserComeSeeMeAgain, MSGBOX_DEFAULT
goto BattleFrontier_BattlePalaceBattleRoom_EventScript_WarpToLobbyWon
@@ -293,13 +288,13 @@ BattleFrontier_BattlePalaceBattleRoom_OnWarp:
end_map_script_table
BattleFrontier_BattlePalaceBattleRoom_EventScript_SetUpRoomObjects::
- hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM
+ hideobjectat LOCALID_PALACE_BATTLE_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM
call BattleFrontier_BattlePalaceBattleRoom_EventScript_SetPlayerGfx
setvar VAR_TEMP_1, 1
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible
- removeobject LOCALID_OPPONENT
- applymovement LOCALID_DUSCLOPS, BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible
- applymovement LOCALID_AZURILL, BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible
+ removeobject LOCALID_PALACE_BATTLE_OPPONENT
+ applymovement LOCALID_PALACE_DUSCLOPS, BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible
+ applymovement LOCALID_PALACE_AZURILL, BattleFrontier_BattlePalaceBattleRoom_Movement_SetInvisible
end
BattleFrontier_BattlePalaceBattleRoom_EventScript_ReadyFor2ndOpponent::
diff --git a/data/maps/BattleFrontier_BattlePalaceCorridor/map.json b/data/maps/BattleFrontier_BattlePalaceCorridor/map.json
index e96f6d9e83..477ecc7c8d 100644
--- a/data/maps/BattleFrontier_BattlePalaceCorridor/map.json
+++ b/data/maps/BattleFrontier_BattlePalaceCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PALACE_CORRIDOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 8,
"y": 12,
diff --git a/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc b/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc
index caecb6eccd..4bd36d24ac 100644
--- a/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePalaceCorridor/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattlePalaceCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePalaceCorridor_OnFrame
end_map_scripts
@@ -10,8 +8,8 @@ BattleFrontier_BattlePalaceCorridor_OnFrame:
BattleFrontier_BattlePalaceCorridor_EventScript_WalkThroughCorridor::
delay 16
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_EnterCorridor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_EnterCorridor
+ applymovement LOCALID_PALACE_CORRIDOR_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_EnterCorridor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_EnterCorridor
waitmovement 0
lockall
palace_getcomment
@@ -23,26 +21,26 @@ BattleFrontier_BattlePalaceCorridor_EventScript_WalkThroughCorridor::
closemessage
frontier_get FRONTIER_DATA_LVL_MODE
goto_if_eq VAR_RESULT, FRONTIER_LVL_OPEN, BattleFrontier_BattlePalaceCorridor_EventScript_WalkToOpenBattleRoom
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkTo50BattleRoom
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkTo50BattleRoom
+ applymovement LOCALID_PALACE_CORRIDOR_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkTo50BattleRoom
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkTo50BattleRoom
waitmovement 0
opendoor 6, 3
waitdooranim
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantEnterBattleRoom
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerEnterBattleRoom
+ applymovement LOCALID_PALACE_CORRIDOR_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantEnterBattleRoom
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerEnterBattleRoom
waitmovement 0
closedoor 6, 3
waitdooranim
goto BattleFrontier_BattlePalaceCorridor_EventScript_WarpToBattleRoom
BattleFrontier_BattlePalaceCorridor_EventScript_WalkToOpenBattleRoom::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkToOpenBattleRoom
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkToOpenBattleRoom
+ applymovement LOCALID_PALACE_CORRIDOR_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantWalkToOpenBattleRoom
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerWalkToOpenBattleRoom
waitmovement 0
opendoor 10, 3
waitdooranim
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantEnterBattleRoom
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerEnterBattleRoom
+ applymovement LOCALID_PALACE_CORRIDOR_ATTENDANT, BattleFrontier_BattlePalaceCorridor_Movement_AttendantEnterBattleRoom
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceCorridor_Movement_PlayerEnterBattleRoom
waitmovement 0
closedoor 10, 3
waitdooranim
diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/map.json b/data/maps/BattleFrontier_BattlePalaceLobby/map.json
index 7c8ee0cd13..90ac895fa4 100644
--- a/data/maps/BattleFrontier_BattlePalaceLobby/map.json
+++ b/data/maps/BattleFrontier_BattlePalaceLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PALACE_ATTENDANT_SINGLES",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 5,
"y": 6,
@@ -80,6 +81,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PALACE_ATTENDANT_DOUBLES",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 19,
"y": 6,
diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc
index 761153e767..24c0c19c41 100644
--- a/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePalaceLobby/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_ATTENDANT_SINGLES, 1
-.set LOCALID_ATTENDANT_DOUBLES, 6
-
BattleFrontier_BattlePalaceLobby_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePalaceLobby_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePalaceLobby_OnWarp
@@ -12,7 +9,7 @@ BattleFrontier_BattlePalaceLobby_OnWarp:
BattleFrontier_BattlePalaceLobby_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePalaceLobby_OnFrame:
@@ -241,13 +238,13 @@ BattleFrontier_BattlePalaceLobby_EventScript_WalkToDoor::
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattlePalaceLobby_EventScript_TalkedToSinglesAttendant
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattlePalaceLobby_EventScript_TalkedToDoublesAttendant
applymovement VAR_LAST_TALKED, BattleFrontier_BattlePalaceLobby_Movement_WalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceLobby_Movement_WalkToDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceLobby_Movement_WalkToDoor
waitmovement 0
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattlePalaceLobby_EventScript_OpenSinglesHallDoor
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattlePalaceLobby_EventScript_OpenDoublesHallDoor
waitdooranim
applymovement VAR_LAST_TALKED, BattleFrontier_BattlePalaceLobby_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePalaceLobby_Movement_PlayerEnterDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePalaceLobby_Movement_PlayerEnterDoor
waitmovement 0
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_SINGLES, BattleFrontier_BattlePalaceLobby_EventScript_CloseSinglesHallDoor
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_DOUBLES, BattleFrontier_BattlePalaceLobby_EventScript_CloseDoublesHallDoor
@@ -255,11 +252,11 @@ BattleFrontier_BattlePalaceLobby_EventScript_WalkToDoor::
return
BattleFrontier_BattlePalaceLobby_EventScript_TalkedToSinglesAttendant::
- setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_SINGLES
+ setvar VAR_LAST_TALKED, LOCALID_PALACE_ATTENDANT_SINGLES
return
BattleFrontier_BattlePalaceLobby_EventScript_TalkedToDoublesAttendant::
- setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_DOUBLES
+ setvar VAR_LAST_TALKED, LOCALID_PALACE_ATTENDANT_DOUBLES
return
BattleFrontier_BattlePalaceLobby_EventScript_OpenSinglesHallDoor::
diff --git a/data/maps/BattleFrontier_BattlePikeCorridor/map.json b/data/maps/BattleFrontier_BattlePikeCorridor/map.json
index 1a5faadeab..c5f407e8a9 100644
--- a/data/maps/BattleFrontier_BattlePikeCorridor/map.json
+++ b/data/maps/BattleFrontier_BattlePikeCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PIKE_CORRIDOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_LINK_RECEPTIONIST",
"x": 6,
"y": 6,
diff --git a/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc b/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc
index 1b23238503..32c5f7c22b 100644
--- a/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePikeCorridor/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattlePikeCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePikeCorridor_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeCorridor_OnWarp
@@ -14,14 +12,14 @@ BattleFrontier_BattlePikeCorridor_EventScript_EnterCorridor::
frontier_set FRONTIER_DATA_BATTLE_NUM, 1
pike_cleartrainerids
pike_nohealing TRUE
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeCorridor_Movement_PlayerEnterCorridor
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePikeCorridor_Movement_AttendantEnterCorridor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeCorridor_Movement_PlayerEnterCorridor
+ applymovement LOCALID_PIKE_CORRIDOR_ATTENDANT, BattleFrontier_BattlePikeCorridor_Movement_AttendantEnterCorridor
waitmovement 0
lockall
msgbox BattleFrontier_BattlePikeCorridor_Text_YourChallengeHasBegun, MSGBOX_DEFAULT
closemessage
releaseall
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeCorridor_Movement_PlayerExitCorridor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeCorridor_Movement_PlayerExitCorridor
waitmovement 0
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 99
call BattleFrontier_BattlePike_EventScript_CloseCurtain
@@ -35,7 +33,7 @@ BattleFrontier_BattlePikeCorridor_OnWarp:
BattleFrontier_BattlePikeCorridor_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePikeCorridor_Movement_PlayerEnterCorridor:
diff --git a/data/maps/BattleFrontier_BattlePikeLobby/map.json b/data/maps/BattleFrontier_BattlePikeLobby/map.json
index 0faca2e94f..038a3c59bb 100644
--- a/data/maps/BattleFrontier_BattlePikeLobby/map.json
+++ b/data/maps/BattleFrontier_BattlePikeLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PIKE_LOBBY_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_LINK_RECEPTIONIST",
"x": 5,
"y": 5,
diff --git a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc
index cb210d93cf..28e5a5aee5 100644
--- a/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePikeLobby/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattlePikeLobby_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePikeLobby_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeLobby_OnWarp
@@ -18,7 +16,7 @@ BattleFrontier_BattlePikeLobby_OnWarp:
BattleFrontier_BattlePikeLobby_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePikeLobby_EventScript_GetChallengeStatus::
@@ -198,8 +196,8 @@ BattleFrontier_BattlePikeLobby_EventScript_ShowResults::
end
BattleFrontier_BattlePikeLobby_EventScript_WalkToCorridor::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePikeLobby_Movement_AttendantWalkToCorridor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeLobby_Movement_PlayerWalkToCorridor
+ applymovement LOCALID_PIKE_LOBBY_ATTENDANT, BattleFrontier_BattlePikeLobby_Movement_AttendantWalkToCorridor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeLobby_Movement_PlayerWalkToCorridor
waitmovement 0
return
diff --git a/data/maps/BattleFrontier_BattlePikeRoomFinal/map.json b/data/maps/BattleFrontier_BattlePikeRoomFinal/map.json
index 5a53ad19c9..e1b1008a03 100644
--- a/data/maps/BattleFrontier_BattlePikeRoomFinal/map.json
+++ b/data/maps/BattleFrontier_BattlePikeRoomFinal/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PIKE_FINAL_ROOM_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_LINK_RECEPTIONIST",
"x": 2,
"y": 4,
diff --git a/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc
index 8022b79e6e..742d62efce 100644
--- a/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePikeRoomFinal/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattlePikeRoomFinal_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePikeRoomFinal_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeRoomFinal_OnWarp
@@ -11,7 +9,7 @@ BattleFrontier_BattlePikeRoomFinal_OnFrame:
BattleFrontier_BattlePikeRoomFinal_EventScript_EnterRoom::
delay 16
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePikeRoomFinal_Movement_AttendantApproachPlayer
+ applymovement LOCALID_PIKE_FINAL_ROOM_ATTENDANT, BattleFrontier_BattlePikeRoomFinal_Movement_AttendantApproachPlayer
waitmovement 0
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
lockall
@@ -33,7 +31,7 @@ BattleFrontier_BattlePikeRoomFinal_OnWarp:
BattleFrontier_BattlePikeRoomFinal_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_4, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePikeRoomFinal_Text_CongratsThisWayPlease:
diff --git a/data/maps/BattleFrontier_BattlePikeRoomNormal/map.json b/data/maps/BattleFrontier_BattlePikeRoomNormal/map.json
index 82414ac6a3..a75c5de15f 100644
--- a/data/maps/BattleFrontier_BattlePikeRoomNormal/map.json
+++ b/data/maps/BattleFrontier_BattlePikeRoomNormal/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PIKE_ROOM_NPC_1",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 4,
"y": 4,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PIKE_ROOM_NPC_2",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 3,
"y": 4,
diff --git a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc
index fe3a53f2ab..5e36ec8d8d 100644
--- a/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePikeRoomNormal/scripts.inc
@@ -1,8 +1,3 @@
-@ Objects in this room are set dynamically with OBJ_EVENT_GFX_VAR_0 and OBJ_EVENT_GFX_VAR_1
-@ Note: LOCALIDs shared with data/scripts/battle_pike.inc
-.equ LOCALID_OBJ_0, 1
-.equ LOCALID_OBJ_1, 2
-
BattleFrontier_BattlePikeRoomNormal_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePikeRoom_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePikeRoom_OnTransition
@@ -29,7 +24,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterRoom::
BattleFrontier_BattlePikeRoomNormal_EventScript_EnterSingleBattleRoom::
lockall
delay 16
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer
waitmovement 0
pike_gettrainerintro 0
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -49,7 +44,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_WarpToLobbyLost::
end
BattleFrontier_BattlePikeRoomNormal_EventScript_WonSingleBattle::
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit
waitmovement 0
end
@@ -59,7 +54,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterHardBattleRoom::
msgbox BattleFrontier_BattlePikeRoomNormal_Text_BattleSomewhatToughTrainer, MSGBOX_DEFAULT
waitmessage
closemessage
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer
waitmovement 0
pike_gettrainerintro 0
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -76,9 +71,9 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterHardBattleRoom::
end
BattleFrontier_BattlePikeRoomNormal_EventScript_WonHardBattle::
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit
waitmovement 0
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCApproachPlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCApproachPlayer
waitmovement 0
lock
faceplayer
@@ -89,14 +84,14 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_WonHardBattle::
msgbox BattleFrontier_BattlePikeRoomNormal_Text_EnjoyRestOfChallenge2, MSGBOX_DEFAULT
closemessage
release
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit
waitmovement 0
end
BattleFrontier_BattlePikeRoomNormal_EventScript_EnterBrainRoom::
delay 22
lockall
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_PreQueenHealNPCApproachPlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_PreQueenHealNPCApproachPlayer
waitmovement 0
pike_prequeenheal
switch VAR_RESULT
@@ -108,8 +103,8 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter::
msgbox BattleFrontier_BattlePikeRoomNormal_Text_ShallFetchOurMaster, MSGBOX_DEFAULT
closemessage
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, BattleFrontier_BattlePikeRoomNormal_Movement_CameraPanUp
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCExitForLucy
+ applymovement LOCALID_CAMERA, BattleFrontier_BattlePikeRoomNormal_Movement_CameraPanUp
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCExitForLucy
waitmovement 0
playse SE_PIKE_CURTAIN_CLOSE
call BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesLittleClosed
@@ -123,13 +118,13 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_LucyEnter::
playse SE_PIKE_CURTAIN_OPEN
delay 65
call BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesMostlyClosed
- showobjectat LOCALID_OBJ_0, MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL
+ showobjectat LOCALID_PIKE_ROOM_NPC_1, MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL
delay 4
call BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesLittleClosed
delay 4
call BattleFrontier_BattlePikeRoomNormal_EventScript_SetCurtainTilesOpen
waitse
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_LucyEnter
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_LucyEnter
waitmovement 0
pike_getbrainstatus
switch VAR_RESULT
@@ -187,9 +182,9 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucyGold::
end
BattleFrontier_BattlePikeRoomNormal_EventScript_DefeatedLucy::
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_LucyMoveAside
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_LucyMoveAside
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerWalkUp2
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerWalkUp2
waitmovement 0
pike_get PIKE_DATA_WIN_STREAK
addvar VAR_RESULT, 1
@@ -220,7 +215,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_PreQueenHealTwoMons::
BattleFrontier_BattlePikeRoomNormal_EventScript_EnterFullHealRoom::
lockall
delay 16
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_ApproachPlayer
waitmovement 0
message BattleFrontier_BattlePikeRoomNormal_Text_WillRestoreToFullHealth
waitmessage
@@ -229,7 +224,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterFullHealRoom::
special HealPlayerParty
msgbox BattleFrontier_BattlePikeRoomNormal_Text_EnjoyRestOfChallenge, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_NPCExit
waitmovement 0
releaseall
end
@@ -237,22 +232,22 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterFullHealRoom::
BattleFrontier_BattlePikeRoomNormal_EventScript_EnterDoubleBattleRoom::
lockall
delay 16
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1WalkRight
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2WalkLeft
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1WalkRight
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2WalkLeft
waitmovement 0
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_DoubleTrainersWalkDown
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_DoubleTrainersWalkDown
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_DoubleTrainersWalkDown
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_DoubleTrainersWalkDown
waitmovement 0
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1FacePlayer
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2FacePlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1FacePlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2FacePlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer1
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer1
waitmovement 0
pike_gettrainerintro 0
msgbox gStringVar4, MSGBOX_DEFAULT
closemessage
delay 16
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer2
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer2
waitmovement 0
pike_gettrainerintro 1
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -267,20 +262,20 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_EnterDoubleBattleRoom::
end
BattleFrontier_BattlePikeRoomNormal_EventScript_WonDoubleBattle::
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer2
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceTrainer2
waitmovement 0
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1Exit
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer1Exit
waitmovement 0
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2Exit
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_Trainer2Exit
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceUp
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerFaceUp
waitmovement 0
end
BattleFrontier_BattlePikeRoomNormal_EventScript_EnterStatusRoom::
lockall
message BattleFrontier_BattlePikeRoomNormal_Text_WatchOut
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonApproachPlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_MonApproachPlayer
waitmovement 0
pike_getstatusmon
copyvar VAR_0x8004, VAR_RESULT
@@ -304,9 +299,9 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack::
call_if_eq VAR_RESULT, PIKE_STATUS_SLEEP, BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaUsedHypnosis
pike_flashscreen
waitstate
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCApproachMon
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_NPCApproachMon
waitmovement 0
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceNPC
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceNPC
waitmovement 0
waitse
playmoncry SPECIES_KIRLIA, CRY_MODE_NORMAL
@@ -316,8 +311,8 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_KirliaAttack::
playmoncry SPECIES_KIRLIA, CRY_MODE_NORMAL
waitmoncry
closemessage
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonMoveAside
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_StatusNPCApproachPlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_MonMoveAside
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_StatusNPCApproachPlayer
waitmovement 0
msgbox BattleFrontier_BattlePikeRoomNormal_Text_ApologizeForKirlia, MSGBOX_DEFAULT
return
@@ -333,9 +328,9 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack::
call_if_eq VAR_RESULT, PIKE_STATUS_BURN, BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedWillOWisp
pike_flashscreen
waitstate
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_NPCApproachMon
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_NPCApproachMon
waitmovement 0
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceNPC
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceNPC
waitmovement 0
waitse
playmoncry SPECIES_DUSCLOPS, CRY_MODE_NORMAL
@@ -345,8 +340,8 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsAttack::
playmoncry SPECIES_DUSCLOPS, CRY_MODE_NORMAL
waitmoncry
closemessage
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonMoveAside
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_StatusNPCApproachPlayer
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_MonMoveAside
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_StatusNPCApproachPlayer
waitmovement 0
msgbox BattleFrontier_BattlePikeRoomNormal_Text_ApologizeForDusclops, MSGBOX_DEFAULT
return
@@ -383,7 +378,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_DusclopsUsedWillOWisp::
BattleFrontier_BattlePikeRoomNormal_EventScript_DoPikeQueenBattle::
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerWalkUp2
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoomNormal_Movement_PlayerWalkUp2
waitmovement 0
setvar VAR_0x8004, SPECIAL_BATTLE_PIKE_SINGLE
setvar VAR_0x8005, 0
@@ -562,7 +557,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_HealNPC::
msgbox BattleFrontier_BattlePikeRoomNormal_Text_BestOfLuckFarewell, MSGBOX_DEFAULT
closemessage
release
- applymovement LOCALID_OBJ_0, BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCExit
+ applymovement LOCALID_PIKE_ROOM_NPC_1, BattleFrontier_BattlePikeRoomNormal_Movement_HealNPCExit
waitmovement 0
end
@@ -587,7 +582,7 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_StatusMon::
msgbox BattleFrontier_BattlePikeRoomNormal_Text_Silence, MSGBOX_DEFAULT
closemessage
release
- applymovement LOCALID_OBJ_1, BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceRight
+ applymovement LOCALID_PIKE_ROOM_NPC_2, BattleFrontier_BattlePikeRoomNormal_Movement_MonFaceRight
waitmovement 0
end
diff --git a/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc b/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc
index e3a035e539..016f0cded2 100644
--- a/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePikeRoomWildMons/scripts.inc
@@ -26,7 +26,7 @@ BattleFrontier_BattlePikeRoomWildMons_OnWarp:
BattleFrontier_BattlePikeRoomWildMons_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_4, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePikeRoomWildMons_OnResume:
diff --git a/data/maps/BattleFrontier_BattlePikeThreePathRoom/map.json b/data/maps/BattleFrontier_BattlePikeThreePathRoom/map.json
index 536e02a898..9f2000ef1e 100644
--- a/data/maps/BattleFrontier_BattlePikeThreePathRoom/map.json
+++ b/data/maps/BattleFrontier_BattlePikeThreePathRoom/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PIKE_HINT_GIVER",
"graphics_id": "OBJ_EVENT_GFX_LINK_RECEPTIONIST",
"x": 8,
"y": 5,
diff --git a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc
index e545b96c6e..175f45570d 100644
--- a/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePikeThreePathRoom/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_HINT_GIVER, 2
-
BattleFrontier_BattlePikeThreePathRoom_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePikeRoom_OnResume
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePikeThreePathRoom_OnFrame
@@ -20,7 +18,7 @@ BattleFrontier_BattlePikeThreePathRoom_OnWarp:
BattleFrontier_BattlePikeThreePathRoom_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_4, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePikeThreePathRoom_EventScript_GetChallengeStatus::
@@ -160,12 +158,12 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_SetPikeQueenHint::
end
BattleFrontier_BattlePikeThreePathRoom_EventScript_GivePikeQueenHint::
- applymovement LOCALID_HINT_GIVER, BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverApproachPlayer
+ applymovement LOCALID_PIKE_HINT_GIVER, BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverApproachPlayer
waitmovement 0
lockall
msgbox BattleFrontier_BattlePikeThreePathRoom_Text_TerrifyingEvent, MSGBOX_DEFAULT
releaseall
- applymovement LOCALID_HINT_GIVER, BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverReturnToPos
+ applymovement LOCALID_PIKE_HINT_GIVER, BattleFrontier_BattlePikeThreePathRoom_Movement_HintGiverReturnToPos
waitmovement 0
setvar VAR_TEMP_5, 255
end
diff --git a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc
index 3aa5559f82..080b4f8f7e 100644
--- a/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePyramidFloor/scripts.inc
@@ -105,7 +105,7 @@ BattlePyramid_WarpToTop::
@ TRAINER_PHILLIP is used as a placeholder
BattlePyramid_TrainerBattle::
- trainerbattle TRAINER_BATTLE_PYRAMID, TRAINER_PHILLIP, 0, BattleFacility_TrainerBattle_PlaceholderText, BattleFacility_TrainerBattle_PlaceholderText
+ trainerbattle TRAINER_BATTLE_PYRAMID, TRAINER_PHILLIP, LOCALID_NONE, BattleFacility_TrainerBattle_PlaceholderText, BattleFacility_TrainerBattle_PlaceholderText
pyramid_showhint
waitmessage
waitbuttonpress
diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/map.json b/data/maps/BattleFrontier_BattlePyramidLobby/map.json
index 4652af2747..4913cdb953 100644
--- a/data/maps/BattleFrontier_BattlePyramidLobby/map.json
+++ b/data/maps/BattleFrontier_BattlePyramidLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PYRAMID_LOBBY_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_HIKER",
"x": 7,
"y": 12,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PYRAMID_LOBBY_HINT_GIVER",
"graphics_id": "OBJ_EVENT_GFX_HEX_MANIAC",
"x": 14,
"y": 13,
diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc
index a3d0ceb9e3..5c49dae76a 100644
--- a/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePyramidLobby/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-.set LOCALID_HINT_GIVER, 2
-
BattleFrontier_BattlePyramidLobby_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePyramidLobby_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleDomeLobby_OnWarp
@@ -13,7 +10,7 @@ BattleFrontier_BattlePyramidLobby_OnWarp:
BattleFrontier_BattlePyramidLobby_EventScript_TurnPlayerNorth:
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePyramidLobby_OnFrame:
@@ -204,7 +201,7 @@ BattleFrontier_BattlePyramidLobby_EventScript_EndCancelChallenge::
BattleFrontier_BattlePyramidLobby_EventScript_HintGiver::
lockall
- applymovement LOCALID_HINT_GIVER, Common_Movement_FacePlayer
+ applymovement LOCALID_PYRAMID_LOBBY_HINT_GIVER, Common_Movement_FacePlayer
waitmovement 0
msgbox BattleFrontier_BattlePyramidLobby_Text_TellYouWhatMisfortunesAwait, MSGBOX_DEFAULT
call BattleFrontier_BattlePyramidLobby_EventScript_GiveHint
@@ -366,8 +363,8 @@ BattleFrontier_BattlePyramidLobby_EventScript_ShowResults::
end
BattleFrontier_BattlePyramidLobby_EventScript_WalkToPanelAndReceiveBag::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidLobby_Movement_AttendantWalkToPanel
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePyramidLobby_Movement_PlayerWalkToPanel
+ applymovement LOCALID_PYRAMID_LOBBY_ATTENDANT, BattleFrontier_BattlePyramidLobby_Movement_AttendantWalkToPanel
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePyramidLobby_Movement_PlayerWalkToPanel
waitmovement 0
msgbox BattleFrontier_BattlePyramidLobby_Text_WeWillHoldBagForSafekeeping, MSGBOX_DEFAULT
pyramid_get PYRAMID_DATA_WIN_STREAK
@@ -384,9 +381,9 @@ BattleFrontier_BattlePyramidLobby_EventScript_ReceiveBattleBag::
waitse
msgbox BattleFrontier_BattlePyramidLobby_Text_StepOnFloorPanel, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidLobby_Movement_AttendantMoveAside
+ applymovement LOCALID_PYRAMID_LOBBY_ATTENDANT, BattleFrontier_BattlePyramidLobby_Movement_AttendantMoveAside
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePyramidLobby_Movement_PlayerStepOnPanel
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePyramidLobby_Movement_PlayerStepOnPanel
waitmovement 0
return
diff --git a/data/maps/BattleFrontier_BattlePyramidTop/map.json b/data/maps/BattleFrontier_BattlePyramidTop/map.json
index 4299f31834..570fd27c8d 100644
--- a/data/maps/BattleFrontier_BattlePyramidTop/map.json
+++ b/data/maps/BattleFrontier_BattlePyramidTop/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PYRAMID_TOP_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_HIKER",
"x": 17,
"y": 11,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BRANDON",
"graphics_id": "OBJ_EVENT_GFX_BRANDON",
"x": 17,
"y": 7,
diff --git a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc
index d980f4826d..7f026f628d 100644
--- a/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc
+++ b/data/maps/BattleFrontier_BattlePyramidTop/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-.set LOCALID_BRANDON, 2
-
BattleFrontier_BattlePyramidTop_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePyramidTop_OnResume
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePyramidTop_OnFrame
@@ -19,7 +16,7 @@ BattleFrontier_BattlePyramidTop_OnWarp:
BattleFrontier_BattlePyramidTop_EventScript_SetUpObjects::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
goto_if_ne VAR_TEMP_C, 0, BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects
setobjectxyperm LOCALID_BRANDON, 0, 0
BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects::
@@ -73,11 +70,11 @@ BattleFrontier_BattlePyramidTop_EventScript_Attendant::
goto_if_ne VAR_TEMP_C, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattlePyramidTop_EventScript_BrandonHereMoveAside
msgbox BattleFrontier_BattlePyramidTop_Text_ReachedSummitUpYouGo, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside
+ applymovement LOCALID_PYRAMID_TOP_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop
waitmovement 0
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantBlockPath
+ applymovement LOCALID_PYRAMID_TOP_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantBlockPath
waitmovement 0
message BattleFrontier_BattlePyramidTop_Text_PlayerConqueredPyramid
waitmessage
@@ -97,7 +94,7 @@ BattleFrontier_BattlePyramidTop_EventScript_StepForwardWhenReady::
BattleFrontier_BattlePyramidTop_EventScript_BrandonHereMoveAside::
msgbox BattleFrontier_BattlePyramidTop_Text_ChiefBeatYouHere, MSGBOX_DEFAULT
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside
+ applymovement LOCALID_PYRAMID_TOP_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside
setvar VAR_TEMP_D, 1
closemessage
end
@@ -111,7 +108,7 @@ BattleFrontier_BattlePyramidTop_EventScript_BattleBrandon::
frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH
goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, BattleFrontier_BattlePyramidTop_Movement_CameraPanUp
+ applymovement LOCALID_CAMERA, BattleFrontier_BattlePyramidTop_Movement_CameraPanUp
waitmovement 0
msgbox BattleFrontier_BattlePyramidTop_Text_ExplorationsAreGrandestAdventure, MSGBOX_DEFAULT
closemessage
@@ -148,7 +145,7 @@ BattleFrontier_BattlePyramidTop_EventScript_BrandonIntroGold::
frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH
goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, BattleFrontier_BattlePyramidTop_Movement_CameraPanUp
+ applymovement LOCALID_CAMERA, BattleFrontier_BattlePyramidTop_Movement_CameraPanUp
waitmovement 0
msgbox BattleFrontier_BattlePyramidTop_Text_BrandonYouveReturned, MSGBOX_DEFAULT
closemessage
diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/map.json b/data/maps/BattleFrontier_BattleTowerBattleRoom/map.json
index 1018ebb6d9..5798ab5667 100644
--- a/data/maps/BattleFrontier_BattleTowerBattleRoom/map.json
+++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TOWER_BATTLE_OPPONENT",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 5,
"y": 1,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_BATTLE_TOWER_OPPONENT"
},
{
+ "local_id": "LOCALID_TOWER_BATTLE_ATTENDANT_1",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 1,
"y": 7,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_BATTLE_ATTENDANT_2",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 4,
"y": 8,
diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
index 22acf7aaae..4c76a68aaa 100644
--- a/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_OPPONENT, 1
-.set LOCALID_ATTENDANT_1, 2
-.set LOCALID_ATTENDANT_2, 3
-
BattleFrontier_BattleTowerBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerBattleRoom_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleTowerBattleRoom_OnWarp
@@ -13,7 +9,7 @@ BattleFrontier_BattleTowerBattleRoom_OnWarp:
BattleFrontier_BattleTowerBattleRoom_EventScript_SetUpObjects::
setvar VAR_TEMP_1, 1
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SetInvisible
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SetInvisible
end
BattleFrontier_BattleTowerBattleRoom_OnFrame:
@@ -22,13 +18,13 @@ BattleFrontier_BattleTowerBattleRoom_OnFrame:
BattleFrontier_BattleTowerBattleRoom_EventScript_EnterRoom::
setvar VAR_TEMP_0, 1
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerEnter
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerEnter
waitmovement 0
frontier_get FRONTIER_DATA_BATTLE_NUM
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantApproachPlayer
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceAttendant
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceAttendant
waitmovement 0
setvar VAR_TEMP_2, 1
frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE
@@ -36,8 +32,8 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_EnterRoom::
BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter::
tower_setopponent
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleTowerBattleRoom_Movement_OpponentEnter
+ addobject LOCALID_TOWER_BATTLE_OPPONENT
+ applymovement LOCALID_TOWER_BATTLE_OPPONENT, BattleFrontier_BattleTowerBattleRoom_Movement_OpponentEnter
waitmovement 0
tower_getopponentintro 0
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -57,14 +53,14 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_DefeatedOpponent::
tower_setbattlewon
switch VAR_RESULT
case 7, BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleTowerBattleRoom_Movement_OpponentExit
+ applymovement LOCALID_TOWER_BATTLE_OPPONENT, BattleFrontier_BattleTowerBattleRoom_Movement_OpponentExit
waitmovement 0
- removeobject LOCALID_OPPONENT
+ removeobject LOCALID_TOWER_BATTLE_OPPONENT
frontier_getbrainstatus
call_if_ne VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleTowerBattleRoom_EventScript_SecondAttendantEnter
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantApproachPlayer
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceAttendant
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceAttendant
waitmovement 0
msgbox BattleFrontier_BattleTowerBattleRoom_Text_RestoreMonsToFullHealth, MSGBOX_DEFAULT
playfanfare MUS_HEAL
@@ -125,9 +121,9 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskRetireChallenge::
BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge::
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceBattle
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceBattle
waitmovement 0
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantReturnToPos
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantReturnToPos
waitmovement 0
goto BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter
@@ -193,19 +189,19 @@ BattleFrontier_EventScript_IncrementWinStreak::
return
BattleFrontier_BattleTowerBattleRoom_EventScript_SecondAttendantEnter::
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantEnter
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantEnter
waitmovement 0
- applymovement LOCALID_ATTENDANT_2, Common_Movement_WalkInPlaceLeft
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_2, Common_Movement_WalkInPlaceLeft
waitmovement 0
playse SE_PIN
- applymovement LOCALID_ATTENDANT_1, Common_Movement_ExclamationMark
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_1, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_ATTENDANT_1, Common_Movement_Delay48
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_1, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantDelay
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantFaceSecondAttendant
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantDelay
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantFaceSecondAttendant
waitmovement 0
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantExit
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_2, BattleFrontier_BattleTowerBattleRoom_Movement_SecondAttendantExit
waitmovement 0
return
@@ -237,12 +233,12 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_AskReadyForMaidenNoRecord::
BattleFrontier_BattleTowerBattleRoom_EventScript_BattleAnabel::
call BattleFrontier_EventScript_SetBrainObjectGfx
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceBattle
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerBattleRoom_Movement_PlayerFaceBattle
waitmovement 0
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantReturnToPos
+ applymovement LOCALID_TOWER_BATTLE_ATTENDANT_1, BattleFrontier_BattleTowerBattleRoom_Movement_AttendantReturnToPos
waitmovement 0
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, BattleFrontier_BattleTowerBattleRoom_Movement_AnabelEnter
+ addobject LOCALID_TOWER_BATTLE_OPPONENT
+ applymovement LOCALID_TOWER_BATTLE_OPPONENT, BattleFrontier_BattleTowerBattleRoom_Movement_AnabelEnter
waitmovement 0
switch VAR_TEMP_F
case FRONTIER_BRAIN_GOLD, BattleFrontier_BattleTowerBattleRoom_EventScript_AnabelGoldIntro
diff --git a/data/maps/BattleFrontier_BattleTowerCorridor/map.json b/data/maps/BattleFrontier_BattleTowerCorridor/map.json
index 10d5ca7f71..e521df1ca3 100644
--- a/data/maps/BattleFrontier_BattleTowerCorridor/map.json
+++ b/data/maps/BattleFrontier_BattleTowerCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TOWER_CORRIDOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 9,
"y": 2,
diff --git a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc
index fcc7cb087b..37c5b1e9d7 100644
--- a/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerCorridor/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattleTowerCorridor_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, BattleFrontier_BattleTowerCorridor_OnLoad
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerCorridor_OnFrame
@@ -23,14 +21,14 @@ BattleFrontier_BattleTowerCorridor_OnFrame:
BattleFrontier_BattleTowerCorridor_EventScript_EnterCorridor::
setvar VAR_TEMP_0, 1
goto_if_eq VAR_0x8006, 1, BattleFrontier_BattleTowerCorridor_EventScript_WalkToFarDoor
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToDoor
+ applymovement LOCALID_TOWER_CORRIDOR_ATTENDANT, BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToDoor
waitmovement 0
goto BattleFrontier_BattleTowerCorridor_EventScript_WarpToBattleRoom
BattleFrontier_BattleTowerCorridor_EventScript_WalkToFarDoor::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToFarDoor
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToFarDoor
+ applymovement LOCALID_TOWER_CORRIDOR_ATTENDANT, BattleFrontier_BattleTowerCorridor_Movement_AttendantWalkToFarDoor
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerCorridor_Movement_PlayerWalkToFarDoor
waitmovement 0
BattleFrontier_BattleTowerCorridor_EventScript_WarpToBattleRoom::
diff --git a/data/maps/BattleFrontier_BattleTowerElevator/map.json b/data/maps/BattleFrontier_BattleTowerElevator/map.json
index f74dce2336..d925ca2fc3 100644
--- a/data/maps/BattleFrontier_BattleTowerElevator/map.json
+++ b/data/maps/BattleFrontier_BattleTowerElevator/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TOWER_ELEVATOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 1,
"y": 5,
diff --git a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc
index 59deb6b088..337c9fab74 100644
--- a/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerElevator/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattleTowerElevator_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerElevator_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleTowerElevator_OnWarp
@@ -11,16 +9,16 @@ BattleFrontier_BattleTowerElevator_OnFrame:
BattleFrontier_BattleTowerElevator_EventScript_EnterElevator::
setvar VAR_TEMP_0, 1
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerElevator_Movement_AttendantEnter
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerElevator_Movement_PlayerEnter
+ applymovement LOCALID_TOWER_ELEVATOR_ATTENDANT, BattleFrontier_BattleTowerElevator_Movement_AttendantEnter
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerElevator_Movement_PlayerEnter
waitmovement 0
special BufferBattleTowerElevatorFloors
waitse
special MoveElevator
waitstate
delay 48
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerElevator_Movement_AttendantExit
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerElevator_Movement_PlayerExit
+ applymovement LOCALID_TOWER_ELEVATOR_ATTENDANT, BattleFrontier_BattleTowerElevator_Movement_AttendantExit
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerElevator_Movement_PlayerExit
waitmovement 0
call BattleFrontier_BattleTowerElevator_EventScript_WarpToNextRoom
end
@@ -83,6 +81,6 @@ BattleFrontier_BattleTowerElevator_OnWarp:
BattleFrontier_BattleTowerElevator_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
diff --git a/data/maps/BattleFrontier_BattleTowerLobby/map.json b/data/maps/BattleFrontier_BattleTowerLobby/map.json
index d672f07189..b5c95b22bf 100644
--- a/data/maps/BattleFrontier_BattleTowerLobby/map.json
+++ b/data/maps/BattleFrontier_BattleTowerLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TOWER_ATTENDANT_SINGLES",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 6,
"y": 5,
@@ -67,6 +68,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_LOBBY_REPORTER",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 11,
"y": 9,
@@ -80,6 +82,7 @@
"flag": "FLAG_HIDE_BATTLE_TOWER_REPORTER"
},
{
+ "local_id": "LOCALID_APPRENTICE",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 1,
"y": 5,
@@ -93,6 +96,7 @@
"flag": "FLAG_HIDE_APPRENTICE"
},
{
+ "local_id": "LOCALID_TOWER_ATTENDANT_DOUBLES",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 10,
"y": 5,
@@ -106,6 +110,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_ATTENDANT_MULTIS",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 14,
"y": 5,
@@ -119,6 +124,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_ATTENDANT_LINK_MULTIS",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 18,
"y": 5,
diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
index e1f9d52d0e..cac3884852 100644
--- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
@@ -1,10 +1,3 @@
-.set LOCALID_ATTENDANT_SINGLES, 1
-.set LOCALID_ATTENDANT_DOUBLES, 7
-.set LOCALID_ATTENDANT_MULTIS, 8
-.set LOCALID_ATTENDANT_LINK_MULTIS, 9
-
-@ Note: LOCALID_BATTLE_TOWER_LOBBY_REPORTER is a local id for this map used elsewhere. It's defined in event_objects.h
-
BattleFrontier_BattleTowerLobby_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleTowerLobby_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerLobby_OnTransition
@@ -37,7 +30,7 @@ BattleFrontier_BattleTowerLobby_OnWarp:
BattleFrontier_BattleTowerLobby_EventScript_PlayerFaceNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattleTowerLobby_OnFrame:
@@ -621,12 +614,12 @@ BattleFrontier_BattleTowerLobby_EventScript_WalkToElevator::
call BattleFrontier_BattleTowerLobby_EventScript_SetAttendantTalkedTo
call BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoord
applymovement VAR_LAST_TALKED, BattleFrontier_BattleTowerLobby_Movement_WalkToElevator
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerLobby_Movement_WalkToElevator
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerLobby_Movement_WalkToElevator
waitmovement 0
opendoor VAR_0x8004, 1
waitdooranim
applymovement VAR_LAST_TALKED, BattleFrontier_BattleTowerLobby_Movement_AttendantEnterElevator
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerLobby_Movement_PlayerEnterElevator
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerLobby_Movement_PlayerEnterElevator
waitmovement 0
closedoor VAR_0x8004, 1
waitdooranim
@@ -690,19 +683,19 @@ BattleFrontier_BattleTowerLobby_EventScript_SetAttendantTalkedTo::
return
BattleFrontier_BattleTowerLobby_EventScript_TalkedToSinglesAttendant::
- setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_SINGLES
+ setvar VAR_LAST_TALKED, LOCALID_TOWER_ATTENDANT_SINGLES
return
BattleFrontier_BattleTowerLobby_EventScript_TalkedToDoublesAttendant::
- setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_DOUBLES
+ setvar VAR_LAST_TALKED, LOCALID_TOWER_ATTENDANT_DOUBLES
return
BattleFrontier_BattleTowerLobby_EventScript_TalkedToMultisAttendant::
- setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_MULTIS
+ setvar VAR_LAST_TALKED, LOCALID_TOWER_ATTENDANT_MULTIS
return
BattleFrontier_BattleTowerLobby_EventScript_TalkedToLinkMultisAttendant::
- setvar VAR_LAST_TALKED, LOCALID_ATTENDANT_LINK_MULTIS
+ setvar VAR_LAST_TALKED, LOCALID_TOWER_ATTENDANT_LINK_MULTIS
return
BattleFrontier_BattleTowerLobby_EventScript_GetDoorXCoord::
diff --git a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/map.json b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/map.json
index e48bcefd1b..eebfd53c47 100644
--- a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/map.json
+++ b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TOWER_MULTI_BATTLE_OPPONENT_1",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 5,
"y": 1,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_BATTLE_TOWER_OPPONENT"
},
{
+ "local_id": "LOCALID_TOWER_MULTI_BATTLE_ATTENDANT_1",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 1,
"y": 4,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_MULTI_BATTLE_ATTENDANT_2",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 1,
"y": 5,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_MULTI_BATTLE_OPPONENT_2",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 4,
"y": 1,
@@ -67,6 +71,7 @@
"flag": "FLAG_HIDE_BATTLE_TOWER_OPPONENT"
},
{
+ "local_id": "LOCALID_TOWER_MULTI_BATTLE_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_F",
"x": 4,
"y": 8,
@@ -80,6 +85,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_MULTI_BATTLE_PARTNER",
"graphics_id": "OBJ_EVENT_GFX_VAR_E",
"x": 5,
"y": 8,
diff --git a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc
index 4f3aa08fd6..4a975f3c48 100644
--- a/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerMultiBattleRoom/scripts.inc
@@ -1,9 +1,8 @@
-.set LOCALID_OPPONENT_1, 1
-.set LOCALID_ATTENDANT_1, 2
-.set LOCALID_ATTENDANT_2, 3
-.set LOCALID_OPPONENT_2, 4
-.set LOCALID_PLAYER, 5
-.set LOCALID_PARTNER, 6
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_TOWER_MULTI_BATTLE_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_F.
+@ The graphics of the partner are represented with VAR_OBJ_GFX_ID_E, which will ultimately be set by tower_setpartnergfx.
+@ The graphics of the opponents are represented with VAR_OBJ_GFX_ID_0 and OBJ_EVENT_GFX_VAR_1, which will ultimately be set by tower_setopponent.
BattleFrontier_BattleTowerMultiBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerMultiBattleRoom_OnTransition
@@ -11,10 +10,6 @@ BattleFrontier_BattleTowerMultiBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerMultiBattleRoom_OnFrame
end_map_scripts
- @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
- @ The player is represented instead by LOCALID_PLAYER, which has the gfx id VAR_OBJ_GFX_ID_F
- @ The multi partner is represented by LOCALID_PARTNER, which has the gfx id VAR_OBJ_GFX_ID_E
-
BattleFrontier_BattleTowerMultiBattleRoom_OnTransition:
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetObjGfx
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_SetLinkPlayerGfx
@@ -40,7 +35,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_OnWarp:
end_map_script_table
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_HidePlayerObj::
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM
+ hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM
end
BattleFrontier_BattleTowerMultiBattleRoom_OnFrame:
@@ -49,36 +44,36 @@ BattleFrontier_BattleTowerMultiBattleRoom_OnFrame:
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_EnterRoom::
setvar VAR_TEMP_0, 1
- applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_PlayerEnterRoom
- applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_PartnerEnterRoom
+ applymovement LOCALID_TOWER_MULTI_BATTLE_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_PlayerEnterRoom
+ applymovement LOCALID_TOWER_MULTI_BATTLE_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_PartnerEnterRoom
waitmovement 0
frontier_get FRONTIER_DATA_BATTLE_NUM
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer
+ applymovement LOCALID_TOWER_MULTI_BATTLE_ATTENDANT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer
+ applymovement LOCALID_TOWER_MULTI_BATTLE_ATTENDANT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
- applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant
- applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant
+ applymovement LOCALID_TOWER_MULTI_BATTLE_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant
+ applymovement LOCALID_TOWER_MULTI_BATTLE_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant
waitmovement 0
frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE
goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskReadyForOpponents
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter::
tower_setopponent
- addobject LOCALID_OPPONENT_1
- addobject LOCALID_OPPONENT_2
- applymovement LOCALID_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Enter
- applymovement LOCALID_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Enter
+ addobject LOCALID_TOWER_MULTI_BATTLE_OPPONENT_1
+ addobject LOCALID_TOWER_MULTI_BATTLE_OPPONENT_2
+ applymovement LOCALID_TOWER_MULTI_BATTLE_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Enter
+ applymovement LOCALID_TOWER_MULTI_BATTLE_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Enter
waitmovement 0
goto_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoOpponentIntrosLink
tower_getopponentintro 0
delay 15
- applymovement LOCALID_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft
+ applymovement LOCALID_TOWER_MULTI_BATTLE_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft
waitmovement 0
msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage
tower_getopponentintro 1
- applymovement LOCALID_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft
+ applymovement LOCALID_TOWER_MULTI_BATTLE_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft
waitmovement 0
msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage
@@ -87,13 +82,13 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter::
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoOpponentIntrosLink::
tower_getopponentintro 0
delay 15
- applymovement LOCALID_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft
+ applymovement LOCALID_TOWER_MULTI_BATTLE_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft
waitmovement 0
messageautoscroll gStringVar4
waitmessage
delay 48
tower_getopponentintro 1
- applymovement LOCALID_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft
+ applymovement LOCALID_TOWER_MULTI_BATTLE_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_WalkInPlaceLeft
waitmovement 0
messageautoscroll gStringVar4
waitmessage
@@ -114,16 +109,16 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DefeatedOpponents::
tower_setbattlewon
switch VAR_RESULT
case 7, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyWon
- applymovement LOCALID_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Exit
- applymovement LOCALID_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Exit
+ applymovement LOCALID_TOWER_MULTI_BATTLE_OPPONENT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent2Exit
+ applymovement LOCALID_TOWER_MULTI_BATTLE_OPPONENT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_Opponent1Exit
waitmovement 0
- removeobject LOCALID_OPPONENT_1
- removeobject LOCALID_OPPONENT_2
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer
+ removeobject LOCALID_TOWER_MULTI_BATTLE_OPPONENT_1
+ removeobject LOCALID_TOWER_MULTI_BATTLE_OPPONENT_2
+ applymovement LOCALID_TOWER_MULTI_BATTLE_ATTENDANT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer
+ applymovement LOCALID_TOWER_MULTI_BATTLE_ATTENDANT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
- applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant
- applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant
+ applymovement LOCALID_TOWER_MULTI_BATTLE_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant
+ applymovement LOCALID_TOWER_MULTI_BATTLE_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceAttendant
waitmovement 0
goto_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiBattleRoom_EventScript_RetorePartyMsgLink
msgbox BattleFrontier_BattleTowerBattleRoom_Text_RestoreMonsToFullHealth, MSGBOX_DEFAULT
@@ -194,11 +189,11 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_AskRetireChallenge::
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge::
closemessage
clearflag FLAG_TEMP_2
- applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceBattle
- applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceBattle
+ applymovement LOCALID_TOWER_MULTI_BATTLE_PLAYER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceBattle
+ applymovement LOCALID_TOWER_MULTI_BATTLE_PARTNER, BattleFrontier_BattleTowerMultiBattleRoom_Movement_FaceBattle
waitmovement 0
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantReturnToPos
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantReturnToPos
+ applymovement LOCALID_TOWER_MULTI_BATTLE_ATTENDANT_1, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantReturnToPos
+ applymovement LOCALID_TOWER_MULTI_BATTLE_ATTENDANT_2, BattleFrontier_BattleTowerMultiBattleRoom_Movement_AttendantReturnToPos
waitmovement 0
goto BattleFrontier_BattleTowerMultiBattleRoom_EventScript_OpponentsEnter
end
diff --git a/data/maps/BattleFrontier_BattleTowerMultiCorridor/map.json b/data/maps/BattleFrontier_BattleTowerMultiCorridor/map.json
index 36b4ecd46e..51d962dbe8 100644
--- a/data/maps/BattleFrontier_BattleTowerMultiCorridor/map.json
+++ b/data/maps/BattleFrontier_BattleTowerMultiCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TOWER_MULTI_CORRIDOR_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_F",
"x": 1,
"y": 1,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_MULTI_CORRIDOR_ATTENDANT_1",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 14,
"y": 3,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_MULTI_CORRIDOR_ATTENDANT_2",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 1,
"y": 3,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TOWER_MULTI_CORRIDOR_PARTNER",
"graphics_id": "OBJ_EVENT_GFX_VAR_E",
"x": 14,
"y": 1,
diff --git a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc
index 13bf1717e3..726746afa9 100644
--- a/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerMultiCorridor/scripts.inc
@@ -1,7 +1,7 @@
-.set LOCALID_PLAYER, 1
-.set LOCALID_ATTENDANT_1, 2
-.set LOCALID_ATTENDANT_2, 3
-.set LOCALID_PARTNER, 4
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_TOWER_MULTI_CORRIDOR_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_F.
+@ The graphics of the partner are represented with VAR_OBJ_GFX_ID_E, which will ultimately be set by tower_setpartnergfx.
BattleFrontier_BattleTowerMultiCorridor_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerMultiCorridor_OnTransition
@@ -9,10 +9,6 @@ BattleFrontier_BattleTowerMultiCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleTowerMultiCorridor_OnFrame
end_map_scripts
- @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
- @ The player is represented instead by LOCALID_PLAYER, and has the gfx id VAR_OBJ_GFX_ID_F
- @ The multi partner is represented by LOCALID_PARTNER, and has the gfx id VAR_OBJ_GFX_ID_E
-
BattleFrontier_BattleTowerMultiCorridor_OnTransition:
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_MULTIS, BattleFrontier_BattleTowerMultiCorridor_EventScript_SetObjGfx
call_if_eq VAR_FRONTIER_BATTLE_MODE, FRONTIER_MODE_LINK_MULTIS, BattleFrontier_BattleTowerMultiCorridor_EventScript_SetLinkPlayerGfx
@@ -38,9 +34,9 @@ BattleFrontier_BattleTowerMultiCorridor_OnWarp:
end_map_script_table
BattleFrontier_BattleTowerMultiCorridor_EventScript_SetUpObjects::
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
hideobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
- hideobjectat LOCALID_PARTNER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
+ hideobjectat LOCALID_TOWER_MULTI_CORRIDOR_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
+ hideobjectat LOCALID_TOWER_MULTI_CORRIDOR_PARTNER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
special OffsetCameraForBattle
end
@@ -56,10 +52,10 @@ BattleFrontier_BattleTowerMultiCorridor_EventScript_EnterCorridor::
opendoor 1, 1
waitdooranim
clearflag FLAG_ENABLE_MULTI_CORRIDOR_DOOR
- showobjectat LOCALID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
- showobjectat LOCALID_PARTNER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
- applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiCorridor_Movement_ExitElevator
- applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiCorridor_Movement_ExitElevator
+ showobjectat LOCALID_TOWER_MULTI_CORRIDOR_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
+ showobjectat LOCALID_TOWER_MULTI_CORRIDOR_PARTNER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_PLAYER, BattleFrontier_BattleTowerMultiCorridor_Movement_ExitElevator
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_PARTNER, BattleFrontier_BattleTowerMultiCorridor_Movement_ExitElevator
waitmovement 0
setflag FLAG_ENABLE_MULTI_CORRIDOR_DOOR
setvar VAR_0x8004, 14 @ x coord of far door, used by DrawDoor
@@ -67,21 +63,21 @@ BattleFrontier_BattleTowerMultiCorridor_EventScript_EnterCorridor::
closedoor 1, 1
waitdooranim
clearflag FLAG_ENABLE_MULTI_CORRIDOR_DOOR
- applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerWalkToDoor
- applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerWalkToDoor
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerAttendantWalkToDoor
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerAttendantWalkToDoor
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_PLAYER, BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerWalkToDoor
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_PARTNER, BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerWalkToDoor
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_ATTENDANT_2, BattleFrontier_BattleTowerMultiCorridor_Movement_PlayerAttendantWalkToDoor
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_ATTENDANT_1, BattleFrontier_BattleTowerMultiCorridor_Movement_PartnerAttendantWalkToDoor
waitmovement 0
delay 40
- applymovement LOCALID_ATTENDANT_2, Common_Movement_WalkInPlaceFasterUp
- applymovement LOCALID_ATTENDANT_1, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_ATTENDANT_2, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_ATTENDANT_1, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
opendoor 7, 1
waitdooranim
- applymovement LOCALID_ATTENDANT_2, BattleFrontier_BattleTowerMultiCorridor_Movement_AttendantEnterDoor
- applymovement LOCALID_ATTENDANT_1, BattleFrontier_BattleTowerMultiCorridor_Movement_AttendantEnterDoor
- applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiCorridor_Movement_TrainerEnterDoor
- applymovement LOCALID_PARTNER, BattleFrontier_BattleTowerMultiCorridor_Movement_TrainerEnterDoor
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_ATTENDANT_2, BattleFrontier_BattleTowerMultiCorridor_Movement_AttendantEnterDoor
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_ATTENDANT_1, BattleFrontier_BattleTowerMultiCorridor_Movement_AttendantEnterDoor
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_PLAYER, BattleFrontier_BattleTowerMultiCorridor_Movement_TrainerEnterDoor
+ applymovement LOCALID_TOWER_MULTI_CORRIDOR_PARTNER, BattleFrontier_BattleTowerMultiCorridor_Movement_TrainerEnterDoor
waitmovement 0
closedoor 7, 1
waitdooranim
diff --git a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/map.json b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/map.json
index c48458344f..687099d560 100644
--- a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/map.json
+++ b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TOWER_PARTNER_ROOM_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 11,
"y": 2,
diff --git a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc
index f4f94f44ac..e9d17fbf8f 100644
--- a/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc
+++ b/data/maps/BattleFrontier_BattleTowerMultiPartnerRoom/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
BattleFrontier_BattleTowerMultiPartnerRoom_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattleTowerMultiPartnerRoom_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleTowerMultiPartnerRoom_OnTransition
@@ -35,7 +33,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ChosePartner::
setvar VAR_OBJ_GFX_ID_7, OBJ_EVENT_GFX_BOY_1
setvar VAR_TEMP_1, 1
setvar VAR_TEMP_3, 1
- setobjectxyperm LOCALID_ATTENDANT, 10, 2
+ setobjectxyperm LOCALID_TOWER_PARTNER_ROOM_ATTENDANT, 10, 2
end
BattleFrontier_BattleTowerMultiPartnerRoom_OnWarp:
@@ -43,7 +41,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_OnWarp:
end_map_script_table
BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattleTowerMultiPartnerRoom_OnFrame:
@@ -59,12 +57,12 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_ExitRoom::
BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterRoom::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterRoom
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterRoom
waitmovement 0
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantBlockExit
+ applymovement LOCALID_TOWER_PARTNER_ROOM_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantBlockExit
waitmovement 0
- copyobjectxytoperm LOCALID_ATTENDANT
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ copyobjectxytoperm LOCALID_TOWER_PARTNER_ROOM_ATTENDANT
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox BattleFrontier_BattleTowerMultiPartnerRoom_Text_PleaseFindPartner, MSGBOX_DEFAULT
special HealPlayerParty
@@ -100,7 +98,7 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_QuitChallenge::
BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterElevator::
msgbox BattleFrontier_BattleTowerMultiPartnerRoom_Text_ThankYouForChoosingPartner, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_TOWER_PARTNER_ROOM_ATTENDANT, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
opendoor 10, 1
waitdooranim
@@ -113,22 +111,22 @@ BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_EnterElevator::
end
BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevator::
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevator
+ applymovement LOCALID_TOWER_PARTNER_ROOM_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevator
waitmovement 0
return
@ Unused
BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevatorEast:
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevatorEast
+ applymovement LOCALID_TOWER_PARTNER_ROOM_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEnterElevatorEast
waitmovement 0
return
@ Unused
BattleFrontier_BattleTowerMultiPartnerRoom_EventScript_MoveToElevatorWest:
- applymovement LOCALID_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEneterElevatorWest
+ applymovement LOCALID_TOWER_PARTNER_ROOM_ATTENDANT, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_AttendantEnterElevator
+ applymovement LOCALID_PLAYER, BattleFrontier_BattleTowerMultiPartnerRoom_Movement_PlayerEneterElevatorWest
waitmovement 0
return
diff --git a/data/maps/BattleFrontier_Mart/map.json b/data/maps/BattleFrontier_Mart/map.json
index 28261958ab..1f182365e1 100644
--- a/data/maps/BattleFrontier_Mart/map.json
+++ b/data/maps/BattleFrontier_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FRONTIER_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_MART_OLD_WOMAN",
"graphics_id": "OBJ_EVENT_GFX_OLD_WOMAN",
"x": 5,
"y": 4,
diff --git a/data/maps/BattleFrontier_Mart/scripts.inc b/data/maps/BattleFrontier_Mart/scripts.inc
index bc7321db51..0f3caac8d6 100644
--- a/data/maps/BattleFrontier_Mart/scripts.inc
+++ b/data/maps/BattleFrontier_Mart/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_OLD_WOMAN, 2
-
BattleFrontier_Mart_MapScripts::
end_map_scripts
@@ -28,9 +26,7 @@ BattleFrontier_Mart_Pokemart:
.2byte ITEM_ZINC
.2byte ITEM_CARBOS
.2byte ITEM_HP_UP
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
BattleFrontier_Mart_EventScript_OldMan::
msgbox BattleFrontier_Mart_Text_ChaperonGrandson, MSGBOX_NPC
@@ -38,7 +34,7 @@ BattleFrontier_Mart_EventScript_OldMan::
BattleFrontier_Mart_EventScript_OldWoman::
lock
- applymovement LOCALID_OLD_WOMAN, Common_Movement_FaceDown
+ applymovement LOCALID_FRONTIER_MART_OLD_WOMAN, Common_Movement_FaceDown
waitmovement 0
msgbox BattleFrontier_Mart_Text_ProteinMakeNiceGift, MSGBOX_DEFAULT
release
diff --git a/data/maps/BattleFrontier_OutsideEast/map.json b/data/maps/BattleFrontier_OutsideEast/map.json
index c99fe30474..ab871be653 100644
--- a/data/maps/BattleFrontier_OutsideEast/map.json
+++ b/data/maps/BattleFrontier_OutsideEast/map.json
@@ -190,6 +190,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_SUDOWOODO",
"graphics_id": "OBJ_EVENT_GFX_SUDOWOODO",
"x": 54,
"y": 62,
diff --git a/data/maps/BattleFrontier_OutsideEast/scripts.inc b/data/maps/BattleFrontier_OutsideEast/scripts.inc
index 92be9f2c8b..e05d85d7a5 100644
--- a/data/maps/BattleFrontier_OutsideEast/scripts.inc
+++ b/data/maps/BattleFrontier_OutsideEast/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_SUDOWOODO, 14
-
BattleFrontier_OutsideEast_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_OutsideEast_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_OutsideEast_OnTransition
@@ -108,7 +106,7 @@ BattleFrontier_OutsideEast_EventScript_Sudowoodo::
faceplayer
waitse
playse SE_SUDOWOODO_SHAKE
- applymovement LOCALID_SUDOWOODO, BattleFrontier_OutsideEast_Movement_SudowoodoShake
+ applymovement LOCALID_FRONTIER_SUDOWOODO, BattleFrontier_OutsideEast_Movement_SudowoodoShake
waitmovement 0
release
end
@@ -120,7 +118,7 @@ BattleFrontier_OutsideEast_EventScript_WaterSudowoodo::
waitstate
waitse
playse SE_SUDOWOODO_SHAKE
- applymovement LOCALID_SUDOWOODO, BattleFrontier_OutsideEast_Movement_SudowoodoShake
+ applymovement LOCALID_FRONTIER_SUDOWOODO, BattleFrontier_OutsideEast_Movement_SudowoodoShake
waitmovement 0
msgbox gText_Sudowoodo_Attacked, MSGBOX_DEFAULT
closemessage
@@ -128,7 +126,7 @@ BattleFrontier_OutsideEast_EventScript_WaterSudowoodo::
playmoncry SPECIES_SUDOWOODO, CRY_MODE_ENCOUNTER
delay 40
waitmoncry
- setvar VAR_LAST_TALKED, LOCALID_SUDOWOODO
+ setvar VAR_LAST_TALKED, LOCALID_FRONTIER_SUDOWOODO
setwildbattle SPECIES_SUDOWOODO, 40
setflag FLAG_SYS_CTRL_OBJ_DELETE
dowildbattle
diff --git a/data/maps/BattleFrontier_OutsideWest/map.json b/data/maps/BattleFrontier_OutsideWest/map.json
index bcf579cf1d..a77f6ac578 100644
--- a/data/maps/BattleFrontier_OutsideWest/map.json
+++ b/data/maps/BattleFrontier_OutsideWest/map.json
@@ -34,6 +34,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_SS_TIDAL",
"graphics_id": "OBJ_EVENT_GFX_SS_TIDAL",
"x": 20,
"y": 70,
@@ -47,6 +48,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_FERRY_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BEAUTY",
"x": 19,
"y": 68,
@@ -125,6 +127,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_MANIAC_1",
"graphics_id": "OBJ_EVENT_GFX_MANIAC",
"x": 13,
"y": 44,
@@ -138,6 +141,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_MANIAC_2",
"graphics_id": "OBJ_EVENT_GFX_MANIAC",
"x": 14,
"y": 44,
@@ -164,6 +168,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_GIRL",
"graphics_id": "OBJ_EVENT_GFX_GIRL_1",
"x": 38,
"y": 27,
@@ -190,6 +195,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_CAMPER",
"graphics_id": "OBJ_EVENT_GFX_CAMPER",
"x": 9,
"y": 47,
@@ -242,6 +248,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_FISHERMAN_2",
"graphics_id": "OBJ_EVENT_GFX_FISHERMAN",
"x": 42,
"y": 48,
@@ -307,6 +314,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_MAN_4",
"graphics_id": "OBJ_EVENT_GFX_MAN_4",
"x": 8,
"y": 5,
diff --git a/data/maps/BattleFrontier_OutsideWest/scripts.inc b/data/maps/BattleFrontier_OutsideWest/scripts.inc
index 3b75180550..74fd3418f4 100644
--- a/data/maps/BattleFrontier_OutsideWest/scripts.inc
+++ b/data/maps/BattleFrontier_OutsideWest/scripts.inc
@@ -1,12 +1,3 @@
-.set LOCALID_SS_TIDAL, 2
-.set LOCALID_FERRY_ATTENDANT, 3
-.set LOCALID_MANIAC_1, 9
-.set LOCALID_MANIAC_2, 10
-.set LOCALID_GIRL, 12
-.set LOCALID_CAMPER, 14
-.set LOCALID_FISHERMAN_2, 18
-.set LOCALID_MAN_4, 23
-
BattleFrontier_OutsideWest_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_OutsideWest_OnTransition
end_map_scripts
@@ -72,8 +63,8 @@ BattleFrontier_OutsideWest_EventScript_BoardFerry::
applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
- hideobjectat LOCALID_FERRY_ATTENDANT, MAP_BATTLE_FRONTIER_OUTSIDE_WEST
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ hideobjectat LOCALID_FRONTIER_FERRY_ATTENDANT, MAP_BATTLE_FRONTIER_OUTSIDE_WEST
+ setvar VAR_0x8004, LOCALID_FRONTIER_SS_TIDAL
call Common_EventScript_FerryDepartIsland
return
@@ -113,7 +104,7 @@ BattleFrontier_OutsideWest_EventScript_Fisherman2::
faceplayer
message BattleFrontier_OutsideWest_Text_GotSeasickOnWayHere
waitmessage
- applymovement LOCALID_FISHERMAN_2, Common_Movement_FaceAwayPlayer
+ applymovement LOCALID_FRONTIER_FISHERMAN_2, Common_Movement_FaceAwayPlayer
waitmovement 0
waitbuttonpress
release
@@ -134,16 +125,16 @@ BattleFrontier_OutsideWest_EventScript_Maniac2::
end
BattleFrontier_OutsideWest_EventScript_FactoryChallengersTalk::
- applymovement LOCALID_MANIAC_1, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_FRONTIER_MANIAC_1, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox BattleFrontier_OutsideWest_Text_SureWeCanChallengeWithNoMons, MSGBOX_DEFAULT
- applymovement LOCALID_MANIAC_2, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_FRONTIER_MANIAC_2, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox BattleFrontier_OutsideWest_Text_BigGuySaidIllLendYouMons, MSGBOX_DEFAULT
closemessage
delay 25
- applymovement LOCALID_MANIAC_1, Common_Movement_WalkInPlaceFasterUp
- applymovement LOCALID_MANIAC_2, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_FRONTIER_MANIAC_1, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_FRONTIER_MANIAC_2, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
release
end
@@ -161,7 +152,7 @@ BattleFrontier_OutsideWest_EventScript_Camper::
end
BattleFrontier_OutsideWest_EventScript_CamperFaceFactory::
- applymovement LOCALID_CAMPER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_FRONTIER_CAMPER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
@@ -182,22 +173,22 @@ BattleFrontier_OutsideWest_EventScript_Girl::
end
BattleFrontier_OutsideWest_EventScript_GirlShudderNorth::
- applymovement LOCALID_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderNorth
+ applymovement LOCALID_FRONTIER_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderNorth
waitmovement 0
return
BattleFrontier_OutsideWest_EventScript_GirlShudderSouth::
- applymovement LOCALID_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderSouth
+ applymovement LOCALID_FRONTIER_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderSouth
waitmovement 0
return
BattleFrontier_OutsideWest_EventScript_GirlShudderWest::
- applymovement LOCALID_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderWest
+ applymovement LOCALID_FRONTIER_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderWest
waitmovement 0
return
BattleFrontier_OutsideWest_EventScript_GirlShudderEast::
- applymovement LOCALID_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderEast
+ applymovement LOCALID_FRONTIER_GIRL, BattleFrontier_OutsideWest_Movement_GirlShudderEast
waitmovement 0
return
@@ -298,7 +289,7 @@ BattleFrontier_OutsideWest_EventScript_Man4::
faceplayer
msgbox BattleFrontier_OutsideWest_Text_FansOverThereUsedToBeTrainers, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_MAN_4, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_FRONTIER_MAN_4, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
diff --git a/data/maps/BattleFrontier_PokemonCenter_1F/map.json b/data/maps/BattleFrontier_PokemonCenter_1F/map.json
index b993e92777..b44bd4b379 100644
--- a/data/maps/BattleFrontier_PokemonCenter_1F/map.json
+++ b/data/maps/BattleFrontier_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FRONTIER_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc b/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc
index 1a70f0edee..71758b58d9 100644
--- a/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc
+++ b/data/maps/BattleFrontier_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
BattleFrontier_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -10,7 +8,7 @@ BattleFrontier_PokemonCenter_1F_OnTransition:
end
BattleFrontier_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_FRONTIER_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/BattleFrontier_ReceptionGate/map.json b/data/maps/BattleFrontier_ReceptionGate/map.json
index 12a178198d..8f92c5e94b 100644
--- a/data/maps/BattleFrontier_ReceptionGate/map.json
+++ b/data/maps/BattleFrontier_ReceptionGate/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FRONTIER_RECEPTION_GREETER",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 0,
"y": 11,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_RECEPTION_GUIDE",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 8,
"y": 11,
@@ -54,6 +56,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FRONTIER_RECEPTION_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 4,
"y": 5,
diff --git a/data/maps/BattleFrontier_ReceptionGate/scripts.inc b/data/maps/BattleFrontier_ReceptionGate/scripts.inc
index 54b57124c2..eaa1dc8138 100644
--- a/data/maps/BattleFrontier_ReceptionGate/scripts.inc
+++ b/data/maps/BattleFrontier_ReceptionGate/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_GREETER, 1
-.set LOCALID_GUIDE, 2
-.set LOCALID_SCOTT, 4
-
BattleFrontier_ReceptionGate_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_ReceptionGate_OnFrame
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_ReceptionGate_OnTransition
@@ -19,13 +15,13 @@ BattleFrontier_ReceptionGate_EventScript_FirstTimeEntering::
lockall
setvar VAR_HAS_ENTERED_BATTLE_FRONTIER, 1
playse SE_PIN
- applymovement LOCALID_GREETER, Common_Movement_ExclamationMark
+ applymovement LOCALID_FRONTIER_RECEPTION_GREETER, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_GREETER, Common_Movement_Delay48
+ applymovement LOCALID_FRONTIER_RECEPTION_GREETER, Common_Movement_Delay48
waitmovement 0
msgbox BattleFrontier_ReceptionGate_Text_FirstTimeHereThisWay, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_ReceptionGate_Movement_PlayerApproachCounter
+ applymovement LOCALID_PLAYER, BattleFrontier_ReceptionGate_Movement_PlayerApproachCounter
waitmovement 0
goto BattleFrontier_ReceptionGate_EventScript_ScottScene
end
@@ -42,27 +38,27 @@ BattleFrontier_ReceptionGate_EventScript_ScottScene::
msgbox BattleFrontier_ReceptionGate_Text_EnjoyBattleFrontier, MSGBOX_DEFAULT
msgbox BattleFrontier_ReceptionGate_Text_IfItIsntPlayerYouCame, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GREETER, Common_Movement_WalkInPlaceFasterUp
- applymovement LOCALID_GUIDE, Common_Movement_WalkInPlaceFasterUp
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_FRONTIER_RECEPTION_GREETER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_FRONTIER_RECEPTION_GUIDE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
playse SE_PIN
- applymovement LOCALID_GREETER, Common_Movement_ExclamationMark
- applymovement LOCALID_GUIDE, Common_Movement_ExclamationMark
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_ExclamationMark
+ applymovement LOCALID_FRONTIER_RECEPTION_GREETER, Common_Movement_ExclamationMark
+ applymovement LOCALID_FRONTIER_RECEPTION_GUIDE, Common_Movement_ExclamationMark
+ applymovement LOCALID_PLAYER, Common_Movement_ExclamationMark
waitmovement 0
msgbox BattleFrontier_ReceptionGate_Text_OhMrScottGoodDay, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GREETER, BattleFrontier_ReceptionGate_Movement_GreeterFaceScott
- applymovement LOCALID_GUIDE, BattleFrontier_ReceptionGate_Movement_FacilityGuideFaceScott
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_ReceptionGate_Movement_PlayerFaceScott
- applymovement LOCALID_SCOTT, BattleFrontier_ReceptionGate_Movement_ScottEnter
+ applymovement LOCALID_FRONTIER_RECEPTION_GREETER, BattleFrontier_ReceptionGate_Movement_GreeterFaceScott
+ applymovement LOCALID_FRONTIER_RECEPTION_GUIDE, BattleFrontier_ReceptionGate_Movement_FacilityGuideFaceScott
+ applymovement LOCALID_PLAYER, BattleFrontier_ReceptionGate_Movement_PlayerFaceScott
+ applymovement LOCALID_FRONTIER_RECEPTION_SCOTT, BattleFrontier_ReceptionGate_Movement_ScottEnter
waitmovement 0
msgbox BattleFrontier_ReceptionGate_Text_ScottGreatToSeeYouHere, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_SCOTT, BattleFrontier_ReceptionGate_Movement_ScottExit
+ applymovement LOCALID_FRONTIER_RECEPTION_SCOTT, BattleFrontier_ReceptionGate_Movement_ScottExit
waitmovement 0
- removeobject LOCALID_SCOTT
+ removeobject LOCALID_FRONTIER_RECEPTION_SCOTT
releaseall
end
diff --git a/data/maps/BattleFrontier_ScottsHouse/map.json b/data/maps/BattleFrontier_ScottsHouse/map.json
index 7a6de715ab..60d7f4ccfc 100644
--- a/data/maps/BattleFrontier_ScottsHouse/map.json
+++ b/data/maps/BattleFrontier_ScottsHouse/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SCOTTS_HOUSE_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 2,
"y": 3,
diff --git a/data/maps/BattleFrontier_ScottsHouse/scripts.inc b/data/maps/BattleFrontier_ScottsHouse/scripts.inc
index 1b38c5368f..d6065ef4fe 100644
--- a/data/maps/BattleFrontier_ScottsHouse/scripts.inc
+++ b/data/maps/BattleFrontier_ScottsHouse/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_SCOTT, 1
-
BattleFrontier_ScottsHouse_MapScripts::
end_map_scripts
@@ -149,7 +147,7 @@ BattleFrontier_ScottsHouse_EventScript_WelcomeToFrontier::
call_if_eq VAR_FACING, DIR_EAST, BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayEast
call_if_eq VAR_FACING, DIR_WEST, BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayWest
msgbox BattleFrontier_ScottsHouse_Text_HowMuchEffortItTookToMakeReal, MSGBOX_DEFAULT
- applymovement LOCALID_SCOTT, Common_Movement_FacePlayer
+ applymovement LOCALID_SCOTTS_HOUSE_SCOTT, Common_Movement_FacePlayer
waitmovement 0
msgbox BattleFrontier_ScottsHouse_Text_HaveThisAsMementoOfOurPathsCrossing, MSGBOX_DEFAULT
goto_if_eq VAR_SCOTT_STATE, 13, BattleFrontier_ScottsHouse_EventScript_Give4BattlePoints
@@ -192,22 +190,22 @@ BattleFrontier_ScottsHouse_EventScript_GiveBattlePoints::
end
BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayNorth::
- applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_SCOTTS_HOUSE_SCOTT, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
BattleFrontier_ScottsHouse_EventScript_ScottFaceAwaySouth::
- applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_SCOTTS_HOUSE_SCOTT, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayEast::
- applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_SCOTTS_HOUSE_SCOTT, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
BattleFrontier_ScottsHouse_EventScript_ScottFaceAwayWest::
- applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SCOTTS_HOUSE_SCOTT, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
diff --git a/data/maps/BirthIsland_Exterior/map.json b/data/maps/BirthIsland_Exterior/map.json
index 3c5cc874cb..996fc0ca14 100644
--- a/data/maps/BirthIsland_Exterior/map.json
+++ b/data/maps/BirthIsland_Exterior/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK",
"graphics_id": "OBJ_EVENT_GFX_DEOXYS_TRIANGLE",
"x": 15,
"y": 12,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE"
},
{
+ "local_id": "LOCALID_BIRTH_ISLAND_DEOXYS",
"graphics_id": "OBJ_EVENT_GFX_DEOXYS",
"x": 15,
"y": 3,
diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc
index 410de55f0d..d3d67d361d 100644
--- a/data/maps/BirthIsland_Exterior/scripts.inc
+++ b/data/maps/BirthIsland_Exterior/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_DEOXYS, 2
-
-@ Note: LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK is a local id for this map used elsewhere. It's defined in event_objects.h
-
BirthIsland_Exterior_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, BirthIsland_Exterior_OnTransition
map_script MAP_SCRIPT_ON_RESUME, BirthIsland_Exterior_OnResume
@@ -39,7 +35,7 @@ BirthIsland_Exterior_OnResume:
BirthIsland_Exterior_EventScript_TryRemoveDeoxys::
specialvar VAR_RESULT, GetBattleOutcome
goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn
- removeobject LOCALID_DEOXYS
+ removeobject LOCALID_BIRTH_ISLAND_DEOXYS
return
BirthIsland_Exterior_EventScript_Triangle::
@@ -72,19 +68,19 @@ BirthIsland_Exterior_EventScript_Complete::
BirthIsland_Exterior_EventScript_Deoxys::
waitse
setfieldeffectargument 0, LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK
- setfieldeffectargument 1, MAP_NUM(BIRTH_ISLAND_EXTERIOR)
- setfieldeffectargument 2, MAP_GROUP(BIRTH_ISLAND_EXTERIOR)
+ setfieldeffectargument 1, MAP_NUM(MAP_BIRTH_ISLAND_EXTERIOR)
+ setfieldeffectargument 2, MAP_GROUP(MAP_BIRTH_ISLAND_EXTERIOR)
dofieldeffect FLDEFF_DESTROY_DEOXYS_ROCK
playbgm MUS_RG_ENCOUNTER_DEOXYS, FALSE
waitfieldeffect FLDEFF_DESTROY_DEOXYS_ROCK
- addobject LOCALID_DEOXYS
- applymovement LOCALID_DEOXYS, BirthIsland_Exterior_Movement_DeoxysApproach
+ addobject LOCALID_BIRTH_ISLAND_DEOXYS
+ applymovement LOCALID_BIRTH_ISLAND_DEOXYS, BirthIsland_Exterior_Movement_DeoxysApproach
waitmovement 0
waitse
playmoncry SPECIES_DEOXYS, CRY_MODE_ENCOUNTER
delay 40
waitmoncry
- setvar VAR_LAST_TALKED, LOCALID_DEOXYS
+ setvar VAR_LAST_TALKED, LOCALID_BIRTH_ISLAND_DEOXYS
seteventmon SPECIES_DEOXYS, 30
setflag FLAG_SYS_CTRL_OBJ_DELETE
special BattleSetup_StartLegendaryBattle
diff --git a/data/maps/BirthIsland_Harbor/map.json b/data/maps/BirthIsland_Harbor/map.json
index cce96bfc13..93f399963e 100644
--- a/data/maps/BirthIsland_Harbor/map.json
+++ b/data/maps/BirthIsland_Harbor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_BIRTH_ISLAND_SAILOR",
"graphics_id": "OBJ_EVENT_GFX_SAILOR",
"x": 8,
"y": 5,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BIRTH_ISLAND_SS_TIDAL",
"graphics_id": "OBJ_EVENT_GFX_SS_TIDAL",
"x": 8,
"y": 7,
diff --git a/data/maps/BirthIsland_Harbor/scripts.inc b/data/maps/BirthIsland_Harbor/scripts.inc
index b939153d76..3a96378d28 100644
--- a/data/maps/BirthIsland_Harbor/scripts.inc
+++ b/data/maps/BirthIsland_Harbor/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_SAILOR, 1
-.set LOCALID_SS_TIDAL, 2
-
BirthIsland_Harbor_MapScripts::
end_map_scripts
@@ -14,8 +11,8 @@ BirthIsland_Harbor_EventScript_Sailor::
applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
- hideobjectat LOCALID_SAILOR, MAP_BIRTH_ISLAND_HARBOR
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ hideobjectat LOCALID_BIRTH_ISLAND_SAILOR, MAP_BIRTH_ISLAND_HARBOR
+ setvar VAR_0x8004, LOCALID_BIRTH_ISLAND_SS_TIDAL
call Common_EventScript_FerryDepartIsland
warp MAP_LILYCOVE_CITY_HARBOR, 8, 11
waitstate
diff --git a/data/maps/CaveOfOrigin_B1F/map.json b/data/maps/CaveOfOrigin_B1F/map.json
index 166f79998b..5756705323 100644
--- a/data/maps/CaveOfOrigin_B1F/map.json
+++ b/data/maps/CaveOfOrigin_B1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_CAVE_OF_ORIGIN_WALLACE",
"graphics_id": "OBJ_EVENT_GFX_WALLACE",
"x": 9,
"y": 13,
diff --git a/data/maps/CaveOfOrigin_B1F/scripts.inc b/data/maps/CaveOfOrigin_B1F/scripts.inc
index a8de64b52c..2b544f0400 100644
--- a/data/maps/CaveOfOrigin_B1F/scripts.inc
+++ b/data/maps/CaveOfOrigin_B1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WALLACE, 1
-
CaveOfOrigin_B1F_MapScripts::
end_map_scripts
@@ -8,16 +6,16 @@ CaveOfOrigin_B1F_EventScript_Wallace::
faceplayer
msgbox CaveOfOrigin_B1F_Text_WallaceStory, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_CAVE_OF_ORIGIN_WALLACE, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 60
playse SE_PIN
- applymovement LOCALID_WALLACE, Common_Movement_ExclamationMark
+ applymovement LOCALID_CAVE_OF_ORIGIN_WALLACE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_WALLACE, Common_Movement_Delay48
+ applymovement LOCALID_CAVE_OF_ORIGIN_WALLACE, Common_Movement_Delay48
waitmovement 0
delay 30
- applymovement LOCALID_WALLACE, Common_Movement_FacePlayer
+ applymovement LOCALID_CAVE_OF_ORIGIN_WALLACE, Common_Movement_FacePlayer
waitmovement 0
message CaveOfOrigin_B1F_Text_WhereIsRayquaza
waitmessage
@@ -55,7 +53,7 @@ CaveOfOrigin_B1F_EventScript_AtSkyPillar::
fadescreenspeed FADE_TO_BLACK, 4
setflag FLAG_WALLACE_GOES_TO_SKY_PILLAR
setvar VAR_SOOTOPOLIS_CITY_STATE, 3
- removeobject LOCALID_WALLACE
+ removeobject LOCALID_CAVE_OF_ORIGIN_WALLACE
clearflag FLAG_HIDE_SKY_PILLAR_WALLACE
fadescreen FADE_FROM_BLACK
release
diff --git a/data/maps/ContestHall/map.json b/data/maps/ContestHall/map.json
index 842c57968d..2d5c0b7c0c 100644
--- a/data/maps/ContestHall/map.json
+++ b/data/maps/ContestHall/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_CONTEST_MC",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_3",
"x": 6,
"y": 4,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_JUDGE",
"graphics_id": "OBJ_EVENT_GFX_CONTEST_JUDGE",
"x": 7,
"y": 4,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTESTANT_1",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 4,
"y": 7,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTESTANT_2",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 6,
"y": 7,
@@ -67,6 +71,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTESTANT_3",
"graphics_id": "OBJ_EVENT_GFX_VAR_2",
"x": 8,
"y": 7,
@@ -80,6 +85,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_AUDIENCE_1",
"graphics_id": "OBJ_EVENT_GFX_VAR_4",
"x": 2,
"y": 6,
@@ -93,6 +99,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_AUDIENCE_3",
"graphics_id": "OBJ_EVENT_GFX_VAR_6",
"x": 4,
"y": 2,
@@ -106,6 +113,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_AUDIENCE_4",
"graphics_id": "OBJ_EVENT_GFX_VAR_7",
"x": 5,
"y": 2,
@@ -119,6 +127,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_AUDIENCE_5",
"graphics_id": "OBJ_EVENT_GFX_VAR_8",
"x": 9,
"y": 2,
@@ -132,6 +141,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_AUDIENCE_6",
"graphics_id": "OBJ_EVENT_GFX_VAR_9",
"x": 10,
"y": 2,
@@ -145,6 +155,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_AUDIENCE_7",
"graphics_id": "OBJ_EVENT_GFX_VAR_A",
"x": 12,
"y": 5,
@@ -158,6 +169,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_AUDIENCE_2",
"graphics_id": "OBJ_EVENT_GFX_VAR_5",
"x": 2,
"y": 5,
@@ -171,6 +183,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_POKEBALL",
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
"x": 7,
"y": 5,
@@ -184,6 +197,7 @@
"flag": "FLAG_HIDE_CONTEST_POKE_BALL"
},
{
+ "local_id": "LOCALID_CONTESTANT_4",
"graphics_id": "OBJ_EVENT_GFX_VAR_3",
"x": 10,
"y": 7,
@@ -197,6 +211,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_ARTIST",
"graphics_id": "OBJ_EVENT_GFX_ARTIST",
"x": 12,
"y": 6,
diff --git a/data/maps/ContestHall/scripts.inc b/data/maps/ContestHall/scripts.inc
index 015ed60aaa..b655447fe7 100644
--- a/data/maps/ContestHall/scripts.inc
+++ b/data/maps/ContestHall/scripts.inc
@@ -69,7 +69,7 @@ ContestHall_EventScript_Contest::
ContestHall_EventScript_SetContestObjects::
special LoadLinkContestPlayerPalettes
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_PLAYER, MAP_LITTLEROOT_TOWN
call ContestHall_EventScript_CreateAudience
end
diff --git a/data/maps/DesertUnderpass/map.json b/data/maps/DesertUnderpass/map.json
index 152d32a794..386c28b2af 100644
--- a/data/maps/DesertUnderpass/map.json
+++ b/data/maps/DesertUnderpass/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_UNDERPASS_FOSSIL",
"graphics_id": "OBJ_EVENT_GFX_FOSSIL",
"x": 132,
"y": 10,
diff --git a/data/maps/DesertUnderpass/scripts.inc b/data/maps/DesertUnderpass/scripts.inc
index 3df13364ac..57d5aabe79 100644
--- a/data/maps/DesertUnderpass/scripts.inc
+++ b/data/maps/DesertUnderpass/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_FOSSIL, 1
-
DesertUnderpass_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, DesertUnderpass_OnTransition
end_map_scripts
@@ -18,13 +16,13 @@ DesertUnderpass_EventScript_Fossil::
DesertUnderpass_EventScript_GiveClawFossil::
giveitem ITEM_CLAW_FOSSIL
- removeobject LOCALID_FOSSIL
+ removeobject LOCALID_UNDERPASS_FOSSIL
release
end
DesertUnderpass_EventScript_GiveRootFossil::
giveitem ITEM_ROOT_FOSSIL
- removeobject LOCALID_FOSSIL
+ removeobject LOCALID_UNDERPASS_FOSSIL
release
end
diff --git a/data/maps/DewfordTown/map.json b/data/maps/DewfordTown/map.json
index f073a74368..ac958202a8 100644
--- a/data/maps/DewfordTown/map.json
+++ b/data/maps/DewfordTown/map.json
@@ -39,6 +39,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEWFORD_BRINEY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 12,
"y": 9,
@@ -65,6 +66,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEWFORD_BOAT",
"graphics_id": "OBJ_EVENT_GFX_MR_BRINEYS_BOAT",
"x": 12,
"y": 8,
diff --git a/data/maps/DewfordTown/scripts.inc b/data/maps/DewfordTown/scripts.inc
index d7d9a6c681..7de2ad1dfc 100644
--- a/data/maps/DewfordTown/scripts.inc
+++ b/data/maps/DewfordTown/scripts.inc
@@ -1,15 +1,3 @@
-@ Sailing to and from Dewford uses local IDs from different maps
-@ e.g. Route 104's sail to Dewford script references local IDs from Dewford's map
-@ All of these local IDs are labeled here
-.equ LOCALID_BRINEY_DEWFORD, 2
-.equ LOCALID_BOAT_DEWFORD, 4
-
-.equ LOCALID_BOAT_R109, 1
-.equ LOCALID_BRINEY_R109, 2
-
-.equ LOCALID_BOAT_R104, 7
-.equ LOCALID_BRINEY_R104, 8
-
DewfordTown_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, DewfordTown_OnTransition
end_map_scripts
@@ -123,30 +111,30 @@ DewfordTown_EventScript_FishingNotSoGood::
DewfordTown_EventScript_SailToPetalburg::
call EventScript_BackupMrBrineyLocation
- setobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0
- setobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN, 0
- applymovement LOCALID_BRINEY_DEWFORD, DewfordTown_Movement_BrineyBoardBoat
+ setobjectsubpriority LOCALID_DEWFORD_BRINEY, MAP_DEWFORD_TOWN, 0
+ setobjectsubpriority LOCALID_PLAYER, MAP_DEWFORD_TOWN, 0
+ applymovement LOCALID_DEWFORD_BRINEY, DewfordTown_Movement_BrineyBoardBoat
waitmovement 0
- removeobject LOCALID_BRINEY_DEWFORD
- applymovement OBJ_EVENT_ID_PLAYER, DewfordTown_Movement_PlayerBoardBoat
+ removeobject LOCALID_DEWFORD_BRINEY
+ applymovement LOCALID_PLAYER, DewfordTown_Movement_PlayerBoardBoat
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN
+ hideobjectat LOCALID_PLAYER, MAP_DEWFORD_TOWN
call Common_EventScript_PlayBrineysBoatMusic
- applymovement LOCALID_BOAT_DEWFORD, DewfordTown_Movement_SailToPetalburg
- applymovement OBJ_EVENT_ID_PLAYER, DewfordTown_Movement_SailToPetalburg
+ applymovement LOCALID_DEWFORD_BOAT, DewfordTown_Movement_SailToPetalburg
+ applymovement LOCALID_PLAYER, DewfordTown_Movement_SailToPetalburg
waitmovement 0
- showobjectat OBJ_EVENT_ID_PLAYER, MAP_ROUTE104
+ showobjectat LOCALID_PLAYER, MAP_ROUTE104
call Common_EventScript_StopBrineysBoatMusic
- applymovement OBJ_EVENT_ID_PLAYER, DewfordTown_Movement_ExitBoatPetalburg
+ applymovement LOCALID_PLAYER, DewfordTown_Movement_ExitBoatPetalburg
waitmovement 0
- showobjectat OBJ_EVENT_ID_PLAYER, MAP_ROUTE104
+ showobjectat LOCALID_PLAYER, MAP_ROUTE104
clearflag FLAG_HIDE_BRINEYS_HOUSE_MR_BRINEY
clearflag FLAG_HIDE_BRINEYS_HOUSE_PEEKO
clearflag FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT
setflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN
- hideobjectat LOCALID_BOAT_DEWFORD, MAP_DEWFORD_TOWN
+ hideobjectat LOCALID_DEWFORD_BOAT, MAP_DEWFORD_TOWN
setvar VAR_BOARD_BRINEY_BOAT_STATE, 2
- resetobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN
+ resetobjectsubpriority LOCALID_PLAYER, MAP_DEWFORD_TOWN
warp MAP_ROUTE104_MR_BRINEYS_HOUSE, 5, 4
copyvar VAR_BRINEY_LOCATION, VAR_0x8008
waitstate
@@ -155,39 +143,39 @@ DewfordTown_EventScript_SailToPetalburg::
DewfordTown_EventScript_SailToSlateport::
call EventScript_BackupMrBrineyLocation
- setobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0
- setobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN, 1
- applymovement LOCALID_BRINEY_DEWFORD, DewfordTown_Movement_BrineyBoardBoat
+ setobjectsubpriority LOCALID_DEWFORD_BRINEY, MAP_DEWFORD_TOWN, 0
+ setobjectsubpriority LOCALID_PLAYER, MAP_DEWFORD_TOWN, 1
+ applymovement LOCALID_DEWFORD_BRINEY, DewfordTown_Movement_BrineyBoardBoat
waitmovement 0
- removeobject LOCALID_BRINEY_DEWFORD
- applymovement OBJ_EVENT_ID_PLAYER, DewfordTown_Movement_PlayerBoardBoat
+ removeobject LOCALID_DEWFORD_BRINEY
+ applymovement LOCALID_PLAYER, DewfordTown_Movement_PlayerBoardBoat
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN
+ hideobjectat LOCALID_PLAYER, MAP_DEWFORD_TOWN
call Common_EventScript_PlayBrineysBoatMusic
- applymovement LOCALID_BOAT_DEWFORD, DewfordTown_Movement_SailToSlateport
- applymovement OBJ_EVENT_ID_PLAYER, DewfordTown_Movement_SailToSlateport
+ applymovement LOCALID_DEWFORD_BOAT, DewfordTown_Movement_SailToSlateport
+ applymovement LOCALID_PLAYER, DewfordTown_Movement_SailToSlateport
waitmovement 0
call Common_EventScript_StopBrineysBoatMusic
- showobjectat OBJ_EVENT_ID_PLAYER, MAP_ROUTE109
- applymovement OBJ_EVENT_ID_PLAYER, DewfordTown_Movement_ExitBoatSlateport
+ showobjectat LOCALID_PLAYER, MAP_ROUTE109
+ applymovement LOCALID_PLAYER, DewfordTown_Movement_ExitBoatSlateport
waitmovement 0
- setobjectxyperm LOCALID_BRINEY_R109, 21, 26
- addobject LOCALID_BRINEY_R109
- setobjectsubpriority LOCALID_BRINEY_R109, MAP_ROUTE109, 0
- applymovement LOCALID_BRINEY_R109, DewfordTown_Movement_BrineyExitBoat
+ setobjectxyperm LOCALID_ROUTE109_BRINEY, 21, 26
+ addobject LOCALID_ROUTE109_BRINEY
+ setobjectsubpriority LOCALID_ROUTE109_BRINEY, MAP_ROUTE109, 0
+ applymovement LOCALID_ROUTE109_BRINEY, DewfordTown_Movement_BrineyExitBoat
waitmovement 0
clearflag FLAG_HIDE_ROUTE_109_MR_BRINEY
- addobject LOCALID_BOAT_R109
+ addobject LOCALID_ROUTE109_BOAT
clearflag FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT
setflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN
- hideobjectat LOCALID_BOAT_DEWFORD, MAP_DEWFORD_TOWN
+ hideobjectat LOCALID_DEWFORD_BOAT, MAP_DEWFORD_TOWN
call_if_unset FLAG_DELIVERED_DEVON_GOODS, DewfordTown_EventScript_LandedSlateportDeliverGoods
call_if_set FLAG_DELIVERED_DEVON_GOODS, DewfordTown_EventScript_LandedSlateport
closemessage
copyvar VAR_BRINEY_LOCATION, VAR_0x8008
- resetobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN
- resetobjectsubpriority LOCALID_BRINEY_R109, MAP_ROUTE109
- copyobjectxytoperm LOCALID_BRINEY_R109
+ resetobjectsubpriority LOCALID_PLAYER, MAP_DEWFORD_TOWN
+ resetobjectsubpriority LOCALID_ROUTE109_BRINEY, MAP_ROUTE109
+ copyobjectxytoperm LOCALID_ROUTE109_BRINEY
release
end
diff --git a/data/maps/DewfordTown_Hall/map.json b/data/maps/DewfordTown_Hall/map.json
index 9489a3d1ee..c253d16a61 100644
--- a/data/maps/DewfordTown_Hall/map.json
+++ b/data/maps/DewfordTown_Hall/map.json
@@ -54,6 +54,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEWFORD_HALL_EXPERT_M",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 9,
"y": 3,
@@ -67,6 +68,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEWFORD_HALL_TWIN",
"graphics_id": "OBJ_EVENT_GFX_TWIN",
"x": 5,
"y": 2,
@@ -93,6 +95,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEWFORD_HALL_SCHOOL_KID_M",
"graphics_id": "OBJ_EVENT_GFX_SCHOOL_KID_M",
"x": 12,
"y": 3,
@@ -106,6 +109,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEWFORD_HALL_PSYCHIC_M",
"graphics_id": "OBJ_EVENT_GFX_PSYCHIC_M",
"x": 15,
"y": 3,
diff --git a/data/maps/DewfordTown_Hall/scripts.inc b/data/maps/DewfordTown_Hall/scripts.inc
index f671180d50..c6b842d4e6 100644
--- a/data/maps/DewfordTown_Hall/scripts.inc
+++ b/data/maps/DewfordTown_Hall/scripts.inc
@@ -1,8 +1,3 @@
-.set LOCALID_EXPERT_M, 4
-.set LOCALID_TWIN, 5
-.set LOCALID_SCHOOL_KID_M, 7
-.set LOCALID_PSYCHIC_M, 8
-
DewfordTown_Hall_MapScripts::
end_map_scripts
@@ -55,7 +50,7 @@ DewfordTown_Hall_EventScript_ExpertM::
call Common_EventScript_BufferTrendyPhrase
msgbox DewfordTown_Hall_Text_TVShowAboutTrend, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_EXPERT_M, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_DEWFORD_HALL_EXPERT_M, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
release
end
@@ -66,7 +61,7 @@ DewfordTown_Hall_EventScript_Twin::
call Common_EventScript_BufferTrendyPhrase
msgbox DewfordTown_Hall_Text_IsTrendMorePopularAcrossSea, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_TWIN, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_DEWFORD_HALL_TWIN, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
release
end
@@ -191,7 +186,7 @@ DewfordTown_Hall_EventScript_DontMovePlayer1::
return
DewfordTown_Hall_EventScript_DebateReact1::
- applymovement LOCALID_PSYCHIC_M, DewfordTown_Hall_Movement_PsychicWalkInPlaceLeft
+ applymovement LOCALID_DEWFORD_HALL_PSYCHIC_M, DewfordTown_Hall_Movement_PsychicWalkInPlaceLeft
waitmovement 0
goto_if_eq VAR_0x8008, 0, DewfordTown_Hall_EventScript_PlayerReactWest
goto_if_eq VAR_0x8008, 1, DewfordTown_Hall_EventScript_DontMovePlayer2
@@ -199,7 +194,7 @@ DewfordTown_Hall_EventScript_DebateReact1::
DewfordTown_Hall_EventScript_PlayerReactWest::
goto_if_eq VAR_FACING, DIR_EAST, DewfordTown_Hall_EventScript_DontMovePlayer1
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
@@ -207,7 +202,7 @@ DewfordTown_Hall_EventScript_DontMovePlayer2::
return
DewfordTown_Hall_EventScript_DebateReact2::
- applymovement LOCALID_SCHOOL_KID_M, DewfordTown_Hall_Movement_SchoolKidWalkInPlaceRight
+ applymovement LOCALID_DEWFORD_HALL_SCHOOL_KID_M, DewfordTown_Hall_Movement_SchoolKidWalkInPlaceRight
waitmovement 0
goto_if_eq VAR_0x8008, 0, DewfordTown_Hall_EventScript_PlayerReactNorthSouth
goto_if_eq VAR_0x8008, 1, DewfordTown_Hall_EventScript_PlayerReactEast
@@ -219,18 +214,18 @@ DewfordTown_Hall_EventScript_PlayerReactNorthSouth::
return
DewfordTown_Hall_EventScript_PlayerWalkInPlaceUp::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
DewfordTown_Hall_EventScript_PlayerWalkInPlaceDown::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
DewfordTown_Hall_EventScript_PlayerReactEast::
goto_if_eq VAR_FACING, DIR_WEST, DewfordTown_Hall_EventScript_DontMovePlayer1
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
diff --git a/data/maps/DewfordTown_PokemonCenter_1F/map.json b/data/maps/DewfordTown_PokemonCenter_1F/map.json
index 5e5c7b93e4..4993440839 100644
--- a/data/maps/DewfordTown_PokemonCenter_1F/map.json
+++ b/data/maps/DewfordTown_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_DEWFORD_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/DewfordTown_PokemonCenter_1F/scripts.inc b/data/maps/DewfordTown_PokemonCenter_1F/scripts.inc
index 2e144e293b..d6046c06a5 100644
--- a/data/maps/DewfordTown_PokemonCenter_1F/scripts.inc
+++ b/data/maps/DewfordTown_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
DewfordTown_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, DewfordTown_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -11,7 +9,7 @@ DewfordTown_PokemonCenter_1F_OnTransition:
end
DewfordTown_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_DEWFORD_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/EverGrandeCity_ChampionsRoom/map.json b/data/maps/EverGrandeCity_ChampionsRoom/map.json
index 305a1f16f7..abd9c2e6cf 100644
--- a/data/maps/EverGrandeCity_ChampionsRoom/map.json
+++ b/data/maps/EverGrandeCity_ChampionsRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_CHAMPIONS_ROOM_WALLACE",
"graphics_id": "OBJ_EVENT_GFX_WALLACE",
"x": 6,
"y": 5,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CHAMPIONS_ROOM_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 6,
"y": 12,
@@ -41,6 +43,7 @@
"flag": "FLAG_HIDE_CHAMPIONS_ROOM_RIVAL"
},
{
+ "local_id": "LOCALID_CHAMPIONS_ROOM_BIRCH",
"graphics_id": "OBJ_EVENT_GFX_PROF_BIRCH",
"x": 6,
"y": 12,
diff --git a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc
index 8f86d74983..54262a9d74 100644
--- a/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_ChampionsRoom/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_WALLACE, 1
-.set LOCALID_RIVAL, 2
-.set LOCALID_BIRCH, 3
-
EverGrandeCity_ChampionsRoom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, EverGrandeCity_ChampionsRoom_OnTransition
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_ChampionsRoom_OnWarp
@@ -17,7 +13,7 @@ EverGrandeCity_ChampionsRoom_OnWarp:
end_map_script_table
EverGrandeCity_ChampionsRoom_EventScript_PlayerTurnNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
EverGrandeCity_ChampionsRoom_OnFrame:
@@ -26,10 +22,10 @@ EverGrandeCity_ChampionsRoom_OnFrame:
EverGrandeCity_ChampionsRoom_EventScript_EnterRoom::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkUp4
+ applymovement LOCALID_PLAYER, Common_Movement_WalkUp4
waitmovement 0
delay 40
- applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_ChampionsRoom_Movement_PlayerApproachWallace
+ applymovement LOCALID_PLAYER, EverGrandeCity_ChampionsRoom_Movement_PlayerApproachWallace
waitmovement 0
setvar VAR_TEMP_1, 1
goto EverGrandeCity_ChampionsRoom_EventScript_Wallace
@@ -59,7 +55,7 @@ EverGrandeCity_ChampionsRoom_EventScript_Defeated::
checkplayergender
call_if_eq VAR_RESULT, MALE, EverGrandeCity_ChampionsRoom_EventScript_PlayMayMusic
call_if_eq VAR_RESULT, FEMALE, EverGrandeCity_ChampionsRoom_EventScript_PlayBrendanMusic
- addobject LOCALID_RIVAL
+ addobject LOCALID_CHAMPIONS_ROOM_RIVAL
call EverGrandeCity_ChampionsRoom_EventScript_RivalApproachPlayer
checkplayergender
goto_if_eq VAR_RESULT, MALE, EverGrandeCity_ChampionsRoom_EventScript_MayAdvice
@@ -78,9 +74,9 @@ EverGrandeCity_ChampionsRoom_EventScript_MayAdvice::
msgbox EverGrandeCity_ChampionsRoom_Text_MayAdvice, MSGBOX_DEFAULT
delay 40
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_CHAMPIONS_ROOM_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_CHAMPIONS_ROOM_RIVAL, Common_Movement_Delay48
waitmovement 0
call EverGrandeCity_ChampionsRoom_EventScript_RivalLookBackAndForth
msgbox EverGrandeCity_ChampionsRoom_Text_MayItsAlreadyOver, MSGBOX_DEFAULT
@@ -91,9 +87,9 @@ EverGrandeCity_ChampionsRoom_EventScript_BrendanAdvice::
msgbox EverGrandeCity_ChampionsRoom_Text_BrendanAdvice, MSGBOX_DEFAULT
delay 40
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_CHAMPIONS_ROOM_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_CHAMPIONS_ROOM_RIVAL, Common_Movement_Delay48
waitmovement 0
call EverGrandeCity_ChampionsRoom_EventScript_RivalLookBackAndForth
msgbox EverGrandeCity_ChampionsRoom_Text_BrendanYouveWon, MSGBOX_DEFAULT
@@ -102,37 +98,37 @@ EverGrandeCity_ChampionsRoom_EventScript_BrendanAdvice::
EverGrandeCity_ChampionsRoom_EventScript_BirchArrivesExitForHoF::
closemessage
- addobject LOCALID_BIRCH
- applymovement LOCALID_BIRCH, EverGrandeCity_ChampionsRoom_Movement_BirchArrives
+ addobject LOCALID_CHAMPIONS_ROOM_BIRCH
+ applymovement LOCALID_CHAMPIONS_ROOM_BIRCH, EverGrandeCity_ChampionsRoom_Movement_BirchArrives
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox EverGrandeCity_ChampionsRoom_Text_BirchArriveRatePokedex, MSGBOX_DEFAULT
call ProfBirch_EventScript_RatePokedex
msgbox EverGrandeCity_ChampionsRoom_Text_BirchCongratulations, MSGBOX_DEFAULT
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_CHAMPIONS_ROOM_WALLACE, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 20
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_CHAMPIONS_ROOM_WALLACE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox EverGrandeCity_ChampionsRoom_Text_WallaceComeWithMe, MSGBOX_DEFAULT
closemessage
delay 30
- applymovement LOCALID_WALLACE, EverGrandeCity_ChampionsRoom_Movement_WallaceExitStart
- applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_ChampionsRoom_Movement_PlayerExitStart
- applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterUp
- applymovement LOCALID_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalFollows
+ applymovement LOCALID_CHAMPIONS_ROOM_WALLACE, EverGrandeCity_ChampionsRoom_Movement_WallaceExitStart
+ applymovement LOCALID_PLAYER, EverGrandeCity_ChampionsRoom_Movement_PlayerExitStart
+ applymovement LOCALID_CHAMPIONS_ROOM_BIRCH, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_CHAMPIONS_ROOM_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalFollows
waitmovement 0
delay 20
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox EverGrandeCity_ChampionsRoom_Text_WallaceWaitOutside, MSGBOX_DEFAULT
checkplayergender
call_if_eq VAR_RESULT, MALE, EverGrandeCity_ChampionsRoom_EventScript_MayCongratulations
call_if_eq VAR_RESULT, FEMALE, EverGrandeCity_ChampionsRoom_EventScript_BrendanCongratulations
closemessage
- applymovement LOCALID_WALLACE, EverGrandeCity_ChampionsRoom_Movement_WallaceExit
- applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_ChampionsRoom_Movement_PlayerExit
+ applymovement LOCALID_CHAMPIONS_ROOM_WALLACE, EverGrandeCity_ChampionsRoom_Movement_WallaceExit
+ applymovement LOCALID_PLAYER, EverGrandeCity_ChampionsRoom_Movement_PlayerExit
waitmovement 0
setflag FLAG_HIDE_PETALBURG_GYM_GREETER
warp MAP_EVER_GRANDE_CITY_HALL_OF_FAME, 7, 16
@@ -149,14 +145,14 @@ EverGrandeCity_ChampionsRoom_EventScript_BrendanCongratulations::
return
EverGrandeCity_ChampionsRoom_EventScript_RivalApproachPlayer::
- applymovement LOCALID_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalApproachPlayer
+ applymovement LOCALID_CHAMPIONS_ROOM_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
EverGrandeCity_ChampionsRoom_EventScript_RivalLookBackAndForth::
- applymovement LOCALID_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalLookBackAndForth
+ applymovement LOCALID_CHAMPIONS_ROOM_RIVAL, EverGrandeCity_ChampionsRoom_Movement_RivalLookBackAndForth
waitmovement 0
return
diff --git a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc
index e5787974ea..693f0b39b8 100644
--- a/data/maps/EverGrandeCity_DrakesRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_DrakesRoom/scripts.inc
@@ -10,7 +10,7 @@ EverGrandeCity_DrakesRoom_OnWarp:
end_map_script_table
EverGrandeCity_DrakesRoom_EventScript_PlayerTurnNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
EverGrandeCity_DrakesRoom_OnFrame:
diff --git a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc
index bf00f8c077..c70e35fb34 100644
--- a/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_GlaciasRoom/scripts.inc
@@ -9,7 +9,7 @@ EverGrandeCity_GlaciasRoom_OnWarp:
end_map_script_table
EverGrandeCity_GlaciasRoom_EventScript_PlayerTurnNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
EverGrandeCity_GlaciasRoom_OnFrame:
diff --git a/data/maps/EverGrandeCity_Hall1/scripts.inc b/data/maps/EverGrandeCity_Hall1/scripts.inc
index 362f77518b..89bd11d0d9 100644
--- a/data/maps/EverGrandeCity_Hall1/scripts.inc
+++ b/data/maps/EverGrandeCity_Hall1/scripts.inc
@@ -7,6 +7,6 @@ EverGrandeCity_Hall1_OnWarp:
end_map_script_table
EverGrandeCity_Hall1_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
diff --git a/data/maps/EverGrandeCity_Hall2/scripts.inc b/data/maps/EverGrandeCity_Hall2/scripts.inc
index 8decfb4d1c..ba1fb34f71 100644
--- a/data/maps/EverGrandeCity_Hall2/scripts.inc
+++ b/data/maps/EverGrandeCity_Hall2/scripts.inc
@@ -7,6 +7,6 @@ EverGrandeCity_Hall2_OnWarp:
end_map_script_table
EverGrandeCity_Hall2_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
diff --git a/data/maps/EverGrandeCity_Hall3/scripts.inc b/data/maps/EverGrandeCity_Hall3/scripts.inc
index a05090ea58..7523371178 100644
--- a/data/maps/EverGrandeCity_Hall3/scripts.inc
+++ b/data/maps/EverGrandeCity_Hall3/scripts.inc
@@ -7,6 +7,6 @@ EverGrandeCity_Hall3_OnWarp:
end_map_script_table
EverGrandeCity_Hall3_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
diff --git a/data/maps/EverGrandeCity_Hall4/scripts.inc b/data/maps/EverGrandeCity_Hall4/scripts.inc
index 34777731ee..032a0b8bca 100644
--- a/data/maps/EverGrandeCity_Hall4/scripts.inc
+++ b/data/maps/EverGrandeCity_Hall4/scripts.inc
@@ -7,6 +7,6 @@ EverGrandeCity_Hall4_OnWarp:
end_map_script_table
EverGrandeCity_Hall4_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
diff --git a/data/maps/EverGrandeCity_Hall5/scripts.inc b/data/maps/EverGrandeCity_Hall5/scripts.inc
index b09423da4b..0ab8e67472 100644
--- a/data/maps/EverGrandeCity_Hall5/scripts.inc
+++ b/data/maps/EverGrandeCity_Hall5/scripts.inc
@@ -7,6 +7,6 @@ EverGrandeCity_Hall5_OnWarp:
end_map_script_table
EverGrandeCity_Hall5_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
diff --git a/data/maps/EverGrandeCity_HallOfFame/map.json b/data/maps/EverGrandeCity_HallOfFame/map.json
index 82219dfd43..5f3f30c27d 100644
--- a/data/maps/EverGrandeCity_HallOfFame/map.json
+++ b/data/maps/EverGrandeCity_HallOfFame/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_HALL_OF_FAME_WALLACE",
"graphics_id": "OBJ_EVENT_GFX_WALLACE",
"x": 6,
"y": 16,
diff --git a/data/maps/EverGrandeCity_HallOfFame/scripts.inc b/data/maps/EverGrandeCity_HallOfFame/scripts.inc
index 3183279815..0b2cc37b98 100644
--- a/data/maps/EverGrandeCity_HallOfFame/scripts.inc
+++ b/data/maps/EverGrandeCity_HallOfFame/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WALLACE, 1
-
EverGrandeCity_HallOfFame_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, EverGrandeCity_HallOfFame_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, EverGrandeCity_HallOfFame_OnWarp
@@ -10,7 +8,7 @@ EverGrandeCity_HallOfFame_OnWarp:
end_map_script_table
EverGrandeCity_HallOfFame_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
EverGrandeCity_HallOfFame_OnFrame:
@@ -19,25 +17,25 @@ EverGrandeCity_HallOfFame_OnFrame:
EverGrandeCity_HallOfFame_EventScript_EnterHallOfFame::
lockall
- applymovement LOCALID_WALLACE, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1
- applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1
+ applymovement LOCALID_HALL_OF_FAME_WALLACE, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1
+ applymovement LOCALID_PLAYER, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame1
waitmovement 0
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterRight
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_HALL_OF_FAME_WALLACE, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox EverGrandeCity_HallOfFame_Text_HereWeHonorLeagueChampions, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_WALLACE, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame2
- applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame2
+ applymovement LOCALID_HALL_OF_FAME_WALLACE, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame2
+ applymovement LOCALID_PLAYER, EverGrandeCity_HallOfFame_Movement_WalkIntoHallOfFame2
waitmovement 0
delay 20
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterRight
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_HALL_OF_FAME_WALLACE, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox EverGrandeCity_HallOfFame_Text_LetsRecordYouAndYourPartnersNames, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterUp
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_HALL_OF_FAME_WALLACE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 20
dofieldeffect FLDEFF_HALL_OF_FAME_RECORD
diff --git a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc
index ab3dc51656..10b83161f4 100644
--- a/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_PhoebesRoom/scripts.inc
@@ -9,7 +9,7 @@ EverGrandeCity_PhoebesRoom_OnWarp:
end_map_script_table
EverGrandeCity_PhoebesRoom_EventScript_PlayerTurnNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
EverGrandeCity_PhoebesRoom_OnFrame:
diff --git a/data/maps/EverGrandeCity_PokemonCenter_1F/map.json b/data/maps/EverGrandeCity_PokemonCenter_1F/map.json
index a146dc11a2..b74207871d 100644
--- a/data/maps/EverGrandeCity_PokemonCenter_1F/map.json
+++ b/data/maps/EverGrandeCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_EVER_GRANDE_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
@@ -54,6 +55,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_EVER_GRANDE_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 9,
"y": 4,
diff --git a/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc
index dcd246714d..16d8b83138 100644
--- a/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/EverGrandeCity_PokemonCenter_1F/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_NURSE, 1
-.set LOCALID_SCOTT, 4
-
EverGrandeCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, EverGrandeCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -17,7 +14,7 @@ EverGrandeCity_PokemonCenter_1F_EventScript_TryShowScott::
return
EverGrandeCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_EVER_GRANDE_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
@@ -44,17 +41,17 @@ EverGrandeCity_PokemonCenter_1F_EventScript_Scott::
setflag FLAG_MET_SCOTT_IN_EVERGRANDE
playse SE_EXIT
waitse
- removeobject LOCALID_SCOTT
+ removeobject LOCALID_EVER_GRANDE_SCOTT
release
end
EverGrandeCity_PokemonCenter_1F_EventScript_ScottExitNorth::
- applymovement LOCALID_SCOTT, EverGrandeCity_PokemonCenter_1F_Movement_ScottExitNorth
+ applymovement LOCALID_EVER_GRANDE_SCOTT, EverGrandeCity_PokemonCenter_1F_Movement_ScottExitNorth
waitmovement 0
return
EverGrandeCity_PokemonCenter_1F_EventScript_ScottExit::
- applymovement LOCALID_SCOTT, EverGrandeCity_PokemonCenter_1F_Movement_ScottExit
+ applymovement LOCALID_EVER_GRANDE_SCOTT, EverGrandeCity_PokemonCenter_1F_Movement_ScottExit
waitmovement 0
return
diff --git a/data/maps/EverGrandeCity_PokemonLeague_1F/map.json b/data/maps/EverGrandeCity_PokemonLeague_1F/map.json
index 6dd97c0b72..e599b815b6 100644
--- a/data/maps/EverGrandeCity_PokemonLeague_1F/map.json
+++ b/data/maps/EverGrandeCity_PokemonLeague_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_LEAGUE_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 3,
"y": 2,
@@ -41,6 +42,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LEAGUE_GUARD_1",
"graphics_id": "OBJ_EVENT_GFX_MAN_3",
"x": 8,
"y": 2,
@@ -54,6 +56,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LEAGUE_GUARD_2",
"graphics_id": "OBJ_EVENT_GFX_MAN_3",
"x": 11,
"y": 2,
diff --git a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc
index 5c05ce836d..e6ea2e1a9a 100644
--- a/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc
+++ b/data/maps/EverGrandeCity_PokemonLeague_1F/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_NURSE, 1
-.set LOCALID_GUARD_1, 3
-.set LOCALID_GUARD_2, 4
-
EverGrandeCity_PokemonLeague_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, EverGrandeCity_PokemonLeague_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -14,12 +10,12 @@ EverGrandeCity_PokemonLeague_1F_OnTransition:
end
EverGrandeCity_PokemonLeague_1F_EventScript_GuardsBlockDoor::
- setobjectxyperm LOCALID_GUARD_1, 9, 2
- setobjectxyperm LOCALID_GUARD_2, 10, 2
+ setobjectxyperm LOCALID_LEAGUE_GUARD_1, 9, 2
+ setobjectxyperm LOCALID_LEAGUE_GUARD_2, 10, 2
return
EverGrandeCity_PokemonLeague_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_LEAGUE_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
@@ -45,9 +41,7 @@ EverGrandeCity_PokemonLeague_1F_Pokemart:
.2byte ITEM_FULL_HEAL
.2byte ITEM_REVIVE
.2byte ITEM_MAX_REPEL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
@ The door guards only check for FLAG_BADGE06_GET because Winonas badge is the only one that can be skipped
@ Its assumed the player has the remaining badges
@@ -62,8 +56,8 @@ EverGrandeCity_PokemonLeague_1F_EventScript_DoorGuard::
delay 120
goto_if_unset FLAG_BADGE06_GET, EverGrandeCity_PokemonLeague_1F_EventScript_NotAllBadges
closemessage
- applymovement LOCALID_GUARD_1, EverGrandeCity_PokemonLeague_1F_Movement_LeftGuardOutOfWay
- applymovement LOCALID_GUARD_2, EverGrandeCity_PokemonLeague_1F_Movement_RightGuardOutOfWay
+ applymovement LOCALID_LEAGUE_GUARD_1, EverGrandeCity_PokemonLeague_1F_Movement_LeftGuardOutOfWay
+ applymovement LOCALID_LEAGUE_GUARD_2, EverGrandeCity_PokemonLeague_1F_Movement_RightGuardOutOfWay
waitmovement 0
delay 10
playfanfare MUS_OBTAIN_BADGE
@@ -71,19 +65,19 @@ EverGrandeCity_PokemonLeague_1F_EventScript_DoorGuard::
waitmessage
waitfanfare
closemessage
- copyobjectxytoperm LOCALID_GUARD_1
- copyobjectxytoperm LOCALID_GUARD_2
+ copyobjectxytoperm LOCALID_LEAGUE_GUARD_1
+ copyobjectxytoperm LOCALID_LEAGUE_GUARD_2
setflag FLAG_ENTERED_ELITE_FOUR
releaseall
end
EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromRight::
- applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromRight
+ applymovement LOCALID_PLAYER, EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromRight
waitmovement 0
return
EverGrandeCity_PokemonLeague_1F_EventScript_PlayerMoveToFrontFromLeft::
- applymovement OBJ_EVENT_ID_PLAYER, EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromLeft
+ applymovement LOCALID_PLAYER, EverGrandeCity_PokemonLeague_1F_Movement_MoveToFrontFromLeft
waitmovement 0
return
diff --git a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc
index 2e04dbbbb8..be97dafd1b 100644
--- a/data/maps/EverGrandeCity_SidneysRoom/scripts.inc
+++ b/data/maps/EverGrandeCity_SidneysRoom/scripts.inc
@@ -28,7 +28,7 @@ EverGrandeCity_SidneysRoom_OnWarp:
end_map_script_table
EverGrandeCity_SidneysRoom_EventScript_PlayerTurnNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
EverGrandeCity_SidneysRoom_OnFrame:
diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/map.json b/data/maps/FallarborTown_BattleTentBattleRoom/map.json
index 7b702dc0e5..a03588eca6 100644
--- a/data/maps/FallarborTown_BattleTentBattleRoom/map.json
+++ b/data/maps/FallarborTown_BattleTentBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FALLARBOR_TENT_BATTLE_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 4,
"y": 8,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FALLARBOR_TENT_BATTLE_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 3,
"y": 2,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FALLARBOR_TENT_BATTLE_OPPONENT",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 5,
"y": 1,
diff --git a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc
index c3de569488..bc3d1014bc 100644
--- a/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc
+++ b/data/maps/FallarborTown_BattleTentBattleRoom/scripts.inc
@@ -1,17 +1,13 @@
-.set LOCALID_PLAYER, 1
-.set LOCALID_ATTENDANT, 2
-.set LOCALID_OPPONENT, 3
-
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_FALLARBOR_TENT_BATTLE_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_1.
+@ The graphics of the opponent are represented with VAR_OBJ_GFX_ID_0, which will ultimately be set by tower_setopponent.
FallarborTown_BattleTentBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, FallarborTown_BattleTentBattleRoom_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentBattleRoom_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentBattleRoom_OnWarp
end_map_scripts
- @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
- @ The player is represented instead by object event 1, which has the gfx id VAR_OBJ_GFX_ID_1
- @ The opponent is represented by object event 3, which has the gfx id VAR_OBJ_GFX_ID_0
-
FallarborTown_BattleTentBattleRoom_OnTransition:
call FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx
end
@@ -38,17 +34,17 @@ FallarborTown_BattleTentBattleRoom_OnFrame:
FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom::
lockall
- showobjectat LOCALID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
- applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter
+ showobjectat LOCALID_FALLARBOR_TENT_BATTLE_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter
waitmovement 0
frontier_get FRONTIER_DATA_BATTLE_NUM
goto_if_ne VAR_RESULT, 0, FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge
FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter::
tower_setopponent
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter
+ addobject LOCALID_FALLARBOR_TENT_BATTLE_OPPONENT
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_OPPONENT, FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter
waitmovement 0
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_M_BELLY_DRUM
waitse
waitmovement 0
@@ -59,7 +55,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter::
call BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle
switch VAR_RESULT
case 1, FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_M_SNORE
waitse
waitmovement 0
@@ -72,7 +68,7 @@ FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost::
waitstate
FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent::
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_BANG
waitse
waitmovement 0
@@ -84,12 +80,12 @@ FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum::
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
switch VAR_RESULT
case 3, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon
- applymovement LOCALID_OPPONENT, FallarborTown_BattleTentBattleRoom_Movement_OpponentExit
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_OPPONENT, FallarborTown_BattleTentBattleRoom_Movement_OpponentExit
waitmovement 0
- removeobject LOCALID_OPPONENT
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer
+ removeobject LOCALID_FALLARBOR_TENT_BATTLE_OPPONENT
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
- applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_MonsWillBeRestored, MSGBOX_DEFAULT
special LoadPlayerParty
@@ -126,9 +122,9 @@ FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge::
FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge::
closemessage
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos
waitmovement 0
- applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle
waitmovement 0
goto FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter
waitstate
@@ -168,9 +164,9 @@ FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge::
end
FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge::
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
- applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant
+ applymovement LOCALID_FALLARBOR_TENT_BATTLE_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant
waitmovement 0
goto FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
end
@@ -234,9 +230,9 @@ FallarborTown_BattleTentBattleRoom_OnWarp:
end_map_script_table
FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects::
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
hideobjectat LOCALID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
- removeobject LOCALID_OPPONENT
+ hideobjectat LOCALID_FALLARBOR_TENT_BATTLE_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
+ removeobject LOCALID_FALLARBOR_TENT_BATTLE_OPPONENT
setvar VAR_TEMP_1, 1
end
diff --git a/data/maps/FallarborTown_BattleTentCorridor/map.json b/data/maps/FallarborTown_BattleTentCorridor/map.json
index c086a32880..111889fe07 100644
--- a/data/maps/FallarborTown_BattleTentCorridor/map.json
+++ b/data/maps/FallarborTown_BattleTentCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FALLARBOR_TENT_CORRIDOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 2,
"y": 6,
diff --git a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc
index 6a5032ecbc..dda0fdde73 100644
--- a/data/maps/FallarborTown_BattleTentCorridor/scripts.inc
+++ b/data/maps/FallarborTown_BattleTentCorridor/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
FallarborTown_BattleTentCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentCorridor_OnFrame
end_map_scripts
@@ -11,13 +9,13 @@ FallarborTown_BattleTentCorridor_OnFrame:
FallarborTown_BattleTentCorridor_EventScript_EnterCorridor::
lockall
setvar VAR_TEMP_0, 1
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentCorridor_Movement_WalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_WalkToDoor
+ applymovement LOCALID_FALLARBOR_TENT_CORRIDOR_ATTENDANT, FallarborTown_BattleTentCorridor_Movement_WalkToDoor
+ applymovement LOCALID_PLAYER, FallarborTown_BattleTentCorridor_Movement_WalkToDoor
waitmovement 0
opendoor 2, 1
waitdooranim
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentCorridor_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentCorridor_Movement_PlayerEnterDoor
+ applymovement LOCALID_FALLARBOR_TENT_CORRIDOR_ATTENDANT, FallarborTown_BattleTentCorridor_Movement_AttendantEnterDoor
+ applymovement LOCALID_PLAYER, FallarborTown_BattleTentCorridor_Movement_PlayerEnterDoor
waitmovement 0
closedoor 2, 1
waitdooranim
diff --git a/data/maps/FallarborTown_BattleTentLobby/map.json b/data/maps/FallarborTown_BattleTentLobby/map.json
index b8f274df31..16a0b81dfa 100644
--- a/data/maps/FallarborTown_BattleTentLobby/map.json
+++ b/data/maps/FallarborTown_BattleTentLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FALLARBOR_TENT_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 6,
"y": 5,
diff --git a/data/maps/FallarborTown_BattleTentLobby/scripts.inc b/data/maps/FallarborTown_BattleTentLobby/scripts.inc
index aa0346582e..8bbf5978af 100644
--- a/data/maps/FallarborTown_BattleTentLobby/scripts.inc
+++ b/data/maps/FallarborTown_BattleTentLobby/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
FallarborTown_BattleTentLobby_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentLobby_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentLobby_OnWarp
@@ -11,7 +9,7 @@ FallarborTown_BattleTentLobby_OnWarp:
FallarborTown_BattleTentLobby_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
FallarborTown_BattleTentLobby_OnFrame:
@@ -191,13 +189,13 @@ FallarborTown_BattleTentLobby_EventScript_EndCancelChallenge::
end
FallarborTown_BattleTentLobby_EventScript_WalkToDoor::
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor
+ applymovement LOCALID_FALLARBOR_TENT_ATTENDANT, FallarborTown_BattleTentLobby_Movement_AttendantWalkToDoor
+ applymovement LOCALID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerWalkToDoor
waitmovement 0
opendoor 6, 1
waitdooranim
- applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentLobby_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerEnterDoor
+ applymovement LOCALID_FALLARBOR_TENT_ATTENDANT, FallarborTown_BattleTentLobby_Movement_AttendantEnterDoor
+ applymovement LOCALID_PLAYER, FallarborTown_BattleTentLobby_Movement_PlayerEnterDoor
waitmovement 0
closedoor 6, 1
waitdooranim
diff --git a/data/maps/FallarborTown_Mart/map.json b/data/maps/FallarborTown_Mart/map.json
index c72605a36d..b4e4560577 100644
--- a/data/maps/FallarborTown_Mart/map.json
+++ b/data/maps/FallarborTown_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FALLARBOR_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/FallarborTown_Mart/scripts.inc b/data/maps/FallarborTown_Mart/scripts.inc
index be92c3ddcb..917c8457b5 100644
--- a/data/maps/FallarborTown_Mart/scripts.inc
+++ b/data/maps/FallarborTown_Mart/scripts.inc
@@ -25,9 +25,7 @@ FallarborTown_Mart_Pokemart:
.2byte ITEM_X_DEFEND
.2byte ITEM_DIRE_HIT
.2byte ITEM_GUARD_SPEC
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
FallarborTown_Mart_EventScript_Woman::
msgbox FallarborTown_Mart_Text_DecidingSkittyEvolve, MSGBOX_NPC
diff --git a/data/maps/FallarborTown_MoveRelearnersHouse/map.json b/data/maps/FallarborTown_MoveRelearnersHouse/map.json
index 9479677200..9cde3440cb 100644
--- a/data/maps/FallarborTown_MoveRelearnersHouse/map.json
+++ b/data/maps/FallarborTown_MoveRelearnersHouse/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MOVE_RELEARNER",
"graphics_id": "OBJ_EVENT_GFX_FAT_MAN",
"x": 4,
"y": 4,
diff --git a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc
index 7739a1c8dd..13ae9b4b27 100644
--- a/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc
+++ b/data/maps/FallarborTown_MoveRelearnersHouse/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_MOVE_RELEARNER, 1
-
FallarborTown_MoveRelearnersHouse_MapScripts::
end_map_scripts
diff --git a/data/maps/FallarborTown_PokemonCenter_1F/map.json b/data/maps/FallarborTown_PokemonCenter_1F/map.json
index 93204a215a..b3ca4a253e 100644
--- a/data/maps/FallarborTown_PokemonCenter_1F/map.json
+++ b/data/maps/FallarborTown_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FALLARBOR_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
@@ -54,6 +55,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FALLARBOR_LANETTE",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_2",
"x": 10,
"y": 2,
@@ -64,7 +66,7 @@
"trainer_type": "TRAINER_TYPE_NONE",
"trainer_sight_or_berry_tree_id": "0",
"script": "FallarborTown_PokemonCenter_1F_EventScript_Lanette",
- "flag": "FLAG_HIDE_FALLORBOR_POKEMON_CENTER_LANETTE"
+ "flag": "FLAG_HIDE_FALLARBOR_POKEMON_CENTER_LANETTE"
}
],
"warp_events": [
diff --git a/data/maps/FallarborTown_PokemonCenter_1F/scripts.inc b/data/maps/FallarborTown_PokemonCenter_1F/scripts.inc
index b61edc8af7..6e769fa229 100644
--- a/data/maps/FallarborTown_PokemonCenter_1F/scripts.inc
+++ b/data/maps/FallarborTown_PokemonCenter_1F/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_NURSE, 1
-.set LOCALID_LANETTE, 4
-
FallarborTown_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, FallarborTown_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -12,7 +9,7 @@ FallarborTown_PokemonCenter_1F_OnTransition:
end
FallarborTown_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_FALLARBOR_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
@@ -38,20 +35,20 @@ FallarborTown_PokemonCenter_1F_EventScript_Lanette::
end
FallarborTown_PokemonCenter_1F_EventScript_LanetteExitNorth::
- applymovement LOCALID_LANETTE, FallarborTown_PokemonCenter_1F_Movement_LanetteExitNorth
+ applymovement LOCALID_FALLARBOR_LANETTE, FallarborTown_PokemonCenter_1F_Movement_LanetteExitNorth
waitmovement 0
goto FallarborTown_PokemonCenter_1F_EventScript_LanetteExited
end
FallarborTown_PokemonCenter_1F_EventScript_LanetteExitWest::
- applymovement LOCALID_LANETTE, FallarborTown_PokemonCenter_1F_Movement_LanetteExitWest
+ applymovement LOCALID_FALLARBOR_LANETTE, FallarborTown_PokemonCenter_1F_Movement_LanetteExitWest
waitmovement 0
goto FallarborTown_PokemonCenter_1F_EventScript_LanetteExited
end
FallarborTown_PokemonCenter_1F_EventScript_LanetteExited::
playse SE_SLIDING_DOOR
- removeobject LOCALID_LANETTE
+ removeobject LOCALID_FALLARBOR_LANETTE
clearflag FLAG_HIDE_LANETTES_HOUSE_LANETTE
release
end
diff --git a/data/maps/FarawayIsland_Entrance/map.json b/data/maps/FarawayIsland_Entrance/map.json
index bd42f12953..bf3ea1d863 100644
--- a/data/maps/FarawayIsland_Entrance/map.json
+++ b/data/maps/FarawayIsland_Entrance/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FARAWAY_ISLAND_SAILOR",
"graphics_id": "OBJ_EVENT_GFX_SAILOR",
"x": 13,
"y": 39,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FARAWAY_ISLAND_SS_TIDAL",
"graphics_id": "OBJ_EVENT_GFX_SS_TIDAL",
"x": 13,
"y": 41,
diff --git a/data/maps/FarawayIsland_Entrance/scripts.inc b/data/maps/FarawayIsland_Entrance/scripts.inc
index 3f38aff73c..863dd513b5 100644
--- a/data/maps/FarawayIsland_Entrance/scripts.inc
+++ b/data/maps/FarawayIsland_Entrance/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_SAILOR, 1
-.set LOCALID_SS_TIDAL, 2
-
FarawayIsland_Entrance_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, FarawayIsland_Entrance_OnTransition
end_map_scripts
@@ -29,8 +26,8 @@ FarawayIsland_Entrance_EventScript_Sailor::
applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
- hideobjectat LOCALID_SAILOR, MAP_FARAWAY_ISLAND_ENTRANCE
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ hideobjectat LOCALID_FARAWAY_ISLAND_SAILOR, MAP_FARAWAY_ISLAND_ENTRANCE
+ setvar VAR_0x8004, LOCALID_FARAWAY_ISLAND_SS_TIDAL
call Common_EventScript_FerryDepartIsland
warp MAP_LILYCOVE_CITY_HARBOR, 8, 11
waitstate
diff --git a/data/maps/FarawayIsland_Interior/map.json b/data/maps/FarawayIsland_Interior/map.json
index 14850995ca..53be2ae914 100644
--- a/data/maps/FarawayIsland_Interior/map.json
+++ b/data/maps/FarawayIsland_Interior/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FARAWAY_ISLAND_MEW",
"graphics_id": "OBJ_EVENT_GFX_MEW",
"x": 13,
"y": 17,
diff --git a/data/maps/FarawayIsland_Interior/scripts.inc b/data/maps/FarawayIsland_Interior/scripts.inc
index 81760e3e8f..8880b333af 100644
--- a/data/maps/FarawayIsland_Interior/scripts.inc
+++ b/data/maps/FarawayIsland_Interior/scripts.inc
@@ -1,5 +1,3 @@
-@ Note: LOCALID_FARAWAY_ISLAND_MEW is a local id for this map used elsewhere. It's defined in event_objects.h
-
FarawayIsland_Interior_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, FarawayIsland_Interior_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, FarawayIsland_Interior_OnTransition
diff --git a/data/maps/FortreeCity_DecorationShop/scripts.inc b/data/maps/FortreeCity_DecorationShop/scripts.inc
index 26ce2a52a8..43c101e592 100644
--- a/data/maps/FortreeCity_DecorationShop/scripts.inc
+++ b/data/maps/FortreeCity_DecorationShop/scripts.inc
@@ -29,9 +29,7 @@ FortreeCity_DecorationShop_PokemartDecor_Desks:
.2byte DECOR_BRICK_DESK
.2byte DECOR_CAMP_DESK
.2byte DECOR_HARD_DESK
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
FortreeCity_DecorationShop_EventScript_ClerkChairs::
lock
@@ -53,9 +51,7 @@ FortreeCity_DecorationShop_PokemartDecor_Chairs:
.2byte DECOR_BRICK_CHAIR
.2byte DECOR_CAMP_CHAIR
.2byte DECOR_HARD_CHAIR
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
FortreeCity_DecorationShop_Text_MerchandiseSentToPC:
.string "Merchandise you buy here is sent to\n"
diff --git a/data/maps/FortreeCity_House4/map.json b/data/maps/FortreeCity_House4/map.json
index 8123d2c4d7..778f0d7465 100644
--- a/data/maps/FortreeCity_House4/map.json
+++ b/data/maps/FortreeCity_House4/map.json
@@ -41,6 +41,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FORTREE_HOUSE_WINGULL",
"graphics_id": "OBJ_EVENT_GFX_WINGULL",
"x": 2,
"y": 3,
diff --git a/data/maps/FortreeCity_House4/scripts.inc b/data/maps/FortreeCity_House4/scripts.inc
index 3e9fdc4c4d..07634e9ab5 100644
--- a/data/maps/FortreeCity_House4/scripts.inc
+++ b/data/maps/FortreeCity_House4/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WINGULL, 3
-
FortreeCity_House4_MapScripts::
end_map_scripts
@@ -16,9 +14,9 @@ FortreeCity_House4_EventScript_Boy::
closemessage
setflag FLAG_WINGULL_SENT_ON_ERRAND
clearflag FLAG_HIDE_MOSSDEEP_CITY_HOUSE_2_WINGULL
- applymovement LOCALID_WINGULL, FortreeCity_House4_Movement_WingullExit
+ applymovement LOCALID_FORTREE_HOUSE_WINGULL, FortreeCity_House4_Movement_WingullExit
waitmovement 0
- removeobject LOCALID_WINGULL
+ removeobject LOCALID_FORTREE_HOUSE_WINGULL
releaseall
end
diff --git a/data/maps/FortreeCity_Mart/map.json b/data/maps/FortreeCity_Mart/map.json
index 27a82e69f3..8620c47863 100644
--- a/data/maps/FortreeCity_Mart/map.json
+++ b/data/maps/FortreeCity_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FORTREE_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/FortreeCity_Mart/scripts.inc b/data/maps/FortreeCity_Mart/scripts.inc
index 286602611b..7b80edb027 100644
--- a/data/maps/FortreeCity_Mart/scripts.inc
+++ b/data/maps/FortreeCity_Mart/scripts.inc
@@ -23,9 +23,7 @@ FortreeCity_Mart_Pokemart:
.2byte ITEM_REVIVE
.2byte ITEM_SUPER_REPEL
.2byte ITEM_WOOD_MAIL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
FortreeCity_Mart_EventScript_Woman::
msgbox FortreeCity_Mart_Text_SuperRepelBetter, MSGBOX_NPC
diff --git a/data/maps/FortreeCity_PokemonCenter_1F/map.json b/data/maps/FortreeCity_PokemonCenter_1F/map.json
index e28907ad4b..6b64978d15 100644
--- a/data/maps/FortreeCity_PokemonCenter_1F/map.json
+++ b/data/maps/FortreeCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FORTREE_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/FortreeCity_PokemonCenter_1F/scripts.inc b/data/maps/FortreeCity_PokemonCenter_1F/scripts.inc
index 5ca69277c9..7c401ba993 100644
--- a/data/maps/FortreeCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/FortreeCity_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
FortreeCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, FortreeCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -10,7 +8,7 @@ FortreeCity_PokemonCenter_1F_OnTransition:
end
FortreeCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_FORTREE_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/GraniteCave_StevensRoom/map.json b/data/maps/GraniteCave_StevensRoom/map.json
index 280af56c81..9529a999e2 100644
--- a/data/maps/GraniteCave_StevensRoom/map.json
+++ b/data/maps/GraniteCave_StevensRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_GRANITE_CAVE_STEVEN",
"graphics_id": "OBJ_EVENT_GFX_STEVEN",
"x": 7,
"y": 8,
diff --git a/data/maps/GraniteCave_StevensRoom/scripts.inc b/data/maps/GraniteCave_StevensRoom/scripts.inc
index da74cd3f87..4a84711522 100644
--- a/data/maps/GraniteCave_StevensRoom/scripts.inc
+++ b/data/maps/GraniteCave_StevensRoom/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_STEVEN, 1
-
GraniteCave_StevensRoom_MapScripts::
end_map_scripts
@@ -29,24 +27,24 @@ GraniteCave_StevensRoom_EventScript_Steven::
call_if_eq VAR_FACING, DIR_WEST, GraniteCave_StevensRoom_EventScript_StevenExitWestEast
call_if_eq VAR_FACING, DIR_EAST, GraniteCave_StevensRoom_EventScript_StevenExitWestEast
playse SE_EXIT
- removeobject LOCALID_STEVEN
+ removeobject LOCALID_GRANITE_CAVE_STEVEN
release
end
GraniteCave_StevensRoom_EventScript_StevenExitNorth::
- applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExit
+ applymovement LOCALID_GRANITE_CAVE_STEVEN, GraniteCave_StevensRoom_Movement_StevenExit
waitmovement 0
return
GraniteCave_StevensRoom_EventScript_StevenExitWestEast::
- applymovement OBJ_EVENT_ID_PLAYER, GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit
- applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExit
+ applymovement LOCALID_PLAYER, GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit
+ applymovement LOCALID_GRANITE_CAVE_STEVEN, GraniteCave_StevensRoom_Movement_StevenExit
waitmovement 0
return
GraniteCave_StevensRoom_EventScript_StevenExitSouth::
- applymovement OBJ_EVENT_ID_PLAYER, GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit
- applymovement LOCALID_STEVEN, GraniteCave_StevensRoom_Movement_StevenExitSouth
+ applymovement LOCALID_PLAYER, GraniteCave_StevensRoom_Movement_PlayerTurnTowardExit
+ applymovement LOCALID_GRANITE_CAVE_STEVEN, GraniteCave_StevensRoom_Movement_StevenExitSouth
waitmovement 0
return
diff --git a/data/maps/InsideOfTruck/map.json b/data/maps/InsideOfTruck/map.json
index 4b027853ad..f767ddf43f 100644
--- a/data/maps/InsideOfTruck/map.json
+++ b/data/maps/InsideOfTruck/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TRUCK_BOX_TOP",
"graphics_id": "OBJ_EVENT_GFX_MOVING_BOX",
"x": 0,
"y": 0,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRUCK_BOX_BOTTOM_L",
"graphics_id": "OBJ_EVENT_GFX_MOVING_BOX",
"x": 0,
"y": 3,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRUCK_BOX_BOTTOM_R",
"graphics_id": "OBJ_EVENT_GFX_MOVING_BOX",
"x": 2,
"y": 3,
diff --git a/data/maps/JaggedPass/map.json b/data/maps/JaggedPass/map.json
index ba4cdf3e0e..59d0663574 100644
--- a/data/maps/JaggedPass/map.json
+++ b/data/maps/JaggedPass/map.json
@@ -67,6 +67,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MAGMA_HIDEOUT_GUARD",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 16,
"y": 19,
diff --git a/data/maps/JaggedPass/scripts.inc b/data/maps/JaggedPass/scripts.inc
index 6f08db61c7..5adb9787db 100644
--- a/data/maps/JaggedPass/scripts.inc
+++ b/data/maps/JaggedPass/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_HIDEOUT_GUARD, 5
-
JaggedPass_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, JaggedPass_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, JaggedPass_OnTransition
@@ -69,27 +67,27 @@ JaggedPass_EventScript_MagmaHideoutGuard::
goto_if_set FLAG_BEAT_MAGMA_GRUNT_JAGGED_PASS, JaggedPass_EventScript_GuardDefeated
waitse
playse SE_PIN
- applymovement LOCALID_HIDEOUT_GUARD, Common_Movement_ExclamationMark
+ applymovement LOCALID_MAGMA_HIDEOUT_GUARD, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_HIDEOUT_GUARD, Common_Movement_Delay48
+ applymovement LOCALID_MAGMA_HIDEOUT_GUARD, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_HIDEOUT_GUARD, Common_Movement_FacePlayer
+ applymovement LOCALID_MAGMA_HIDEOUT_GUARD, Common_Movement_FacePlayer
waitmovement 0
msgbox JaggedPass_Text_GruntIntro, MSGBOX_DEFAULT
closemessage
trainerbattle_no_intro TRAINER_GRUNT_JAGGED_PASS, JaggedPass_Text_GruntDefeat
setflag FLAG_BEAT_MAGMA_GRUNT_JAGGED_PASS
- applymovement LOCALID_HIDEOUT_GUARD, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MAGMA_HIDEOUT_GUARD, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
JaggedPass_EventScript_GuardDefeated::
- applymovement LOCALID_HIDEOUT_GUARD, Common_Movement_FacePlayer
+ applymovement LOCALID_MAGMA_HIDEOUT_GUARD, Common_Movement_FacePlayer
waitmovement 0
msgbox JaggedPass_Text_GoWhereverYouWant, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_HIDEOUT_GUARD, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MAGMA_HIDEOUT_GUARD, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
diff --git a/data/maps/LavaridgeTown/map.json b/data/maps/LavaridgeTown/map.json
index ecf7c5b9f1..1009c8c9d9 100644
--- a/data/maps/LavaridgeTown/map.json
+++ b/data/maps/LavaridgeTown/map.json
@@ -99,6 +99,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LAVARIDGE_RIVAL_ON_BIKE",
"graphics_id": "OBJ_EVENT_GFX_VAR_3",
"x": 6,
"y": 16,
@@ -112,6 +113,7 @@
"flag": "FLAG_HIDE_LAVARIDGE_TOWN_RIVAL_ON_BIKE"
},
{
+ "local_id": "LOCALID_LAVARIDGE_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 12,
"y": 15,
diff --git a/data/maps/LavaridgeTown/scripts.inc b/data/maps/LavaridgeTown/scripts.inc
index 4d1950867f..12163fb32a 100644
--- a/data/maps/LavaridgeTown/scripts.inc
+++ b/data/maps/LavaridgeTown/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_RIVAL_ON_BIKE, 7
-.set LOCALID_RIVAL, 8
-
LavaridgeTown_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LavaridgeTown_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, LavaridgeTown_OnFrame
@@ -26,9 +23,9 @@ LavaridgeTown_EventScript_CheckSetRivalPos::
return
LavaridgeTown_EventScript_SetRivalPos::
- setobjectxyperm LOCALID_RIVAL, 11, 9
- setobjectxyperm LOCALID_RIVAL_ON_BIKE, 9, 8
- setobjectmovementtype LOCALID_RIVAL_ON_BIKE, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_LAVARIDGE_RIVAL, 11, 9
+ setobjectxyperm LOCALID_LAVARIDGE_RIVAL_ON_BIKE, 9, 8
+ setobjectmovementtype LOCALID_LAVARIDGE_RIVAL_ON_BIKE, MOVEMENT_TYPE_FACE_UP
clearflag FLAG_HIDE_LAVARIDGE_TOWN_RIVAL
return
@@ -78,12 +75,12 @@ LavaridgeTown_EventScript_BrendanGiveGoGoggles::
LavaridgeTown_EventScript_RivalExit::
closemessage
- removeobject LOCALID_RIVAL
- addobject LOCALID_RIVAL_ON_BIKE
+ removeobject LOCALID_LAVARIDGE_RIVAL
+ addobject LOCALID_LAVARIDGE_RIVAL_ON_BIKE
delay 30
call_if_eq VAR_0x8008, 9, LavaridgeTown_EventScript_RivalExit1
call_if_ne VAR_0x8008, 9, LavaridgeTown_EventScript_RivalExit2
- removeobject LOCALID_RIVAL_ON_BIKE
+ removeobject LOCALID_LAVARIDGE_RIVAL_ON_BIKE
setvar VAR_LAVARIDGE_TOWN_STATE, 2
clearflag FLAG_HIDE_MAP_NAME_POPUP
savebgm MUS_DUMMY
@@ -100,52 +97,52 @@ LavaridgeTown_EventScript_PlayBrendanMusic::
return
LavaridgeTown_EventScript_RivalNoticePlayer::
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_LAVARIDGE_RIVAL, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_LAVARIDGE_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_LAVARIDGE_RIVAL, Common_Movement_Delay48
waitmovement 0
return
LavaridgeTown_EventScript_RivalExitHerbShop::
opendoor 12, 15
waitdooranim
- addobject LOCALID_RIVAL
- applymovement LOCALID_RIVAL, LavaridgeTown_Movement_RivalExitHerbShop
+ addobject LOCALID_LAVARIDGE_RIVAL
+ applymovement LOCALID_LAVARIDGE_RIVAL, LavaridgeTown_Movement_RivalExitHerbShop
waitmovement 0
closedoor 12, 15
waitdooranim
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_LAVARIDGE_RIVAL, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_LAVARIDGE_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_LAVARIDGE_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
LavaridgeTown_EventScript_RivalApproachPlayer1::
- applymovement LOCALID_RIVAL, LavaridgeTown_Movement_RivalApproachPlayer1
+ applymovement LOCALID_LAVARIDGE_RIVAL, LavaridgeTown_Movement_RivalApproachPlayer1
waitmovement 0
return
LavaridgeTown_EventScript_RivalApproachPlayer2::
- applymovement LOCALID_RIVAL, LavaridgeTown_Movement_RivalApproachPlayer2
+ applymovement LOCALID_LAVARIDGE_RIVAL, LavaridgeTown_Movement_RivalApproachPlayer2
waitmovement 0
return
LavaridgeTown_EventScript_RivalExit1::
- applymovement OBJ_EVENT_ID_PLAYER, LavaridgeTown_Movement_PlayerWatchRivalExit
- applymovement LOCALID_RIVAL_ON_BIKE, LavaridgeTown_Movement_RivalExit1
+ applymovement LOCALID_PLAYER, LavaridgeTown_Movement_PlayerWatchRivalExit
+ applymovement LOCALID_LAVARIDGE_RIVAL_ON_BIKE, LavaridgeTown_Movement_RivalExit1
waitmovement 0
return
LavaridgeTown_EventScript_RivalExit2::
- applymovement LOCALID_RIVAL_ON_BIKE, LavaridgeTown_Movement_RivalExit2
+ applymovement LOCALID_LAVARIDGE_RIVAL_ON_BIKE, LavaridgeTown_Movement_RivalExit2
waitmovement 0
return
diff --git a/data/maps/LavaridgeTown_Gym_1F/map.json b/data/maps/LavaridgeTown_Gym_1F/map.json
index dc30c6ea9c..5dc1ebeaa3 100644
--- a/data/maps/LavaridgeTown_Gym_1F/map.json
+++ b/data/maps/LavaridgeTown_Gym_1F/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_COLE",
"graphics_id": "OBJ_EVENT_GFX_MAN_5",
"x": 3,
"y": 14,
@@ -41,6 +42,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_GERALD",
"graphics_id": "OBJ_EVENT_GFX_MAN_3",
"x": 2,
"y": 15,
@@ -54,6 +56,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_AXLE",
"graphics_id": "OBJ_EVENT_GFX_MAN_5",
"x": 3,
"y": 10,
@@ -67,6 +70,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DANIELLE",
"graphics_id": "OBJ_EVENT_GFX_GIRL_3",
"x": 5,
"y": 2,
diff --git a/data/maps/LavaridgeTown_Gym_1F/scripts.inc b/data/maps/LavaridgeTown_Gym_1F/scripts.inc
index e7d2514068..d660b42368 100644
--- a/data/maps/LavaridgeTown_Gym_1F/scripts.inc
+++ b/data/maps/LavaridgeTown_Gym_1F/scripts.inc
@@ -1,8 +1,3 @@
-.set LOCALID_COLE, 2
-.set LOCALID_GERALD, 3
-.set LOCALID_AXLE, 4
-.set LOCALID_DANIELLE, 5
-
LavaridgeTown_Gym_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LavaridgeTown_Gym_1F_OnTransition
end_map_scripts
diff --git a/data/maps/LavaridgeTown_Gym_B1F/map.json b/data/maps/LavaridgeTown_Gym_B1F/map.json
index b90802b173..b7f29174c4 100644
--- a/data/maps/LavaridgeTown_Gym_B1F/map.json
+++ b/data/maps/LavaridgeTown_Gym_B1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_JACE",
"graphics_id": "OBJ_EVENT_GFX_MAN_5",
"x": 4,
"y": 18,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_KEEGAN",
"graphics_id": "OBJ_EVENT_GFX_MAN_5",
"x": 3,
"y": 6,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_JEFF",
"graphics_id": "OBJ_EVENT_GFX_MAN_5",
"x": 13,
"y": 17,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ELI",
"graphics_id": "OBJ_EVENT_GFX_HIKER",
"x": 4,
"y": 16,
diff --git a/data/maps/LavaridgeTown_Gym_B1F/scripts.inc b/data/maps/LavaridgeTown_Gym_B1F/scripts.inc
index e8a01522cb..6a9d549125 100644
--- a/data/maps/LavaridgeTown_Gym_B1F/scripts.inc
+++ b/data/maps/LavaridgeTown_Gym_B1F/scripts.inc
@@ -1,8 +1,3 @@
-.equ LOCALID_JACE, 1
-.equ LOCALID_KEEGAN, 2
-.equ LOCALID_JEFF, 3
-.equ LOCALID_ELI, 4
-
LavaridgeTown_Gym_B1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LavaridgeTown_Gym_B1F_OnTransition
end_map_scripts
diff --git a/data/maps/LavaridgeTown_HerbShop/scripts.inc b/data/maps/LavaridgeTown_HerbShop/scripts.inc
index fb6d67861c..58318914d9 100644
--- a/data/maps/LavaridgeTown_HerbShop/scripts.inc
+++ b/data/maps/LavaridgeTown_HerbShop/scripts.inc
@@ -17,9 +17,7 @@ LavaridgeTown_HerbShop_Pokemart:
.2byte ITEM_ENERGY_ROOT
.2byte ITEM_HEAL_POWDER
.2byte ITEM_REVIVAL_HERB
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
LavaridgeTown_HerbShop_EventScript_ExpertM::
msgbox LavaridgeTown_HerbShop_Text_HerbalMedicineWorksButMonWillDislike, MSGBOX_NPC
diff --git a/data/maps/LavaridgeTown_Mart/map.json b/data/maps/LavaridgeTown_Mart/map.json
index 82078a3827..0105c0d560 100644
--- a/data/maps/LavaridgeTown_Mart/map.json
+++ b/data/maps/LavaridgeTown_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_LAVARIDGE_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/LavaridgeTown_Mart/scripts.inc b/data/maps/LavaridgeTown_Mart/scripts.inc
index 2732d1ab2c..75f8ddf5a3 100644
--- a/data/maps/LavaridgeTown_Mart/scripts.inc
+++ b/data/maps/LavaridgeTown_Mart/scripts.inc
@@ -22,9 +22,7 @@ LavaridgeTown_Mart_Pokemart:
.2byte ITEM_REVIVE
.2byte ITEM_SUPER_REPEL
.2byte ITEM_X_SPEED
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
LavaridgeTown_Mart_EventScript_ExpertM::
msgbox LavaridgeTown_Mart_Text_XSpeedFirstStrike, MSGBOX_NPC
diff --git a/data/maps/LavaridgeTown_PokemonCenter_1F/map.json b/data/maps/LavaridgeTown_PokemonCenter_1F/map.json
index 8cbeae0923..2d9372d1d1 100644
--- a/data/maps/LavaridgeTown_PokemonCenter_1F/map.json
+++ b/data/maps/LavaridgeTown_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_LAVARIDGE_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/LavaridgeTown_PokemonCenter_1F/scripts.inc b/data/maps/LavaridgeTown_PokemonCenter_1F/scripts.inc
index 0a8108172e..7dd31d0958 100644
--- a/data/maps/LavaridgeTown_PokemonCenter_1F/scripts.inc
+++ b/data/maps/LavaridgeTown_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
LavaridgeTown_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LavaridgeTown_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -11,7 +9,7 @@ LavaridgeTown_PokemonCenter_1F_OnTransition:
end
LavaridgeTown_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_LAVARIDGE_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/LilycoveCity/map.json b/data/maps/LilycoveCity/map.json
index 398cf219ea..2eff099ab9 100644
--- a/data/maps/LilycoveCity/map.json
+++ b/data/maps/LilycoveCity/map.json
@@ -260,6 +260,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LILYCOVE_WOMAN_1",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_3",
"x": 41,
"y": 25,
@@ -273,6 +274,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LILYCOVE_MAN_1",
"graphics_id": "OBJ_EVENT_GFX_MAN_2",
"x": 40,
"y": 25,
diff --git a/data/maps/LilycoveCity/scripts.inc b/data/maps/LilycoveCity/scripts.inc
index 30d3d3b3d6..b2f84d1d63 100644
--- a/data/maps/LilycoveCity/scripts.inc
+++ b/data/maps/LilycoveCity/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_WOMAN_1, 19
-.set LOCALID_MAN_1, 20
-
LilycoveCity_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_OnTransition
map_script MAP_SCRIPT_ON_LOAD, LilycoveCity_OnLoad
@@ -136,13 +133,13 @@ LilycoveCity_EventScript_FatMan::
LilycoveCity_EventScript_Man1::
lockall
msgbox LilycoveCity_Text_JustArrivedAndSawRarePokemon, MSGBOX_NPC
- applymovement LOCALID_MAN_1, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_LILYCOVE_MAN_1, Common_Movement_FaceOriginalDirection
end
LilycoveCity_EventScript_Woman1::
lockall
msgbox LilycoveCity_Text_HoneymoonVowToSeeRarePokemon, MSGBOX_NPC
- applymovement LOCALID_WOMAN_1, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_LILYCOVE_WOMAN_1, Common_Movement_FaceOriginalDirection
end
LilycoveCity_EventScript_CitySign::
diff --git a/data/maps/LilycoveCity_ContestHall/map.json b/data/maps/LilycoveCity_ContestHall/map.json
index a55d214988..9979ca34bc 100644
--- a/data/maps/LilycoveCity_ContestHall/map.json
+++ b/data/maps/LilycoveCity_ContestHall/map.json
@@ -54,6 +54,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_MC",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_3",
"x": 12,
"y": 22,
@@ -67,6 +68,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_JUDGE",
"graphics_id": "OBJ_EVENT_GFX_CONTEST_JUDGE",
"x": 15,
"y": 22,
@@ -80,6 +82,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_CONTESTANT_1",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 10,
"y": 25,
@@ -93,6 +96,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_CONTESTANT_2",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 12,
"y": 25,
@@ -106,6 +110,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_CONTESTANT_3",
"graphics_id": "OBJ_EVENT_GFX_MANIAC",
"x": 14,
"y": 25,
@@ -119,6 +124,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_CONTESTANT_4",
"graphics_id": "OBJ_EVENT_GFX_LINK_RECEPTIONIST",
"x": 16,
"y": 25,
@@ -145,6 +151,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_AUDIENCE_4",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_5",
"x": 18,
"y": 24,
@@ -158,6 +165,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_AUDIENCE_2",
"graphics_id": "OBJ_EVENT_GFX_BOY_1",
"x": 8,
"y": 22,
@@ -171,6 +179,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_MC",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_3",
"x": 24,
"y": 10,
@@ -184,6 +193,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_JUDGE",
"graphics_id": "OBJ_EVENT_GFX_CONTEST_JUDGE",
"x": 27,
"y": 10,
@@ -197,6 +207,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_CONTESTANT_1",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_4",
"x": 22,
"y": 13,
@@ -210,6 +221,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_CONTESTANT_2",
"graphics_id": "OBJ_EVENT_GFX_TWIN",
"x": 24,
"y": 13,
@@ -223,6 +235,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_CONTESTANT_3",
"graphics_id": "OBJ_EVENT_GFX_PSYCHIC_M",
"x": 26,
"y": 13,
@@ -236,6 +249,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_CONTESTANT_4",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_F",
"x": 28,
"y": 13,
@@ -249,6 +263,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_AUDIENCE_1",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_2",
"x": 20,
"y": 10,
@@ -262,6 +277,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_AUDIENCE_3",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_1",
"x": 30,
"y": 11,
@@ -275,6 +291,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BEAUTY_AUDIENCE_2",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 26,
"y": 8,
@@ -288,6 +305,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SMART_AUDIENCE_3",
"graphics_id": "OBJ_EVENT_GFX_CAMPER",
"x": 13,
"y": 20,
@@ -301,6 +319,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_MC",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_3",
"x": 36,
"y": 22,
@@ -314,6 +333,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_JUDGE",
"graphics_id": "OBJ_EVENT_GFX_CONTEST_JUDGE",
"x": 39,
"y": 22,
@@ -327,6 +347,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_CONTESTANT_1",
"graphics_id": "OBJ_EVENT_GFX_BOY_2",
"x": 34,
"y": 25,
@@ -340,6 +361,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_CONTESTANT_2",
"graphics_id": "OBJ_EVENT_GFX_GIRL_2",
"x": 36,
"y": 25,
@@ -353,6 +375,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_CONTESTANT_3",
"graphics_id": "OBJ_EVENT_GFX_BOY_3",
"x": 38,
"y": 25,
@@ -366,6 +389,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_CONTESTANT_4",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_F",
"x": 40,
"y": 25,
@@ -379,6 +403,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_AUDIENCE_1",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_2",
"x": 32,
"y": 23,
@@ -392,6 +417,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_AUDIENCE_3",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 37,
"y": 20,
@@ -405,6 +431,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CUTE_AUDIENCE_2",
"graphics_id": "OBJ_EVENT_GFX_LITTLE_GIRL",
"x": 42,
"y": 24,
diff --git a/data/maps/LilycoveCity_ContestHall/scripts.inc b/data/maps/LilycoveCity_ContestHall/scripts.inc
index fbfb94c20a..791bb3cbdb 100644
--- a/data/maps/LilycoveCity_ContestHall/scripts.inc
+++ b/data/maps/LilycoveCity_ContestHall/scripts.inc
@@ -1,32 +1,7 @@
-@ VAR_LAST_TALKED would have made all these direct references unnecessary
-.set LOCALID_SMART_MC, 4
-.set LOCALID_SMART_JUDGE, 5
-.set LOCALID_SMART_CONTESTANT_1, 6
-.set LOCALID_SMART_CONTESTANT_2, 7
-.set LOCALID_SMART_CONTESTANT_3, 8
-.set LOCALID_SMART_CONTESTANT_4, 9
-.set LOCALID_SMART_AUDIENCE_4, 11
-.set LOCALID_SMART_AUDIENCE_2, 12
-.set LOCALID_BEAUTY_MC, 13
-.set LOCALID_BEAUTY_JUDGE, 14
-.set LOCALID_BEAUTY_CONTESTANT_1, 15
-.set LOCALID_BEAUTY_CONTESTANT_2, 16
-.set LOCALID_BEAUTY_CONTESTANT_3, 17
-.set LOCALID_BEAUTY_CONTESTANT_4, 18
-.set LOCALID_BEAUTY_AUDIENCE_1, 19
-.set LOCALID_BEAUTY_AUDIENCE_3, 20
-.set LOCALID_BEAUTY_AUDIENCE_2, 21
-.set LOCALID_SMART_AUDIENCE_3, 22
-.set LOCALID_CUTE_MC, 23
-.set LOCALID_CUTE_JUDGE, 24
-.set LOCALID_CUTE_CONTESTANT_1, 25
-.set LOCALID_CUTE_CONTESTANT_2, 26
-.set LOCALID_CUTE_CONTESTANT_3, 27
-.set LOCALID_CUTE_CONTESTANT_4, 28
-.set LOCALID_CUTE_AUDIENCE_1, 29
-.set LOCALID_CUTE_AUDIENCE_3, 30
-.set LOCALID_CUTE_AUDIENCE_2, 31
-
+@ All the LOCALID constants used in this file are essentially redundant.
+@ They're all used to have the NPC the player talked to turn back so they're facing
+@ their original direction (because they're watching/participating in the contests).
+@ They could all be substituted for VAR_LAST_TALKED.
LilycoveCity_ContestHall_MapScripts::
end_map_scripts
diff --git a/data/maps/LilycoveCity_ContestLobby/map.json b/data/maps/LilycoveCity_ContestLobby/map.json
index 276b5a6c2c..220a4f8300 100644
--- a/data/maps/LilycoveCity_ContestLobby/map.json
+++ b/data/maps/LilycoveCity_ContestLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_CONTEST_LOBBY_RECEPTIONIST",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 14,
"y": 2,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_LOBBY_LINK_RECEPTIONIST",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 15,
"y": 2,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_LOBBY_BLENDER_2_LEADER",
"graphics_id": "OBJ_EVENT_GFX_MAN_4",
"x": 26,
"y": 9,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_LOBBY_ARTIST",
"graphics_id": "OBJ_EVENT_GFX_ARTIST",
"x": 9,
"y": 1,
@@ -119,6 +123,7 @@
"flag": "FLAG_HIDE_LILYCOVE_CONTEST_HALL_REPORTER"
},
{
+ "local_id": "LOCALID_CONTEST_LOBBY_BLENDER_3_PARTICIPANT_1",
"graphics_id": "OBJ_EVENT_GFX_BOY_1",
"x": 23,
"y": 8,
@@ -132,6 +137,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_LOBBY_BLENDER_2_PARTICIPANT",
"graphics_id": "OBJ_EVENT_GFX_TWIN",
"x": 28,
"y": 9,
@@ -145,6 +151,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_LOBBY_LINK_ARTIST",
"graphics_id": "OBJ_EVENT_GFX_ARTIST",
"x": 21,
"y": 1,
@@ -197,6 +204,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_CONTEST_LOBBY_BLENDER_3_LEADER",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_F",
"x": 22,
"y": 9,
@@ -210,6 +218,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BLEND_MASTER",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 26,
"y": 5,
@@ -223,6 +232,7 @@
"flag": "FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_REPLACEMENT"
},
{
+ "local_id": "LOCALID_CONTEST_LOBBY_BLENDER_3_PARTICIPANT_2",
"graphics_id": "OBJ_EVENT_GFX_GIRL_1",
"x": 24,
"y": 9,
diff --git a/data/maps/LilycoveCity_ContestLobby/scripts.inc b/data/maps/LilycoveCity_ContestLobby/scripts.inc
index 75a0c8d256..6fff15a939 100644
--- a/data/maps/LilycoveCity_ContestLobby/scripts.inc
+++ b/data/maps/LilycoveCity_ContestLobby/scripts.inc
@@ -1,9 +1,3 @@
-@ Note: data/scripts/berry_blender.inc is for the same map, so shares local IDs
-.set LOCALID_RECEPTIONIST, 1
-.set LOCALID_LINK_RECEPTIONIST, 2
-.set LOCALID_ARTIST, 4
-.set LOCALID_ARTIST_LINK, 11
-
LilycoveCity_ContestLobby_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_ContestLobby_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, LilycoveCity_ContestLobby_OnFrame
@@ -40,10 +34,10 @@ LilycoveCity_ContestLobby_EventScript_TryDoContestArtist::
LilycoveCity_ContestLobby_EventScript_ContestArtist::
lockall
- addobject LOCALID_ARTIST
- applymovement LOCALID_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistApproachPlayer
- waitmovement LOCALID_ARTIST
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerFaceArtist
+ addobject LOCALID_CONTEST_LOBBY_ARTIST
+ applymovement LOCALID_CONTEST_LOBBY_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistApproachPlayer
+ waitmovement LOCALID_CONTEST_LOBBY_ARTIST
+ applymovement LOCALID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerFaceArtist
waitmovement 0
msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT
lockall
@@ -63,9 +57,9 @@ LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum::
setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 0
specialvar VAR_RESULT, GiveMonArtistRibbon
call_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_ReceivedArtistRibbon
- applymovement LOCALID_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistExit
+ applymovement LOCALID_CONTEST_LOBBY_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistExit
waitmovement 0
- removeobject LOCALID_ARTIST
+ removeobject LOCALID_CONTEST_LOBBY_ARTIST
call LilycoveCity_ContestLobby_EventScript_UpdateMuseumPatrons
call LilycoveCity_ContestLobby_EventScript_SetPaintingFlag
releaseall
@@ -76,22 +70,22 @@ LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePainting::
goto_if_eq VAR_RESULT, YES, LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseum
msgbox LilycoveCity_ContestLobby_Text_FineThatsTheWayItIs, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistExit
+ applymovement LOCALID_CONTEST_LOBBY_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistExit
waitmovement 0
setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 0
- removeobject LOCALID_ARTIST
+ removeobject LOCALID_CONTEST_LOBBY_ARTIST
releaseall
end
LilycoveCity_ContestLobby_EventScript_ReceivedArtistRibbon::
incrementgamestat GAME_STAT_RECEIVED_RIBBONS
special BufferContestWinnerMonName
- applymovement LOCALID_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistBeginToExit
+ applymovement LOCALID_CONTEST_LOBBY_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistBeginToExit
waitmovement 0
playse SE_PIN
- applymovement LOCALID_ARTIST, Common_Movement_ExclamationMark
+ applymovement LOCALID_CONTEST_LOBBY_ARTIST, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistReturnToPlayer
+ applymovement LOCALID_CONTEST_LOBBY_ARTIST, LilycoveCity_ContestLobby_Movement_ArtistReturnToPlayer
waitmovement 0
msgbox LilycoveCity_ContestLobby_Text_TakeMementoOfPainting, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_ITEM
@@ -210,10 +204,10 @@ LilycoveCity_ContestLobby_EventScript_TryDoLinkContestArtist::
LilycoveCity_ContestLobby_EventScript_LinkContestArtist::
lockall
- addobject LOCALID_ARTIST_LINK
- applymovement LOCALID_ARTIST_LINK, LilycoveCity_ContestLobby_Movement_LinkArtistApproachPlayer
- waitmovement LOCALID_ARTIST_LINK
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerFaceLinkArtist
+ addobject LOCALID_CONTEST_LOBBY_LINK_ARTIST
+ applymovement LOCALID_CONTEST_LOBBY_LINK_ARTIST, LilycoveCity_ContestLobby_Movement_LinkArtistApproachPlayer
+ waitmovement LOCALID_CONTEST_LOBBY_LINK_ARTIST
+ applymovement LOCALID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerFaceLinkArtist
waitmovement 0
msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT
lockall
@@ -231,9 +225,9 @@ LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink::
setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 0
specialvar VAR_RESULT, GiveMonArtistRibbon
call_if_eq VAR_RESULT, TRUE, LilycoveCity_ContestLobby_EventScript_ReceivedLinkArtistRibbon
- applymovement LOCALID_ARTIST_LINK, LilycoveCity_ContestLobby_Movement_LinkArtistExit
+ applymovement LOCALID_CONTEST_LOBBY_LINK_ARTIST, LilycoveCity_ContestLobby_Movement_LinkArtistExit
waitmovement 0
- removeobject LOCALID_ARTIST_LINK
+ removeobject LOCALID_CONTEST_LOBBY_LINK_ARTIST
call LilycoveCity_ContestLobby_EventScript_UpdateMuseumPatrons
call LilycoveCity_ContestLobby_EventScript_SetPaintingFlag
releaseall
@@ -244,10 +238,10 @@ LilycoveCity_ContestLobby_EventScript_ConfirmDontTakePaintingLink::
goto_if_eq VAR_RESULT, YES, LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink
msgbox LilycoveCity_ContestLobby_Text_FineThatsTheWayItIs, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ARTIST_LINK, LilycoveCity_ContestLobby_Movement_LinkArtistExit
+ applymovement LOCALID_CONTEST_LOBBY_LINK_ARTIST, LilycoveCity_ContestLobby_Movement_LinkArtistExit
waitmovement 0
setvar VAR_LILYCOVE_CONTEST_LOBBY_STATE, 0
- removeobject LOCALID_ARTIST_LINK
+ removeobject LOCALID_CONTEST_LOBBY_LINK_ARTIST
releaseall
end
@@ -255,12 +249,12 @@ LilycoveCity_ContestLobby_EventScript_ReceivedLinkArtistRibbon::
incrementgamestat GAME_STAT_RECEIVED_RIBBONS
setflag FLAG_SYS_RIBBON_GET
special BufferContestWinnerMonName
- applymovement LOCALID_ARTIST_LINK, LilycoveCity_ContestLobby_Movement_LinkArtistBeginExit
+ applymovement LOCALID_CONTEST_LOBBY_LINK_ARTIST, LilycoveCity_ContestLobby_Movement_LinkArtistBeginExit
waitmovement 0
playse SE_PIN
- applymovement LOCALID_ARTIST_LINK, Common_Movement_ExclamationMark
+ applymovement LOCALID_CONTEST_LOBBY_LINK_ARTIST, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_ARTIST_LINK, LilycoveCity_ContestLobby_Movement_LinkArtistReturnToPlayer
+ applymovement LOCALID_CONTEST_LOBBY_LINK_ARTIST, LilycoveCity_ContestLobby_Movement_LinkArtistReturnToPlayer
waitmovement 0
msgbox LilycoveCity_ContestLobby_Text_TakeMementoOfPainting, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_ITEM
@@ -405,27 +399,27 @@ LilycoveCity_ContestLobby_EventScript_WarpToToughContestHall::
LilycoveCity_ContestLobby_EventScript_LeadToContestHall::
lockall
- applymovement LOCALID_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistApproachCounter
+ applymovement LOCALID_CONTEST_LOBBY_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistApproachCounter
waitmovement 0
playse SE_BRIDGE_WALK
setmetatile 12, 2, METATILE_Contest_WallShadow, TRUE
setmetatile 12, 3, METATILE_Contest_FloorShadow, TRUE
special DrawWholeMapView
- applymovement LOCALID_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistExitCounter
+ applymovement LOCALID_CONTEST_LOBBY_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistExitCounter
waitmovement 0
playse SE_BRIDGE_WALK
setmetatile 12, 2, METATILE_Contest_CounterFlap_Top, TRUE
setmetatile 12, 3, METATILE_Contest_CounterFlap_Bottom, TRUE
special DrawWholeMapView
delay 20
- applymovement LOCALID_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistFacePlayer
+ applymovement LOCALID_CONTEST_LOBBY_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistFacePlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerApproachReceptionist
+ applymovement LOCALID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerApproachReceptionist
waitmovement 0
msgbox LilycoveCity_ContestLobby_Text_ComeThroughHere, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistWalkToContestHall
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerWalkToContestHall
+ applymovement LOCALID_CONTEST_LOBBY_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_ReceptionistWalkToContestHall
+ applymovement LOCALID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerWalkToContestHall
waitmovement 0
releaseall
return
@@ -896,30 +890,30 @@ LilycoveCity_ContestLobby_EventScript_LeadToLinkContestHall::
waitmessage
delay 20
closemessage
- applymovement LOCALID_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistApproachCounter
+ applymovement LOCALID_CONTEST_LOBBY_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistApproachCounter
waitmovement 0
playse SE_BRIDGE_WALK
setmetatile 17, 2, METATILE_Contest_WallShadow, TRUE
setmetatile 17, 3, METATILE_Contest_FloorShadow, TRUE
special DrawWholeMapView
- applymovement LOCALID_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistExitCounter
+ applymovement LOCALID_CONTEST_LOBBY_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistExitCounter
waitmovement 0
playse SE_BRIDGE_WALK
setmetatile 17, 2, METATILE_Contest_CounterFlap_Top, TRUE
setmetatile 17, 3, METATILE_Contest_CounterFlap_Bottom, TRUE
special DrawWholeMapView
delay 20
- applymovement LOCALID_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistFacePlayer
+ applymovement LOCALID_CONTEST_LOBBY_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistFacePlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerApproachLinkReceptionist
+ applymovement LOCALID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerApproachLinkReceptionist
waitmovement 0
messageautoscroll LilycoveCity_ContestLobby_Text_ComeThroughHere
waitmessage
delay 20
closemessage
call LilycoveCity_ContestLobby_EventScript_DelayIfContestWithRSPlayer
- applymovement LOCALID_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistWalkToContestHall
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerWalkToLinkContestHall
+ applymovement LOCALID_CONTEST_LOBBY_LINK_RECEPTIONIST, LilycoveCity_ContestLobby_Movement_LinkReceptionistWalkToContestHall
+ applymovement LOCALID_PLAYER, LilycoveCity_ContestLobby_Movement_PlayerWalkToLinkContestHall
waitmovement 0
release
return
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_1F/map.json b/data/maps/LilycoveCity_CoveLilyMotel_1F/map.json
index 098b533360..859b0f11b6 100644
--- a/data/maps/LilycoveCity_CoveLilyMotel_1F/map.json
+++ b/data/maps/LilycoveCity_CoveLilyMotel_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MOTEL_OWNER",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 10,
"y": 3,
diff --git a/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc b/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc
index 816bfd174d..f21806329d 100644
--- a/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc
+++ b/data/maps/LilycoveCity_CoveLilyMotel_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_OWNER, 1
-
LilycoveCity_CoveLilyMotel_1F_MapScripts::
end_map_scripts
@@ -8,33 +6,33 @@ LilycoveCity_CoveLilyMotel_1F_EventScript_MotelOwner::
goto_if_set FLAG_SYS_GAME_CLEAR, LilycoveCity_CoveLilyMotel_1F_EventScript_GameClear
goto_if_set FLAG_BADGE07_GET, LilycoveCity_CoveLilyMotel_1F_EventScript_AquaHideoutBusted
msgbox LilycoveCity_CoveLilyMotel_1F_Text_GuestsDoubledByMascot, MSGBOX_DEFAULT
- applymovement LOCALID_OWNER, Common_Movement_FacePlayer
+ applymovement LOCALID_MOTEL_OWNER, Common_Movement_FacePlayer
waitmovement 0
msgbox LilycoveCity_CoveLilyMotel_1F_Text_NoGuestsWithTeamAqua, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_OWNER, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MOTEL_OWNER, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
LilycoveCity_CoveLilyMotel_1F_EventScript_AquaHideoutBusted::
msgbox LilycoveCity_CoveLilyMotel_1F_Text_MonFoundLostItem, MSGBOX_DEFAULT
- applymovement LOCALID_OWNER, Common_Movement_FacePlayer
+ applymovement LOCALID_MOTEL_OWNER, Common_Movement_FacePlayer
waitmovement 0
msgbox LilycoveCity_CoveLilyMotel_1F_Text_HeardAquaHideoutBusted, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_OWNER, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MOTEL_OWNER, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
LilycoveCity_CoveLilyMotel_1F_EventScript_GameClear::
msgbox LilycoveCity_CoveLilyMotel_1F_Text_HouseSittingMonCaughtBurglar, MSGBOX_DEFAULT
- applymovement LOCALID_OWNER, Common_Movement_FacePlayer
+ applymovement LOCALID_MOTEL_OWNER, Common_Movement_FacePlayer
waitmovement 0
msgbox LilycoveCity_CoveLilyMotel_1F_Text_BetterGetWorkingOnGuestsDinner, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_OWNER, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MOTEL_OWNER, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
@@ -42,18 +40,18 @@ LilycoveCity_CoveLilyMotel_1F_EventScript_GameClear::
LilycoveCity_CoveLilyMotel_1F_EventScript_BlockingTV::
lockall
playse SE_PIN
- applymovement LOCALID_OWNER, Common_Movement_ExclamationMark
+ applymovement LOCALID_MOTEL_OWNER, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_OWNER, Common_Movement_Delay48
+ applymovement LOCALID_MOTEL_OWNER, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox LilycoveCity_CoveLilyMotel_1F_Text_CantSeeTheTV, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_CoveLilyMotel_1F_Movement_PlayerPushFromTV
- applymovement LOCALID_OWNER, LilycoveCity_CoveLilyMotel_1F_Movement_OwnerPushPlayer
+ applymovement LOCALID_PLAYER, LilycoveCity_CoveLilyMotel_1F_Movement_PlayerPushFromTV
+ applymovement LOCALID_MOTEL_OWNER, LilycoveCity_CoveLilyMotel_1F_Movement_OwnerPushPlayer
waitmovement 0
- applymovement LOCALID_OWNER, LilycoveCity_CoveLilyMotel_1F_Movement_OwnerReturn
+ applymovement LOCALID_MOTEL_OWNER, LilycoveCity_CoveLilyMotel_1F_Movement_OwnerReturn
waitmovement 0
release
end
diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/map.json b/data/maps/LilycoveCity_DepartmentStore_1F/map.json
index 951777f8f4..98c58a1bad 100644
--- a/data/maps/LilycoveCity_DepartmentStore_1F/map.json
+++ b/data/maps/LilycoveCity_DepartmentStore_1F/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LOTTERY_CLERK",
"graphics_id": "OBJ_EVENT_GFX_BEAUTY",
"x": 10,
"y": 2,
diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc
index f166a6962c..cad41c6777 100644
--- a/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc
+++ b/data/maps/LilycoveCity_DepartmentStore_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_LOTTERY_CLERK, 2
-
LilycoveCity_DepartmentStore_1F_MapScripts::
end_map_scripts
diff --git a/data/maps/LilycoveCity_DepartmentStore_2F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_2F/scripts.inc
index 92a6b9624b..009c757f59 100644
--- a/data/maps/LilycoveCity_DepartmentStore_2F/scripts.inc
+++ b/data/maps/LilycoveCity_DepartmentStore_2F/scripts.inc
@@ -36,9 +36,7 @@ LilycoveCity_DepartmentStore_2F_Pokemart1:
.2byte ITEM_ICE_HEAL
.2byte ITEM_AWAKENING
.2byte ITEM_FLUFFY_TAIL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_2F_EventScript_ClerkRight::
lock
@@ -62,9 +60,7 @@ LilycoveCity_DepartmentStore_2F_Pokemart2:
.2byte ITEM_MAX_REPEL
.2byte ITEM_WAVE_MAIL
.2byte ITEM_MECH_MAIL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_2F_Text_LearnToUseItemsProperly:
.string "Learn to use items properly.\n"
diff --git a/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc
index 14c4ddfa2c..7f65844598 100644
--- a/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc
+++ b/data/maps/LilycoveCity_DepartmentStore_3F/scripts.inc
@@ -19,9 +19,7 @@ LilycoveCity_DepartmentStore_3F_Pokemart_Vitamins:
.2byte ITEM_ZINC
.2byte ITEM_CARBOS
.2byte ITEM_HP_UP
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_3F_EventScript_ClerkRight::
lock
@@ -42,9 +40,7 @@ LilycoveCity_DepartmentStore_3F_Pokemart_StatBoosters:
.2byte ITEM_DIRE_HIT
.2byte ITEM_GUARD_SPEC
.2byte ITEM_X_ACCURACY
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_3F_EventScript_TriathleteM::
msgbox LilycoveCity_DepartmentStore_3F_Text_ItemsBestForTougheningPokemon, MSGBOX_NPC
diff --git a/data/maps/LilycoveCity_DepartmentStore_4F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_4F/scripts.inc
index d2bf3c31ca..6c792b8817 100644
--- a/data/maps/LilycoveCity_DepartmentStore_4F/scripts.inc
+++ b/data/maps/LilycoveCity_DepartmentStore_4F/scripts.inc
@@ -29,9 +29,7 @@ LilycoveCity_DepartmentStore_4F_Pokemart_AttackTMs:
.2byte ITEM_TM_THUNDER
.2byte ITEM_TM_BLIZZARD
.2byte ITEM_TM_HYPER_BEAM
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_4F_EventScript_ClerkRight::
lock
@@ -49,9 +47,7 @@ LilycoveCity_DepartmentStore_4F_Pokemart_DefenseTMs:
.2byte ITEM_TM_SAFEGUARD
.2byte ITEM_TM_REFLECT
.2byte ITEM_TM_LIGHT_SCREEN
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_4F_Text_AttackOrDefenseTM:
.string "Hmm…\p"
diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/map.json b/data/maps/LilycoveCity_DepartmentStore_5F/map.json
index e816d3f217..a7d258ec9c 100644
--- a/data/maps/LilycoveCity_DepartmentStore_5F/map.json
+++ b/data/maps/LilycoveCity_DepartmentStore_5F/map.json
@@ -93,6 +93,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEPARTMENT_STORE_STAIRS_WOMAN",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_2",
"x": 9,
"y": 5,
diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc
index 6b7e30ba05..872c142b8b 100644
--- a/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc
+++ b/data/maps/LilycoveCity_DepartmentStore_5F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WOMAN, 7
-
LilycoveCity_DepartmentStore_5F_MapScripts::
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, LilycoveCity_DepartmentStore_5F_OnWarp
end_map_scripts
@@ -13,8 +11,8 @@ LilycoveCity_DepartmentStore_5F_OnWarp:
end_map_script_table
LilycoveCity_DepartmentStore_5F_EventScript_BlockRoofStairs::
- setobjectxy LOCALID_WOMAN, 16, 2
- turnobject LOCALID_WOMAN, DIR_NORTH
+ setobjectxy LOCALID_DEPARTMENT_STORE_STAIRS_WOMAN, 16, 2
+ turnobject LOCALID_DEPARTMENT_STORE_STAIRS_WOMAN, DIR_NORTH
end
LilycoveCity_DepartmentStore_5F_EventScript_ClerkFarLeft::
@@ -41,9 +39,7 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Dolls:
.2byte DECOR_SKITTY_DOLL
.2byte DECOR_SWABLU_DOLL
.2byte DECOR_GULPIN_DOLL
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_5F_EventScript_ClerkMidLeft::
lock
@@ -66,9 +62,7 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Cushions:
.2byte DECOR_GRASS_CUSHION
.2byte DECOR_FIRE_CUSHION
.2byte DECOR_WATER_CUSHION
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_5F_EventScript_ClerkMidRight::
lock
@@ -91,9 +85,7 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Posters:
.2byte DECOR_LONG_POSTER
.2byte DECOR_SEA_POSTER
.2byte DECOR_SKY_POSTER
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_5F_EventScript_ClerkFarRight::
lock
@@ -117,9 +109,7 @@ LilycoveCity_DepartmentStore_5F_Pokemart_Mats:
.2byte DECOR_GLITTER_MAT
.2byte DECOR_JUMP_MAT
.2byte DECOR_SPIN_MAT
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
LilycoveCity_DepartmentStore_5F_EventScript_PokefanF::
msgbox LilycoveCity_DepartmentStore_5F_Text_PlaceFullOfCuteDolls, MSGBOX_NPC
@@ -127,7 +117,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_PokefanF::
LilycoveCity_DepartmentStore_5F_EventScript_Woman::
lockall
- applymovement LOCALID_WOMAN, Common_Movement_FacePlayer
+ applymovement LOCALID_DEPARTMENT_STORE_STAIRS_WOMAN, Common_Movement_FacePlayer
waitmovement 0
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 0, LilycoveCity_DepartmentStore_5F_EventScript_WomanNormal
goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 4, LilycoveCity_DepartmentStore_5F_EventScript_WomanNormal
@@ -143,7 +133,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_WomanNormal::
LilycoveCity_DepartmentStore_5F_EventScript_WomanLegendaryWeather::
msgbox LilycoveCity_DepartmentStore_5F_Text_ClosedRooftopForWeather, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_WOMAN, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_DEPARTMENT_STORE_STAIRS_WOMAN, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
releaseall
end
diff --git a/data/maps/LilycoveCity_Harbor/map.json b/data/maps/LilycoveCity_Harbor/map.json
index 06d49e0c88..671e6edd74 100644
--- a/data/maps/LilycoveCity_Harbor/map.json
+++ b/data/maps/LilycoveCity_Harbor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_LILYCOVE_HARBOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BEAUTY",
"x": 8,
"y": 10,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_LILYCOVE_HARBOR_FERRY_ATTENDANT"
},
{
+ "local_id": "LOCALID_LILYCOVE_HARBOR_SS_TIDAL",
"graphics_id": "OBJ_EVENT_GFX_SS_TIDAL",
"x": 8,
"y": 9,
@@ -54,6 +56,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR",
"graphics_id": "OBJ_EVENT_GFX_SAILOR",
"x": 8,
"y": 10,
@@ -67,6 +70,7 @@
"flag": "FLAG_HIDE_LILYCOVE_HARBOR_FERRY_SAILOR"
},
{
+ "local_id": "LOCALID_LILYCOVE_HARBOR_BRINEY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 8,
"y": 10,
diff --git a/data/maps/LilycoveCity_Harbor/scripts.inc b/data/maps/LilycoveCity_Harbor/scripts.inc
index 7538ce9f2c..11f3f85288 100644
--- a/data/maps/LilycoveCity_Harbor/scripts.inc
+++ b/data/maps/LilycoveCity_Harbor/scripts.inc
@@ -1,8 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-.set LOCALID_SS_TIDAL, 2
-.set LOCALID_FERRY_SAILOR, 4
-.set LOCALID_BRINEY, 5
-
LilycoveCity_Harbor_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_Harbor_OnTransition
end_map_scripts
@@ -231,16 +226,16 @@ LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime::
call LilycoveCity_Harbor_EventScript_GetEventTicketSailor
msgbox EventTicket_Text_OldSeaMapTooFar, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
playse SE_PIN
- applymovement LOCALID_FERRY_SAILOR, Common_Movement_ExclamationMark
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_FERRY_SAILOR, Common_Movement_Delay48
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, Common_Movement_Delay48
waitmovement 0
call_if_eq VAR_FACING, DIR_NORTH, LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayNorth
call_if_eq VAR_FACING, DIR_EAST, LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayEast
- addobject LOCALID_BRINEY
+ addobject LOCALID_LILYCOVE_HARBOR_BRINEY
call_if_eq VAR_FACING, DIR_NORTH, LilycoveCity_Harbor_EventScript_BrineyFaceSailorNorth
call_if_eq VAR_FACING, DIR_EAST, LilycoveCity_Harbor_EventScript_BrineyFaceSailorEast
msgbox EventTicket_Text_BrineyHoldOnASecond, MSGBOX_DEFAULT
@@ -250,7 +245,7 @@ LilycoveCity_Harbor_EventScript_OldSeaMapFirstTime::
closemessage
call_if_eq VAR_FACING, DIR_NORTH, LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorNorth
call_if_eq VAR_FACING, DIR_EAST, LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorEast
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ setvar VAR_0x8004, LOCALID_LILYCOVE_HARBOR_SS_TIDAL
call Common_EventScript_FerryDepart
warp MAP_FARAWAY_ISLAND_ENTRANCE, 13, 38
waitstate
@@ -305,14 +300,14 @@ LilycoveCity_Harbor_EventScript_MultipleEventTicketsFirstTime::
LilycoveCity_Harbor_EventScript_ExitFirstTimeTicketSailSelect::
msgbox EventTicket_Text_AsYouLike, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 30
- removeobject LOCALID_FERRY_SAILOR
+ removeobject LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR
delay 30
- applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_LILYCOVE_HARBOR_ATTENDANT, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
- showobjectat LOCALID_ATTENDANT, MAP_LILYCOVE_CITY_HARBOR
+ showobjectat LOCALID_LILYCOVE_HARBOR_ATTENDANT, MAP_LILYCOVE_CITY_HARBOR
delay 30
msgbox LilycoveCity_Harbor_Text_SailAnotherTime, MSGBOX_DEFAULT
release
@@ -324,22 +319,22 @@ LilycoveCity_Harbor_EventScript_GetEventTicketSailor::
delay 30
hideobjectat VAR_LAST_TALKED, MAP_LILYCOVE_CITY_HARBOR
delay 60
- addobject LOCALID_FERRY_SAILOR
+ addobject LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR
delay 30
- applymovement LOCALID_FERRY_SAILOR, Common_Movement_FacePlayer
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, Common_Movement_FacePlayer
waitmovement 0
return
LilycoveCity_Harbor_EventScript_BoardFerryWithSailor::
- applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 30
- removeobject LOCALID_FERRY_SAILOR
+ removeobject LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR
call_if_eq VAR_FACING, DIR_NORTH, LilycoveCity_Harbor_EventScript_PlayerBoardFerryNorth
call_if_eq VAR_FACING, DIR_EAST, LilycoveCity_Harbor_EventScript_PlayerBoardFerryEast
delay 30
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ hideobjectat LOCALID_PLAYER, 0
+ setvar VAR_0x8004, LOCALID_LILYCOVE_HARBOR_SS_TIDAL
call Common_EventScript_FerryDepart
return
@@ -398,18 +393,18 @@ LilycoveCity_Harbor_EventScript_BoardFerry::
call_if_eq VAR_FACING, DIR_NORTH, LilycoveCity_Harbor_EventScript_PlayerBoardFerryNorth
call_if_eq VAR_FACING, DIR_EAST, LilycoveCity_Harbor_EventScript_PlayerBoardFerryEast
delay 30
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ hideobjectat LOCALID_PLAYER, 0
+ setvar VAR_0x8004, LOCALID_LILYCOVE_HARBOR_SS_TIDAL
call Common_EventScript_FerryDepart
return
LilycoveCity_Harbor_EventScript_PlayerBoardFerryEast::
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardFerryEast
+ applymovement LOCALID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardFerryEast
waitmovement 0
return
LilycoveCity_Harbor_EventScript_PlayerBoardFerryNorth::
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardFerryNorth
+ applymovement LOCALID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardFerryNorth
waitmovement 0
return
@@ -445,12 +440,12 @@ LilycoveCity_Harbor_EventScript_SailorFerryAvailable::
end
LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayNorth::
- applymovement LOCALID_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorOutOfWayNorth
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorOutOfWayNorth
waitmovement 0
return
LilycoveCity_Harbor_EventScript_MoveSailorOutOfWayEast::
- applymovement LOCALID_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorOutOfWayEast
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorOutOfWayEast
waitmovement 0
return
@@ -468,36 +463,36 @@ LilycoveCity_Harbor_Movement_SailorOutOfWayEast:
step_end
LilycoveCity_Harbor_EventScript_BrineyFaceSailorNorth::
- applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_LILYCOVE_HARBOR_BRINEY, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
LilycoveCity_Harbor_EventScript_BrineyFaceSailorEast::
- applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_LILYCOVE_HARBOR_BRINEY, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
LilycoveCity_Harbor_EventScript_BrineyFacePlayerNorth::
- applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_LILYCOVE_HARBOR_BRINEY, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
LilycoveCity_Harbor_EventScript_BrineyFacePlayerEast::
- applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_LILYCOVE_HARBOR_BRINEY, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorNorth::
- applymovement LOCALID_BRINEY, LilycoveCity_Harbor_Movement_BrineyBoardFerry
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyNorth
- applymovement LOCALID_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorBoardWithBrineyNorth
+ applymovement LOCALID_LILYCOVE_HARBOR_BRINEY, LilycoveCity_Harbor_Movement_BrineyBoardFerry
+ applymovement LOCALID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyNorth
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorBoardWithBrineyNorth
waitmovement 0
return
LilycoveCity_Harbor_EventScript_BoardFerryWithBrineyAndSailorEast::
- applymovement LOCALID_BRINEY, LilycoveCity_Harbor_Movement_BrineyBoardFerry
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyEast
- applymovement LOCALID_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorBoardWithBrineyEast
+ applymovement LOCALID_LILYCOVE_HARBOR_BRINEY, LilycoveCity_Harbor_Movement_BrineyBoardFerry
+ applymovement LOCALID_PLAYER, LilycoveCity_Harbor_Movement_PlayerBoardWithBrineyEast
+ applymovement LOCALID_LILYCOVE_HARBOR_FERRY_SAILOR, LilycoveCity_Harbor_Movement_SailorBoardWithBrineyEast
waitmovement 0
return
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/map.json b/data/maps/LilycoveCity_LilycoveMuseum_1F/map.json
index 1710e0df8f..6b44c299fe 100644
--- a/data/maps/LilycoveCity_LilycoveMuseum_1F/map.json
+++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MUSEUM_1F_CURATOR",
"graphics_id": "OBJ_EVENT_GFX_GENTLEMAN",
"x": 16,
"y": 2,
@@ -106,6 +107,7 @@
"flag": "FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_1"
},
{
+ "local_id": "LOCALID_MUSEUM_1F_ARTIST_2",
"graphics_id": "OBJ_EVENT_GFX_ARTIST",
"x": 19,
"y": 3,
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc
index fa8c5f142d..716512111c 100644
--- a/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc
+++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_CURATOR, 2
-.set LOCALID_ARTIST_2, 8
-
LilycoveCity_LilycoveMuseum_1F_MapScripts::
end_map_scripts
@@ -10,7 +7,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_Greeter::
LilycoveCity_LilycoveMuseum_1F_EventScript_Curator::
lockall
- applymovement LOCALID_CURATOR, Common_Movement_FacePlayer
+ applymovement LOCALID_MUSEUM_1F_CURATOR, Common_Movement_FacePlayer
message LilycoveCity_LilycoveMuseum_1F_Text_ImCuratorHaveYouViewedOurPaintings
waitmessage
multichoice 20, 8, MULTI_VIEWED_PAINTINGS, TRUE
@@ -35,9 +32,9 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_NotInterested::
LilycoveCity_LilycoveMuseum_1F_EventScript_InterestedInPaintings::
msgbox LilycoveCity_LilycoveMuseum_1F_Text_ExcellentCanYouComeWithMe, MSGBOX_SIGN
- applymovement LOCALID_CURATOR, LilycoveCity_LilycoveMuseum_1F_Movement_CuratorEnterStairs
+ applymovement LOCALID_MUSEUM_1F_CURATOR, LilycoveCity_LilycoveMuseum_1F_Movement_CuratorEnterStairs
waitmovement 0
- removeobject LOCALID_CURATOR
+ removeobject LOCALID_MUSEUM_1F_CURATOR
switch VAR_FACING
case DIR_NORTH, LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorNorth
case DIR_WEST, LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorWest
@@ -46,7 +43,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_InterestedInPaintings::
LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorNorth::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorNorth
+ applymovement LOCALID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorNorth
waitmovement 0
warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 11, 8
waitstate
@@ -54,7 +51,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorNorth::
LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorWest::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorWest
+ applymovement LOCALID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorWest
waitmovement 0
warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 11, 8
waitstate
@@ -62,7 +59,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorWest::
LilycoveCity_LilycoveMuseum_1F_EventScript_FollowCuratorEast::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorEast
+ applymovement LOCALID_PLAYER, LilycoveCity_LilycoveMuseum_1F_Movement_FollowCuratorEast
waitmovement 0
warp MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, 11, 8
waitstate
@@ -152,7 +149,7 @@ LilycoveCity_LilycoveMuseum_1F_EventScript_Artist2::
faceplayer
msgbox LilycoveCity_LilycoveMuseum_1F_Text_AimToSeeGreatPaintings, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ARTIST_2, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MUSEUM_1F_ARTIST_2, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/map.json b/data/maps/LilycoveCity_LilycoveMuseum_2F/map.json
index 83fe63aab0..be3467f2d1 100644
--- a/data/maps/LilycoveCity_LilycoveMuseum_2F/map.json
+++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MUSEUM_2F_CURATOR",
"graphics_id": "OBJ_EVENT_GFX_GENTLEMAN",
"x": 10,
"y": 8,
diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
index bae81451c1..e656232136 100644
--- a/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
+++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_CURATOR, 1
-
LilycoveCity_LilycoveMuseum_2F_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, LilycoveCity_LilycoveMuseum_2F_OnLoad
map_script MAP_SCRIPT_ON_FRAME_TABLE, LilycoveCity_LilycoveMuseum_2F_OnFrame
@@ -64,18 +62,18 @@ LilycoveCity_LilycoveMuseum_2F_OnFrame:
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowExhibitHall::
lockall
- applymovement LOCALID_CURATOR, Common_Movement_FacePlayer
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_2F_Movement_PlayerWalkInPlaceLeft
+ applymovement LOCALID_MUSEUM_2F_CURATOR, Common_Movement_FacePlayer
+ applymovement LOCALID_PLAYER, LilycoveCity_LilycoveMuseum_2F_Movement_PlayerWalkInPlaceLeft
waitmovement 0
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ThisIsExhibitHall, MSGBOX_SIGN
- applymovement LOCALID_CURATOR, LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall
+ applymovement LOCALID_MUSEUM_2F_CURATOR, LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall
+ applymovement LOCALID_PLAYER, LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall
waitmovement 0
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ExplainExhibitHall, MSGBOX_SIGN
- applymovement LOCALID_CURATOR, Common_Movement_FacePlayer
+ applymovement LOCALID_MUSEUM_2F_CURATOR, Common_Movement_FacePlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, LilycoveCity_LilycoveMuseum_2F_Movement_PlayerWalkInPlaceLeft
+ applymovement LOCALID_PLAYER, LilycoveCity_LilycoveMuseum_2F_Movement_PlayerWalkInPlaceLeft
waitmovement 0
msgbox LilycoveCity_LilycoveMuseum_2F_Text_PleaseObtainPaintingsForExhibit, MSGBOX_SIGN
copyvar VAR_LILYCOVE_MUSEUM_2F_STATE, 1
@@ -109,16 +107,16 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_AddedPainting::
end
LilycoveCity_LilycoveMuseum_2F_EventScript_ThankPlayer::
- applymovement LOCALID_CURATOR, Common_Movement_FacePlayer
+ applymovement LOCALID_MUSEUM_2F_CURATOR, Common_Movement_FacePlayer
waitmovement 0
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsYouPlayer, MSGBOX_DEFAULT
- applymovement LOCALID_CURATOR, LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall
+ applymovement LOCALID_MUSEUM_2F_CURATOR, LilycoveCity_LilycoveMuseum_2F_Movement_FaceExhibitHall
msgbox LilycoveCity_LilycoveMuseum_2F_Text_PaintingsAttractedMoreGuests, MSGBOX_DEFAULT
goto LilycoveCity_LilycoveMuseum_2F_EventScript_GiveGlassOrnament
end
LilycoveCity_LilycoveMuseum_2F_EventScript_GiveGlassOrnament::
- applymovement LOCALID_CURATOR, Common_Movement_FacePlayer
+ applymovement LOCALID_MUSEUM_2F_CURATOR, Common_Movement_FacePlayer
msgbox LilycoveCity_LilycoveMuseum_2F_Text_TokenOfGratitude, MSGBOX_DEFAULT
givedecoration DECOR_GLASS_ORNAMENT
goto_if_eq VAR_RESULT, FALSE, LilycoveCity_LilycoveMuseum_2F_EventScript_NoRoomForGlassOrnament
diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/map.json b/data/maps/LilycoveCity_MoveDeletersHouse/map.json
index 29c6f3636e..f10630570a 100644
--- a/data/maps/LilycoveCity_MoveDeletersHouse/map.json
+++ b/data/maps/LilycoveCity_MoveDeletersHouse/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MOVE_DELETER",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 4,
"y": 4,
diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc
index 7607115951..41891ea0c5 100644
--- a/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc
+++ b/data/maps/LilycoveCity_MoveDeletersHouse/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_MOVE_DELETER, 1
-
LilycoveCity_MoveDeletersHouse_MapScripts::
end_map_scripts
diff --git a/data/maps/LilycoveCity_PokemonCenter_1F/map.json b/data/maps/LilycoveCity_PokemonCenter_1F/map.json
index 595b5af54b..8eb6312fb2 100644
--- a/data/maps/LilycoveCity_PokemonCenter_1F/map.json
+++ b/data/maps/LilycoveCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_LILYCOVE_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
@@ -54,6 +55,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LILYCOVE_LADY",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 1,
"y": 3,
@@ -67,6 +69,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LILYCOVE_LADYS_MON",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 2,
"y": 3,
diff --git a/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc b/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc
index cdb88a443c..968e3bfbc6 100644
--- a/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/LilycoveCity_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
LilycoveCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -26,7 +24,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_ShowContestLadyMon::
end
LilycoveCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_LILYCOVE_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/map.json b/data/maps/LilycoveCity_PokemonTrainerFanClub/map.json
index ccd988bf3a..db0c31aa16 100644
--- a/data/maps/LilycoveCity_PokemonTrainerFanClub/map.json
+++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TRAINER_FAN_CLUB_LASS",
"graphics_id": "OBJ_EVENT_GFX_LASS",
"x": 3,
"y": 11,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRAINER_FAN_CLUB_MAN",
"graphics_id": "OBJ_EVENT_GFX_MAN_4",
"x": 8,
"y": 10,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRAINER_FAN_CLUB_POKEFAN_M",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_M",
"x": 6,
"y": 11,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRAINER_FAN_CLUB_LITTLE_GIRL",
"graphics_id": "OBJ_EVENT_GFX_LITTLE_GIRL",
"x": 5,
"y": 8,
@@ -67,6 +71,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRAINER_FAN_CLUB_NINJA_BOY",
"graphics_id": "OBJ_EVENT_GFX_NINJA_BOY",
"x": 7,
"y": 11,
@@ -80,6 +85,7 @@
"flag": "FLAG_HIDE_FANCLUB_LITTLE_BOY"
},
{
+ "local_id": "LOCALID_TRAINER_FAN_CLUB_BOY",
"graphics_id": "OBJ_EVENT_GFX_BOY_2",
"x": 1,
"y": 9,
@@ -93,6 +99,7 @@
"flag": "FLAG_HIDE_FANCLUB_BOY"
},
{
+ "local_id": "LOCALID_TRAINER_FAN_CLUB_WOMAN",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_3",
"x": 3,
"y": 10,
@@ -106,6 +113,7 @@
"flag": "FLAG_HIDE_FANCLUB_LADY"
},
{
+ "local_id": "LOCALID_TRAINER_FAN_CLUB_EXPERT_F",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_F",
"x": 10,
"y": 10,
diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc
index 849e516b1a..e73dd3e518 100644
--- a/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc
+++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/scripts.inc
@@ -1,12 +1,3 @@
-.set LOCALID_LASS, 1
-.set LOCALID_MAN, 2
-.set LOCALID_POKEFAN_M, 3
-.set LOCALID_LITTLE_GIRL, 4
-.set LOCALID_NINJA_BOY, 5
-.set LOCALID_BOY, 6
-.set LOCALID_WOMAN, 7
-.set LOCALID_EXPERT_F, 8
-
LilycoveCity_PokemonTrainerFanClub_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, LilycoveCity_PokemonTrainerFanClub_OnFrame
map_script MAP_SCRIPT_ON_TRANSITION, LilycoveCity_PokemonTrainerFanClub_OnTransition
@@ -20,20 +11,20 @@ LilycoveCity_PokemonTrainerFanClub_OnFrame:
LilycoveCity_PokemonTrainerFanClub_EventScript_MeetFirstFans::
lockall
- applymovement LOCALID_LASS, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_TRAINER_FAN_CLUB_LASS, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox LilycoveCity_PokemonTrainerFanClub_Text_OhWowItsPlayer, MSGBOX_DEFAULT
- applymovement LOCALID_LITTLE_GIRL, LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlWatchPlayer
- applymovement LOCALID_MAN, LilycoveCity_PokemonTrainerFanClub_Movement_FanApproachPlayer
+ applymovement LOCALID_TRAINER_FAN_CLUB_LITTLE_GIRL, LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlWatchPlayer
+ applymovement LOCALID_TRAINER_FAN_CLUB_MAN, LilycoveCity_PokemonTrainerFanClub_Movement_FanApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox LilycoveCity_PokemonTrainerFanClub_Text_HeardAboutYouImYourFan, MSGBOX_DEFAULT
- applymovement LOCALID_LITTLE_GIRL, LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlMoveCloserToPlayer
+ applymovement LOCALID_TRAINER_FAN_CLUB_LITTLE_GIRL, LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlMoveCloserToPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
- applymovement LOCALID_LITTLE_GIRL, LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer
+ applymovement LOCALID_TRAINER_FAN_CLUB_LITTLE_GIRL, LilycoveCity_PokemonTrainerFanClub_Movement_LittleGirlHideFromPlayer
waitmovement 0
setvar VAR_LILYCOVE_FAN_CLUB_STATE, 2
releaseall
@@ -157,35 +148,35 @@ LilycoveCity_PokemonTrainerFanClub_EventScript_TrySetUpTVShow::
return
LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember1ToFarTable::
- setobjectxyperm LOCALID_LASS, 7, 5
+ setobjectxyperm LOCALID_TRAINER_FAN_CLUB_LASS, 7, 5
return
LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember2ToFarTable::
- setobjectxyperm LOCALID_POKEFAN_M, 3, 4
+ setobjectxyperm LOCALID_TRAINER_FAN_CLUB_POKEFAN_M, 3, 4
return
LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember3ToFarTable::
- setobjectxyperm LOCALID_LITTLE_GIRL, 7, 2
+ setobjectxyperm LOCALID_TRAINER_FAN_CLUB_LITTLE_GIRL, 7, 2
return
LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember4ToFarTable::
- setobjectxyperm LOCALID_NINJA_BOY, 5, 5
+ setobjectxyperm LOCALID_TRAINER_FAN_CLUB_NINJA_BOY, 5, 5
return
LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember5ToFarTable::
- setobjectxyperm LOCALID_BOY, 5, 2
+ setobjectxyperm LOCALID_TRAINER_FAN_CLUB_BOY, 5, 2
return
LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember6ToFarTable::
- setobjectxyperm LOCALID_MAN, 8, 4
+ setobjectxyperm LOCALID_TRAINER_FAN_CLUB_MAN, 8, 4
return
LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember7ToFarTable::
- setobjectxyperm LOCALID_WOMAN, 3, 3
+ setobjectxyperm LOCALID_TRAINER_FAN_CLUB_WOMAN, 3, 3
return
LilycoveCity_PokemonTrainerFanClub_EventScript_MoveMember8ToFarTable::
- setobjectxyperm LOCALID_EXPERT_F, 8, 3
+ setobjectxyperm LOCALID_TRAINER_FAN_CLUB_EXPERT_F, 8, 3
return
LilycoveCity_PokemonTrainerFanClub_EventScript_SetFanMemberPositionsForFirstFanMeeting::
diff --git a/data/maps/LittlerootTown/map.json b/data/maps/LittlerootTown/map.json
index 8311ffaa3c..f5c8c7846d 100644
--- a/data/maps/LittlerootTown/map.json
+++ b/data/maps/LittlerootTown/map.json
@@ -21,6 +21,7 @@
],
"object_events": [
{
+ "local_id": "LOCALID_LITTLEROOT_TWIN",
"graphics_id": "OBJ_EVENT_GFX_TWIN",
"x": 16,
"y": 10,
@@ -60,6 +61,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_LITTLEROOT_MOM",
"graphics_id": "OBJ_EVENT_GFX_MOM",
"x": 5,
"y": 8,
@@ -99,6 +101,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_TRUCK"
},
{
+ "local_id": "LOCALID_LITTLEROOT_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 13,
"y": 10,
@@ -112,6 +115,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_RIVAL"
},
{
+ "local_id": "LOCALID_LITTLEROOT_BIRCH",
"graphics_id": "OBJ_EVENT_GFX_PROF_BIRCH",
"x": 14,
"y": 10,
diff --git a/data/maps/LittlerootTown/scripts.inc b/data/maps/LittlerootTown/scripts.inc
index 3867dd628f..cda504e24c 100644
--- a/data/maps/LittlerootTown/scripts.inc
+++ b/data/maps/LittlerootTown/scripts.inc
@@ -1,8 +1,3 @@
-.set LOCALID_TWIN, 1
-.set LOCALID_MOM, 4
-.set LOCALID_RIVAL, 7
-.set LOCALID_BIRCH, 8
-
LittlerootTown_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, LittlerootTown_OnFrame
@@ -76,34 +71,34 @@ LittlerootTown_EventScript_SetExitedHouseAfterLatiSSTicketEvent::
return
LittlerootTown_EventScript_MoveMomToMaysDoor::
- setobjectxyperm LOCALID_MOM, 14, 8
+ setobjectxyperm LOCALID_LITTLEROOT_MOM, 14, 8
return
LittlerootTown_EventScript_SetTwinPos::
goto_if_eq VAR_LITTLEROOT_TOWN_STATE, 0, LittlerootTown_EventScript_SetTwinGuardingRoutePos
- setobjectxyperm LOCALID_TWIN, 10, 1
- setobjectmovementtype LOCALID_TWIN, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_LITTLEROOT_TWIN, 10, 1
+ setobjectmovementtype LOCALID_LITTLEROOT_TWIN, MOVEMENT_TYPE_FACE_UP
return
LittlerootTown_EventScript_SetTwinGuardingRoutePos::
- setobjectxyperm LOCALID_TWIN, 7, 2
- setobjectmovementtype LOCALID_TWIN, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_LITTLEROOT_TWIN, 7, 2
+ setobjectmovementtype LOCALID_LITTLEROOT_TWIN, MOVEMENT_TYPE_FACE_DOWN
return
LittlerootTown_EventScript_SetMomStandingInFrontOfDoorPos::
clearflag FLAG_HIDE_LITTLEROOT_TOWN_MOM_OUTSIDE
- setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_DOWN
+ setobjectmovementtype LOCALID_LITTLEROOT_MOM, MOVEMENT_TYPE_FACE_DOWN
checkplayergender
call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_SetMomInFrontOfDoorMale
call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_SetMomInFrontOfDoorFemale
return
LittlerootTown_EventScript_SetMomInFrontOfDoorMale::
- setobjectxyperm LOCALID_MOM, 5, 9
+ setobjectxyperm LOCALID_LITTLEROOT_MOM, 5, 9
return
LittlerootTown_EventScript_SetMomInFrontOfDoorFemale::
- setobjectxyperm LOCALID_MOM, 14, 9
+ setobjectxyperm LOCALID_LITTLEROOT_MOM, 14, 9
return
LittlerootTown_OnFrame:
@@ -137,31 +132,31 @@ LittlerootTown_EventScript_StepOffTruckFemale::
LittlerootTown_EventScript_GoInsideWithMom::
delay 15
playse SE_LEDGE
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_Movement_PlayerStepOffTruck
+ applymovement LOCALID_PLAYER, LittlerootTown_Movement_PlayerStepOffTruck
waitmovement 0
opendoor VAR_0x8004, VAR_0x8005
waitdooranim
- addobject LOCALID_MOM
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitHouse
+ addobject LOCALID_LITTLEROOT_MOM
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitHouse
waitmovement 0
closedoor VAR_0x8004, VAR_0x8005
waitdooranim
delay 10
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerAtTruck
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerAtTruck
waitmovement 0
msgbox LittlerootTown_Text_OurNewHomeLetsGoInside, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachDoor
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_Movement_PlayerApproachDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachDoor
+ applymovement LOCALID_PLAYER, LittlerootTown_Movement_PlayerApproachDoor
waitmovement 0
opendoor VAR_0x8004, VAR_0x8005
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomEnterHouse
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_Movement_PlayerEnterHouse
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomEnterHouse
+ applymovement LOCALID_PLAYER, LittlerootTown_Movement_PlayerEnterHouse
waitmovement 0
setflag FLAG_HIDE_LITTLEROOT_TOWN_MOM_OUTSIDE
setvar VAR_LITTLEROOT_INTRO_STATE, 3
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
+ hideobjectat LOCALID_PLAYER, 0
closedoor VAR_0x8004, VAR_0x8005
waitdooranim
clearflag FLAG_HIDE_LITTLEROOT_TOWN_FAT_MAN
@@ -210,7 +205,7 @@ LittlerootTown_Movement_PlayerStepOffTruck:
LittlerootTown_EventScript_BeginDexUpgradeScene::
lockall
playse SE_PIN
- applymovement LOCALID_BIRCH, Common_Movement_ExclamationMark
+ applymovement LOCALID_LITTLEROOT_BIRCH, Common_Movement_ExclamationMark
waitmovement 0
delay 80
msgbox LittlerootTown_Text_BirchSomethingToShowYouAtLab, MSGBOX_DEFAULT
@@ -229,21 +224,21 @@ LittlerootTown_OnWarp:
end_map_script_table
LittlerootTown_EventScript_SetRivalBirchPosForDexUpgrade::
- addobject LOCALID_BIRCH
- addobject LOCALID_RIVAL
+ addobject LOCALID_LITTLEROOT_BIRCH
+ addobject LOCALID_LITTLEROOT_RIVAL
checkplayergender
goto_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeMale
goto LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeFemale
end
LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeMale::
- setobjectxy LOCALID_RIVAL, 6, 10
- setobjectxy LOCALID_BIRCH, 5, 10
+ setobjectxy LOCALID_LITTLEROOT_RIVAL, 6, 10
+ setobjectxy LOCALID_LITTLEROOT_BIRCH, 5, 10
end
LittlerootTown_EventScript_SetRivalBirchPosForDexUpgradeFemale::
- setobjectxy LOCALID_RIVAL, 13, 10
- setobjectxy LOCALID_BIRCH, 14, 10
+ setobjectxy LOCALID_LITTLEROOT_RIVAL, 13, 10
+ setobjectxy LOCALID_LITTLEROOT_BIRCH, 14, 10
end
LittlerootTown_EventScript_FatMan::
@@ -268,7 +263,7 @@ LittlerootTown_EventScript_GoSaveBirch::
special GetPlayerBigGuyGirlString
msgbox LittlerootTown_Text_CanYouGoSeeWhatsHappening, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_TWIN, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_LITTLEROOT_TWIN, Common_Movement_FaceOriginalDirection
waitmovement 0
setvar VAR_LITTLEROOT_TOWN_STATE, 2
release
@@ -287,10 +282,10 @@ LittlerootTown_EventScript_GoodLuck::
LittlerootTown_EventScript_NeedPokemonTriggerLeft::
lockall
- applymovement LOCALID_TWIN, LittlerootTown_Movement_TwinApproachPlayerLeft
+ applymovement LOCALID_LITTLEROOT_TWIN, LittlerootTown_Movement_TwinApproachPlayerLeft
waitmovement 0
call LittlerootTown_EventScript_DangerousWithoutPokemon
- applymovement LOCALID_TWIN, LittlerootTown_Movement_TwinReturnLeft
+ applymovement LOCALID_LITTLEROOT_TWIN, LittlerootTown_Movement_TwinReturnLeft
waitmovement 0
releaseall
end
@@ -298,8 +293,8 @@ LittlerootTown_EventScript_NeedPokemonTriggerLeft::
LittlerootTown_EventScript_DangerousWithoutPokemon::
msgbox LittlerootTown_Text_IfYouGoInGrassPokemonWillJumpOut, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_TWIN, LittlerootTown_Movement_TwinPushPlayerFromRoute
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_Movement_PushPlayerBackFromRoute
+ applymovement LOCALID_LITTLEROOT_TWIN, LittlerootTown_Movement_TwinPushPlayerFromRoute
+ applymovement LOCALID_PLAYER, LittlerootTown_Movement_PushPlayerBackFromRoute
waitmovement 0
msgbox LittlerootTown_Text_DangerousIfYouDontHavePokemon, MSGBOX_DEFAULT
closemessage
@@ -345,10 +340,10 @@ LittlerootTown_Movement_PushPlayerBackFromRoute:
LittlerootTown_EventScript_NeedPokemonTriggerRight::
lockall
- applymovement LOCALID_TWIN, LittlerootTown_Movement_TwinApproachPlayerRight
+ applymovement LOCALID_LITTLEROOT_TWIN, LittlerootTown_Movement_TwinApproachPlayerRight
waitmovement 0
call LittlerootTown_EventScript_DangerousWithoutPokemon
- applymovement LOCALID_TWIN, LittlerootTown_Movement_TwinReturnRight
+ applymovement LOCALID_LITTLEROOT_TWIN, LittlerootTown_Movement_TwinReturnRight
waitmovement 0
releaseall
end
@@ -379,14 +374,14 @@ LittlerootTown_Movement_TwinReturnRight:
LittlerootTown_EventScript_GoSaveBirchTrigger::
lockall
- applymovement LOCALID_TWIN, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_LITTLEROOT_TWIN, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
special GetPlayerBigGuyGirlString
msgbox LittlerootTown_Text_CanYouGoSeeWhatsHappening, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_TWIN, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_LITTLEROOT_TWIN, Common_Movement_FaceOriginalDirection
waitmovement 0
setvar VAR_LITTLEROOT_TOWN_STATE, 2
releaseall
@@ -435,14 +430,14 @@ LittlerootTown_EventScript_PlayersHouseSignFemale::
LittlerootTown_EventScript_GiveRunningShoesTrigger0::
lockall
setvar VAR_0x8008, 0
- setobjectxy LOCALID_MOM, 10, 9
+ setobjectxy LOCALID_LITTLEROOT_MOM, 10, 9
goto LittlerootTown_EventScript_GiveRunningShoesTrigger
end
LittlerootTown_EventScript_GiveRunningShoesTrigger1::
lockall
setvar VAR_0x8008, 1
- setobjectxy LOCALID_MOM, 11, 9
+ setobjectxy LOCALID_LITTLEROOT_MOM, 11, 9
goto LittlerootTown_EventScript_GiveRunningShoesTrigger
end
@@ -500,12 +495,12 @@ LittlerootTown_EventScript_SetHomeDoorCoordsFemale::
return
LittlerootTown_EventScript_MomNoticePlayerMale::
- applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_LITTLEROOT_MOM, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
LittlerootTown_EventScript_MomNoticePlayerFemale::
- applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_LITTLEROOT_MOM, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
@@ -528,72 +523,72 @@ LittlerootTown_EventScript_MomApproachPlayerFemale::
return
LittlerootTown_EventScript_MomApproachPlayer0::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayer0
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayer0
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayer1::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayer1
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayer1
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayerMale2::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale2
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerMale2
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayerMale3::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale3
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerMale3
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayerMale4::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale4
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerMale4
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayerMale5::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerMale5
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerMale5
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayerFemale2::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale2
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerFemale2
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayerFemale3::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale3
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerFemale3
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayerFemale4::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale4
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerFemale4
waitmovement 0
return
LittlerootTown_EventScript_MomApproachPlayerFemale5::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomApproachPlayerFemale5
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomApproachPlayerFemale5
waitmovement 0
return
@@ -616,107 +611,107 @@ LittlerootTown_EventScript_MomReturnHomeFemale::
return
LittlerootTown_EventScript_MomReturnHome0::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHome0
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHome0
waitmovement 0
return
LittlerootTown_EventScript_MomReturnHome1::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHome1
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHome1
waitmovement 0
return
LittlerootTown_EventScript_MomReturnHomeMale2::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeMale2
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHomeMale2
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
return
LittlerootTown_EventScript_MomReturnHomeMale3::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeMale3
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHomeMale3
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
return
LittlerootTown_EventScript_MomReturnHomeMale4::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeMale4
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHomeMale4
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
return
LittlerootTown_EventScript_MomReturnHomeMale5::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeMale5
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHomeMale5
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
return
LittlerootTown_EventScript_MomReturnHomeFemale2::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeFemale2
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHomeFemale2
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
return
LittlerootTown_EventScript_MomReturnHomeFemale3::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeFemale3
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHomeFemale3
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
return
LittlerootTown_EventScript_MomReturnHomeFemale4::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeFemale4
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHomeFemale4
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
return
LittlerootTown_EventScript_MomReturnHomeFemale5::
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomReturnHomeFemale5
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomReturnHomeFemale5
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
return
@@ -878,20 +873,20 @@ LittlerootTown_EventScript_Mom::
call_if_eq VAR_RESULT, MALE, LittlerootTown_EventScript_SetHomeDoorCoordsMale
call_if_eq VAR_RESULT, FEMALE, LittlerootTown_EventScript_SetHomeDoorCoordsFemale
call LittlerootTown_EventScript_GiveRunningShoes
- applymovement LOCALID_MOM, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_LITTLEROOT_MOM, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
opendoor VAR_0x8009, VAR_0x800A
waitdooranim
- applymovement LOCALID_MOM, LittlerootTown_Movement_MomExitThroughDoor
+ applymovement LOCALID_LITTLEROOT_MOM, LittlerootTown_Movement_MomExitThroughDoor
waitmovement 0
- hideobjectat LOCALID_MOM, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_LITTLEROOT_MOM, MAP_LITTLEROOT_TOWN
closedoor VAR_0x8009, VAR_0x800A
waitdooranim
goto LittlerootTown_EventScript_SetReceivedRunningShoes
end
LittlerootTown_EventScript_SetReceivedRunningShoes::
- removeobject LOCALID_MOM
+ removeobject LOCALID_LITTLEROOT_MOM
setflag FLAG_SYS_B_DASH
setvar VAR_LITTLEROOT_TOWN_STATE, 4
release
diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/map.json b/data/maps/LittlerootTown_BrendansHouse_1F/map.json
index 23b1bf28c6..d8f2f818e1 100644
--- a/data/maps/LittlerootTown_BrendansHouse_1F/map.json
+++ b/data/maps/LittlerootTown_BrendansHouse_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PLAYERS_HOUSE_1F_MOM",
"graphics_id": "OBJ_EVENT_GFX_MOM",
"x": 2,
"y": 6,
@@ -54,6 +55,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_1"
},
{
+ "local_id": "LOCALID_RIVALS_HOUSE_1F_MOM",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_4",
"x": 2,
"y": 7,
@@ -67,6 +69,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_MOM"
},
{
+ "local_id": "LOCALID_PLAYERS_HOUSE_1F_DAD",
"graphics_id": "OBJ_EVENT_GFX_NORMAN",
"x": 5,
"y": 6,
@@ -93,6 +96,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_SIBLING"
},
{
+ "local_id": "LOCALID_RIVALS_HOUSE_1F_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL",
"x": 8,
"y": 8,
diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc
index bee4f8e9a2..544041bcdf 100644
--- a/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc
+++ b/data/maps/LittlerootTown_BrendansHouse_1F/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_MOM, 1
-.set LOCALID_RIVAL_MOM, 4
-.set LOCALID_RIVAL, 7
-
LittlerootTown_BrendansHouse_1F_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, LittlerootTown_BrendansHouse_1F_OnLoad
map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_BrendansHouse_1F_OnTransition
@@ -34,18 +30,18 @@ LittlerootTown_BrendansHouse_1F_OnTransition:
end
LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToStairs::
- setobjectxyperm LOCALID_MOM, 8, 4
- setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_PLAYERS_HOUSE_1F_MOM, 8, 4
+ setobjectmovementtype LOCALID_PLAYERS_HOUSE_1F_MOM, MOVEMENT_TYPE_FACE_UP
return
LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToTV::
- setobjectxyperm LOCALID_MOM, 4, 5
- setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_PLAYERS_HOUSE_1F_MOM, 4, 5
+ setobjectmovementtype LOCALID_PLAYERS_HOUSE_1F_MOM, MOVEMENT_TYPE_FACE_UP
return
LittlerootTown_BrendansHouse_1F_EventScript_MoveMomToDoor::
- setobjectxyperm LOCALID_MOM, 9, 8
- setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_PLAYERS_HOUSE_1F_MOM, 9, 8
+ setobjectmovementtype LOCALID_PLAYERS_HOUSE_1F_MOM, MOVEMENT_TYPE_FACE_UP
return
@ Many of the below scripts have no gender check because they assume youre in the correct house
@@ -62,8 +58,8 @@ LittlerootTown_BrendansHouse_1F_EventScript_GoUpstairsToSetClock::
lockall
msgbox PlayersHouse_1F_Text_GoSetTheClock, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs
- applymovement LOCALID_MOM, LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs
+ applymovement LOCALID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs
+ applymovement LOCALID_PLAYERS_HOUSE_1F_MOM, LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs
waitmovement 0
warp MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F, 7, 1
waitstate
@@ -76,7 +72,7 @@ LittlerootTown_BrendansHouse_1F_Movement_PushTowardStairs:
LittlerootTown_BrendansHouse_1F_EventScript_EnterHouseMovingIn::
lockall
- setvar VAR_0x8004, LOCALID_MOM
+ setvar VAR_0x8004, LOCALID_PLAYERS_HOUSE_1F_MOM
setvar VAR_0x8005, MALE
goto PlayersHouse_1F_EventScript_EnterHouseMovingIn
end
@@ -84,19 +80,19 @@ LittlerootTown_BrendansHouse_1F_EventScript_EnterHouseMovingIn::
LittlerootTown_BrendansHouse_1F_EventScript_PetalburgGymReport::
lockall
setvar VAR_0x8004, MALE
- setvar VAR_0x8005, LOCALID_MOM
+ setvar VAR_0x8005, LOCALID_PLAYERS_HOUSE_1F_MOM
goto PlayersHouse_1F_EventScript_PetalburgGymReportMale
end
LittlerootTown_BrendansHouse_1F_EventScript_YoureNewNeighbor::
lockall
playse SE_PIN
- applymovement LOCALID_RIVAL_MOM, Common_Movement_ExclamationMark
+ applymovement LOCALID_RIVALS_HOUSE_1F_MOM, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL_MOM, Common_Movement_Delay48
+ applymovement LOCALID_RIVALS_HOUSE_1F_MOM, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_RIVAL_MOM, LittlerootTown_BrendansHouse_1F_Movement_RivalMomApproach
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_RIVALS_HOUSE_1F_MOM, LittlerootTown_BrendansHouse_1F_Movement_RivalMomApproach
waitmovement 0
special GetRivalSonDaughterString
msgbox RivalsHouse_1F_Text_OhYoureTheNewNeighbor, MSGBOX_DEFAULT
@@ -116,7 +112,7 @@ LittlerootTown_BrendansHouse_1F_Movement_RivalMomApproach:
LittlerootTown_BrendansHouse_1F_EventScript_GoSeeRoom::
lockall
- setvar VAR_0x8004, LOCALID_MOM
+ setvar VAR_0x8004, LOCALID_PLAYERS_HOUSE_1F_MOM
setvar VAR_0x8005, MALE
applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
@@ -144,12 +140,12 @@ LittlerootTown_BrendansHouse_1F_EventScript_MeetRival2::
LittlerootTown_BrendansHouse_1F_EventScript_MeetRival::
playse SE_EXIT
delay 10
- addobject LOCALID_RIVAL
+ addobject LOCALID_RIVALS_HOUSE_1F_RIVAL
delay 30
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, Common_Movement_Delay48
waitmovement 0
call_if_ne VAR_0x8008, 1, LittlerootTown_BrendansHouse_1F_EventScript_PlayerFaceBrendan
playbgm MUS_ENCOUNTER_BRENDAN, TRUE
@@ -162,7 +158,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_MeetRival::
call_if_eq VAR_0x8008, 1, LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs1
call_if_eq VAR_0x8008, 2, LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs2
playse SE_EXIT
- removeobject LOCALID_RIVAL
+ removeobject LOCALID_RIVALS_HOUSE_1F_RIVAL
setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_BRENDAN
setflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_POKE_BALL
clearflag FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM
@@ -175,22 +171,22 @@ LittlerootTown_BrendansHouse_1F_EventScript_MeetRival::
end
LittlerootTown_BrendansHouse_1F_EventScript_PlayerFaceBrendan::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer0::
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer0
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer0
waitmovement 0
return
LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer1::
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer1
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer1
waitmovement 0
return
LittlerootTown_BrendansHouse_1F_EventScript_BrendanApproachPlayer2::
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer2
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer2
waitmovement 0
return
@@ -221,20 +217,20 @@ LittlerootTown_BrendansHouse_1F_Movement_BrendanApproachPlayer2:
step_end
LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs0::
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit0
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs0
+ applymovement LOCALID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit0
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs0
waitmovement 0
return
LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs1::
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit1
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs1
+ applymovement LOCALID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit1
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs1
waitmovement 0
return
LittlerootTown_BrendansHouse_1F_EventScript_BrendanGoUpstairs2::
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit2
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs2
+ applymovement LOCALID_PLAYER, LittlerootTown_BrendansHouse_1F_Movement_PlayerWatchBrendanExit2
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_BrendansHouse_1F_Movement_BrendanGoUpstairs2
waitmovement 0
return
diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/map.json b/data/maps/LittlerootTown_BrendansHouse_2F/map.json
index e9b6834ee5..9b3852767a 100644
--- a/data/maps/LittlerootTown_BrendansHouse_2F/map.json
+++ b/data/maps/LittlerootTown_BrendansHouse_2F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_RIVALS_HOUSE_2F_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL",
"x": 7,
"y": 1,
@@ -184,6 +185,7 @@
"flag": "FLAG_DECORATION_12"
},
{
+ "local_id": "LOCALID_PLAYERS_HOUSE_2F_MOM",
"graphics_id": "OBJ_EVENT_GFX_MOM",
"x": 7,
"y": 1,
diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc
index fb0ceae4bf..5e9e72ee0c 100644
--- a/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc
+++ b/data/maps/LittlerootTown_BrendansHouse_2F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_RIVAL, 1
-
LittlerootTown_BrendansHouse_2F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_BrendansHouse_2F_OnTransition
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, LittlerootTown_BrendansHouse_2F_OnWarp
@@ -23,8 +21,8 @@ LittlerootTown_BrendansHouse_2F_EventScript_TryUpdateBrendanPos::
goto_if_eq VAR_RESULT, MALE, LittlerootTown_BrendansHouse_2F_EventScript_Ret
@ Odd that the MaysHouse equivalent was used below instead
goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2, LittlerootTown_MaysHouse_2F_EventScript_Ret
- setobjectxyperm LOCALID_RIVAL, 0, 2
- setobjectmovementtype LOCALID_RIVAL, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_RIVALS_HOUSE_2F_RIVAL, 0, 2
+ setobjectmovementtype LOCALID_RIVALS_HOUSE_2F_RIVAL, MOVEMENT_TYPE_FACE_UP
return
LittlerootTown_BrendansHouse_2F_EventScript_Ret::
@@ -57,13 +55,13 @@ LittlerootTown_BrendansHouse_2F_EventScript_RivalsPokeBall::
LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan::
delay 10
- addobject LOCALID_RIVAL
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanEnters
+ addobject LOCALID_RIVALS_HOUSE_2F_RIVAL
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanEnters
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, Common_Movement_Delay48
waitmovement 0
delay 10
playbgm MUS_ENCOUNTER_BRENDAN, TRUE
@@ -81,49 +79,49 @@ LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendan::
end
LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanNorth::
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerNorth
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerNorth
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox RivalsHouse_2F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanNorth
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCNorth
+ applymovement LOCALID_PLAYER, LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanNorth
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCNorth
waitmovement 0
return
LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanSouth::
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerSouth
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerSouth
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox RivalsHouse_2F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanSouth
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCSouth
+ applymovement LOCALID_PLAYER, LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanSouth
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCSouth
waitmovement 0
return
LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanWest::
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerWest
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerWest
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox RivalsHouse_2F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanWest
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCWest
+ applymovement LOCALID_PLAYER, LittlerootTown_BrendansHouse_2F_Movement_PlayerWatchBrendanWest
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCWest
waitmovement 0
return
LittlerootTown_BrendansHouse_2F_EventScript_MeetBrendanEast::
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanApproachPlayerEast
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox RivalsHouse_2F_Text_BrendanWhoAreYou, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCEast
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_BrendansHouse_2F_Movement_BrendanWalkToPCEast
waitmovement 0
return
diff --git a/data/maps/LittlerootTown_MaysHouse_1F/map.json b/data/maps/LittlerootTown_MaysHouse_1F/map.json
index 4e4887003f..6fd26a9b96 100644
--- a/data/maps/LittlerootTown_MaysHouse_1F/map.json
+++ b/data/maps/LittlerootTown_MaysHouse_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PLAYERS_HOUSE_1F_MOM",
"graphics_id": "OBJ_EVENT_GFX_MOM",
"x": 8,
"y": 6,
@@ -54,6 +55,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_2"
},
{
+ "local_id": "LOCALID_RIVALS_HOUSE_1F_MOM",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_4",
"x": 8,
"y": 7,
@@ -67,6 +69,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_MOM"
},
{
+ "local_id": "LOCALID_PLAYERS_HOUSE_1F_DAD",
"graphics_id": "OBJ_EVENT_GFX_NORMAN",
"x": 5,
"y": 6,
@@ -93,6 +96,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_SIBLING"
},
{
+ "local_id": "LOCALID_RIVALS_HOUSE_1F_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_RIVAL_MAY_NORMAL",
"x": 2,
"y": 8,
diff --git a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc
index 9924dcb921..368e86c2c4 100644
--- a/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc
+++ b/data/maps/LittlerootTown_MaysHouse_1F/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_MOM, 1
-.set LOCALID_RIVAL_MOM, 4
-.set LOCALID_RIVAL, 7
-
LittlerootTown_MaysHouse_1F_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, LittlerootTown_MaysHouse_1F_OnLoad
map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_MaysHouse_1F_OnTransition
@@ -34,18 +30,18 @@ LittlerootTown_MaysHouse_1F_OnTransition:
end
LittlerootTown_MaysHouse_1F_EventScript_MoveMomToStairs::
- setobjectxyperm LOCALID_MOM, 2, 4
- setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_PLAYERS_HOUSE_1F_MOM, 2, 4
+ setobjectmovementtype LOCALID_PLAYERS_HOUSE_1F_MOM, MOVEMENT_TYPE_FACE_UP
return
LittlerootTown_MaysHouse_1F_EventScript_MoveMomToTV::
- setobjectxyperm LOCALID_MOM, 6, 5
- setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_PLAYERS_HOUSE_1F_MOM, 6, 5
+ setobjectmovementtype LOCALID_PLAYERS_HOUSE_1F_MOM, MOVEMENT_TYPE_FACE_UP
return
LittlerootTown_MaysHouse_1F_EventScript_MoveMomToDoor::
- setobjectxyperm LOCALID_MOM, 1, 8
- setobjectmovementtype LOCALID_MOM, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_PLAYERS_HOUSE_1F_MOM, 1, 8
+ setobjectmovementtype LOCALID_PLAYERS_HOUSE_1F_MOM, MOVEMENT_TYPE_FACE_UP
return
@ Many of the below scripts have no gender check because they assume youre in the correct house
@@ -61,8 +57,8 @@ LittlerootTown_MaysHouse_1F_EventScript_GoUpstairsToSetClock::
lockall
msgbox PlayersHouse_1F_Text_GoSetTheClock, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs
- applymovement LOCALID_MOM, LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs
+ applymovement LOCALID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs
+ applymovement LOCALID_PLAYERS_HOUSE_1F_MOM, LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs
waitmovement 0
warp MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F, 1, 1
waitstate
@@ -75,7 +71,7 @@ LittlerootTown_MaysHouse_1F_Movement_PushTowardStairs:
LittlerootTown_MaysHouse_1F_EventScript_EnterHouseMovingIn::
lockall
- setvar VAR_0x8004, LOCALID_MOM
+ setvar VAR_0x8004, LOCALID_PLAYERS_HOUSE_1F_MOM
setvar VAR_0x8005, FEMALE
goto PlayersHouse_1F_EventScript_EnterHouseMovingIn
end
@@ -83,19 +79,19 @@ LittlerootTown_MaysHouse_1F_EventScript_EnterHouseMovingIn::
LittlerootTown_MaysHouse_1F_EventScript_PetalburgGymReport::
lockall
setvar VAR_0x8004, FEMALE
- setvar VAR_0x8005, LOCALID_MOM
+ setvar VAR_0x8005, LOCALID_PLAYERS_HOUSE_1F_MOM
goto PlayersHouse_1F_EventScript_PetalburgGymReportFemale
end
LittlerootTown_MaysHouse_1F_EventScript_YoureNewNeighbor::
lockall
playse SE_PIN
- applymovement LOCALID_RIVAL_MOM, Common_Movement_ExclamationMark
+ applymovement LOCALID_RIVALS_HOUSE_1F_MOM, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL_MOM, Common_Movement_Delay48
+ applymovement LOCALID_RIVALS_HOUSE_1F_MOM, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
- applymovement LOCALID_RIVAL_MOM, LittlerootTown_MaysHouse_1F_Movement_RivalMomApproach
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_RIVALS_HOUSE_1F_MOM, LittlerootTown_MaysHouse_1F_Movement_RivalMomApproach
waitmovement 0
special GetRivalSonDaughterString
msgbox RivalsHouse_1F_Text_OhYoureTheNewNeighbor, MSGBOX_DEFAULT
@@ -149,7 +145,7 @@ RivalsHouse_1F_EventScript_RivalSibling::
LittlerootTown_MaysHouse_1F_EventScript_GoSeeRoom::
lockall
- setvar VAR_0x8004, LOCALID_MOM
+ setvar VAR_0x8004, LOCALID_PLAYERS_HOUSE_1F_MOM
setvar VAR_0x8005, FEMALE
applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
@@ -177,12 +173,12 @@ LittlerootTown_MaysHouse_1F_EventScript_MeetRival2::
LittlerootTown_MaysHouse_1F_EventScript_MeetRival::
playse SE_EXIT
delay 10
- addobject LOCALID_RIVAL
+ addobject LOCALID_RIVALS_HOUSE_1F_RIVAL
delay 30
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, Common_Movement_Delay48
waitmovement 0
call_if_ne VAR_0x8008, 1, LittlerootTown_MaysHouse_1F_EventScript_PlayerFaceMay
playbgm MUS_ENCOUNTER_MAY, TRUE
@@ -195,7 +191,7 @@ LittlerootTown_MaysHouse_1F_EventScript_MeetRival::
call_if_eq VAR_0x8008, 1, LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs1
call_if_eq VAR_0x8008, 2, LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs2
playse SE_EXIT
- removeobject LOCALID_RIVAL
+ removeobject LOCALID_RIVALS_HOUSE_1F_RIVAL
setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_MAY
setflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_POKE_BALL
clearflag FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM
@@ -208,22 +204,22 @@ LittlerootTown_MaysHouse_1F_EventScript_MeetRival::
end
LittlerootTown_MaysHouse_1F_EventScript_PlayerFaceMay::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer0::
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer0
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer0
waitmovement 0
return
LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer1::
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer1
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer1
waitmovement 0
return
LittlerootTown_MaysHouse_1F_EventScript_MayApproachPlayer2::
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer2
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer2
waitmovement 0
return
@@ -254,20 +250,20 @@ LittlerootTown_MaysHouse_1F_Movement_MayApproachPlayer2:
step_end
LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs0::
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit0
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs0
+ applymovement LOCALID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit0
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs0
waitmovement 0
return
LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs1::
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit1
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs1
+ applymovement LOCALID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit1
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs1
waitmovement 0
return
LittlerootTown_MaysHouse_1F_EventScript_MayGoUpstairs2::
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit2
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs2
+ applymovement LOCALID_PLAYER, LittlerootTown_MaysHouse_1F_Movement_PlayerWatchMayExit2
+ applymovement LOCALID_RIVALS_HOUSE_1F_RIVAL, LittlerootTown_MaysHouse_1F_Movement_MayGoUpstairs2
waitmovement 0
return
diff --git a/data/maps/LittlerootTown_MaysHouse_2F/map.json b/data/maps/LittlerootTown_MaysHouse_2F/map.json
index ce3a5f5701..3cec7006c1 100644
--- a/data/maps/LittlerootTown_MaysHouse_2F/map.json
+++ b/data/maps/LittlerootTown_MaysHouse_2F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_RIVALS_HOUSE_2F_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_RIVAL_MAY_NORMAL",
"x": 1,
"y": 1,
@@ -184,6 +185,7 @@
"flag": "FLAG_DECORATION_12"
},
{
+ "local_id": "LOCALID_PLAYERS_HOUSE_2F_MOM",
"graphics_id": "OBJ_EVENT_GFX_MOM",
"x": 1,
"y": 1,
diff --git a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc
index cef07a60a3..69217006a0 100644
--- a/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc
+++ b/data/maps/LittlerootTown_MaysHouse_2F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_RIVAL, 1
-
LittlerootTown_MaysHouse_2F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_MaysHouse_2F_OnTransition
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, LittlerootTown_MaysHouse_2F_OnWarp
@@ -22,8 +20,8 @@ LittlerootTown_MaysHouse_2F_EventScript_TryUpdateMayPos::
checkplayergender
goto_if_eq VAR_RESULT, FEMALE, LittlerootTown_MaysHouse_2F_EventScript_Ret
goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 2, LittlerootTown_MaysHouse_2F_EventScript_Ret
- setobjectxyperm LOCALID_RIVAL, 8, 2
- setobjectmovementtype LOCALID_RIVAL, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_RIVALS_HOUSE_2F_RIVAL, 8, 2
+ setobjectmovementtype LOCALID_RIVALS_HOUSE_2F_RIVAL, MOVEMENT_TYPE_FACE_UP
return
LittlerootTown_MaysHouse_2F_EventScript_Ret::
@@ -56,13 +54,13 @@ LittlerootTown_MaysHouse_2F_EventScript_RivalsPokeBall::
LittlerootTown_MaysHouse_2F_EventScript_MeetMay::
delay 10
- addobject LOCALID_RIVAL
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayEnters
+ addobject LOCALID_RIVALS_HOUSE_2F_RIVAL
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayEnters
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, Common_Movement_Delay48
waitmovement 0
delay 10
playbgm MUS_ENCOUNTER_MAY, TRUE
@@ -80,49 +78,49 @@ LittlerootTown_MaysHouse_2F_EventScript_MeetMay::
end
LittlerootTown_MaysHouse_2F_EventScript_MeetMayNorth::
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerNorth
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerNorth
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox RivalsHouse_2F_Text_MayWhoAreYou, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayNorth
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCNorth
+ applymovement LOCALID_PLAYER, LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayNorth
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCNorth
waitmovement 0
return
LittlerootTown_MaysHouse_2F_EventScript_MeetMaySouth::
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerSouth
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerSouth
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox RivalsHouse_2F_Text_MayWhoAreYou, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMaySouth
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCSouth
+ applymovement LOCALID_PLAYER, LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMaySouth
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCSouth
waitmovement 0
return
LittlerootTown_MaysHouse_2F_EventScript_MeetMayWest::
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerWest
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox RivalsHouse_2F_Text_MayWhoAreYou, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCWest
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCWest
waitmovement 0
return
LittlerootTown_MaysHouse_2F_EventScript_MeetMayEast::
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerEast
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayApproachPlayerEast
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox RivalsHouse_2F_Text_MayWhoAreYou, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayEast
- applymovement LOCALID_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCEast
+ applymovement LOCALID_PLAYER, LittlerootTown_MaysHouse_2F_Movement_PlayerWatchMayEast
+ applymovement LOCALID_RIVALS_HOUSE_2F_RIVAL, LittlerootTown_MaysHouse_2F_Movement_MayWalkToPCEast
waitmovement 0
return
diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/map.json b/data/maps/LittlerootTown_ProfessorBirchsLab/map.json
index d97c026bda..a701b4522d 100644
--- a/data/maps/LittlerootTown_ProfessorBirchsLab/map.json
+++ b/data/maps/LittlerootTown_ProfessorBirchsLab/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_BIRCHS_LAB_AIDE",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 9,
"y": 8,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BIRCHS_LAB_BIRCH",
"graphics_id": "OBJ_EVENT_GFX_PROF_BIRCH",
"x": 6,
"y": 4,
@@ -41,6 +43,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_BIRCH"
},
{
+ "local_id": "LOCALID_BIRCHS_LAB_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 7,
"y": 4,
@@ -54,6 +57,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_RIVAL"
},
{
+ "local_id": "LOCALID_BIRCHS_LAB_CYNDAQUIL_BALL",
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
"x": 6,
"y": 8,
@@ -67,6 +71,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_CYNDAQUIL"
},
{
+ "local_id": "LOCALID_BIRCHS_LAB_TOTODILE_BALL",
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
"x": 6,
"y": 8,
@@ -80,6 +85,7 @@
"flag": "FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_TOTODILE"
},
{
+ "local_id": "LOCALID_BIRCHS_LAB_CHIKORITA_BALL",
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
"x": 6,
"y": 8,
diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc
index 6e050ba7ae..f404e0b218 100644
--- a/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc
+++ b/data/maps/LittlerootTown_ProfessorBirchsLab/scripts.inc
@@ -1,10 +1,3 @@
-.set LOCALID_AIDE, 1
-.set LOCALID_BIRCH, 2
-.set LOCALID_RIVAL, 3
-.set LOCALID_BALL_CYNDAQUIL, 4
-.set LOCALID_BALL_TOTODILE, 5
-.set LOCALID_BALL_CHIKORITA, 6
-
LittlerootTown_ProfessorBirchsLab_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, LittlerootTown_ProfessorBirchsLab_OnTransition
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, LittlerootTown_ProfessorBirchsLab_OnWarp
@@ -37,8 +30,8 @@ LittlerootTown_ProfessorBirchsLab_OnTransition:
LittlerootTown_ProfessorBirchsLab_EventScript_CheckReadyForJohtoStarter::
specialvar VAR_RESULT, HasAllHoennMons
goto_if_eq VAR_RESULT, TRUE, LittlerootTown_ProfessorBirchsLab_EventScript_SetReadyForJohtoStarter
- setobjectmovementtype LOCALID_RIVAL, MOVEMENT_TYPE_WANDER_UP_AND_DOWN
- setobjectxyperm LOCALID_RIVAL, 5, 10
+ setobjectmovementtype LOCALID_BIRCHS_LAB_RIVAL, MOVEMENT_TYPE_WANDER_UP_AND_DOWN
+ setobjectxyperm LOCALID_BIRCHS_LAB_RIVAL, 5, 10
end
LittlerootTown_ProfessorBirchsLab_EventScript_SetReadyForJohtoStarter::
@@ -51,8 +44,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SetJohtoStarterLayout::
LittlerootTown_ProfessorBirchsLab_EventScript_SetAfterJohtoStarterLayout::
setmaplayoutindex LAYOUT_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB_WITH_TABLE
- setobjectmovementtype LOCALID_RIVAL, MOVEMENT_TYPE_WANDER_UP_AND_DOWN
- setobjectxyperm LOCALID_RIVAL, 5, 10
+ setobjectmovementtype LOCALID_BIRCHS_LAB_RIVAL, MOVEMENT_TYPE_WANDER_UP_AND_DOWN
+ setobjectxyperm LOCALID_BIRCHS_LAB_RIVAL, 5, 10
end
LittlerootTown_ProfessorBirchsLab_OnWarp:
@@ -66,40 +59,40 @@ LittlerootTown_ProfessorBirchsLab_OnWarp:
end_map_script_table
LittlerootTown_ProfessorBirchsLab_EventScript_SetPlayerPosForReceiveStarter::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForDexUpgrade::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
- addobject LOCALID_BIRCH
- addobject LOCALID_RIVAL
- turnobject LOCALID_RIVAL, DIR_NORTH
- setobjectxy LOCALID_RIVAL, 5, 5
- turnobject LOCALID_BIRCH, DIR_SOUTH
- setobjectxy LOCALID_BIRCH, 6, 4
- turnobject LOCALID_AIDE, DIR_EAST
- setobjectxy LOCALID_AIDE, 10, 10
+ turnobject LOCALID_PLAYER, DIR_NORTH
+ addobject LOCALID_BIRCHS_LAB_BIRCH
+ addobject LOCALID_BIRCHS_LAB_RIVAL
+ turnobject LOCALID_BIRCHS_LAB_RIVAL, DIR_NORTH
+ setobjectxy LOCALID_BIRCHS_LAB_RIVAL, 5, 5
+ turnobject LOCALID_BIRCHS_LAB_BIRCH, DIR_SOUTH
+ setobjectxy LOCALID_BIRCHS_LAB_BIRCH, 6, 4
+ turnobject LOCALID_BIRCHS_LAB_AIDE, DIR_EAST
+ setobjectxy LOCALID_BIRCHS_LAB_AIDE, 10, 10
end
LittlerootTown_ProfessorBirchsLab_EventScript_AddRivalObject::
- addobject LOCALID_RIVAL
+ addobject LOCALID_BIRCHS_LAB_RIVAL
end
LittlerootTown_ProfessorBirchsLab_EventScript_SetObjectPosForJohtoStarters::
- addobject LOCALID_BALL_CYNDAQUIL
- addobject LOCALID_BALL_TOTODILE
- addobject LOCALID_BALL_CHIKORITA
- addobject LOCALID_RIVAL
- turnobject LOCALID_BALL_CYNDAQUIL, DIR_SOUTH
- setobjectxy LOCALID_BALL_CYNDAQUIL, 8, 4
- turnobject LOCALID_BALL_TOTODILE, DIR_SOUTH
- setobjectxy LOCALID_BALL_TOTODILE, 9, 4
- turnobject LOCALID_BALL_CHIKORITA, DIR_SOUTH
- setobjectxy LOCALID_BALL_CHIKORITA, 10, 4
- turnobject LOCALID_BIRCH, DIR_SOUTH
- setobjectxy LOCALID_BIRCH, 6, 4
- turnobject LOCALID_RIVAL, DIR_EAST
- setobjectxy LOCALID_RIVAL, 5, 5
+ addobject LOCALID_BIRCHS_LAB_CYNDAQUIL_BALL
+ addobject LOCALID_BIRCHS_LAB_TOTODILE_BALL
+ addobject LOCALID_BIRCHS_LAB_CHIKORITA_BALL
+ addobject LOCALID_BIRCHS_LAB_RIVAL
+ turnobject LOCALID_BIRCHS_LAB_CYNDAQUIL_BALL, DIR_SOUTH
+ setobjectxy LOCALID_BIRCHS_LAB_CYNDAQUIL_BALL, 8, 4
+ turnobject LOCALID_BIRCHS_LAB_TOTODILE_BALL, DIR_SOUTH
+ setobjectxy LOCALID_BIRCHS_LAB_TOTODILE_BALL, 9, 4
+ turnobject LOCALID_BIRCHS_LAB_CHIKORITA_BALL, DIR_SOUTH
+ setobjectxy LOCALID_BIRCHS_LAB_CHIKORITA_BALL, 10, 4
+ turnobject LOCALID_BIRCHS_LAB_BIRCH, DIR_SOUTH
+ setobjectxy LOCALID_BIRCHS_LAB_BIRCH, 6, 4
+ turnobject LOCALID_BIRCHS_LAB_RIVAL, DIR_EAST
+ setobjectxy LOCALID_BIRCHS_LAB_RIVAL, 5, 5
end
LittlerootTown_ProfessorBirchsLab_OnFrame:
@@ -150,7 +143,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_DeclineSeeingRival::
LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedexEvent::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForPokedex
+ applymovement LOCALID_PLAYER, LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForPokedex
waitmovement 0
goto LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex
end
@@ -170,7 +163,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex::
delay 30
msgbox LittlerootTown_ProfessorBirchsLab_Text_OtherRegionsUpgradeToNational, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_BIRCH, LittlerootTown_ProfessorBirchsLab_Movement_BirchRetrievePokedexes
+ applymovement LOCALID_BIRCHS_LAB_BIRCH, LittlerootTown_ProfessorBirchsLab_Movement_BirchRetrievePokedexes
waitmovement 0
delay 20
playse SE_CLICK
@@ -181,8 +174,8 @@ LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex::
delay 10
playse SE_CLICK
delay 20
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterRight
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_BIRCHS_LAB_RIVAL, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
checkplayergender
call_if_eq VAR_RESULT, MALE, LittlerootTown_ProfessorBirchsLab_EventScript_MayUpgradeComment
@@ -190,10 +183,10 @@ LittlerootTown_ProfessorBirchsLab_EventScript_UpgradeToNationalDex::
playse SE_PC_ON
waitse
delay 20
- applymovement LOCALID_BIRCH, LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex
+ applymovement LOCALID_BIRCHS_LAB_BIRCH, LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterUp
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_BIRCHS_LAB_RIVAL, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox LittlerootTown_ProfessorBirchsLab_Text_OkayAllDone, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_ITEM
@@ -256,7 +249,7 @@ LittlerootTown_ProfessorBirchsLab_Movement_BirchReturnPokedex:
LittlerootTown_ProfessorBirchsLab_EventScript_ChooseJohtoStarter::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForJohtoStarter
+ applymovement LOCALID_PLAYER, LittlerootTown_ProfessorBirchsLab_Movement_PlayerEnterLabForJohtoStarter
waitmovement 0
msgbox LittlerootTown_ProfessorBirchsLab_Text_CompletedDexChoosePokemon, MSGBOX_DEFAULT
setvar VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 5
@@ -296,7 +289,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_AideReceivedStarter::
LittlerootTown_ProfessorBirchsLab_EventScript_Cyndaquil::
release
goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter
- applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_BIRCHS_LAB_BIRCH, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
showmonpic SPECIES_CYNDAQUIL, 10, 3
msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeCyndaquil, MSGBOX_YESNO
@@ -307,7 +300,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Cyndaquil::
LittlerootTown_ProfessorBirchsLab_EventScript_Totodile::
release
goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter
- applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_BIRCHS_LAB_BIRCH, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
showmonpic SPECIES_TOTODILE, 10, 3
msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeTotodile, MSGBOX_YESNO
@@ -318,7 +311,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_Totodile::
LittlerootTown_ProfessorBirchsLab_EventScript_Chikorita::
release
goto_if_ge VAR_DEX_UPGRADE_JOHTO_STARTER_STATE, 6, LittlerootTown_ProfessorBirchsLab_EventScript_AlreadyChoseJohtoStarter
- applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_BIRCHS_LAB_BIRCH, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
showmonpic SPECIES_CHIKORITA, 10, 3
msgbox LittlerootTown_ProfessorBirchsLab_Text_YoullTakeChikorita, MSGBOX_YESNO
@@ -349,7 +342,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveCyndaquil::
LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty::
call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter
- removeobject LOCALID_BALL_CYNDAQUIL
+ removeobject LOCALID_BIRCHS_LAB_CYNDAQUIL_BALL
msgbox gText_NicknameThisPokemon, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedCyndaquil
call Common_EventScript_GetGiftMonPartySlot
@@ -359,7 +352,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToParty::
LittlerootTown_ProfessorBirchsLab_EventScript_SendCyndaquilToPC::
call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter
- removeobject LOCALID_BALL_CYNDAQUIL
+ removeobject LOCALID_BIRCHS_LAB_CYNDAQUIL_BALL
msgbox gText_NicknameThisPokemon, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_CyndaquilTransferredToPC
call Common_EventScript_NameReceivedBoxMon
@@ -390,7 +383,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveTotodile::
LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty::
call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter
- removeobject LOCALID_BALL_TOTODILE
+ removeobject LOCALID_BIRCHS_LAB_TOTODILE_BALL
msgbox gText_NicknameThisPokemon, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedTotodile
call Common_EventScript_GetGiftMonPartySlot
@@ -400,7 +393,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToParty::
LittlerootTown_ProfessorBirchsLab_EventScript_SendTotodileToPC::
call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter
- removeobject LOCALID_BALL_TOTODILE
+ removeobject LOCALID_BIRCHS_LAB_TOTODILE_BALL
msgbox gText_NicknameThisPokemon, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_TotodileTransferredToPC
call Common_EventScript_NameReceivedBoxMon
@@ -431,7 +424,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GiveChikorita::
LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty::
call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter
- removeobject LOCALID_BALL_CHIKORITA
+ removeobject LOCALID_BIRCHS_LAB_CHIKORITA_BALL
msgbox gText_NicknameThisPokemon, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedChikorita
call Common_EventScript_GetGiftMonPartySlot
@@ -441,7 +434,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToParty::
LittlerootTown_ProfessorBirchsLab_EventScript_SendChikoritaToPC::
call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivedJohtoStarter
- removeobject LOCALID_BALL_CHIKORITA
+ removeobject LOCALID_BIRCHS_LAB_CHIKORITA_BALL
msgbox gText_NicknameThisPokemon, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, LittlerootTown_ProfessorBirchsLab_EventScript_ChikoritaTransferredToPC
call Common_EventScript_NameReceivedBoxMon
@@ -515,9 +508,9 @@ LittlerootTown_ProfessorBirchsLab_EventScript_GivePokedex::
call LittlerootTown_ProfessorBirchsLab_EventScript_ReceivePokedex
msgbox LittlerootTown_ProfessorBirchsLab_Text_ExplainPokedex, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_RIVAL, LittlerootTown_ProfessorBirchsLab_Movement_RivalApproachPlayer
+ applymovement LOCALID_BIRCHS_LAB_RIVAL, LittlerootTown_ProfessorBirchsLab_Movement_RivalApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
checkplayergender
call_if_eq VAR_RESULT, MALE, LittlerootTown_ProfessorBirchsLab_EventScript_MayGivePokeBalls
diff --git a/data/maps/MagmaHideout_4F/map.json b/data/maps/MagmaHideout_4F/map.json
index d426affdec..f257ebaf5c 100644
--- a/data/maps/MagmaHideout_4F/map.json
+++ b/data/maps/MagmaHideout_4F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MAGMA_HIDEOUT_4F_GROUDON",
"graphics_id": "OBJ_EVENT_GFX_GROUDON_FRONT",
"x": 16,
"y": 17,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON"
},
{
+ "local_id": "LOCALID_MAGMA_HIDEOUT_4F_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 31,
"y": 22,
@@ -41,6 +43,7 @@
"flag": "FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS"
},
{
+ "local_id": "LOCALID_MAGMA_HIDEOUT_4F_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 30,
"y": 13,
@@ -54,6 +57,7 @@
"flag": "FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS"
},
{
+ "local_id": "LOCALID_MAGMA_HIDEOUT_4F_GRUNT_3",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 26,
"y": 13,
@@ -67,6 +71,7 @@
"flag": "FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS"
},
{
+ "local_id": "LOCALID_MAGMA_HIDEOUT_4F_TABITHA",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 22,
"y": 4,
@@ -80,6 +85,7 @@
"flag": "FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS"
},
{
+ "local_id": "LOCALID_MAGMA_HIDEOUT_4F_MAXIE",
"graphics_id": "OBJ_EVENT_GFX_MAXIE",
"x": 16,
"y": 21,
@@ -93,6 +99,7 @@
"flag": "FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS"
},
{
+ "local_id": "LOCALID_MAGMA_HIDEOUT_4F_GROUDON_SLEEPING",
"graphics_id": "OBJ_EVENT_GFX_GROUDON_ASLEEP",
"x": 16,
"y": 17,
diff --git a/data/maps/MagmaHideout_4F/scripts.inc b/data/maps/MagmaHideout_4F/scripts.inc
index f44c86adae..7e9931447b 100644
--- a/data/maps/MagmaHideout_4F/scripts.inc
+++ b/data/maps/MagmaHideout_4F/scripts.inc
@@ -1,11 +1,3 @@
-.set LOCALID_GROUDON, 1
-.set LOCALID_GRUNT_1, 2
-.set LOCALID_GRUNT_2, 3
-.set LOCALID_GRUNT_3, 4
-.set LOCALID_TABITHA, 5
-.set LOCALID_MAXIE, 6
-.set LOCALID_GROUDON_SLEEPING, 7
-
MagmaHideout_4F_MapScripts::
end_map_scripts
@@ -23,14 +15,14 @@ MagmaHideout_4F_EventScript_Maxie::
playfanfare MUS_AWAKEN_LEGEND
playse SE_ORB
special DoOrbEffect
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 150
- removeobject LOCALID_GROUDON_SLEEPING
- addobject LOCALID_GROUDON
+ removeobject LOCALID_MAGMA_HIDEOUT_4F_GROUDON_SLEEPING
+ addobject LOCALID_MAGMA_HIDEOUT_4F_GROUDON
waitstate
delay 60
- applymovement LOCALID_GROUDON, MagmaHideout_4F_Movement_GroudonApproach
+ applymovement LOCALID_MAGMA_HIDEOUT_4F_GROUDON, MagmaHideout_4F_Movement_GroudonApproach
waitmovement 0
special FadeOutOrbEffect
waitstate
@@ -40,9 +32,9 @@ MagmaHideout_4F_EventScript_Maxie::
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
- applymovement LOCALID_GROUDON, MagmaHideout_4F_Movement_GroudonExit
+ applymovement LOCALID_MAGMA_HIDEOUT_4F_GROUDON, MagmaHideout_4F_Movement_GroudonExit
waitmovement 0
- removeobject LOCALID_GROUDON
+ removeobject LOCALID_MAGMA_HIDEOUT_4F_GROUDON
delay 4
setvar VAR_0x8004, 2 @ vertical pan
setvar VAR_0x8005, 2 @ horizontal pan
@@ -51,14 +43,14 @@ MagmaHideout_4F_EventScript_Maxie::
special ShakeCamera
waitstate
delay 30
- applymovement LOCALID_MAXIE, MagmaHideout_4F_Movement_MaxieLookAround
+ applymovement LOCALID_MAGMA_HIDEOUT_4F_MAXIE, MagmaHideout_4F_Movement_MaxieLookAround
waitmovement 0
msgbox MagmaHideout_4F_Text_MaxieGroudonWhatsWrong, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 30
- applymovement LOCALID_MAXIE, Common_Movement_FacePlayer
+ applymovement LOCALID_MAGMA_HIDEOUT_4F_MAXIE, Common_Movement_FacePlayer
waitmovement 0
msgbox MagmaHideout_4F_Text_MaxieOhItWasYou, MSGBOX_DEFAULT
closemessage
@@ -71,11 +63,11 @@ MagmaHideout_4F_EventScript_Maxie::
setflag FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT
setvar VAR_SLATEPORT_HARBOR_STATE, 1
fadescreen FADE_TO_BLACK
- removeobject LOCALID_MAXIE
- removeobject LOCALID_GRUNT_1
- removeobject LOCALID_GRUNT_2
- removeobject LOCALID_GRUNT_3
- removeobject LOCALID_TABITHA
+ removeobject LOCALID_MAGMA_HIDEOUT_4F_MAXIE
+ removeobject LOCALID_MAGMA_HIDEOUT_4F_GRUNT_1
+ removeobject LOCALID_MAGMA_HIDEOUT_4F_GRUNT_2
+ removeobject LOCALID_MAGMA_HIDEOUT_4F_GRUNT_3
+ removeobject LOCALID_MAGMA_HIDEOUT_4F_TABITHA
setflag FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS
fadescreen FADE_FROM_BLACK
releaseall
diff --git a/data/maps/MarineCave_End/map.json b/data/maps/MarineCave_End/map.json
index 3430b2da0d..6e59768d5b 100644
--- a/data/maps/MarineCave_End/map.json
+++ b/data/maps/MarineCave_End/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MARINE_CAVE_KYOGRE",
"graphics_id": "OBJ_EVENT_GFX_KYOGRE_FRONT",
"x": 9,
"y": 22,
diff --git a/data/maps/MarineCave_End/scripts.inc b/data/maps/MarineCave_End/scripts.inc
index 349436166b..8e2aad4257 100644
--- a/data/maps/MarineCave_End/scripts.inc
+++ b/data/maps/MarineCave_End/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_KYOGRE, 1
-
MarineCave_End_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, MarineCave_End_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, MarineCave_End_OnTransition
@@ -12,7 +10,7 @@ MarineCave_End_OnResume:
MarineCave_End_EventScript_TryRemoveKyogre::
specialvar VAR_RESULT, GetBattleOutcome
goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn
- removeobject LOCALID_KYOGRE
+ removeobject LOCALID_MARINE_CAVE_KYOGRE
return
MarineCave_End_OnTransition:
@@ -26,15 +24,15 @@ MarineCave_End_EventScript_ShowKyogre::
MarineCave_End_EventScript_Kyogre::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp
+ applymovement LOCALID_PLAYER, Common_Movement_FaceUp
waitmovement 0
- applymovement LOCALID_KYOGRE, MarineCave_End_Movement_KyogreApproach
+ applymovement LOCALID_MARINE_CAVE_KYOGRE, MarineCave_End_Movement_KyogreApproach
waitmovement 0
waitse
playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER
delay 40
waitmoncry
- setvar VAR_LAST_TALKED, LOCALID_KYOGRE
+ setvar VAR_LAST_TALKED, LOCALID_MARINE_CAVE_KYOGRE
setwildbattle SPECIES_KYOGRE, 70
setflag FLAG_SYS_CTRL_OBJ_DELETE
special BattleSetup_StartLegendaryBattle
diff --git a/data/maps/MauvilleCity/map.json b/data/maps/MauvilleCity/map.json
index f4da4222b1..cac4bf8067 100644
--- a/data/maps/MauvilleCity/map.json
+++ b/data/maps/MauvilleCity/map.json
@@ -101,6 +101,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MAUVILLE_WALLY",
"graphics_id": "OBJ_EVENT_GFX_WALLY",
"x": 8,
"y": 6,
@@ -114,6 +115,7 @@
"flag": "FLAG_HIDE_MAUVILLE_CITY_WALLY"
},
{
+ "local_id": "LOCALID_MAUVILLE_WALLYS_UNCLE",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_M",
"x": 9,
"y": 6,
@@ -166,6 +168,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MAUVILLE_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 12,
"y": 14,
diff --git a/data/maps/MauvilleCity/scripts.inc b/data/maps/MauvilleCity/scripts.inc
index e09d2a2885..795844d722 100644
--- a/data/maps/MauvilleCity/scripts.inc
+++ b/data/maps/MauvilleCity/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_WALLY, 6
-.set LOCALID_WALLYS_UNCLE, 7
-.set LOCALID_SCOTT, 11
-
MauvilleCity_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, MauvilleCity_OnTransition
end_map_scripts
@@ -74,7 +70,7 @@ MauvilleCity_EventScript_WallysUncle::
goto_if_set FLAG_DECLINED_WALLY_BATTLE_MAUVILLE, MauvilleCity_EventScript_UncleAskPlayerToBattleWally
msgbox MauvilleCity_Text_UncleHesTooPeppy, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_WALLYS_UNCLE, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MAUVILLE_WALLYS_UNCLE, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -82,7 +78,7 @@ MauvilleCity_EventScript_WallysUncle::
MauvilleCity_EventScript_UncleAskPlayerToBattleWally::
msgbox MauvilleCity_Text_UncleCanYouBattleWally, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_WALLYS_UNCLE, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MAUVILLE_WALLYS_UNCLE, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -90,17 +86,17 @@ MauvilleCity_EventScript_UncleAskPlayerToBattleWally::
MauvilleCity_EventScript_Wally::
lockall
goto_if_set FLAG_DECLINED_WALLY_BATTLE_MAUVILLE, MauvilleCity_EventScript_WallyRequestBattleAgain
- applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox MauvilleCity_Text_WallyWantToChallengeGym, MSGBOX_DEFAULT
msgbox MauvilleCity_Text_UncleYourePushingIt, MSGBOX_DEFAULT
msgbox MauvilleCity_Text_WallyWeCanBeatAnyone, MSGBOX_DEFAULT
- applymovement LOCALID_WALLY, Common_Movement_FacePlayer
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_FacePlayer
waitmovement 0
playse SE_PIN
- applymovement LOCALID_WALLY, Common_Movement_ExclamationMark
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_WALLY, Common_Movement_Delay48
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_Delay48
waitmovement 0
msgbox MauvilleCity_Text_WallyWillYouBattleMe, MSGBOX_YESNO
goto MauvilleCity_EventScript_BattleWallyPrompt
@@ -116,47 +112,47 @@ MauvilleCity_EventScript_BattleWallyPrompt::
end
MauvilleCity_EventScript_WallyAndUncleExitNorth::
- applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitNorth1
- applymovement LOCALID_WALLY, MauvilleCity_Movement_WallyExitNorth1
- applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitNorth1
+ applymovement LOCALID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitNorth1
+ applymovement LOCALID_MAUVILLE_WALLY, MauvilleCity_Movement_WallyExitNorth1
+ applymovement LOCALID_MAUVILLE_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitNorth1
waitmovement 0
- applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 30
- applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerFaceUncleNorth
- applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleApproachPlayerNorth
+ applymovement LOCALID_PLAYER, MauvilleCity_Movement_PlayerFaceUncleNorth
+ applymovement LOCALID_MAUVILLE_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleApproachPlayerNorth
waitmovement 0
msgbox MauvilleCity_Text_UncleVisitUsSometime, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitNorth2
- applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitNorth2
- applymovement LOCALID_WALLY, MauvilleCity_Movement_WallyExitNorth2
+ applymovement LOCALID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitNorth2
+ applymovement LOCALID_MAUVILLE_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitNorth2
+ applymovement LOCALID_MAUVILLE_WALLY, MauvilleCity_Movement_WallyExitNorth2
waitmovement 0
goto MauvilleCity_EventScript_DefeatedWally
end
MauvilleCity_EventScript_WallyAndUncleExitEast::
- applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitEast1
- applymovement LOCALID_WALLY, MauvilleCity_Movement_WallyExitEast1
- applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitEast1
+ applymovement LOCALID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitEast1
+ applymovement LOCALID_MAUVILLE_WALLY, MauvilleCity_Movement_WallyExitEast1
+ applymovement LOCALID_MAUVILLE_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitEast1
waitmovement 0
- applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 30
- applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleApproachPlayerEast
+ applymovement LOCALID_MAUVILLE_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleApproachPlayerEast
waitmovement 0
msgbox MauvilleCity_Text_UncleVisitUsSometime, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitEast2
- applymovement LOCALID_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitEast2
- applymovement LOCALID_WALLY, MauvilleCity_Movement_WallyExitEast2
+ applymovement LOCALID_PLAYER, MauvilleCity_Movement_PlayerWatchWallyExitEast2
+ applymovement LOCALID_MAUVILLE_WALLYS_UNCLE, MauvilleCity_Movement_WallysUncleExitEast2
+ applymovement LOCALID_MAUVILLE_WALLY, MauvilleCity_Movement_WallyExitEast2
waitmovement 0
goto MauvilleCity_EventScript_DefeatedWally
end
MauvilleCity_EventScript_DefeatedWally::
- removeobject LOCALID_WALLY
- removeobject LOCALID_WALLYS_UNCLE
+ removeobject LOCALID_MAUVILLE_WALLY
+ removeobject LOCALID_MAUVILLE_WALLYS_UNCLE
clearflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLY
clearflag FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLYS_UNCLE
setflag FLAG_DEFEATED_WALLY_MAUVILLE
@@ -164,52 +160,52 @@ MauvilleCity_EventScript_DefeatedWally::
setflag FLAG_ENABLE_FIRST_WALLY_POKENAV_CALL
call_if_eq VAR_FACING, DIR_NORTH, MauvilleCity_EventScript_ScottApproachPlayerNorth
call_if_eq VAR_FACING, DIR_EAST, MauvilleCity_EventScript_ScottApproachPlayerEast
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox MauvilleCity_Text_ScottYouDidntHoldBack, MSGBOX_DEFAULT
closemessage
addvar VAR_SCOTT_STATE, 1
call_if_eq VAR_FACING, DIR_NORTH, MauvilleCity_EventScript_ScottExitNorth
call_if_eq VAR_FACING, DIR_EAST, MauvilleCity_EventScript_ScottExitEast
- removeobject LOCALID_SCOTT
+ removeobject LOCALID_MAUVILLE_SCOTT
releaseall
end
MauvilleCity_EventScript_ScottApproachPlayerNorth::
- addobject LOCALID_SCOTT
- applymovement LOCALID_SCOTT, MauvilleCity_Movement_ScottApproachPlayerNorth
+ addobject LOCALID_MAUVILLE_SCOTT
+ applymovement LOCALID_MAUVILLE_SCOTT, MauvilleCity_Movement_ScottApproachPlayerNorth
waitmovement 0
return
MauvilleCity_EventScript_ScottApproachPlayerEast::
- setobjectxyperm LOCALID_SCOTT, 12, 13
- addobject LOCALID_SCOTT
- applymovement LOCALID_SCOTT, MauvilleCity_Movement_ScottApproachPlayerEast
+ setobjectxyperm LOCALID_MAUVILLE_SCOTT, 12, 13
+ addobject LOCALID_MAUVILLE_SCOTT
+ applymovement LOCALID_MAUVILLE_SCOTT, MauvilleCity_Movement_ScottApproachPlayerEast
waitmovement 0
return
MauvilleCity_EventScript_ScottExitNorth::
- applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchScottExitNorth
- applymovement LOCALID_SCOTT, MauvilleCity_Movement_ScottExitNorth
+ applymovement LOCALID_PLAYER, MauvilleCity_Movement_PlayerWatchScottExitNorth
+ applymovement LOCALID_MAUVILLE_SCOTT, MauvilleCity_Movement_ScottExitNorth
waitmovement 0
return
MauvilleCity_EventScript_ScottExitEast::
- applymovement OBJ_EVENT_ID_PLAYER, MauvilleCity_Movement_PlayerWatchScottExitEast
- applymovement LOCALID_SCOTT, MauvilleCity_Movement_ScottExitEast
+ applymovement LOCALID_PLAYER, MauvilleCity_Movement_PlayerWatchScottExitEast
+ applymovement LOCALID_MAUVILLE_SCOTT, MauvilleCity_Movement_ScottExitEast
waitmovement 0
return
MauvilleCity_EventScript_BattleWally::
msgbox MauvilleCity_Text_WallyHereICome, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_WALLY_MAUVILLE, MauvilleCity_Text_WallyDefeat
- applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox MauvilleCity_Text_WallyIllGoBackToVerdanturf, MSGBOX_DEFAULT
- applymovement LOCALID_WALLY, Common_Movement_FacePlayer
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_FacePlayer
waitmovement 0
msgbox MauvilleCity_Text_ThankYouNotEnoughToBattle, MSGBOX_DEFAULT
- applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox MauvilleCity_Text_UncleNoNeedToBeDown, MSGBOX_DEFAULT
return
@@ -221,7 +217,7 @@ MauvilleCity_EventScript_DeclineWallyBattle::
end
MauvilleCity_EventScript_WallyRequestBattleAgain::
- applymovement LOCALID_WALLY, Common_Movement_FacePlayer
+ applymovement LOCALID_MAUVILLE_WALLY, Common_Movement_FacePlayer
waitmovement 0
msgbox MauvilleCity_Text_WallyPleaseBattleMe, MSGBOX_YESNO
goto MauvilleCity_EventScript_BattleWallyPrompt
diff --git a/data/maps/MauvilleCity_Mart/map.json b/data/maps/MauvilleCity_Mart/map.json
index 53ab6ce227..d48970d9ea 100644
--- a/data/maps/MauvilleCity_Mart/map.json
+++ b/data/maps/MauvilleCity_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MAUVILLE_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/MauvilleCity_Mart/scripts.inc b/data/maps/MauvilleCity_Mart/scripts.inc
index 46faa9a420..656405285c 100644
--- a/data/maps/MauvilleCity_Mart/scripts.inc
+++ b/data/maps/MauvilleCity_Mart/scripts.inc
@@ -25,9 +25,7 @@ MauvilleCity_Mart_Pokemart:
.2byte ITEM_GUARD_SPEC
.2byte ITEM_DIRE_HIT
.2byte ITEM_X_ACCURACY
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
MauvilleCity_Mart_EventScript_ExpertM::
msgbox MauvilleCity_Mart_Text_ItemsToTemporarilyElevateStats, MSGBOX_NPC
diff --git a/data/maps/MauvilleCity_PokemonCenter_1F/map.json b/data/maps/MauvilleCity_PokemonCenter_1F/map.json
index 1b0a401b84..4592d77b72 100644
--- a/data/maps/MauvilleCity_PokemonCenter_1F/map.json
+++ b/data/maps/MauvilleCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MAUVILLE_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc b/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc
index 1d81e417ef..4314a3ac11 100644
--- a/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/MauvilleCity_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
MauvilleCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, MauvilleCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -16,7 +14,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_SetMauvilleOldManGfx::
end
MauvilleCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_MAUVILLE_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/MeteorFalls_1F_1R/map.json b/data/maps/MeteorFalls_1F_1R/map.json
index e0d32c5804..7aa0e579ce 100644
--- a/data/maps/MeteorFalls_1F_1R/map.json
+++ b/data/maps/MeteorFalls_1F_1R/map.json
@@ -67,6 +67,7 @@
"flag": "FLAG_ITEM_METEOR_FALLS_1F_1R_PP_UP"
},
{
+ "local_id": "LOCALID_METEOR_FALLS_MAGMA_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 12,
"y": 20,
@@ -80,6 +81,7 @@
"flag": "FLAG_HIDE_METEOR_FALLS_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_METEOR_FALLS_MAGMA_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 14,
"y": 21,
@@ -93,6 +95,7 @@
"flag": "FLAG_HIDE_METEOR_FALLS_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_METEOR_FALLS_ARCHIE",
"graphics_id": "OBJ_EVENT_GFX_ARCHIE",
"x": 6,
"y": 20,
@@ -106,6 +109,7 @@
"flag": "FLAG_HIDE_METEOR_FALLS_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_METEOR_FALLS_AQUA_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 6,
"y": 20,
@@ -119,6 +123,7 @@
"flag": "FLAG_HIDE_METEOR_FALLS_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_METEOR_FALLS_AQUA_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 6,
"y": 21,
diff --git a/data/maps/MeteorFalls_1F_1R/scripts.inc b/data/maps/MeteorFalls_1F_1R/scripts.inc
index 06549b010e..7ae9866661 100644
--- a/data/maps/MeteorFalls_1F_1R/scripts.inc
+++ b/data/maps/MeteorFalls_1F_1R/scripts.inc
@@ -1,9 +1,3 @@
-.set LOCALID_MAGMA_GRUNT_1, 5
-.set LOCALID_MAGMA_GRUNT_2, 6
-.set LOCALID_ARCHIE, 7
-.set LOCALID_AQUA_GRUNT_1, 8
-.set LOCALID_AQUA_GRUNT_2, 9
-
MeteorFalls_1F_1R_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, MeteorFalls_1F_1R_OnLoad
end_map_scripts
@@ -22,73 +16,73 @@ MeteorFalls_1F_1R_EventScript_OpenStevensCave::
MeteorFalls_1F_1R_EventScript_MagmaStealsMeteoriteScene::
lockall
playbgm MUS_ENCOUNTER_MAGMA, FALSE
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceDown
+ applymovement LOCALID_PLAYER, Common_Movement_FaceDown
waitmovement 0
delay 30
- applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceDown
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceDown
waitmovement 0
msgbox MeteorFalls_1F_1R_Text_WithThisMeteorite, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterUp
- applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
playse SE_PIN
- applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_ExclamationMark
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_1, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_Delay48
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_1, Common_Movement_Delay48
waitmovement 0
msgbox MeteorFalls_1F_1R_Text_DontExpectMercyFromMagma, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_MAGMA_GRUNT_1, MeteorFalls_1F_1R_Movement_MagmaGruntApproachPlayer
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_1, MeteorFalls_1F_1R_Movement_MagmaGruntApproachPlayer
waitmovement 0
msgbox MeteorFalls_1F_1R_Text_HoldItRightThereMagma, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
- addobject LOCALID_ARCHIE
- addobject LOCALID_AQUA_GRUNT_1
- addobject LOCALID_AQUA_GRUNT_2
+ addobject LOCALID_METEOR_FALLS_ARCHIE
+ addobject LOCALID_METEOR_FALLS_AQUA_GRUNT_1
+ addobject LOCALID_METEOR_FALLS_AQUA_GRUNT_2
playbgm MUS_ENCOUNTER_AQUA, FALSE
- applymovement LOCALID_ARCHIE, MeteorFalls_1F_1R_Movement_ArchieArrive
- applymovement LOCALID_AQUA_GRUNT_1, MeteorFalls_1F_1R_Movement_AquaGrunt1Arrive
- applymovement LOCALID_AQUA_GRUNT_2, MeteorFalls_1F_1R_Movement_AquaGrunt2Arrive
+ applymovement LOCALID_METEOR_FALLS_ARCHIE, MeteorFalls_1F_1R_Movement_ArchieArrive
+ applymovement LOCALID_METEOR_FALLS_AQUA_GRUNT_1, MeteorFalls_1F_1R_Movement_AquaGrunt1Arrive
+ applymovement LOCALID_METEOR_FALLS_AQUA_GRUNT_2, MeteorFalls_1F_1R_Movement_AquaGrunt2Arrive
waitmovement 0
- applymovement LOCALID_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_1, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox MeteorFalls_1F_1R_Text_BeSeeingYouTeamAqua, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, MeteorFalls_1F_1R_Movement_PushPlayerOutOfWay
- applymovement LOCALID_MAGMA_GRUNT_1, MeteorFalls_1F_1R_Movement_MagmaGrunt1Exit
- applymovement LOCALID_MAGMA_GRUNT_2, MeteorFalls_1F_1R_Movement_MagmaGrunt2Exit
+ applymovement LOCALID_PLAYER, MeteorFalls_1F_1R_Movement_PushPlayerOutOfWay
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_1, MeteorFalls_1F_1R_Movement_MagmaGrunt1Exit
+ applymovement LOCALID_METEOR_FALLS_MAGMA_GRUNT_2, MeteorFalls_1F_1R_Movement_MagmaGrunt2Exit
waitmovement 0
- removeobject LOCALID_MAGMA_GRUNT_1
- removeobject LOCALID_MAGMA_GRUNT_2
- applymovement LOCALID_ARCHIE, MeteorFalls_1F_1R_Movement_ArchieApproachPlayer
+ removeobject LOCALID_METEOR_FALLS_MAGMA_GRUNT_1
+ removeobject LOCALID_METEOR_FALLS_MAGMA_GRUNT_2
+ applymovement LOCALID_METEOR_FALLS_ARCHIE, MeteorFalls_1F_1R_Movement_ArchieApproachPlayer
waitmovement 0
msgbox MeteorFalls_1F_1R_Text_ArchieSeenYouBefore, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_AQUA_GRUNT_1, MeteorFalls_1F_1R_Movement_AquaGrunt1ApproachArchie
- applymovement LOCALID_AQUA_GRUNT_2, MeteorFalls_1F_1R_Movement_AquaGrunt2ApproachArchie
+ applymovement LOCALID_METEOR_FALLS_AQUA_GRUNT_1, MeteorFalls_1F_1R_Movement_AquaGrunt1ApproachArchie
+ applymovement LOCALID_METEOR_FALLS_AQUA_GRUNT_2, MeteorFalls_1F_1R_Movement_AquaGrunt2ApproachArchie
waitmovement 0
msgbox MeteorFalls_1F_1R_Text_BossWeShouldChaseMagma, MSGBOX_DEFAULT
- applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_METEOR_FALLS_ARCHIE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox MeteorFalls_1F_1R_Text_ArchieYesNoTellingWhatMagmaWillDo, MSGBOX_DEFAULT
- applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_METEOR_FALLS_ARCHIE, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox MeteorFalls_1F_1R_Text_ArchieFarewell, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ARCHIE, MeteorFalls_1F_1R_Movement_ArchieExit
- applymovement LOCALID_AQUA_GRUNT_1, MeteorFalls_1F_1R_Movement_AquaGrunt1Exit
- applymovement LOCALID_AQUA_GRUNT_2, MeteorFalls_1F_1R_Movement_AquaGrunt2Exit
+ applymovement LOCALID_METEOR_FALLS_ARCHIE, MeteorFalls_1F_1R_Movement_ArchieExit
+ applymovement LOCALID_METEOR_FALLS_AQUA_GRUNT_1, MeteorFalls_1F_1R_Movement_AquaGrunt1Exit
+ applymovement LOCALID_METEOR_FALLS_AQUA_GRUNT_2, MeteorFalls_1F_1R_Movement_AquaGrunt2Exit
waitmovement 0
fadedefaultbgm
- removeobject LOCALID_ARCHIE
- removeobject LOCALID_AQUA_GRUNT_1
- removeobject LOCALID_AQUA_GRUNT_2
+ removeobject LOCALID_METEOR_FALLS_ARCHIE
+ removeobject LOCALID_METEOR_FALLS_AQUA_GRUNT_1
+ removeobject LOCALID_METEOR_FALLS_AQUA_GRUNT_2
setflag FLAG_HIDE_ROUTE_112_TEAM_MAGMA
setflag FLAG_MET_ARCHIE_METEOR_FALLS
setflag FLAG_HIDE_FALLARBOR_TOWN_BATTLE_TENT_SCOTT
diff --git a/data/maps/MeteorFalls_StevensCave/map.json b/data/maps/MeteorFalls_StevensCave/map.json
index 8e329fc0d3..69520324c6 100644
--- a/data/maps/MeteorFalls_StevensCave/map.json
+++ b/data/maps/MeteorFalls_StevensCave/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_METEOR_FALLS_STEVEN",
"graphics_id": "OBJ_EVENT_GFX_STEVEN",
"x": 19,
"y": 3,
diff --git a/data/maps/MeteorFalls_StevensCave/scripts.inc b/data/maps/MeteorFalls_StevensCave/scripts.inc
index 45669e978b..73ce1b38fc 100644
--- a/data/maps/MeteorFalls_StevensCave/scripts.inc
+++ b/data/maps/MeteorFalls_StevensCave/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_STEVEN, 1
-
MeteorFalls_StevensCave_MapScripts::
end_map_scripts
@@ -8,11 +6,11 @@ MeteorFalls_StevensCave_EventScript_Steven::
goto_if_set FLAG_DEFEATED_METEOR_FALLS_STEVEN, MeteorFalls_StevensCave_EventScript_Defeated
waitse
playse SE_PIN
- applymovement LOCALID_STEVEN, Common_Movement_ExclamationMark
+ applymovement LOCALID_METEOR_FALLS_STEVEN, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_STEVEN, Common_Movement_Delay48
+ applymovement LOCALID_METEOR_FALLS_STEVEN, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_STEVEN, Common_Movement_FacePlayer
+ applymovement LOCALID_METEOR_FALLS_STEVEN, Common_Movement_FacePlayer
waitmovement 0
msgbox MeteorFalls_StevensCave_Text_ShouldKnowHowGoodIAmExpectWorst, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_STEVEN, MeteorFalls_StevensCave_Text_StevenDefeat
@@ -22,7 +20,7 @@ MeteorFalls_StevensCave_EventScript_Steven::
end
MeteorFalls_StevensCave_EventScript_Defeated::
- applymovement LOCALID_STEVEN, Common_Movement_FacePlayer
+ applymovement LOCALID_METEOR_FALLS_STEVEN, Common_Movement_FacePlayer
waitmovement 0
msgbox MeteorFalls_StevensCave_Text_MyPredictionCameTrue, MSGBOX_DEFAULT
release
diff --git a/data/maps/MirageTower_4F/map.json b/data/maps/MirageTower_4F/map.json
index fb375f6ae1..a1873a9c54 100644
--- a/data/maps/MirageTower_4F/map.json
+++ b/data/maps/MirageTower_4F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MIRAGE_ROOT_FOSSIL",
"graphics_id": "OBJ_EVENT_GFX_FOSSIL",
"x": 5,
"y": 4,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_MIRAGE_TOWER_ROOT_FOSSIL"
},
{
+ "local_id": "LOCALID_MIRAGE_CLAW_FOSSIL",
"graphics_id": "OBJ_EVENT_GFX_FOSSIL",
"x": 7,
"y": 4,
diff --git a/data/maps/MirageTower_4F/scripts.inc b/data/maps/MirageTower_4F/scripts.inc
index 06026c9a61..e87ef8de33 100644
--- a/data/maps/MirageTower_4F/scripts.inc
+++ b/data/maps/MirageTower_4F/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_ROOT_FOSSIL, 1
-.set LOCALID_CLAW_FOSSIL, 2
-
MirageTower_4F_MapScripts::
end_map_scripts
@@ -13,7 +10,7 @@ MirageTower_4F_EventScript_RootFossil::
closemessage
setflag FLAG_HIDE_MIRAGE_TOWER_ROOT_FOSSIL
setflag FLAG_HIDE_MIRAGE_TOWER_CLAW_FOSSIL
- removeobject LOCALID_ROOT_FOSSIL
+ removeobject LOCALID_MIRAGE_ROOT_FOSSIL
delay 30
setflag FLAG_CHOSE_ROOT_FOSSIL
goto MirageTower_4F_EventScript_CollapseMirageTower
@@ -33,7 +30,7 @@ MirageTower_4F_EventScript_ClawFossil::
closemessage
setflag FLAG_HIDE_MIRAGE_TOWER_CLAW_FOSSIL
setflag FLAG_HIDE_MIRAGE_TOWER_ROOT_FOSSIL
- removeobject LOCALID_CLAW_FOSSIL
+ removeobject LOCALID_MIRAGE_CLAW_FOSSIL
delay 30
setflag FLAG_CHOSE_CLAW_FOSSIL
goto MirageTower_4F_EventScript_CollapseMirageTower
diff --git a/data/maps/MossdeepCity/map.json b/data/maps/MossdeepCity/map.json
index 3759694d88..446d2b9966 100644
--- a/data/maps/MossdeepCity/map.json
+++ b/data/maps/MossdeepCity/map.json
@@ -148,6 +148,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MOSSDEEP_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 44,
"y": 23,
@@ -161,6 +162,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_MOSSDEEP_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 44,
"y": 24,
@@ -174,6 +176,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_MOSSDEEP_GRUNT_3",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 44,
"y": 25,
@@ -187,6 +190,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_MOSSDEEP_GRUNT_4",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 44,
"y": 26,
@@ -200,6 +204,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_MOSSDEEP_MAXIE",
"graphics_id": "OBJ_EVENT_GFX_MAXIE",
"x": 45,
"y": 25,
@@ -226,6 +231,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MOSSDEEP_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 61,
"y": 29,
diff --git a/data/maps/MossdeepCity/scripts.inc b/data/maps/MossdeepCity/scripts.inc
index ac7c03f205..374b23c72c 100644
--- a/data/maps/MossdeepCity/scripts.inc
+++ b/data/maps/MossdeepCity/scripts.inc
@@ -1,10 +1,3 @@
-.set LOCALID_GRUNT_1, 10
-.set LOCALID_GRUNT_2, 11
-.set LOCALID_GRUNT_3, 12
-.set LOCALID_GRUNT_4, 13
-.set LOCALID_MAXIE, 14
-.set LOCALID_SCOTT, 16
-
MossdeepCity_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_OnTransition
end_map_scripts
@@ -82,24 +75,24 @@ MossdeepCity_EventScript_VisitedMossdeep::
MossdeepCity_EventScript_TeamMagmaEnterSpaceCenter::
lockall
- applymovement LOCALID_MAXIE, MossdeepCity_Movement_MaxieGestureToSpaceCenter
+ applymovement LOCALID_MOSSDEEP_MAXIE, MossdeepCity_Movement_MaxieGestureToSpaceCenter
waitmovement 0
- applymovement LOCALID_GRUNT_1, MossdeepCity_Movement_GruntFaceSpaceCenter
- applymovement LOCALID_GRUNT_2, MossdeepCity_Movement_GruntFaceSpaceCenter
- applymovement LOCALID_GRUNT_3, MossdeepCity_Movement_GruntFaceSpaceCenter
- applymovement LOCALID_GRUNT_4, MossdeepCity_Movement_GruntFaceSpaceCenter
+ applymovement LOCALID_MOSSDEEP_GRUNT_1, MossdeepCity_Movement_GruntFaceSpaceCenter
+ applymovement LOCALID_MOSSDEEP_GRUNT_2, MossdeepCity_Movement_GruntFaceSpaceCenter
+ applymovement LOCALID_MOSSDEEP_GRUNT_3, MossdeepCity_Movement_GruntFaceSpaceCenter
+ applymovement LOCALID_MOSSDEEP_GRUNT_4, MossdeepCity_Movement_GruntFaceSpaceCenter
waitmovement 0
- applymovement LOCALID_MAXIE, MossdeepCity_Movement_MaxieEnterSpaceCenter
- applymovement LOCALID_GRUNT_1, MossdeepCity_Movement_Grunt1EnterSpaceCenter
- applymovement LOCALID_GRUNT_2, MossdeepCity_Movement_Grunt2EnterSpaceCenter
- applymovement LOCALID_GRUNT_3, MossdeepCity_Movement_Grunt3EnterSpaceCenter
- applymovement LOCALID_GRUNT_4, MossdeepCity_Movement_Grunt4EnterSpaceCenter
+ applymovement LOCALID_MOSSDEEP_MAXIE, MossdeepCity_Movement_MaxieEnterSpaceCenter
+ applymovement LOCALID_MOSSDEEP_GRUNT_1, MossdeepCity_Movement_Grunt1EnterSpaceCenter
+ applymovement LOCALID_MOSSDEEP_GRUNT_2, MossdeepCity_Movement_Grunt2EnterSpaceCenter
+ applymovement LOCALID_MOSSDEEP_GRUNT_3, MossdeepCity_Movement_Grunt3EnterSpaceCenter
+ applymovement LOCALID_MOSSDEEP_GRUNT_4, MossdeepCity_Movement_Grunt4EnterSpaceCenter
waitmovement 0
- removeobject LOCALID_MAXIE
- removeobject LOCALID_GRUNT_1
- removeobject LOCALID_GRUNT_2
- removeobject LOCALID_GRUNT_3
- removeobject LOCALID_GRUNT_4
+ removeobject LOCALID_MOSSDEEP_MAXIE
+ removeobject LOCALID_MOSSDEEP_GRUNT_1
+ removeobject LOCALID_MOSSDEEP_GRUNT_2
+ removeobject LOCALID_MOSSDEEP_GRUNT_3
+ removeobject LOCALID_MOSSDEEP_GRUNT_4
delay 30
setvar VAR_MOSSDEEP_CITY_STATE, 2
setflag FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA
@@ -263,19 +256,19 @@ MossdeepCity_EventScript_Scott::
call_if_eq VAR_FACING, DIR_NORTH, MossdeepCity_EventScript_ScottExitNorth
call_if_eq VAR_FACING, DIR_EAST, MossdeepCity_EventScript_ScottExitEast
addvar VAR_SCOTT_STATE, 1
- removeobject LOCALID_SCOTT
+ removeobject LOCALID_MOSSDEEP_SCOTT
release
end
MossdeepCity_EventScript_ScottExitNorth::
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Movement_PlayerWatchScottExit
- applymovement LOCALID_SCOTT, MossdeepCity_Movement_ScottExitNorth
+ applymovement LOCALID_PLAYER, MossdeepCity_Movement_PlayerWatchScottExit
+ applymovement LOCALID_MOSSDEEP_SCOTT, MossdeepCity_Movement_ScottExitNorth
waitmovement 0
return
MossdeepCity_EventScript_ScottExitEast::
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Movement_PlayerWatchScottExit
- applymovement LOCALID_SCOTT, MossdeepCity_Movement_ScottExitEast
+ applymovement LOCALID_PLAYER, MossdeepCity_Movement_PlayerWatchScottExit
+ applymovement LOCALID_MOSSDEEP_SCOTT, MossdeepCity_Movement_ScottExitEast
waitmovement 0
return
diff --git a/data/maps/MossdeepCity_Gym/scripts.inc b/data/maps/MossdeepCity_Gym/scripts.inc
index 760ba1dc99..fd53f4dbca 100644
--- a/data/maps/MossdeepCity_Gym/scripts.inc
+++ b/data/maps/MossdeepCity_Gym/scripts.inc
@@ -114,7 +114,7 @@ MossdeepCity_Gym_EventScript_Switch1::
lockall
goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_1, MossdeepCity_Gym_EventScript_ClearSwitch1
setflag FLAG_MOSSDEEP_GYM_SWITCH_1
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
+ applymovement LOCALID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
waitmovement 0
setmetatile 5, 5, METATILE_RSMossdeepGym_RedArrow_Right, FALSE
setmetatile 2, 7, METATILE_RSMossdeepGym_Switch_Down, TRUE
@@ -129,7 +129,7 @@ MossdeepCity_Gym_EventScript_DrawMapAfterSwitchUsed::
MossdeepCity_Gym_EventScript_ClearSwitch1::
clearflag FLAG_MOSSDEEP_GYM_SWITCH_1
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
+ applymovement LOCALID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
waitmovement 0
setmetatile 5, 5, METATILE_RSMossdeepGym_RedArrow_Left, FALSE
setmetatile 2, 7, METATILE_RSMossdeepGym_Switch_Up, TRUE
@@ -140,7 +140,7 @@ MossdeepCity_Gym_EventScript_Switch2::
lockall
goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_2, MossdeepCity_Gym_EventScript_ClearSwitch2
setflag FLAG_MOSSDEEP_GYM_SWITCH_2
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
+ applymovement LOCALID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
waitmovement 0
setmetatile 8, 14, METATILE_RSMossdeepGym_RedArrow_Right, FALSE
setmetatile 8, 10, METATILE_RSMossdeepGym_Switch_Down, TRUE
@@ -149,7 +149,7 @@ MossdeepCity_Gym_EventScript_Switch2::
MossdeepCity_Gym_EventScript_ClearSwitch2::
clearflag FLAG_MOSSDEEP_GYM_SWITCH_2
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
+ applymovement LOCALID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
waitmovement 0
setmetatile 8, 14, METATILE_RSMossdeepGym_RedArrow_Down, FALSE
setmetatile 8, 10, METATILE_RSMossdeepGym_Switch_Up, TRUE
@@ -160,7 +160,7 @@ MossdeepCity_Gym_EventScript_Switch3::
lockall
goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_3, MossdeepCity_Gym_EventScript_ClearSwitch3
setflag FLAG_MOSSDEEP_GYM_SWITCH_3
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
+ applymovement LOCALID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
waitmovement 0
setmetatile 15, 17, METATILE_RSMossdeepGym_RedArrow_Left, FALSE
setmetatile 17, 15, METATILE_RSMossdeepGym_Switch_Down, TRUE
@@ -169,7 +169,7 @@ MossdeepCity_Gym_EventScript_Switch3::
MossdeepCity_Gym_EventScript_ClearSwitch3::
clearflag FLAG_MOSSDEEP_GYM_SWITCH_3
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
+ applymovement LOCALID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
waitmovement 0
setmetatile 15, 17, METATILE_RSMossdeepGym_RedArrow_Right, FALSE
setmetatile 17, 15, METATILE_RSMossdeepGym_Switch_Up, TRUE
@@ -180,7 +180,7 @@ MossdeepCity_Gym_EventScript_Switch4::
lockall
goto_if_set FLAG_MOSSDEEP_GYM_SWITCH_4, MossdeepCity_Gym_EventScript_ClearSwitch4
setflag FLAG_MOSSDEEP_GYM_SWITCH_4
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
+ applymovement LOCALID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
waitmovement 0
setmetatile 1, 23, METATILE_RSMossdeepGym_RedArrow_Up, FALSE
setmetatile 5, 24, METATILE_RSMossdeepGym_Switch_Down, TRUE
@@ -189,7 +189,7 @@ MossdeepCity_Gym_EventScript_Switch4::
MossdeepCity_Gym_EventScript_ClearSwitch4::
clearflag FLAG_MOSSDEEP_GYM_SWITCH_4
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
+ applymovement LOCALID_PLAYER, MossdeepCity_Gym_Movement_WaitAfterSwitchUse
waitmovement 0
setmetatile 1, 23, METATILE_RSMossdeepGym_RedArrow_Right, FALSE
setmetatile 5, 24, METATILE_RSMossdeepGym_Switch_Up, TRUE
diff --git a/data/maps/MossdeepCity_House2/map.json b/data/maps/MossdeepCity_House2/map.json
index a8a03ed958..8bd4a210e3 100644
--- a/data/maps/MossdeepCity_House2/map.json
+++ b/data/maps/MossdeepCity_House2/map.json
@@ -41,6 +41,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MOSSDEEP_HOUSE_WINGULL",
"graphics_id": "OBJ_EVENT_GFX_WINGULL",
"x": 4,
"y": 5,
diff --git a/data/maps/MossdeepCity_House2/scripts.inc b/data/maps/MossdeepCity_House2/scripts.inc
index 1fe8a5c64a..4732d3ac0d 100644
--- a/data/maps/MossdeepCity_House2/scripts.inc
+++ b/data/maps/MossdeepCity_House2/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WINGULL, 3
-
MossdeepCity_House2_MapScripts::
end_map_scripts
@@ -23,17 +21,17 @@ MossdeepCity_House2_EventScript_Wingull::
clearflag FLAG_HIDE_FORTREE_CITY_HOUSE_4_WINGULL
call_if_eq VAR_FACING, DIR_NORTH, MossdeepCity_House2_EventScript_WingullExitNorth
call_if_eq VAR_FACING, DIR_WEST, MossdeepCity_House2_EventScript_WingullExitWest
- removeobject LOCALID_WINGULL
+ removeobject LOCALID_MOSSDEEP_HOUSE_WINGULL
release
end
MossdeepCity_House2_EventScript_WingullExitNorth::
- applymovement LOCALID_WINGULL, MossdeepCity_House2_Movement_WingullExitNorth
+ applymovement LOCALID_MOSSDEEP_HOUSE_WINGULL, MossdeepCity_House2_Movement_WingullExitNorth
waitmovement 0
return
MossdeepCity_House2_EventScript_WingullExitWest::
- applymovement LOCALID_WINGULL, MossdeepCity_House2_Movement_WingullExitEast
+ applymovement LOCALID_MOSSDEEP_HOUSE_WINGULL, MossdeepCity_House2_Movement_WingullExitEast
waitmovement 0
return
diff --git a/data/maps/MossdeepCity_Mart/map.json b/data/maps/MossdeepCity_Mart/map.json
index 9679df7892..dce4f7576c 100644
--- a/data/maps/MossdeepCity_Mart/map.json
+++ b/data/maps/MossdeepCity_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MOSSDEEP_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/MossdeepCity_Mart/scripts.inc b/data/maps/MossdeepCity_Mart/scripts.inc
index acb48d96c2..89ee8aec26 100644
--- a/data/maps/MossdeepCity_Mart/scripts.inc
+++ b/data/maps/MossdeepCity_Mart/scripts.inc
@@ -22,9 +22,7 @@ MossdeepCity_Mart_Pokemart:
.2byte ITEM_MAX_REPEL
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
MossdeepCity_Mart_EventScript_Woman::
msgbox MossdeepCity_Mart_Text_ReviveIsFantastic, MSGBOX_NPC
diff --git a/data/maps/MossdeepCity_PokemonCenter_1F/map.json b/data/maps/MossdeepCity_PokemonCenter_1F/map.json
index 72863244c7..db1471925a 100644
--- a/data/maps/MossdeepCity_PokemonCenter_1F/map.json
+++ b/data/maps/MossdeepCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MOSSDEEP_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/MossdeepCity_PokemonCenter_1F/scripts.inc b/data/maps/MossdeepCity_PokemonCenter_1F/scripts.inc
index 3b7acd422f..4cf230d425 100644
--- a/data/maps/MossdeepCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/MossdeepCity_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
MossdeepCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -10,7 +8,7 @@ MossdeepCity_PokemonCenter_1F_OnTransition:
end
MossdeepCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_MOSSDEEP_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/map.json b/data/maps/MossdeepCity_SpaceCenter_1F/map.json
index e7f47bcfb8..f6b04f5f2f 100644
--- a/data/maps/MossdeepCity_SpaceCenter_1F/map.json
+++ b/data/maps/MossdeepCity_SpaceCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SPACE_CENTER_1F_SCIENTIST_1",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 7,
"y": 2,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_1F_SCIENTIST_2",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 2,
"y": 2,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_1F_SAILOR",
"graphics_id": "OBJ_EVENT_GFX_SAILOR",
"x": 6,
"y": 6,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_1F_OLD_MAN",
"graphics_id": "OBJ_EVENT_GFX_OLD_MAN",
"x": 10,
"y": 2,
@@ -67,6 +71,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_1F_WOMAN",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_4",
"x": 14,
"y": 7,
@@ -119,6 +124,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_1F_STAIR_GRUNT",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 13,
"y": 2,
diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc
index 17f7275433..857b37d786 100644
--- a/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc
+++ b/data/maps/MossdeepCity_SpaceCenter_1F/scripts.inc
@@ -1,10 +1,3 @@
-.set LOCALID_SCIENTIST_1, 1
-.set LOCALID_SCIENTIST_2, 2
-.set LOCALID_SAILOR, 3
-.set LOCALID_OLD_MAN, 4
-.set LOCALID_WOMAN, 5
-.set LOCALID_STAIR_GRUNT, 9
-
MossdeepCity_SpaceCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, MossdeepCity_SpaceCenter_1F_OnLoad
map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_SpaceCenter_1F_OnTransition
@@ -15,31 +8,31 @@ MossdeepCity_SpaceCenter_1F_OnTransition:
end
MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma::
- setobjectxyperm LOCALID_SAILOR, 1, 9
- setobjectmovementtype LOCALID_SAILOR, MOVEMENT_TYPE_FACE_RIGHT
- setobjectxyperm LOCALID_WOMAN, 0, 8
- setobjectmovementtype LOCALID_WOMAN, MOVEMENT_TYPE_FACE_RIGHT
- setobjectxyperm LOCALID_OLD_MAN, 1, 6
- setobjectmovementtype LOCALID_OLD_MAN, MOVEMENT_TYPE_FACE_RIGHT
- setobjectxyperm LOCALID_SCIENTIST_1, 3, 4
- setobjectmovementtype LOCALID_SCIENTIST_1, MOVEMENT_TYPE_FACE_RIGHT
- setobjectmovementtype LOCALID_SCIENTIST_2, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SPACE_CENTER_1F_SAILOR, 1, 9
+ setobjectmovementtype LOCALID_SPACE_CENTER_1F_SAILOR, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SPACE_CENTER_1F_WOMAN, 0, 8
+ setobjectmovementtype LOCALID_SPACE_CENTER_1F_WOMAN, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SPACE_CENTER_1F_OLD_MAN, 1, 6
+ setobjectmovementtype LOCALID_SPACE_CENTER_1F_OLD_MAN, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SPACE_CENTER_1F_SCIENTIST_1, 3, 4
+ setobjectmovementtype LOCALID_SPACE_CENTER_1F_SCIENTIST_1, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectmovementtype LOCALID_SPACE_CENTER_1F_SCIENTIST_2, MOVEMENT_TYPE_FACE_RIGHT
goto_if_eq VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 1, MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardLeft
goto_if_eq VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardDown
goto_if_eq VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 3, MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight
end
MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardLeft::
- setobjectxyperm LOCALID_STAIR_GRUNT, 12, 2
+ setobjectxyperm LOCALID_SPACE_CENTER_1F_STAIR_GRUNT, 12, 2
end
MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardDown::
- setobjectxyperm LOCALID_STAIR_GRUNT, 13, 3
+ setobjectxyperm LOCALID_SPACE_CENTER_1F_STAIR_GRUNT, 13, 3
end
@ Functionally unused. See comment on MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast
MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight::
- setobjectxyperm LOCALID_STAIR_GRUNT, 14, 2
+ setobjectxyperm LOCALID_SPACE_CENTER_1F_STAIR_GRUNT, 14, 2
end
MossdeepCity_SpaceCenter_1F_OnLoad:
@@ -226,7 +219,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_Grunt2::
msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt2Intro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_SPACE_CENTER_2, MossdeepCity_SpaceCenter_1F_Text_Grunt2Defeat
setflag FLAG_DEFEATED_GRUNT_SPACE_CENTER_1F
- copyobjectxytoperm LOCALID_STAIR_GRUNT
+ copyobjectxytoperm LOCALID_SPACE_CENTER_1F_STAIR_GRUNT
switch VAR_FACING
case DIR_WEST, MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest
#ifdef BUGFIX
@@ -234,7 +227,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_Grunt2::
#else
case DIR_WEST, MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast
#endif
- applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairs
+ applymovement LOCALID_SPACE_CENTER_1F_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairs
waitmovement 0
setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 2
release
@@ -246,7 +239,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_Grunt2Defeated::
end
MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest::
- applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsWest
+ applymovement LOCALID_SPACE_CENTER_1F_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsWest
waitmovement 0
setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 1
release
@@ -255,7 +248,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest::
@ Functionally unused by mistake. The movement is handled anyway after the switch (see above)
@ This also means VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE can never be 3
MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast::
- applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsEast
+ applymovement LOCALID_SPACE_CENTER_1F_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsEast
waitmovement 0
setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 3
release
diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/map.json b/data/maps/MossdeepCity_SpaceCenter_2F/map.json
index f68b5bfd3e..74d83a905f 100644
--- a/data/maps/MossdeepCity_SpaceCenter_2F/map.json
+++ b/data/maps/MossdeepCity_SpaceCenter_2F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SPACE_CENTER_2F_RICH_BOY",
"graphics_id": "OBJ_EVENT_GFX_RICH_BOY",
"x": 6,
"y": 2,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_2F_GENTLEMAN",
"graphics_id": "OBJ_EVENT_GFX_GENTLEMAN",
"x": 11,
"y": 8,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_2F_SCIENTIST",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 5,
"y": 6,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_2F_STEVEN",
"graphics_id": "OBJ_EVENT_GFX_STEVEN",
"x": 1,
"y": 8,
@@ -67,6 +71,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_STEVEN"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_GRUNT_6",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 12,
"y": 2,
@@ -80,6 +85,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_GRUNT_5",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 13,
"y": 3,
@@ -93,6 +99,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_GRUNT_7",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 14,
"y": 2,
@@ -106,6 +113,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_TABITHA",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 0,
"y": 8,
@@ -119,6 +127,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_SPACE_CENTER_MAXIE",
"graphics_id": "OBJ_EVENT_GFX_MAXIE",
"x": 1,
"y": 9,
diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
index 416e89f89b..639532f1cf 100644
--- a/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
+++ b/data/maps/MossdeepCity_SpaceCenter_2F/scripts.inc
@@ -1,14 +1,3 @@
-.set LOCALID_RICH_BOY, 1
-.set LOCALID_GENTLEMAN, 2
-.set LOCALID_SCIENTIST, 3
-.set LOCALID_STEVEN, 4
-@ Grunt names numbered like their Trainer values (which are for the full Space Center)
-.set LOCALID_GRUNT_6, 5
-.set LOCALID_GRUNT_5, 6
-.set LOCALID_GRUNT_7, 7
-.set LOCALID_TABITHA, 8
-.set LOCALID_MAXIE, 9
-
MossdeepCity_SpaceCenter_2F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_SpaceCenter_2F_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, MossdeepCity_SpaceCenter_2F_OnFrame
@@ -21,18 +10,18 @@ MossdeepCity_SpaceCenter_2F_OnTransition:
MossdeepCity_SpaceCenter_2F_EventScript_MoveCivilians::
clearflag FLAG_INTERACTED_WITH_STEVEN_SPACE_CENTER
- setobjectxyperm LOCALID_SCIENTIST, 5, 3
- setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT
- setobjectxyperm LOCALID_RICH_BOY, 3, 2
- setobjectmovementtype LOCALID_RICH_BOY, MOVEMENT_TYPE_FACE_RIGHT
- setobjectxyperm LOCALID_GENTLEMAN, 1, 3
- setobjectmovementtype LOCALID_GENTLEMAN, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SPACE_CENTER_2F_SCIENTIST, 5, 3
+ setobjectmovementtype LOCALID_SPACE_CENTER_2F_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SPACE_CENTER_2F_RICH_BOY, 3, 2
+ setobjectmovementtype LOCALID_SPACE_CENTER_2F_RICH_BOY, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SPACE_CENTER_2F_GENTLEMAN, 1, 3
+ setobjectmovementtype LOCALID_SPACE_CENTER_2F_GENTLEMAN, MOVEMENT_TYPE_FACE_RIGHT
return
MossdeepCity_SpaceCenter_2F_EventScript_MoveDefeatedGrunts::
- setobjectxyperm LOCALID_GRUNT_6, 11, 2
- setobjectxyperm LOCALID_GRUNT_7, 15, 2
- setobjectxyperm LOCALID_GRUNT_5, 13, 4
+ setobjectxyperm LOCALID_SPACE_CENTER_GRUNT_6, 11, 2
+ setobjectxyperm LOCALID_SPACE_CENTER_GRUNT_7, 15, 2
+ setobjectxyperm LOCALID_SPACE_CENTER_GRUNT_5, 13, 4
return
MossdeepCity_SpaceCenter_2F_OnFrame:
@@ -41,15 +30,15 @@ MossdeepCity_SpaceCenter_2F_OnFrame:
MossdeepCity_SpaceCenter_2F_EventScript_ThreeMagmaGrunts::
playse SE_PIN
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_ExclamationMark
+ applymovement LOCALID_PLAYER, Common_Movement_ExclamationMark
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_Delay48
+ applymovement LOCALID_PLAYER, Common_Movement_Delay48
waitmovement 0
msgbox MossdeepCity_SpaceCenter_2F_Text_YoureOutnumberedTakeUsOn, MSGBOX_YESNO
goto_if_eq VAR_RESULT, YES, MossdeepCity_SpaceCenter_2F_EventScript_BattleThreeMagmaGrunts
msgbox MossdeepCity_SpaceCenter_2F_Text_GoodAnswer, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, MossdeepCity_SpaceCenter_2F_Movement_PlayerExit
+ applymovement LOCALID_PLAYER, MossdeepCity_SpaceCenter_2F_Movement_PlayerExit
waitmovement 0
warp MAP_MOSSDEEP_CITY_SPACE_CENTER_1F, 13, 1
waitstate
@@ -63,24 +52,24 @@ MossdeepCity_SpaceCenter_2F_Movement_PlayerExit:
MossdeepCity_SpaceCenter_2F_EventScript_BattleThreeMagmaGrunts::
msgbox MossdeepCity_SpaceCenter_2F_Text_Grunt5Intro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_SPACE_CENTER_5, MossdeepCity_SpaceCenter_2F_Text_Grunt5Defeat
- applymovement LOCALID_GRUNT_5, MossdeepCity_SpaceCenter_2F_Movement_Grunt5Defeated
+ applymovement LOCALID_SPACE_CENTER_GRUNT_5, MossdeepCity_SpaceCenter_2F_Movement_Grunt5Defeated
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox MossdeepCity_SpaceCenter_2F_Text_Grunt6Intro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_SPACE_CENTER_6, MossdeepCity_SpaceCenter_2F_Text_Grunt6Defeat
- applymovement LOCALID_GRUNT_6, MossdeepCity_SpaceCenter_2F_Movement_Grunt6Defeated
+ applymovement LOCALID_SPACE_CENTER_GRUNT_6, MossdeepCity_SpaceCenter_2F_Movement_Grunt6Defeated
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox MossdeepCity_SpaceCenter_2F_Text_Grunt7Intro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_SPACE_CENTER_7, MossdeepCity_SpaceCenter_2F_Text_Grunt7Defeat
- applymovement LOCALID_GRUNT_7, MossdeepCity_SpaceCenter_2F_Movement_Grunt7Defeated
+ applymovement LOCALID_SPACE_CENTER_GRUNT_7, MossdeepCity_SpaceCenter_2F_Movement_Grunt7Defeated
waitmovement 0
setvar VAR_MOSSDEEP_SPACE_CENTER_STATE, 2
- copyobjectxytoperm LOCALID_GRUNT_6
- copyobjectxytoperm LOCALID_GRUNT_7
- copyobjectxytoperm LOCALID_GRUNT_5
+ copyobjectxytoperm LOCALID_SPACE_CENTER_GRUNT_6
+ copyobjectxytoperm LOCALID_SPACE_CENTER_GRUNT_7
+ copyobjectxytoperm LOCALID_SPACE_CENTER_GRUNT_5
releaseall
end
@@ -198,13 +187,13 @@ MossdeepCity_SpaceCenter_2F_EventScript_Steven::
playse SE_NOT_EFFECTIVE
switch VAR_FACING
case DIR_SOUTH, MossdeepCity_SpaceCenter_2F_EventScript_StevenFightMovementSouth
- applymovement LOCALID_STEVEN, MossdeepCity_SpaceCenter_2F_Movement_StevenFight
+ applymovement LOCALID_SPACE_CENTER_2F_STEVEN, MossdeepCity_SpaceCenter_2F_Movement_StevenFight
waitmovement 0
releaseall
end
MossdeepCity_SpaceCenter_2F_EventScript_StevenFightMovementSouth::
- applymovement LOCALID_STEVEN, MossdeepCity_SpaceCenter_2F_Movement_StevenFightSouth
+ applymovement LOCALID_SPACE_CENTER_2F_STEVEN, MossdeepCity_SpaceCenter_2F_Movement_StevenFightSouth
waitmovement 0
releaseall
end
@@ -275,12 +264,12 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha::
msgbox MossdeepCity_SpaceCenter_2F_Text_MaxieWeFailedIsAquaAlsoMisguided, MSGBOX_DEFAULT
closemessage
delay 20
- applymovement LOCALID_MAXIE, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_TABITHA, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_SPACE_CENTER_MAXIE, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SPACE_CENTER_TABITHA, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 60
- applymovement LOCALID_MAXIE, Common_Movement_WalkInPlaceFasterUp
- applymovement LOCALID_TABITHA, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_SPACE_CENTER_MAXIE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_SPACE_CENTER_TABITHA, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 20
msgbox MossdeepCity_SpaceCenter_2F_Text_MaxieWeWillGiveUp, MSGBOX_DEFAULT
@@ -292,17 +281,17 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha::
setflag FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_TEAM_MAGMA
setflag FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA
setflag FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA
- removeobject LOCALID_GRUNT_6
- removeobject LOCALID_GRUNT_7
- removeobject LOCALID_GRUNT_5
- removeobject LOCALID_TABITHA
- removeobject LOCALID_MAXIE
- setobjectxy LOCALID_SCIENTIST, 5, 6
- turnobject LOCALID_SCIENTIST, DIR_SOUTH
- setobjectxy LOCALID_GENTLEMAN, 11, 8
- turnobject LOCALID_GENTLEMAN, DIR_NORTH
- setobjectxy LOCALID_RICH_BOY, 6, 2
- turnobject LOCALID_RICH_BOY, DIR_NORTH
+ removeobject LOCALID_SPACE_CENTER_GRUNT_6
+ removeobject LOCALID_SPACE_CENTER_GRUNT_7
+ removeobject LOCALID_SPACE_CENTER_GRUNT_5
+ removeobject LOCALID_SPACE_CENTER_TABITHA
+ removeobject LOCALID_SPACE_CENTER_MAXIE
+ setobjectxy LOCALID_SPACE_CENTER_2F_SCIENTIST, 5, 6
+ turnobject LOCALID_SPACE_CENTER_2F_SCIENTIST, DIR_SOUTH
+ setobjectxy LOCALID_SPACE_CENTER_2F_GENTLEMAN, 11, 8
+ turnobject LOCALID_SPACE_CENTER_2F_GENTLEMAN, DIR_NORTH
+ setobjectxy LOCALID_SPACE_CENTER_2F_RICH_BOY, 6, 2
+ turnobject LOCALID_SPACE_CENTER_2F_RICH_BOY, DIR_NORTH
call MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer
fadescreen FADE_FROM_BLACK
msgbox MossdeepCity_SpaceCenter_2F_Text_StevenThankYouComeSeeMeAtHome, MSGBOX_DEFAULT
@@ -310,16 +299,19 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha::
fadescreen FADE_TO_BLACK
setflag FLAG_DEFEATED_MAGMA_SPACE_CENTER
setflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN
- removeobject LOCALID_STEVEN
+ removeobject LOCALID_SPACE_CENTER_2F_STEVEN
setflag FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_MAGMA_NOTE
clearflag FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN
setvar VAR_STEVENS_HOUSE_STATE, 1
setflag FLAG_HIDE_MOSSDEEP_CITY_SCOTT
- removeobject LOCALID_SCIENTIST
- setobjectxyperm LOCALID_SCIENTIST, 5, 6
- setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_WANDER_AROUND
- addobject LOCALID_SCIENTIST
+ removeobject LOCALID_SPACE_CENTER_2F_SCIENTIST
+ setobjectxyperm LOCALID_SPACE_CENTER_2F_SCIENTIST, 5, 6
+ setobjectmovementtype LOCALID_SPACE_CENTER_2F_SCIENTIST, MOVEMENT_TYPE_WANDER_AROUND
+ addobject LOCALID_SPACE_CENTER_2F_SCIENTIST
fadescreen FADE_FROM_BLACK
+#ifdef BUGFIX
+ releaseall
+#endif
end
MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer::
@@ -329,19 +321,19 @@ MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer::
return
MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerSouth::
- turnobject LOCALID_STEVEN, DIR_NORTH
+ turnobject LOCALID_SPACE_CENTER_2F_STEVEN, DIR_NORTH
return
MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerWest::
- turnobject LOCALID_STEVEN, DIR_EAST
+ turnobject LOCALID_SPACE_CENTER_2F_STEVEN, DIR_EAST
return
MossdeepCity_SpaceCenter_2F_EventScript_MaxieTrainer::
- trainerbattle TRAINER_BATTLE_SET_TRAINER_A, TRAINER_MAXIE_MOSSDEEP, 0, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand
+ trainerbattle TRAINER_BATTLE_SET_TRAINER_A, TRAINER_MAXIE_MOSSDEEP, LOCALID_NONE, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand
end
MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer::
- trainerbattle TRAINER_BATTLE_SET_TRAINER_B, TRAINER_TABITHA_MOSSDEEP, 0, MossdeepCity_SpaceCenter_Text_TabithaDefeat, MossdeepCity_SpaceCenter_Text_TabithaDefeat
+ trainerbattle TRAINER_BATTLE_SET_TRAINER_B, TRAINER_TABITHA_MOSSDEEP, LOCALID_NONE, MossdeepCity_SpaceCenter_Text_TabithaDefeat, MossdeepCity_SpaceCenter_Text_TabithaDefeat
end
MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall::
diff --git a/data/maps/MossdeepCity_StevensHouse/map.json b/data/maps/MossdeepCity_StevensHouse/map.json
index 3a864a67c9..330e92b635 100644
--- a/data/maps/MossdeepCity_StevensHouse/map.json
+++ b/data/maps/MossdeepCity_StevensHouse/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_STEVENS_HOUSE_STEVEN",
"graphics_id": "OBJ_EVENT_GFX_STEVEN",
"x": 9,
"y": 6,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN"
},
{
+ "local_id": "LOCALID_STEVENS_HOUSE_BALL",
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
"x": 4,
"y": 3,
diff --git a/data/maps/MossdeepCity_StevensHouse/scripts.inc b/data/maps/MossdeepCity_StevensHouse/scripts.inc
index 3e4c5261f9..6d7a5dfabd 100644
--- a/data/maps/MossdeepCity_StevensHouse/scripts.inc
+++ b/data/maps/MossdeepCity_StevensHouse/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_STEVEN, 1
-.set LOCALID_BELDUM_BALL, 2
-
MossdeepCity_StevensHouse_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, MossdeepCity_StevensHouse_OnLoad
map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_StevensHouse_OnTransition
@@ -20,8 +17,8 @@ MossdeepCity_StevensHouse_OnTransition:
end
MossdeepCity_StevensHouse_EventScript_SetStevenPos::
- setobjectxyperm LOCALID_STEVEN, 6, 5
- setobjectmovementtype LOCALID_STEVEN, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_STEVENS_HOUSE_STEVEN, 6, 5
+ setobjectmovementtype LOCALID_STEVENS_HOUSE_STEVEN, MOVEMENT_TYPE_FACE_UP
return
MossdeepCity_StevensHouse_OnFrame:
@@ -30,14 +27,14 @@ MossdeepCity_StevensHouse_OnFrame:
MossdeepCity_StevensHouse_EventScript_StevenGivesDive::
lockall
- applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_STEVENS_HOUSE_STEVEN, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
playse SE_PIN
- applymovement LOCALID_STEVEN, Common_Movement_ExclamationMark
+ applymovement LOCALID_STEVENS_HOUSE_STEVEN, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_STEVEN, Common_Movement_Delay48
+ applymovement LOCALID_STEVENS_HOUSE_STEVEN, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_STEVEN, MossdeepCity_StevensHouse_Movement_StevenApproachPlayer
+ applymovement LOCALID_STEVENS_HOUSE_STEVEN, MossdeepCity_StevensHouse_Movement_StevenApproachPlayer
waitmovement 0
msgbox MossdeepCity_StevensHouse_Text_YouveEarnedHMDive, MSGBOX_DEFAULT
giveitem ITEM_HM_DIVE
@@ -46,7 +43,7 @@ MossdeepCity_StevensHouse_EventScript_StevenGivesDive::
msgbox MossdeepCity_StevensHouse_Text_ExplainDive, MSGBOX_DEFAULT
closemessage
delay 20
- applymovement LOCALID_STEVEN, MossdeepCity_StevensHouse_Movement_StevenReturn
+ applymovement LOCALID_STEVENS_HOUSE_STEVEN, MossdeepCity_StevensHouse_Movement_StevenReturn
waitmovement 0
setflag FLAG_HIDE_MOSSDEEP_CITY_SCOTT
setflag FLAG_HIDE_SEAFLOOR_CAVERN_ENTRANCE_AQUA_GRUNT
@@ -116,7 +113,7 @@ MossdeepCity_StevensHouse_EventScript_BeldumTransferredToPC::
MossdeepCity_StevensHouse_EventScript_ReceivedBeldumFanfare::
bufferspeciesname STR_VAR_2, SPECIES_BELDUM
- removeobject LOCALID_BELDUM_BALL
+ removeobject LOCALID_STEVENS_HOUSE_BALL
playfanfare MUS_OBTAIN_ITEM
message MossdeepCity_StevensHouse_Text_ObtainedBeldum
waitmessage
diff --git a/data/maps/MtChimney/map.json b/data/maps/MtChimney/map.json
index 55bd065cb6..e4cf247d0e 100644
--- a/data/maps/MtChimney/map.json
+++ b/data/maps/MtChimney/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MT_CHIMNEY_ARCHIE",
"graphics_id": "OBJ_EVENT_GFX_ARCHIE",
"x": 24,
"y": 19,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_MT_CHIMNEY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_MT_CHIMNEY_MAXIE",
"graphics_id": "OBJ_EVENT_GFX_MAXIE",
"x": 13,
"y": 6,
@@ -41,6 +43,7 @@
"flag": "FLAG_HIDE_MT_CHIMNEY_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_MT_CHIMNEY_TABITHA",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 12,
"y": 11,
@@ -288,6 +291,7 @@
"flag": "FLAG_HIDE_MT_CHIMNEY_TEAM_MAGMA"
},
{
+ "local_id": "LOCALID_MT_CHIMNEY_MAGMA_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 9,
"y": 16,
@@ -379,6 +383,7 @@
"flag": "FLAG_HIDE_MT_CHIMNEY_TRAINERS"
},
{
+ "local_id": "LOCALID_MT_CHIMNEY_MAGMA_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_F",
"x": 13,
"y": 16,
diff --git a/data/maps/MtChimney/scripts.inc b/data/maps/MtChimney/scripts.inc
index 3cd63f29e5..e1fc21a835 100644
--- a/data/maps/MtChimney/scripts.inc
+++ b/data/maps/MtChimney/scripts.inc
@@ -1,10 +1,3 @@
-.set LOCALID_ARCHIE, 1
-.set LOCALID_MAXIE, 2
-.set LOCALID_TABITHA, 3
-.set LOCALID_MAGMA_GRUNT_2, 22
-.set LOCALID_MAGMA_GRUNT_1, 29
-
-
MtChimney_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, MtChimney_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, MtChimney_OnTransition
@@ -24,7 +17,7 @@ MtChimney_EventScript_Archie::
call_if_unset FLAG_EVIL_LEADER_PLEASE_STOP, MtChimney_EventScript_ArchieGoStopTeamMagma
call_if_set FLAG_EVIL_LEADER_PLEASE_STOP, MtChimney_EventScript_ArchieBusyFighting
closemessage
- applymovement LOCALID_ARCHIE, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_MT_CHIMNEY_ARCHIE, Common_Movement_FaceOriginalDirection
waitmovement 0
setflag FLAG_EVIL_LEADER_PLEASE_STOP
release
@@ -42,12 +35,12 @@ MtChimney_EventScript_Maxie::
lockall
playbgm MUS_ENCOUNTER_MAGMA, FALSE
msgbox MtChimney_Text_MeteoriteWillActivateVolcano, MSGBOX_DEFAULT
- applymovement LOCALID_MAXIE, Common_Movement_FacePlayer
+ applymovement LOCALID_MT_CHIMNEY_MAXIE, Common_Movement_FacePlayer
waitmovement 0
playse SE_PIN
- applymovement LOCALID_MAXIE, Common_Movement_ExclamationMark
+ applymovement LOCALID_MT_CHIMNEY_MAXIE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_MAXIE, Common_Movement_Delay48
+ applymovement LOCALID_MT_CHIMNEY_MAXIE, Common_Movement_Delay48
waitmovement 0
msgbox MtChimney_Text_MaxieIntro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_MAXIE_MT_CHIMNEY, MtChimney_Text_MaxieDefeat
@@ -55,23 +48,23 @@ MtChimney_EventScript_Maxie::
closemessage
delay 30
fadescreen FADE_TO_BLACK
- removeobject LOCALID_MAXIE
- removeobject LOCALID_MAGMA_GRUNT_1
- removeobject LOCALID_TABITHA
- removeobject LOCALID_MAGMA_GRUNT_2
+ removeobject LOCALID_MT_CHIMNEY_MAXIE
+ removeobject LOCALID_MT_CHIMNEY_MAGMA_GRUNT_1
+ removeobject LOCALID_MT_CHIMNEY_TABITHA
+ removeobject LOCALID_MT_CHIMNEY_MAGMA_GRUNT_2
setflag FLAG_HIDE_MT_CHIMNEY_TEAM_MAGMA
fadescreen FADE_FROM_BLACK
- setobjectxyperm LOCALID_ARCHIE, 10, 12
- addobject LOCALID_ARCHIE
+ setobjectxyperm LOCALID_MT_CHIMNEY_ARCHIE, 10, 12
+ addobject LOCALID_MT_CHIMNEY_ARCHIE
call_if_eq VAR_FACING, DIR_EAST, MtChimney_EventScript_ArchieApproachPlayerEast
call_if_eq VAR_FACING, DIR_NORTH, MtChimney_EventScript_ArchieApproachPlayerNorth
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox MtChimney_Text_ArchieThankYou, MSGBOX_DEFAULT
closemessage
call_if_eq VAR_FACING, DIR_EAST, MtChimney_EventScript_ArchieExitEast
call_if_eq VAR_FACING, DIR_NORTH, MtChimney_EventScript_ArchieExitNorth
- removeobject LOCALID_ARCHIE
+ removeobject LOCALID_MT_CHIMNEY_ARCHIE
setflag FLAG_HIDE_MT_CHIMNEY_TEAM_AQUA
setflag FLAG_DEFEATED_EVIL_TEAM_MT_CHIMNEY
clearflag FLAG_HIDE_FALLARBOR_HOUSE_PROF_COZMO
@@ -81,22 +74,22 @@ MtChimney_EventScript_Maxie::
end
MtChimney_EventScript_ArchieApproachPlayerEast::
- applymovement LOCALID_ARCHIE, MtChimney_Movement_ArchieApproachPlayerEast
+ applymovement LOCALID_MT_CHIMNEY_ARCHIE, MtChimney_Movement_ArchieApproachPlayerEast
waitmovement 0
return
MtChimney_EventScript_ArchieApproachPlayerNorth::
- applymovement LOCALID_ARCHIE, MtChimney_Movement_ArchieApproachPlayerNorth
+ applymovement LOCALID_MT_CHIMNEY_ARCHIE, MtChimney_Movement_ArchieApproachPlayerNorth
waitmovement 0
return
MtChimney_EventScript_ArchieExitEast::
- applymovement LOCALID_ARCHIE, MtChimney_Movement_ArchieExitEast
+ applymovement LOCALID_MT_CHIMNEY_ARCHIE, MtChimney_Movement_ArchieExitEast
waitmovement 0
return
MtChimney_EventScript_ArchieExitNorth::
- applymovement LOCALID_ARCHIE, MtChimney_Movement_ArchieExitNorth
+ applymovement LOCALID_MT_CHIMNEY_ARCHIE, MtChimney_Movement_ArchieExitNorth
waitmovement 0
return
diff --git a/data/maps/MtChimney_CableCarStation/map.json b/data/maps/MtChimney_CableCarStation/map.json
index 5fe36a3735..be716e5b75 100644
--- a/data/maps/MtChimney_CableCarStation/map.json
+++ b/data/maps/MtChimney_CableCarStation/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MT_CHIMNEY_CABLE_CAR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BEAUTY",
"x": 6,
"y": 6,
diff --git a/data/maps/MtChimney_CableCarStation/scripts.inc b/data/maps/MtChimney_CableCarStation/scripts.inc
index c9ae499c9d..5e16c12b40 100644
--- a/data/maps/MtChimney_CableCarStation/scripts.inc
+++ b/data/maps/MtChimney_CableCarStation/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
MtChimney_CableCarStation_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, MtChimney_CableCarStation_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, MtChimney_CableCarStation_OnFrame
@@ -10,8 +8,8 @@ MtChimney_CableCarStation_OnTransition:
end
MtChimney_CableCarStation_EventScript_MoveAttendantAside::
- setobjectxyperm LOCALID_ATTENDANT, 5, 4
- setobjectmovementtype LOCALID_ATTENDANT, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_MT_CHIMNEY_CABLE_CAR_ATTENDANT, 5, 4
+ setobjectmovementtype LOCALID_MT_CHIMNEY_CABLE_CAR_ATTENDANT, MOVEMENT_TYPE_FACE_RIGHT
return
MtChimney_CableCarStation_OnFrame:
@@ -20,12 +18,12 @@ MtChimney_CableCarStation_OnFrame:
MtChimney_CableCarStation_EventScript_ExitCableCar::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, MtChimney_CableCarStation_Movement_ExitCableCar
- applymovement LOCALID_ATTENDANT, MtChimney_CableCarStation_Movement_FollowPlayerOutFromCableCar
+ applymovement LOCALID_PLAYER, MtChimney_CableCarStation_Movement_ExitCableCar
+ applymovement LOCALID_MT_CHIMNEY_CABLE_CAR_ATTENDANT, MtChimney_CableCarStation_Movement_FollowPlayerOutFromCableCar
waitmovement 0
setvar VAR_CABLE_CAR_STATION_STATE, 0
- setobjectxyperm LOCALID_ATTENDANT, 6, 7
- setobjectmovementtype LOCALID_ATTENDANT, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_MT_CHIMNEY_CABLE_CAR_ATTENDANT, 6, 7
+ setobjectmovementtype LOCALID_MT_CHIMNEY_CABLE_CAR_ATTENDANT, MOVEMENT_TYPE_FACE_DOWN
releaseall
end
@@ -40,8 +38,8 @@ MtChimney_CableCarStation_EventScript_Attendant::
MtChimney_CableCarStation_EventScript_RideCableCar::
msgbox MtChimney_CableCarStation_Text_StepThisWay, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, MtChimney_CableCarStation_Movement_LeadPlayerToCableCar
- applymovement OBJ_EVENT_ID_PLAYER, MtChimney_CableCarStation_Movement_BoardCableCar
+ applymovement LOCALID_MT_CHIMNEY_CABLE_CAR_ATTENDANT, MtChimney_CableCarStation_Movement_LeadPlayerToCableCar
+ applymovement LOCALID_PLAYER, MtChimney_CableCarStation_Movement_BoardCableCar
waitmovement 0
setvar VAR_0x8004, TRUE @ Going down
setvar VAR_CABLE_CAR_STATION_STATE, 2
diff --git a/data/maps/MtPyre_Summit/map.json b/data/maps/MtPyre_Summit/map.json
index 49fd8b9f72..7a2cccdd36 100644
--- a/data/maps/MtPyre_Summit/map.json
+++ b/data/maps/MtPyre_Summit/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MT_PYRE_SUMMIT_ARCHIE",
"graphics_id": "OBJ_EVENT_GFX_ARCHIE",
"x": 23,
"y": 6,
@@ -41,6 +42,7 @@
"flag": "FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE"
},
{
+ "local_id": "LOCALID_MT_PYRE_SUMMIT_OLD_LADY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_F",
"x": 23,
"y": 5,
@@ -54,6 +56,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MT_PYRE_SUMMIT_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 21,
"y": 15,
@@ -67,6 +70,7 @@
"flag": "FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_MT_PYRE_SUMMIT_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 25,
"y": 18,
@@ -80,6 +84,7 @@
"flag": "FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_MT_PYRE_SUMMIT_GRUNT_3",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 21,
"y": 11,
@@ -93,6 +98,7 @@
"flag": "FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_MT_PYRE_SUMMIT_GRUNT_4",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_F",
"x": 25,
"y": 11,
@@ -106,6 +112,7 @@
"flag": "FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_MT_PYRE_SUMMIT_MAXIE",
"graphics_id": "OBJ_EVENT_GFX_MAXIE",
"x": 23,
"y": 6,
diff --git a/data/maps/MtPyre_Summit/scripts.inc b/data/maps/MtPyre_Summit/scripts.inc
index 36e3d78070..c2130968ee 100644
--- a/data/maps/MtPyre_Summit/scripts.inc
+++ b/data/maps/MtPyre_Summit/scripts.inc
@@ -1,11 +1,3 @@
-.set LOCALID_ARCHIE, 2
-.set LOCALID_OLD_LADY, 3
-.set LOCALID_GRUNT_1, 4
-.set LOCALID_GRUNT_2, 5
-.set LOCALID_GRUNT_3, 6
-.set LOCALID_GRUNT_4, 7
-.set LOCALID_MAXIE, 8
-
MtPyre_Summit_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, MtPyre_Summit_OnTransition
end_map_scripts
@@ -15,8 +7,8 @@ MtPyre_Summit_OnTransition:
end
MtPyre_Summit_EventScript_SetArchieMaxiePositions::
- setobjectxyperm LOCALID_MAXIE, 23, 6
- setobjectxyperm LOCALID_ARCHIE, 22, 6
+ setobjectxyperm LOCALID_MT_PYRE_SUMMIT_MAXIE, 23, 6
+ setobjectxyperm LOCALID_MT_PYRE_SUMMIT_ARCHIE, 22, 6
end
MtPyre_Summit_EventScript_TeamAquaTrigger0::
@@ -39,9 +31,9 @@ MtPyre_Summit_EventScript_TeamAquaTrigger2::
MtPyre_Summit_EventScript_TeamAquaExits::
playbgm MUS_ENCOUNTER_AQUA, FALSE
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp
+ applymovement LOCALID_PLAYER, Common_Movement_FaceUp
waitmovement 0
- applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 50
call_if_eq VAR_0x8008, 0, MtPyre_Summit_EventScript_ArchieFacePlayer0
@@ -50,11 +42,11 @@ MtPyre_Summit_EventScript_TeamAquaExits::
msgbox MtPyre_Summit_Text_ArchieWeGotTheOrbLetsGo, MSGBOX_DEFAULT
closemessage
fadescreen FADE_TO_BLACK
- removeobject LOCALID_ARCHIE
- removeobject LOCALID_GRUNT_1
- removeobject LOCALID_GRUNT_2
- removeobject LOCALID_GRUNT_3
- removeobject LOCALID_GRUNT_4
+ removeobject LOCALID_MT_PYRE_SUMMIT_ARCHIE
+ removeobject LOCALID_MT_PYRE_SUMMIT_GRUNT_1
+ removeobject LOCALID_MT_PYRE_SUMMIT_GRUNT_2
+ removeobject LOCALID_MT_PYRE_SUMMIT_GRUNT_3
+ removeobject LOCALID_MT_PYRE_SUMMIT_GRUNT_4
setflag FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE
setflag FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA
fadedefaultbgm
@@ -72,7 +64,7 @@ MtPyre_Summit_EventScript_TeamAquaExits::
end
MtPyre_Summit_EventScript_ArchieFacePlayer0::
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieFacePlayer0
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieFacePlayer0
waitmovement 0
return
@@ -81,26 +73,26 @@ MtPyre_Summit_EventScript_ArchieFacePlayer1::
return
MtPyre_Summit_EventScript_ArchieFacePlayer2::
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieFacePlayer2
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieFacePlayer2
waitmovement 0
return
MtPyre_Summit_EventScript_OldLadyApproachPlayer0::
- applymovement LOCALID_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer0
+ applymovement LOCALID_MT_PYRE_SUMMIT_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer0
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
MtPyre_Summit_EventScript_OldLadyApproachPlayer1::
- applymovement LOCALID_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer1
+ applymovement LOCALID_MT_PYRE_SUMMIT_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer1
waitmovement 0
return
MtPyre_Summit_EventScript_OldLadyApproachPlayer2::
- applymovement LOCALID_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer2
+ applymovement LOCALID_MT_PYRE_SUMMIT_OLD_LADY, MtPyre_Summit_Movement_OldLadyApproachPlayer2
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
@@ -204,16 +196,16 @@ MtPyre_Summit_EventScript_ArchieMaxieTrigger2::
end
MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 60
call_if_eq VAR_0x8008, 0, MtPyre_Summit_EventScript_ArchieMaxieBeginExit0
call_if_eq VAR_0x8008, 1, MtPyre_Summit_EventScript_ArchieMaxieBeginExit1
call_if_eq VAR_0x8008, 2, MtPyre_Summit_EventScript_ArchieMaxieBeginExit2
playse SE_PIN
- applymovement LOCALID_MAXIE, Common_Movement_ExclamationMark
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_MAXIE, Common_Movement_Delay48
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, Common_Movement_Delay48
waitmovement 0
delay 30
call_if_eq VAR_0x8008, 0, MtPyre_Summit_EventScript_MaxieApproachPlayer0
@@ -225,78 +217,78 @@ MtPyre_Summit_EventScript_ArchieMaxieReturnOrbs::
call_if_eq VAR_0x8008, 1, MtPyre_Summit_EventScript_MaxieApproachArchie1
call_if_eq VAR_0x8008, 2, MtPyre_Summit_EventScript_MaxieApproachArchie2
delay 30
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieExit
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieExit
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieExit
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieExit
waitmovement 0
- removeobject LOCALID_ARCHIE
- removeobject LOCALID_MAXIE
+ removeobject LOCALID_MT_PYRE_SUMMIT_ARCHIE
+ removeobject LOCALID_MT_PYRE_SUMMIT_MAXIE
setvar VAR_MT_PYRE_STATE, 3
releaseall
end
MtPyre_Summit_EventScript_ArchieMaxieBeginExit0::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit0
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieExit
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieExit
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit0
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieExit
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieExit
waitmovement 0
return
MtPyre_Summit_EventScript_ArchieMaxieBeginExit1::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit1
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieExit
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieExit
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit1
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieExit
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieExit
waitmovement 0
return
MtPyre_Summit_EventScript_ArchieMaxieBeginExit2::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit2
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieExit
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieExit
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerWatchArchieMaxieExit2
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieExit
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieExit
waitmovement 0
return
MtPyre_Summit_EventScript_MaxieApproachPlayer0::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerFaceMaxie0
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieWatchMaxie
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachPlayer0
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerFaceMaxie0
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieWatchMaxie
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieApproachPlayer0
waitmovement 0
return
MtPyre_Summit_EventScript_MaxieApproachPlayer1::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerFaceMaxie
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieWatchMaxie
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachPlayer1
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerFaceMaxie
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieWatchMaxie
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieApproachPlayer1
waitmovement 0
return
MtPyre_Summit_EventScript_MaxieApproachPlayer2::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerFaceMaxie
- applymovement LOCALID_ARCHIE, MtPyre_Summit_Movement_ArchieWatchMaxie
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachPlayer2
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerFaceMaxie
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, MtPyre_Summit_Movement_ArchieWatchMaxie
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieApproachPlayer2
waitmovement 0
return
MtPyre_Summit_EventScript_MaxieApproachArchie0::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie0
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie0
waitmovement 0
- applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
MtPyre_Summit_EventScript_MaxieApproachArchie1::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie1
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie1
waitmovement 0
- applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
MtPyre_Summit_EventScript_MaxieApproachArchie2::
- applymovement OBJ_EVENT_ID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie
- applymovement LOCALID_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie2
+ applymovement LOCALID_PLAYER, MtPyre_Summit_Movement_PlayerWatchMaxie
+ applymovement LOCALID_MT_PYRE_SUMMIT_MAXIE, MtPyre_Summit_Movement_MaxieApproachArchie2
waitmovement 0
- applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_MT_PYRE_SUMMIT_ARCHIE, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
diff --git a/data/maps/NavelRock_Bottom/map.json b/data/maps/NavelRock_Bottom/map.json
index bd7ce3ffec..695465e21d 100644
--- a/data/maps/NavelRock_Bottom/map.json
+++ b/data/maps/NavelRock_Bottom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_NAVEL_ROCK_LUGIA",
"graphics_id": "OBJ_EVENT_GFX_LUGIA",
"x": 11,
"y": 13,
diff --git a/data/maps/NavelRock_Bottom/scripts.inc b/data/maps/NavelRock_Bottom/scripts.inc
index eda2020a4a..d352be9564 100644
--- a/data/maps/NavelRock_Bottom/scripts.inc
+++ b/data/maps/NavelRock_Bottom/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_LUGIA, 1
-
NavelRock_Bottom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, NavelRock_Bottom_OnTransition
map_script MAP_SCRIPT_ON_RESUME, NavelRock_Bottom_OnResume
@@ -26,7 +24,7 @@ NavelRock_Bottom_OnResume:
NavelRock_Bottom_EventScript_TryRemoveLugia::
specialvar VAR_RESULT, GetBattleOutcome
goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn
- removeobject LOCALID_LUGIA
+ removeobject LOCALID_NAVEL_ROCK_LUGIA
return
NavelRock_Bottom_EventScript_Lugia::
diff --git a/data/maps/NavelRock_Harbor/map.json b/data/maps/NavelRock_Harbor/map.json
index ed0bb70dac..c3ca23d82d 100644
--- a/data/maps/NavelRock_Harbor/map.json
+++ b/data/maps/NavelRock_Harbor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_NAVEL_ROCK_SAILOR",
"graphics_id": "OBJ_EVENT_GFX_SAILOR",
"x": 8,
"y": 5,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_NAVEL_ROCK_SS_TIDAL",
"graphics_id": "OBJ_EVENT_GFX_SS_TIDAL",
"x": 8,
"y": 7,
diff --git a/data/maps/NavelRock_Harbor/scripts.inc b/data/maps/NavelRock_Harbor/scripts.inc
index e9a888e641..0caf59fc95 100644
--- a/data/maps/NavelRock_Harbor/scripts.inc
+++ b/data/maps/NavelRock_Harbor/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_SAILOR, 1
-.set LOCALID_SS_TIDAL, 2
-
NavelRock_Harbor_MapScripts::
end_map_scripts
@@ -14,8 +11,8 @@ NavelRock_Harbor_EventScript_Sailor::
applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
- hideobjectat LOCALID_SAILOR, MAP_NAVEL_ROCK_HARBOR
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ hideobjectat LOCALID_NAVEL_ROCK_SAILOR, MAP_NAVEL_ROCK_HARBOR
+ setvar VAR_0x8004, LOCALID_NAVEL_ROCK_SS_TIDAL
call Common_EventScript_FerryDepartIsland
warp MAP_LILYCOVE_CITY_HARBOR, 8, 11
waitstate
diff --git a/data/maps/NavelRock_Top/map.json b/data/maps/NavelRock_Top/map.json
index c818fc3994..e208dd7099 100644
--- a/data/maps/NavelRock_Top/map.json
+++ b/data/maps/NavelRock_Top/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_NAVEL_ROCK_HO_OH",
"graphics_id": "OBJ_EVENT_GFX_HOOH",
"x": 12,
"y": 4,
diff --git a/data/maps/NavelRock_Top/scripts.inc b/data/maps/NavelRock_Top/scripts.inc
index a37b2738cc..878e2801eb 100644
--- a/data/maps/NavelRock_Top/scripts.inc
+++ b/data/maps/NavelRock_Top/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_HO_OH, 1
-
NavelRock_Top_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, NavelRock_Top_OnTransition
map_script MAP_SCRIPT_ON_RESUME, NavelRock_Top_OnResume
@@ -29,7 +27,7 @@ NavelRock_Top_OnResume:
NavelRock_Top_EventScript_TryRemoveHoOh::
specialvar VAR_RESULT, GetBattleOutcome
goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn
- removeobject LOCALID_HO_OH
+ removeobject LOCALID_NAVEL_ROCK_HO_OH
return
NavelRock_Top_EventScript_HoOh::
@@ -39,8 +37,8 @@ NavelRock_Top_EventScript_HoOh::
setvar VAR_0x8004, 3 @ num loops
setvar VAR_0x8005, 35 @ delay
special LoopWingFlapSE
- applymovement LOCALID_HO_OH, NavelRock_Top_Movement_HoOhAppear
- applymovement OBJ_EVENT_ID_CAMERA, NavelRock_Top_Movement_CameraPanUp
+ applymovement LOCALID_NAVEL_ROCK_HO_OH, NavelRock_Top_Movement_HoOhAppear
+ applymovement LOCALID_CAMERA, NavelRock_Top_Movement_CameraPanUp
waitmovement 0
delay 50
setweather WEATHER_NONE
@@ -53,8 +51,8 @@ NavelRock_Top_EventScript_HoOh::
setvar VAR_0x8004, 3 @ num loops
setvar VAR_0x8005, 35 @ delay
special LoopWingFlapSE
- applymovement OBJ_EVENT_ID_CAMERA, NavelRock_Top_Movement_CameraPanDown
- applymovement LOCALID_HO_OH, NavelRock_Top_Movement_HoOhApproach
+ applymovement LOCALID_CAMERA, NavelRock_Top_Movement_CameraPanDown
+ applymovement LOCALID_NAVEL_ROCK_HO_OH, NavelRock_Top_Movement_HoOhApproach
waitmovement 0
special RemoveCameraObject
seteventmon SPECIES_HO_OH, 70
@@ -62,7 +60,7 @@ NavelRock_Top_EventScript_HoOh::
special BattleSetup_StartLegendaryBattle
waitstate
clearflag FLAG_SYS_CTRL_OBJ_DELETE
- setvar VAR_LAST_TALKED, LOCALID_HO_OH
+ setvar VAR_LAST_TALKED, LOCALID_NAVEL_ROCK_HO_OH
specialvar VAR_RESULT, GetBattleOutcome
goto_if_eq VAR_RESULT, B_OUTCOME_WON, NavelRock_Top_EventScript_DefeatedHoOh
goto_if_eq VAR_RESULT, B_OUTCOME_RAN, NavelRock_Top_EventScript_RanFromHoOh
diff --git a/data/maps/NewMauville_Entrance/scripts.inc b/data/maps/NewMauville_Entrance/scripts.inc
index 7e8c214ea6..29d11a19b0 100644
--- a/data/maps/NewMauville_Entrance/scripts.inc
+++ b/data/maps/NewMauville_Entrance/scripts.inc
@@ -22,7 +22,7 @@ NewMauville_Entrance_OnTransition:
NewMauville_Entrance_EventScript_Door::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox NewMauville_Entrance_Text_DoorIsLocked, MSGBOX_DEFAULT
checkitem ITEM_BASEMENT_KEY
diff --git a/data/maps/OldaleTown/map.json b/data/maps/OldaleTown/map.json
index 302ef5e9d0..d368e0bcbf 100644
--- a/data/maps/OldaleTown/map.json
+++ b/data/maps/OldaleTown/map.json
@@ -44,6 +44,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_OLDALE_MART_EMPLOYEE",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 13,
"y": 7,
@@ -57,6 +58,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FOOTPRINTS_MAN",
"graphics_id": "OBJ_EVENT_GFX_MANIAC",
"x": 8,
"y": 9,
@@ -70,6 +72,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_OLDALE_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 11,
"y": 19,
diff --git a/data/maps/OldaleTown/scripts.inc b/data/maps/OldaleTown/scripts.inc
index 13b05b475d..42dfc3c03c 100644
--- a/data/maps/OldaleTown/scripts.inc
+++ b/data/maps/OldaleTown/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_MART_EMPLOYEE, 2
-.set LOCALID_FOOTPRINTS_MAN, 3
-.set LOCALID_RIVAL, 4
-
OldaleTown_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, OldaleTown_OnTransition
end_map_scripts
@@ -25,8 +21,8 @@ OldaleTown_EventScript_BlockWestEntrance::
return
OldaleTown_EventScript_MoveMartEmployee::
- setobjectxyperm LOCALID_MART_EMPLOYEE, 13, 14
- setobjectmovementtype LOCALID_MART_EMPLOYEE, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_OLDALE_MART_EMPLOYEE, 13, 14
+ setobjectmovementtype LOCALID_OLDALE_MART_EMPLOYEE, MOVEMENT_TYPE_FACE_DOWN
return
OldaleTown_EventScript_TownSign::
@@ -53,22 +49,22 @@ OldaleTown_EventScript_MartEmployee::
end
OldaleTown_EventScript_GoToMartSouth::
- applymovement LOCALID_MART_EMPLOYEE, OldaleTown_Movement_EmployeeSouth
- applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_PlayerSouth
+ applymovement LOCALID_OLDALE_MART_EMPLOYEE, OldaleTown_Movement_EmployeeSouth
+ applymovement LOCALID_PLAYER, OldaleTown_Movement_PlayerSouth
waitmovement 0
goto OldaleTown_EventScript_ExplainPokemonMart
end
OldaleTown_EventScript_GoToMartNorth::
- applymovement LOCALID_MART_EMPLOYEE, OldaleTown_Movement_EmployeeNorth
- applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_PlayerNorth
+ applymovement LOCALID_OLDALE_MART_EMPLOYEE, OldaleTown_Movement_EmployeeNorth
+ applymovement LOCALID_PLAYER, OldaleTown_Movement_PlayerNorth
waitmovement 0
goto OldaleTown_EventScript_ExplainPokemonMart
end
OldaleTown_EventScript_GoToMartEast::
- applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_PlayerEast
- applymovement LOCALID_MART_EMPLOYEE, OldaleTown_Movement_EmployeeEast
+ applymovement LOCALID_PLAYER, OldaleTown_Movement_PlayerEast
+ applymovement LOCALID_OLDALE_MART_EMPLOYEE, OldaleTown_Movement_EmployeeEast
waitmovement 0
goto OldaleTown_EventScript_ExplainPokemonMart
end
@@ -204,7 +200,7 @@ OldaleTown_EventScript_FootprintsMan::
OldaleTown_EventScript_BlockedPath::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_PlayerStepBack
+ applymovement LOCALID_PLAYER, OldaleTown_Movement_PlayerStepBack
applymovement LOCALID_FOOTPRINTS_MAN, OldaleTown_Movement_BackUp
waitmovement 0
msgbox OldaleTown_Text_WaitDontComeInHere, MSGBOX_DEFAULT
@@ -221,7 +217,7 @@ OldaleTown_EventScript_NotBlockingPath::
OldaleTown_EventScript_Rival::
lockall
- applymovement LOCALID_RIVAL, Common_Movement_FacePlayer
+ applymovement LOCALID_OLDALE_RIVAL, Common_Movement_FacePlayer
waitmovement 0
setvar VAR_0x8009, 0
goto OldaleTown_EventScript_ShowRivalMessage
@@ -229,9 +225,9 @@ OldaleTown_EventScript_Rival::
OldaleTown_EventScript_RivalTrigger1::
lockall
- applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer1
+ applymovement LOCALID_OLDALE_RIVAL, OldaleTown_Movement_RivalApproachPlayer1
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
setvar VAR_0x8009, 1
goto OldaleTown_EventScript_ShowRivalMessage
@@ -239,9 +235,9 @@ OldaleTown_EventScript_RivalTrigger1::
OldaleTown_EventScript_RivalTrigger2::
lockall
- applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer2
+ applymovement LOCALID_OLDALE_RIVAL, OldaleTown_Movement_RivalApproachPlayer2
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
setvar VAR_0x8009, 1
goto OldaleTown_EventScript_ShowRivalMessage
@@ -249,9 +245,9 @@ OldaleTown_EventScript_RivalTrigger2::
OldaleTown_EventScript_RivalTrigger3::
lockall
- applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalApproachPlayer3
+ applymovement LOCALID_OLDALE_RIVAL, OldaleTown_Movement_RivalApproachPlayer3
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
setvar VAR_0x8009, 1
goto OldaleTown_EventScript_ShowRivalMessage
@@ -277,9 +273,9 @@ OldaleTown_EventScript_RivalFinish::
closemessage
call_if_eq VAR_0x8009, 0, OldaleTown_EventScript_DoExitMovement1
call_if_eq VAR_0x8009, 1, OldaleTown_EventScript_DoExitMovement2
- applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalExit
+ applymovement LOCALID_OLDALE_RIVAL, OldaleTown_Movement_RivalExit
waitmovement 0
- removeobject LOCALID_RIVAL
+ removeobject LOCALID_OLDALE_RIVAL
setvar VAR_OLDALE_RIVAL_STATE, 2
setflag FLAG_HIDE_OLDALE_TOWN_RIVAL
releaseall
@@ -287,13 +283,13 @@ OldaleTown_EventScript_RivalFinish::
OldaleTown_EventScript_DoExitMovement1::
goto_if_ne VAR_FACING, DIR_SOUTH, OldaleTown_EventScript_DoExitMovement2
- applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalExit
+ applymovement LOCALID_OLDALE_RIVAL, OldaleTown_Movement_RivalExit
waitmovement 0
return
OldaleTown_EventScript_DoExitMovement2::
- applymovement OBJ_EVENT_ID_PLAYER, OldaleTown_Movement_WatchRivalExit
- applymovement LOCALID_RIVAL, OldaleTown_Movement_RivalExit
+ applymovement LOCALID_PLAYER, OldaleTown_Movement_WatchRivalExit
+ applymovement LOCALID_OLDALE_RIVAL, OldaleTown_Movement_RivalExit
waitmovement 0
return
diff --git a/data/maps/OldaleTown_Mart/map.json b/data/maps/OldaleTown_Mart/map.json
index cfca496fd9..7ec9e7ab68 100644
--- a/data/maps/OldaleTown_Mart/map.json
+++ b/data/maps/OldaleTown_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_OLDALE_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/OldaleTown_Mart/scripts.inc b/data/maps/OldaleTown_Mart/scripts.inc
index b387253d85..7c3d1d87d4 100644
--- a/data/maps/OldaleTown_Mart/scripts.inc
+++ b/data/maps/OldaleTown_Mart/scripts.inc
@@ -18,9 +18,7 @@ OldaleTown_Mart_Pokemart_Basic:
.2byte ITEM_ANTIDOTE
.2byte ITEM_PARALYZE_HEAL
.2byte ITEM_AWAKENING
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
OldaleTown_Mart_ExpandedItems::
pokemart OldaleTown_Mart_Pokemart_Expanded
@@ -35,9 +33,7 @@ OldaleTown_Mart_Pokemart_Expanded:
.2byte ITEM_ANTIDOTE
.2byte ITEM_PARALYZE_HEAL
.2byte ITEM_AWAKENING
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
OldaleTown_Mart_EventScript_Woman::
lock
diff --git a/data/maps/OldaleTown_PokemonCenter_1F/map.json b/data/maps/OldaleTown_PokemonCenter_1F/map.json
index d3f72b8492..123d371cf4 100644
--- a/data/maps/OldaleTown_PokemonCenter_1F/map.json
+++ b/data/maps/OldaleTown_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_OLDALE_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/OldaleTown_PokemonCenter_1F/scripts.inc b/data/maps/OldaleTown_PokemonCenter_1F/scripts.inc
index 6a5bf709eb..4fb17689d3 100644
--- a/data/maps/OldaleTown_PokemonCenter_1F/scripts.inc
+++ b/data/maps/OldaleTown_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
OldaleTown_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, OldaleTown_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -11,7 +9,7 @@ OldaleTown_PokemonCenter_1F_OnTransition:
end
OldaleTown_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_OLDALE_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/PacifidlogTown_PokemonCenter_1F/map.json b/data/maps/PacifidlogTown_PokemonCenter_1F/map.json
index f98fdb3dd7..08f661ce97 100644
--- a/data/maps/PacifidlogTown_PokemonCenter_1F/map.json
+++ b/data/maps/PacifidlogTown_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PACIFIDLOG_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/PacifidlogTown_PokemonCenter_1F/scripts.inc b/data/maps/PacifidlogTown_PokemonCenter_1F/scripts.inc
index 52e084a49a..4f43403587 100644
--- a/data/maps/PacifidlogTown_PokemonCenter_1F/scripts.inc
+++ b/data/maps/PacifidlogTown_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
PacifidlogTown_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, PacifidlogTown_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -10,7 +8,7 @@ PacifidlogTown_PokemonCenter_1F_OnTransition:
end
PacifidlogTown_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_PACIFIDLOG_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/PetalburgCity/map.json b/data/maps/PetalburgCity/map.json
index d653e46aec..3d9f2cc361 100644
--- a/data/maps/PetalburgCity/map.json
+++ b/data/maps/PetalburgCity/map.json
@@ -39,6 +39,7 @@
"flag": "FLAG_HIDE_PETALBURG_CITY_WALLYS_MOM"
},
{
+ "local_id": "LOCALID_PETALBURG_WALLY",
"graphics_id": "OBJ_EVENT_GFX_WALLY",
"x": 15,
"y": 10,
@@ -52,6 +53,7 @@
"flag": "FLAG_HIDE_PETALBURG_CITY_WALLY"
},
{
+ "local_id": "LOCALID_PETALBURG_BOY",
"graphics_id": "OBJ_EVENT_GFX_BOY_1",
"x": 8,
"y": 22,
@@ -78,6 +80,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PETALBURG_WALLYS_DAD",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_M",
"x": 15,
"y": 10,
@@ -117,6 +120,7 @@
"flag": "FLAG_ITEM_PETALBURG_CITY_ETHER"
},
{
+ "local_id": "LOCALID_GYM_BOY",
"graphics_id": "OBJ_EVENT_GFX_BOY_2",
"x": 12,
"y": 15,
@@ -130,6 +134,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_PETALBURG_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 13,
"y": 12,
diff --git a/data/maps/PetalburgCity/scripts.inc b/data/maps/PetalburgCity/scripts.inc
index 238bc3c47a..1b625878b5 100644
--- a/data/maps/PetalburgCity/scripts.inc
+++ b/data/maps/PetalburgCity/scripts.inc
@@ -1,9 +1,3 @@
-.set LOCALID_WALLY, 2
-.set LOCALID_BOY, 3
-.set LOCALID_WALLYS_DAD, 5
-.set LOCALID_GYM_BOY, 8
-.set LOCALID_SCOTT, 9
-
PetalburgCity_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, PetalburgCity_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, PetalburgCity_OnFrame
@@ -39,15 +33,15 @@ PetalburgCity_EventScript_WallyTutorial::
lockall
special SavePlayerParty
special LoadWallyZigzagoon
- applymovement LOCALID_WALLY, PetalburgCity_Movement_WallyTutorialWally
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_WallyTutorialPlayer
+ applymovement LOCALID_PETALBURG_WALLY, PetalburgCity_Movement_WallyTutorialWally
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_WallyTutorialPlayer
waitmovement 0
msgbox Route102_Text_WatchMeCatchPokemon, MSGBOX_DEFAULT
special StartWallyTutorialBattle
waitstate
msgbox Route102_Text_WallyIDidIt, MSGBOX_DEFAULT
- applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterLeft, MAP_PETALBURG_CITY
- waitmovement LOCALID_WALLY, MAP_PETALBURG_CITY
+ applymovement LOCALID_PETALBURG_WALLY, Common_Movement_WalkInPlaceFasterLeft, MAP_PETALBURG_CITY
+ waitmovement LOCALID_PETALBURG_WALLY, MAP_PETALBURG_CITY
msgbox Route102_Text_LetsGoBack, MSGBOX_DEFAULT
closemessage
clearflag FLAG_HIDE_MAP_NAME_POPUP
@@ -64,18 +58,18 @@ PetalburgCity_EventScript_WallyTutorial::
PetalburgCity_EventScript_WalkToWallyHouse::
lockall
setflag FLAG_HIDE_MAP_NAME_POPUP
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Movement_WalkToWallyHouseWallysDad
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_WalkToWallyHousePlayer
+ applymovement LOCALID_PETALBURG_WALLYS_DAD, PetalburgCity_Movement_WalkToWallyHouseWallysDad
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_WalkToWallyHousePlayer
waitmovement 0
setvar VAR_0x8004, 7
setvar VAR_0x8005, 5
opendoor VAR_0x8004, VAR_0x8005
waitdooranim
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Movement_WalkInsideHouseWallysDad
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_WalkInsideHousePlayer
+ applymovement LOCALID_PETALBURG_WALLYS_DAD, PetalburgCity_Movement_WalkInsideHouseWallysDad
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_WalkInsideHousePlayer
waitmovement 0
setflag FLAG_HIDE_PETALBURG_CITY_WALLYS_DAD
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_PETALBURG_CITY
+ hideobjectat LOCALID_PLAYER, MAP_PETALBURG_CITY
closedoor VAR_0x8004, VAR_0x8005
waitdooranim
clearflag FLAG_HIDE_MAP_NAME_POPUP
@@ -91,7 +85,7 @@ PetalburgCity_EventScript_Boy::
faceplayer
msgbox PetalburgCity_Text_WaterReflection, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_BOY, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_PETALBURG_BOY, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -285,7 +279,7 @@ PetalburgCity_EventScript_ShowGymToPlayer::
call_if_eq VAR_0x8008, 3, PetalburgCity_EventScript_LeadPlayerToGym3
msgbox PetalburgCity_Text_ThisIsPetalburgGym, MSGBOX_DEFAULT
applymovement LOCALID_GYM_BOY, Common_Movement_WalkInPlaceFasterRight
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox PetalburgCity_Text_ThisIsGymSign, MSGBOX_DEFAULT
closemessage
@@ -298,7 +292,7 @@ PetalburgCity_EventScript_ShowGymToPlayer::
PetalburgCity_EventScript_BoyApproachPlayer0::
applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer0
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
@@ -310,38 +304,38 @@ PetalburgCity_EventScript_BoyApproachPlayer1::
PetalburgCity_EventScript_BoyApproachPlayer2::
applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer2
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
PetalburgCity_EventScript_BoyApproachPlayer3::
applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyApproachPlayer3
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
PetalburgCity_EventScript_LeadPlayerToGym0::
applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyWalkToGym0
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym0
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym0
waitmovement 0
return
PetalburgCity_EventScript_LeadPlayerToGym1::
applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyWalkToGym1
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym1
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym1
waitmovement 0
return
PetalburgCity_EventScript_LeadPlayerToGym2::
applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyWalkToGym2
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym2
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym2
waitmovement 0
return
PetalburgCity_EventScript_LeadPlayerToGym3::
applymovement LOCALID_GYM_BOY, PetalburgCity_Movement_BoyWalkToGym3
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym3
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_PlayerWalkToGym3
waitmovement 0
return
@@ -504,57 +498,57 @@ PetalburgCity_Movement_PlayerWalkToGym3:
PetalburgCity_EventScript_Scott0::
lockall
- addobject LOCALID_SCOTT
+ addobject LOCALID_PETALBURG_SCOTT
setvar VAR_0x8008, 0
- setobjectxy LOCALID_SCOTT, 13, 10
+ setobjectxy LOCALID_PETALBURG_SCOTT, 13, 10
goto PetalburgCity_EventScript_Scott
end
PetalburgCity_EventScript_Scott1::
lockall
- addobject LOCALID_SCOTT
+ addobject LOCALID_PETALBURG_SCOTT
setvar VAR_0x8008, 1
- setobjectxy LOCALID_SCOTT, 13, 11
+ setobjectxy LOCALID_PETALBURG_SCOTT, 13, 11
goto PetalburgCity_EventScript_Scott
end
PetalburgCity_EventScript_Scott2::
lockall
- addobject LOCALID_SCOTT
+ addobject LOCALID_PETALBURG_SCOTT
setvar VAR_0x8008, 2
- setobjectxy LOCALID_SCOTT, 13, 12
+ setobjectxy LOCALID_PETALBURG_SCOTT, 13, 12
goto PetalburgCity_EventScript_Scott
end
PetalburgCity_EventScript_Scott3::
lockall
- addobject LOCALID_SCOTT
+ addobject LOCALID_PETALBURG_SCOTT
setvar VAR_0x8008, 3
- setobjectxy LOCALID_SCOTT, 13, 13
+ setobjectxy LOCALID_PETALBURG_SCOTT, 13, 13
goto PetalburgCity_EventScript_Scott
end
PetalburgCity_EventScript_Scott::
- applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottStartWalkLeft
+ applymovement LOCALID_PETALBURG_SCOTT, PetalburgCity_Movement_ScottStartWalkLeft
waitmovement 0
playse SE_PIN
- applymovement LOCALID_SCOTT, Common_Movement_ExclamationMark
+ applymovement LOCALID_PETALBURG_SCOTT, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_SCOTT, Common_Movement_Delay48
+ applymovement LOCALID_PETALBURG_SCOTT, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottApproachPlayer
+ applymovement LOCALID_PETALBURG_SCOTT, PetalburgCity_Movement_ScottApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
setvar VAR_SCOTT_STATE, 1
msgbox PetalburgCity_Text_AreYouATrainer, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PETALBURG_SCOTT, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 30
msgbox PetalburgCity_Text_WellMaybeNot, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PETALBURG_SCOTT, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
delay 30
msgbox PetalburgCity_Text_ImLookingForTalentedTrainers, MSGBOX_DEFAULT
@@ -564,31 +558,31 @@ PetalburgCity_EventScript_Scott::
call_if_eq VAR_0x8008, 2, PetalburgCity_EventScript_ScottExit2
call_if_eq VAR_0x8008, 3, PetalburgCity_EventScript_ScottExit3
setvar VAR_SCOTT_PETALBURG_ENCOUNTER, 1
- removeobject LOCALID_SCOTT
+ removeobject LOCALID_PETALBURG_SCOTT
releaseall
end
PetalburgCity_EventScript_ScottExit0::
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit0
- applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottExit0
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit0
+ applymovement LOCALID_PETALBURG_SCOTT, PetalburgCity_Movement_ScottExit0
waitmovement 0
return
PetalburgCity_EventScript_ScottExit1::
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit1
- applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottExit1
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit1
+ applymovement LOCALID_PETALBURG_SCOTT, PetalburgCity_Movement_ScottExit1
waitmovement 0
return
PetalburgCity_EventScript_ScottExit2::
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit2
- applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottExit2
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit2
+ applymovement LOCALID_PETALBURG_SCOTT, PetalburgCity_Movement_ScottExit2
waitmovement 0
return
PetalburgCity_EventScript_ScottExit3::
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit3
- applymovement LOCALID_SCOTT, PetalburgCity_Movement_ScottExit3
+ applymovement LOCALID_PLAYER, PetalburgCity_Movement_PlayerWatchScottExit3
+ applymovement LOCALID_PETALBURG_SCOTT, PetalburgCity_Movement_ScottExit3
waitmovement 0
return
diff --git a/data/maps/PetalburgCity_Gym/map.json b/data/maps/PetalburgCity_Gym/map.json
index ef58491713..ecc3176b20 100644
--- a/data/maps/PetalburgCity_Gym/map.json
+++ b/data/maps/PetalburgCity_Gym/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PETALBURG_GYM_NORMAN",
"graphics_id": "OBJ_EVENT_GFX_NORMAN",
"x": 4,
"y": 2,
@@ -132,6 +133,7 @@
"flag": "FLAG_HIDE_PETALBURG_GYM_GREETER"
},
{
+ "local_id": "LOCALID_PETALBURG_GYM_WALLY",
"graphics_id": "OBJ_EVENT_GFX_WALLY",
"x": 4,
"y": 111,
@@ -145,6 +147,7 @@
"flag": "FLAG_HIDE_PETALBURG_GYM_WALLY"
},
{
+ "local_id": "LOCALID_PETALBURG_GYM_WALLYS_DAD",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_M",
"x": 1,
"y": 7,
diff --git a/data/maps/PetalburgCity_Gym/scripts.inc b/data/maps/PetalburgCity_Gym/scripts.inc
index 1c519adce5..6995eeda9c 100644
--- a/data/maps/PetalburgCity_Gym/scripts.inc
+++ b/data/maps/PetalburgCity_Gym/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_NORMAN, 1
-.set LOCALID_WALLY, 10
-.set LOCALID_WALLYS_DAD, 11
-
PetalburgCity_Gym_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, PetalburgCity_Gym_OnLoad
map_script MAP_SCRIPT_ON_TRANSITION, PetalburgCity_Gym_OnTransition
@@ -46,11 +42,11 @@ PetalburgCity_Gym_OnTransition:
end
PetalburgCity_Gym_EventScript_MoveWallyToEntrance::
- setobjectxyperm LOCALID_WALLY, 5, 108
+ setobjectxyperm LOCALID_PETALBURG_GYM_WALLY, 5, 108
return
PetalburgCity_Gym_EventScript_MoveNormanToEntrance::
- setobjectxyperm LOCALID_NORMAN, 4, 107
+ setobjectxyperm LOCALID_PETALBURG_GYM_NORMAN, 4, 107
return
PetalburgCity_Gym_EventScript_CheckNormanForRematch::
@@ -58,7 +54,7 @@ PetalburgCity_Gym_EventScript_CheckNormanForRematch::
specialvar VAR_RESULT, IsTrainerReadyForRematch
goto_if_eq VAR_RESULT, TRUE, PetalburgCity_Gym_EventScript_DontMoveNormanToFront
goto_if_eq VAR_PETALBURG_GYM_STATE, 8, PetalburgCity_Gym_EventScript_DontMoveNormanToFront
- setobjectxyperm LOCALID_NORMAN, 4, 107
+ setobjectxyperm LOCALID_PETALBURG_GYM_NORMAN, 4, 107
return
PetalburgCity_Gym_EventScript_DontMoveNormanToFront::
@@ -70,7 +66,7 @@ PetalburgCity_Gym_OnWarp:
end_map_script_table
PetalburgCity_Gym_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
PetalburgCity_Gym_OnFrame:
@@ -82,14 +78,14 @@ PetalburgCity_Gym_EventScript_ReturnFromWallyTutorial::
msgbox PetalburgCity_Gym_Text_DadSoDidItWorkOut, MSGBOX_DEFAULT
msgbox PetalburgCity_Gym_Text_WallyThankYouBye, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
- applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitGym
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_WALLY, PetalburgCity_Gym_Movement_WallyExitGym
waitmovement 0
playse SE_EXIT
- removeobject LOCALID_WALLY
+ removeobject LOCALID_PETALBURG_GYM_WALLY
setflag FLAG_HIDE_PETALBURG_CITY_WALLY
delay 30
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox PetalburgCity_Gym_Text_DadGoCollectBadges, MSGBOX_DEFAULT
setvar VAR_PETALBURG_GYM_STATE, 2
@@ -144,7 +140,7 @@ PetalburgCity_Gym_EventScript_BeginWallyTutorialEast::
end
PetalburgCity_Gym_EventScript_BeginWallyTutorial::
- addobject LOCALID_WALLY
+ addobject LOCALID_PETALBURG_GYM_WALLY
playse SE_DOOR
call_if_eq VAR_0x8008, 0, PetalburgCity_Gym_EventScript_WallyArriveSouth
call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_WallyArriveNorth
@@ -182,7 +178,7 @@ PetalburgCity_Gym_EventScript_BeginWallyTutorial::
call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_ExitGymWithWallyNorth
call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_ExitGymWithWallyWest
call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_ExitGymWithWallyEast
- removeobject LOCALID_WALLY
+ removeobject LOCALID_PETALBURG_GYM_WALLY
setflag FLAG_HIDE_PETALBURG_CITY_WALLYS_MOM
setvar VAR_PETALBURG_GYM_STATE, 1
setvar VAR_PETALBURG_CITY_STATE, 2
@@ -196,101 +192,101 @@ PetalburgCity_Gym_EventScript_BeginWallyTutorial::
end
PetalburgCity_Gym_EventScript_WallyArriveSouth::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
- applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArrive
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_WALLY, PetalburgCity_Gym_Movement_WallyArrive
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallyArriveNorth::
- applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArriveNorth
+ applymovement LOCALID_PETALBURG_GYM_WALLY, PetalburgCity_Gym_Movement_WallyArriveNorth
waitmovement 0
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterRight
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallyArriveWestEast::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
- applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyArrive
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_WALLY, PetalburgCity_Gym_Movement_WallyArrive
waitmovement 0
return
PetalburgCity_Gym_EventScript_ExitGymWithWallySouth::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
- applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitSouthWest
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallySouth
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_WALLY, PetalburgCity_Gym_Movement_WallyExitSouthWest
+ applymovement LOCALID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallySouth
waitmovement 0
return
PetalburgCity_Gym_EventScript_ExitGymWithWallyNorth::
- applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitNorth
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyNorth
+ applymovement LOCALID_PETALBURG_GYM_WALLY, PetalburgCity_Gym_Movement_WallyExitNorth
+ applymovement LOCALID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyNorth
waitmovement 0
return
PetalburgCity_Gym_EventScript_ExitGymWithWallyWest::
- applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitSouthWest
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyWest
+ applymovement LOCALID_PETALBURG_GYM_WALLY, PetalburgCity_Gym_Movement_WallyExitSouthWest
+ applymovement LOCALID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyWest
waitmovement 0
return
PetalburgCity_Gym_EventScript_ExitGymWithWallyEast::
- applymovement LOCALID_WALLY, PetalburgCity_Gym_Movement_WallyExitEast
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyEast
+ applymovement LOCALID_PETALBURG_GYM_WALLY, PetalburgCity_Gym_Movement_WallyExitEast
+ applymovement LOCALID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallyEast
waitmovement 0
return
PetalburgCity_Gym_EventScript_NormanAddressPlayerSouth::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
PetalburgCity_Gym_EventScript_NormanAddressPlayerNorth::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
PetalburgCity_Gym_EventScript_NormanAddressPlayerWest::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterRight
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
PetalburgCity_Gym_EventScript_NormanAddressPlayerEast::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterLeft
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
PetalburgCity_Gym_EventScript_NormanAddressWallySouth::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
PetalburgCity_Gym_EventScript_NormanAddressWallyNorth::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
PetalburgCity_Gym_EventScript_NormanAddressWallyWest::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
PetalburgCity_Gym_EventScript_NormanAddressWallyEast::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallyFacePlayer::
- applymovement LOCALID_WALLY, Common_Movement_FacePlayer
+ applymovement LOCALID_PETALBURG_GYM_WALLY, Common_Movement_FacePlayer
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallyFaceDown::
- applymovement LOCALID_WALLY, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_WALLY, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
@@ -319,7 +315,7 @@ PetalburgCity_Gym_EventScript_NormanFaceDoorSouth::
@ For all other NormanFaceDoorX, Norman is already facing the door from NormanAddressWallyX
PetalburgCity_Gym_EventScript_NormanFaceDoorNorth::
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
@@ -397,7 +393,7 @@ PetalburgCity_Gym_EventScript_NormanBattle::
delay 40
playse SE_DOOR
delay 10
- addobject LOCALID_WALLYS_DAD
+ addobject LOCALID_PETALBURG_GYM_WALLYS_DAD
switch VAR_FACING
case DIR_NORTH, PetalburgCity_Gym_EventScript_WallysDadArrivesNorth
case DIR_WEST, PetalburgCity_Gym_EventScript_WallysDadArrivesWest
@@ -424,12 +420,12 @@ PetalburgCity_Gym_EventScript_WallysDadArrivesWest::
goto PetalburgCity_Gym_EventScript_WallysDadArrives
PetalburgCity_Gym_EventScript_WallysDadArrives::
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadEnterGym
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadEnterGym
waitmovement 0
playse SE_PIN
- applymovement LOCALID_WALLYS_DAD, Common_Movement_ExclamationMark
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_WALLYS_DAD, Common_Movement_Delay48
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, Common_Movement_Delay48
waitmovement 0
delay 10
call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_WallysDadApproachPlayerNorth
@@ -448,7 +444,7 @@ PetalburgCity_Gym_EventScript_WallysDadArrives::
call_if_eq VAR_0x8008, 1, PetalburgCity_Gym_EventScript_ExitGymWithWallysDadNorth
call_if_eq VAR_0x8008, 2, PetalburgCity_Gym_EventScript_ExitGymWithWallysDadEast
call_if_eq VAR_0x8008, 3, PetalburgCity_Gym_EventScript_ExitGymWithWallysDadWest
- removeobject LOCALID_WALLYS_DAD
+ removeobject LOCALID_PETALBURG_GYM_WALLYS_DAD
setvar VAR_PETALBURG_CITY_STATE, 4
clearflag FLAG_HIDE_PETALBURG_CITY_WALLYS_DAD
warp MAP_PETALBURG_CITY, 15, 8
@@ -457,60 +453,60 @@ PetalburgCity_Gym_EventScript_WallysDadArrives::
end
PetalburgCity_Gym_EventScript_WallysDadFaceNormanNorth::
- applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallysDadFaceNormanEast::
- applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallysDadFaceNormanWest::
- applymovement LOCALID_WALLYS_DAD, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallysDadApproachPlayerNorth::
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerNorth
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallysDadApproachPlayerEast::
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerEast
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerEast
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
PetalburgCity_Gym_EventScript_WallysDadApproachPlayerWest::
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerWest
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadApproachPlayerWest
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
PetalburgCity_Gym_EventScript_ExitGymWithWallysDadNorth::
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitNorth
- applymovement LOCALID_NORMAN, Common_Movement_WalkInPlaceFasterDown
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadNorth
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitNorth
+ applymovement LOCALID_PETALBURG_GYM_NORMAN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadNorth
waitmovement 0
return
PetalburgCity_Gym_EventScript_ExitGymWithWallysDadEast::
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitEast
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadEast
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitEast
+ applymovement LOCALID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadEast
waitmovement 0
return
PetalburgCity_Gym_EventScript_ExitGymWithWallysDadWest::
- applymovement LOCALID_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitWest
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadWest
+ applymovement LOCALID_PETALBURG_GYM_WALLYS_DAD, PetalburgCity_Gym_Movement_WallysDadExitWest
+ applymovement LOCALID_PLAYER, PetalburgCity_Gym_Movement_PlayerExitWithWallysDadWest
waitmovement 0
return
diff --git a/data/maps/PetalburgCity_Mart/map.json b/data/maps/PetalburgCity_Mart/map.json
index 7c8a70b28e..884e25d3ea 100644
--- a/data/maps/PetalburgCity_Mart/map.json
+++ b/data/maps/PetalburgCity_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PETALBURG_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/PetalburgCity_Mart/scripts.inc b/data/maps/PetalburgCity_Mart/scripts.inc
index ac47d7766f..5f426cb0b6 100644
--- a/data/maps/PetalburgCity_Mart/scripts.inc
+++ b/data/maps/PetalburgCity_Mart/scripts.inc
@@ -25,9 +25,7 @@ PetalburgCity_Mart_Pokemart_Basic:
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_ORANGE_MAIL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
PetalburgCity_Mart_EventScript_ExpandedItems::
pokemart PetalburgCity_Mart_Pokemart_Expanded
@@ -50,9 +48,7 @@ PetalburgCity_Mart_Pokemart_Expanded:
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_ORANGE_MAIL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
PetalburgCity_Mart_EventScript_Woman::
msgbox PetalburgCity_Mart_Text_WeakWillGrowStronger, MSGBOX_NPC
diff --git a/data/maps/PetalburgCity_PokemonCenter_1F/map.json b/data/maps/PetalburgCity_PokemonCenter_1F/map.json
index 12b7810df9..ae19e848b3 100644
--- a/data/maps/PetalburgCity_PokemonCenter_1F/map.json
+++ b/data/maps/PetalburgCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_PETALBURG_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc b/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc
index ca53d94ecb..f4469e0081 100644
--- a/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/PetalburgCity_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
PetalburgCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, PetalburgCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -11,7 +9,7 @@ PetalburgCity_PokemonCenter_1F_OnTransition:
end
PetalburgCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_PETALBURG_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/PetalburgCity_WallysHouse/map.json b/data/maps/PetalburgCity_WallysHouse/map.json
index f2fd03e7ff..8fb48df1ba 100644
--- a/data/maps/PetalburgCity_WallysHouse/map.json
+++ b/data/maps/PetalburgCity_WallysHouse/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_WALLYS_HOUSE_WALLYS_DAD",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_M",
"x": 3,
"y": 4,
diff --git a/data/maps/PetalburgCity_WallysHouse/scripts.inc b/data/maps/PetalburgCity_WallysHouse/scripts.inc
index bf3eaa50b6..1baef8808f 100644
--- a/data/maps/PetalburgCity_WallysHouse/scripts.inc
+++ b/data/maps/PetalburgCity_WallysHouse/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WALLYS_DAD, 1
-
PetalburgCity_WallysHouse_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, PetalburgCity_WallysHouse_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, PetalburgCity_WallysHouse_OnWarp
@@ -10,8 +8,8 @@ PetalburgCity_WallysHouse_OnWarp:
end_map_script_table
PetalburgCity_WallysHouse_EventScript_PlayerWallysDadFaceEachOther::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_EAST
- turnobject LOCALID_WALLYS_DAD, DIR_WEST
+ turnobject LOCALID_PLAYER, DIR_EAST
+ turnobject LOCALID_WALLYS_HOUSE_WALLYS_DAD, DIR_WEST
end
PetalburgCity_WallysHouse_OnFrame:
diff --git a/data/maps/PetalburgWoods/map.json b/data/maps/PetalburgWoods/map.json
index 2979e7e469..5b6fa65fa7 100644
--- a/data/maps/PetalburgWoods/map.json
+++ b/data/maps/PetalburgWoods/map.json
@@ -41,6 +41,7 @@
"flag": "FLAG_TEMP_12"
},
{
+ "local_id": "LOCALID_PETALBURG_WOODS_GRUNT",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 26,
"y": 17,
@@ -54,6 +55,7 @@
"flag": "FLAG_HIDE_PETALBURG_WOODS_AQUA_GRUNT"
},
{
+ "local_id": "LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE",
"graphics_id": "OBJ_EVENT_GFX_MAN_2",
"x": 26,
"y": 20,
diff --git a/data/maps/PetalburgWoods/scripts.inc b/data/maps/PetalburgWoods/scripts.inc
index c58184cb20..e5a67b6a5b 100644
--- a/data/maps/PetalburgWoods/scripts.inc
+++ b/data/maps/PetalburgWoods/scripts.inc
@@ -1,40 +1,37 @@
-.set LOCALID_GRUNT, 3
-.set LOCALID_DEVON_EMPLOYEE, 4
-
PetalburgWoods_MapScripts::
end_map_scripts
PetalburgWoods_EventScript_DevonResearcherLeft::
lockall
call PetalburgWoods_EventScript_DevonResearcherIntro
- applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherApproachPlayerLeft
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherApproachPlayerLeft
waitmovement 0
msgbox PetalburgWoods_Text_HaveYouSeenShroomish, MSGBOX_DEFAULT
closemessage
playbgm MUS_ENCOUNTER_AQUA, FALSE
- applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaEntrance
+ applymovement LOCALID_PETALBURG_WOODS_GRUNT, PetalburgWoods_Movement_AquaEntrance
waitmovement 0
msgbox PetalburgWoods_Text_IWasGoingToAmbushYou, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaApproachResearcherLeft
+ applymovement LOCALID_PETALBURG_WOODS_GRUNT, PetalburgWoods_Movement_AquaApproachResearcherLeft
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox PetalburgWoods_Text_HandOverThosePapers, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherFleeToPlayerLeft
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherFleeToPlayerLeft
waitmovement 0
msgbox PetalburgWoods_Text_YouHaveToHelpMe, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaApproachPlayer
+ applymovement LOCALID_PETALBURG_WOODS_GRUNT, PetalburgWoods_Movement_AquaApproachPlayer
waitmovement 0
msgbox PetalburgWoods_Text_NoOneCrossesTeamAqua, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_PETALBURG_WOODS, PetalburgWoods_Text_YoureKiddingMe
- applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaBackOff
+ applymovement LOCALID_PETALBURG_WOODS_GRUNT, PetalburgWoods_Movement_AquaBackOff
waitmovement 0
call PetalburgWoods_EventScript_DevonResearcherPostBattle
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgWoods_Movement_WatchResearcherLeave
- applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherExitLeft
+ applymovement LOCALID_PLAYER, PetalburgWoods_Movement_WatchResearcherLeave
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherExitLeft
waitmovement 0
goto PetalburgWoods_EventScript_RemoveDevonResearcher
end
@@ -42,41 +39,41 @@ PetalburgWoods_EventScript_DevonResearcherLeft::
PetalburgWoods_EventScript_DevonResearcherRight::
lockall
call PetalburgWoods_EventScript_DevonResearcherIntro
- applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherApproachPlayerRight
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherApproachPlayerRight
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox PetalburgWoods_Text_HaveYouSeenShroomish, MSGBOX_DEFAULT
closemessage
playbgm MUS_ENCOUNTER_AQUA, FALSE
- applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaEntrance
+ applymovement LOCALID_PETALBURG_WOODS_GRUNT, PetalburgWoods_Movement_AquaEntrance
waitmovement 0
msgbox PetalburgWoods_Text_IWasGoingToAmbushYou, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaApproachResearcherRight
+ applymovement LOCALID_PETALBURG_WOODS_GRUNT, PetalburgWoods_Movement_AquaApproachResearcherRight
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox PetalburgWoods_Text_HandOverThosePapers, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherFleeToPlayerRight
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherFleeToPlayerRight
waitmovement 0
msgbox PetalburgWoods_Text_YouHaveToHelpMe, MSGBOX_DEFAULT
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox PetalburgWoods_Text_NoOneCrossesTeamAqua, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_PETALBURG_WOODS, PetalburgWoods_Text_YoureKiddingMe
- applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaBackOff
+ applymovement LOCALID_PETALBURG_WOODS_GRUNT, PetalburgWoods_Movement_AquaBackOff
waitmovement 0
call PetalburgWoods_EventScript_DevonResearcherPostBattle
- applymovement OBJ_EVENT_ID_PLAYER, PetalburgWoods_Movement_WatchResearcherLeave
- applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherExitRight
+ applymovement LOCALID_PLAYER, PetalburgWoods_Movement_WatchResearcherLeave
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherExitRight
waitmovement 0
goto PetalburgWoods_EventScript_RemoveDevonResearcher
end
PetalburgWoods_EventScript_DevonResearcherIntro::
- applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherLookAround
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherLookAround
waitmovement 0
msgbox PetalburgWoods_Text_NotAOneToBeFound, MSGBOX_DEFAULT
closemessage
@@ -85,10 +82,10 @@ PetalburgWoods_EventScript_DevonResearcherIntro::
PetalburgWoods_EventScript_DevonResearcherPostBattle::
msgbox PetalburgWoods_Text_YouveGotSomeNerve, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT, PetalburgWoods_Movement_AquaRunAway
+ applymovement LOCALID_PETALBURG_WOODS_GRUNT, PetalburgWoods_Movement_AquaRunAway
waitmovement 0
- removeobject LOCALID_GRUNT
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ removeobject LOCALID_PETALBURG_WOODS_GRUNT
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox PetalburgWoods_Text_ThatWasAwfullyClose, MSGBOX_DEFAULT
giveitem ITEM_GREAT_BALL
@@ -103,14 +100,14 @@ PetalburgWoods_EventScript_BagFull::
PetalburgWoods_EventScript_DevonResearcherFinish::
msgbox PetalburgWoods_Text_TeamAquaAfterSomethingInRustboro, MSGBOX_DEFAULT
- applymovement LOCALID_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherStartExit
+ applymovement LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE, PetalburgWoods_Movement_DevonResearcherStartExit
waitmovement 0
msgbox PetalburgWoods_Text_ICantBeWastingTime, MSGBOX_DEFAULT
closemessage
return
PetalburgWoods_EventScript_RemoveDevonResearcher::
- removeobject LOCALID_DEVON_EMPLOYEE
+ removeobject LOCALID_PETALBURG_WOODS_DEVON_EMPLOYEE
setvar VAR_PETALBURG_WOODS_STATE, 1
releaseall
end
diff --git a/data/maps/Route101/map.json b/data/maps/Route101/map.json
index 1abb23030b..d24d997151 100644
--- a/data/maps/Route101/map.json
+++ b/data/maps/Route101/map.json
@@ -39,6 +39,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE101_BIRCH",
"graphics_id": "OBJ_EVENT_GFX_PROF_BIRCH",
"x": 9,
"y": 13,
@@ -65,6 +66,7 @@
"flag": "FLAG_HIDE_ROUTE_101_BIRCH_STARTERS_BAG"
},
{
+ "local_id": "LOCALID_ROUTE101_ZIGZAGOON",
"graphics_id": "OBJ_EVENT_GFX_ZIGZAGOON_1",
"x": 10,
"y": 13,
diff --git a/data/maps/Route101/scripts.inc b/data/maps/Route101/scripts.inc
index 86898150e3..51177f3e3f 100644
--- a/data/maps/Route101/scripts.inc
+++ b/data/maps/Route101/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_BIRCH, 2
-.set LOCALID_ZIGZAGOON, 4
-
Route101_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route101_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, Route101_OnFrame
@@ -24,19 +21,19 @@ Route101_EventScript_StartBirchRescue::
playbgm MUS_HELP, TRUE
msgbox Route101_Text_HelpMe, MSGBOX_DEFAULT
closemessage
- setobjectxy LOCALID_BIRCH, 0, 15
- setobjectxy LOCALID_ZIGZAGOON, 0, 16
- applymovement OBJ_EVENT_ID_PLAYER, Route101_Movement_EnterScene
- applymovement LOCALID_BIRCH, Route101_Movement_BirchRunAway1
- applymovement LOCALID_ZIGZAGOON, Route101_Movement_ZigzagoonChase1
+ setobjectxy LOCALID_ROUTE101_BIRCH, 0, 15
+ setobjectxy LOCALID_ROUTE101_ZIGZAGOON, 0, 16
+ applymovement LOCALID_PLAYER, Route101_Movement_EnterScene
+ applymovement LOCALID_ROUTE101_BIRCH, Route101_Movement_BirchRunAway1
+ applymovement LOCALID_ROUTE101_ZIGZAGOON, Route101_Movement_ZigzagoonChase1
waitmovement 0
- applymovement LOCALID_ZIGZAGOON, Route101_Movement_ZigzagoonChaseInCircles
- applymovement LOCALID_BIRCH, Route101_Movement_BirchRunInCircles
+ applymovement LOCALID_ROUTE101_ZIGZAGOON, Route101_Movement_ZigzagoonChaseInCircles
+ applymovement LOCALID_ROUTE101_BIRCH, Route101_Movement_BirchRunInCircles
waitmovement 0
- applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_ROUTE101_BIRCH, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
- applymovement LOCALID_ZIGZAGOON, Route101_Movement_ZigzagoonFaceBirch
- applymovement LOCALID_BIRCH, Route101_Movement_BirchFaceZigzagoon
+ applymovement LOCALID_ROUTE101_ZIGZAGOON, Route101_Movement_ZigzagoonFaceBirch
+ applymovement LOCALID_ROUTE101_BIRCH, Route101_Movement_BirchFaceZigzagoon
waitmovement 0
msgbox Route101_Text_PleaseHelp, MSGBOX_DEFAULT
closemessage
@@ -48,7 +45,7 @@ Route101_EventScript_PreventExitSouth::
lockall
msgbox Route101_Text_DontLeaveMe, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Route101_Movement_PreventExitSouth
+ applymovement LOCALID_PLAYER, Route101_Movement_PreventExitSouth
waitmovement 0
releaseall
end
@@ -57,7 +54,7 @@ Route101_EventScript_PreventExitWest::
lockall
msgbox Route101_Text_DontLeaveMe, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Route101_Movement_PreventExitWest
+ applymovement LOCALID_PLAYER, Route101_Movement_PreventExitWest
waitmovement 0
releaseall
end
@@ -66,7 +63,7 @@ Route101_EventScript_PreventExitNorth::
lockall
msgbox Route101_Text_DontLeaveMe, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Route101_Movement_PreventExitNorth
+ applymovement LOCALID_PLAYER, Route101_Movement_PreventExitNorth
waitmovement 0
releaseall
end
@@ -224,13 +221,13 @@ Route101_EventScript_BirchsBag::
setflag FLAG_SYS_POKEMON_GET
setflag FLAG_RESCUED_BIRCH
fadescreen FADE_TO_BLACK
- removeobject LOCALID_ZIGZAGOON
- setobjectxy OBJ_EVENT_ID_PLAYER, 6, 13
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ removeobject LOCALID_ROUTE101_ZIGZAGOON
+ setobjectxy LOCALID_PLAYER, 6, 13
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
special ChooseStarter
waitstate
- applymovement LOCALID_BIRCH, Route101_Movement_BirchApproachPlayer
+ applymovement LOCALID_ROUTE101_BIRCH, Route101_Movement_BirchApproachPlayer
waitmovement 0
msgbox Route101_Text_YouSavedMe, MSGBOX_DEFAULT
special HealPlayerParty
diff --git a/data/maps/Route103/map.json b/data/maps/Route103/map.json
index 9bc6fed67f..65e4a9014e 100644
--- a/data/maps/Route103/map.json
+++ b/data/maps/Route103/map.json
@@ -39,6 +39,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE103_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 10,
"y": 3,
diff --git a/data/maps/Route103/scripts.inc b/data/maps/Route103/scripts.inc
index 6b2acc1c7d..495f711ce3 100644
--- a/data/maps/Route103/scripts.inc
+++ b/data/maps/Route103/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_RIVAL, 2
-
Route103_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route103_OnTransition
map_script MAP_SCRIPT_ON_LOAD, Route103_OnLoad
@@ -30,11 +28,11 @@ Route103_EventScript_RivalMay::
msgbox Route103_Text_MayRoute103Pokemon, MSGBOX_DEFAULT
closemessage
playbgm MUS_ENCOUNTER_MAY, TRUE
- applymovement LOCALID_RIVAL, Common_Movement_FacePlayer
+ applymovement LOCALID_ROUTE103_RIVAL, Common_Movement_FacePlayer
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_ROUTE103_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_ROUTE103_RIVAL, Common_Movement_Delay48
waitmovement 0
msgbox Route103_Text_MayLetsBattle, MSGBOX_DEFAULT
switch VAR_STARTER_MON
@@ -47,11 +45,11 @@ Route103_EventScript_RivalBrendan::
msgbox Route103_Text_BrendanRoute103Pokemon, MSGBOX_DEFAULT
closemessage
playbgm MUS_ENCOUNTER_BRENDAN, TRUE
- applymovement LOCALID_RIVAL, Common_Movement_FacePlayer
+ applymovement LOCALID_ROUTE103_RIVAL, Common_Movement_FacePlayer
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_ROUTE103_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_ROUTE103_RIVAL, Common_Movement_Delay48
waitmovement 0
msgbox Route103_Text_BrendanLetsBattle, MSGBOX_DEFAULT
switch VAR_STARTER_MON
@@ -110,36 +108,36 @@ Route103_EventScript_RivalExit::
end
Route103_EventScript_RivalExitFacingNorth::
- applymovement OBJ_EVENT_ID_PLAYER, Route103_Movement_WatchRivalExitFacingNorth
- applymovement LOCALID_RIVAL, Route103_Movement_RivalExitFacingNorth1
+ applymovement LOCALID_PLAYER, Route103_Movement_WatchRivalExitFacingNorth
+ applymovement LOCALID_ROUTE103_RIVAL, Route103_Movement_RivalExitFacingNorth1
waitmovement 0
playse SE_LEDGE
- applymovement LOCALID_RIVAL, Route103_Movement_RivalExitFacingNorth2
+ applymovement LOCALID_ROUTE103_RIVAL, Route103_Movement_RivalExitFacingNorth2
waitmovement 0
goto Route103_EventScript_RivalEnd
end
Route103_EventScript_RivalExitFacingEastOrWest::
- applymovement OBJ_EVENT_ID_PLAYER, Route103_Movement_WatchRivalExitFacingEastOrWest
- applymovement LOCALID_RIVAL, Route103_Movement_RivalExit1
+ applymovement LOCALID_PLAYER, Route103_Movement_WatchRivalExitFacingEastOrWest
+ applymovement LOCALID_ROUTE103_RIVAL, Route103_Movement_RivalExit1
waitmovement 0
playse SE_LEDGE
- applymovement LOCALID_RIVAL, Route103_Movement_RivalExit2
+ applymovement LOCALID_ROUTE103_RIVAL, Route103_Movement_RivalExit2
waitmovement 0
goto Route103_EventScript_RivalEnd
end
Route103_EventScript_RivalExitFacingSouth::
- applymovement LOCALID_RIVAL, Route103_Movement_RivalExit1
+ applymovement LOCALID_ROUTE103_RIVAL, Route103_Movement_RivalExit1
waitmovement 0
playse SE_LEDGE
- applymovement LOCALID_RIVAL, Route103_Movement_RivalExit2
+ applymovement LOCALID_ROUTE103_RIVAL, Route103_Movement_RivalExit2
waitmovement 0
goto Route103_EventScript_RivalEnd
end
Route103_EventScript_RivalEnd::
- removeobject LOCALID_RIVAL
+ removeobject LOCALID_ROUTE103_RIVAL
setvar VAR_BIRCH_LAB_STATE, 4
clearflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_RIVAL
setflag FLAG_DEFEATED_RIVAL_ROUTE103
diff --git a/data/maps/Route104/map.json b/data/maps/Route104/map.json
index 80af8aa6d8..4a4679acd3 100644
--- a/data/maps/Route104/map.json
+++ b/data/maps/Route104/map.json
@@ -109,6 +109,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE104_BOAT",
"graphics_id": "OBJ_EVENT_GFX_MR_BRINEYS_BOAT",
"x": 12,
"y": 54,
@@ -122,6 +123,7 @@
"flag": "FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT"
},
{
+ "local_id": "LOCALID_ROUTE104_BRINEY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 12,
"y": 51,
@@ -460,6 +462,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE104_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 17,
"y": 50,
diff --git a/data/maps/Route104/scripts.inc b/data/maps/Route104/scripts.inc
index ba66981d1b..c3c8552388 100644
--- a/data/maps/Route104/scripts.inc
+++ b/data/maps/Route104/scripts.inc
@@ -1,7 +1,3 @@
-@ NOTE: Route 104's sail to Dewford script references local IDs from Dewford's map.
-@ These are labeled in DewfordTown/scripts.inc
-.set LOCALID_RIVAL, 34
-
Route104_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, Route104_OnFrame
map_script MAP_SCRIPT_ON_TRANSITION, Route104_OnTransition
@@ -36,7 +32,7 @@ Route104_EventScript_TrySetRivalPos::
goto_if_ge VAR_BOARD_BRINEY_BOAT_STATE, 1, Route104_EventScript_DontSetRivalPos
goto_if_set FLAG_MET_RIVAL_RUSTBORO, Route104_EventScript_DontSetRivalPos
goto_if_unset FLAG_REGISTER_RIVAL_POKENAV, Route104_EventScript_DontSetRivalPos
- setobjectxyperm LOCALID_RIVAL, 17, 52
+ setobjectxyperm LOCALID_ROUTE104_RIVAL, 17, 52
return
Route104_EventScript_DontSetRivalPos::
@@ -45,7 +41,7 @@ Route104_EventScript_DontSetRivalPos::
Route104_EventScript_Rival::
lockall
setvar VAR_0x8008, 1
- applymovement LOCALID_RIVAL, Common_Movement_FacePlayer
+ applymovement LOCALID_ROUTE104_RIVAL, Common_Movement_FacePlayer
waitmovement 0
goto Route104_EventScript_RivalEncounter
@@ -54,22 +50,22 @@ Route104_EventScript_RivalTrigger::
setflag FLAG_HIDE_RUSTBORO_CITY_RIVAL
setvar VAR_RUSTBORO_CITY_STATE, 8
setvar VAR_ROUTE104_STATE, 2
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 10
- addobject LOCALID_RIVAL
+ addobject LOCALID_ROUTE104_RIVAL
clearflag FLAG_HIDE_ROUTE_104_RIVAL
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_PlayerBackUp
+ applymovement LOCALID_PLAYER, Route104_Movement_PlayerBackUp
waitmovement 0
- applymovement LOCALID_RIVAL, Route104_Movement_RivalExitBrineysCottage
+ applymovement LOCALID_ROUTE104_RIVAL, Route104_Movement_RivalExitBrineysCottage
waitmovement 0
delay 20
setvar VAR_0x8008, 0
call RustboroCity_EventScript_PlayRivalMusic
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_ROUTE104_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_ROUTE104_RIVAL, Common_Movement_Delay48
waitmovement 0
goto Route104_EventScript_RivalEncounter
@@ -107,14 +103,14 @@ Route104_EventScript_MayEncounter::
closemessage
delay 30
setflag FLAG_ENABLE_RIVAL_MATCH_CALL
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_PlayerFaceRival
- applymovement LOCALID_RIVAL, Route104_Movement_RivalWalkSlowLeft
+ applymovement LOCALID_PLAYER, Route104_Movement_PlayerFaceRival
+ applymovement LOCALID_ROUTE104_RIVAL, Route104_Movement_RivalWalkSlowLeft
msgbox Route104_Text_MayHowsYourPokedex, MSGBOX_DEFAULT
closemessage
waitmovement 0
- applymovement LOCALID_RIVAL, Route104_Movement_RivalApproachPlayer
+ applymovement LOCALID_ROUTE104_RIVAL, Route104_Movement_RivalApproachPlayer
waitmovement 0
- copyobjectxytoperm LOCALID_RIVAL
+ copyobjectxytoperm LOCALID_ROUTE104_RIVAL
msgbox Route104_Text_MayMinesDecentLetsBattle, MSGBOX_YESNO
goto_if_eq VAR_RESULT, YES, Route104_EventScript_BattleMay
msgbox Route104_Text_MayHaventRaisedPokemon, MSGBOX_DEFAULT
@@ -193,14 +189,14 @@ Route104_EventScript_BrendanEncounter::
closemessage
delay 30
setflag FLAG_ENABLE_RIVAL_MATCH_CALL
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_PlayerFaceRival
- applymovement LOCALID_RIVAL, Route104_Movement_RivalWalkSlowLeft
+ applymovement LOCALID_PLAYER, Route104_Movement_PlayerFaceRival
+ applymovement LOCALID_ROUTE104_RIVAL, Route104_Movement_RivalWalkSlowLeft
msgbox Route104_Text_BrendanHowsYourPokedex, MSGBOX_DEFAULT
closemessage
waitmovement 0
- applymovement LOCALID_RIVAL, Route104_Movement_RivalApproachPlayer
+ applymovement LOCALID_ROUTE104_RIVAL, Route104_Movement_RivalApproachPlayer
waitmovement 0
- copyobjectxytoperm LOCALID_RIVAL
+ copyobjectxytoperm LOCALID_ROUTE104_RIVAL
msgbox Route104_Text_BrendanDoingGreatLetsBattle, MSGBOX_YESNO
goto_if_eq VAR_RESULT, YES, Route104_EventScript_BattleBrendan
msgbox Route104_Text_BrendanNoConfidence, MSGBOX_DEFAULT
@@ -347,28 +343,28 @@ Route104_EventScript_Girl2::
end
Route104_EventScript_SailToDewford::
- setobjectsubpriority LOCALID_BRINEY_R104, MAP_ROUTE104, 0
- setobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE104, 0
- applymovement LOCALID_BRINEY_R104, Route104_Movement_BrineyBoardBoat
+ setobjectsubpriority LOCALID_ROUTE104_BRINEY, MAP_ROUTE104, 0
+ setobjectsubpriority LOCALID_PLAYER, MAP_ROUTE104, 0
+ applymovement LOCALID_ROUTE104_BRINEY, Route104_Movement_BrineyBoardBoat
waitmovement 0
- removeobject LOCALID_BRINEY_R104
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_PlayerBoardBoat
+ removeobject LOCALID_ROUTE104_BRINEY
+ applymovement LOCALID_PLAYER, Route104_Movement_PlayerBoardBoat
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_ROUTE104
+ hideobjectat LOCALID_PLAYER, MAP_ROUTE104
call Common_EventScript_PlayBrineysBoatMusic
goto_if_set FLAG_ENABLE_NORMAN_MATCH_CALL, Route104_EventScript_SailToDewfordNoCall
goto_if_unset FLAG_ENABLE_NORMAN_MATCH_CALL, Route104_EventScript_SailToDewfordDadCalls
end
Route104_EventScript_SailToDewfordNoCall::
- applymovement LOCALID_BOAT_R104, Route104_Movement_SailToDewford
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_SailToDewford
+ applymovement LOCALID_ROUTE104_BOAT, Route104_Movement_SailToDewford
+ applymovement LOCALID_PLAYER, Route104_Movement_SailToDewford
waitmovement 0
goto Route104_EventScript_ArriveInDewford
Route104_EventScript_SailToDewfordDadCalls::
- applymovement LOCALID_BOAT_R104, Route104_Movement_SailToDewfordBeforeDadCalls
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_SailToDewfordBeforeDadCalls
+ applymovement LOCALID_ROUTE104_BOAT, Route104_Movement_SailToDewfordBeforeDadCalls
+ applymovement LOCALID_PLAYER, Route104_Movement_SailToDewfordBeforeDadCalls
waitmovement 0
pokenavcall Route104_Text_DadPokenavCall
waitmessage
@@ -379,35 +375,35 @@ Route104_EventScript_SailToDewfordDadCalls::
closemessage
delay 30
setflag FLAG_ENABLE_NORMAN_MATCH_CALL
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_SailToDewfordAfterDadCalls
- applymovement LOCALID_BOAT_R104, Route104_Movement_SailToDewfordAfterDadCalls, MAP_ROUTE104
- waitmovement LOCALID_BOAT_R104, MAP_ROUTE104
+ applymovement LOCALID_PLAYER, Route104_Movement_SailToDewfordAfterDadCalls
+ applymovement LOCALID_ROUTE104_BOAT, Route104_Movement_SailToDewfordAfterDadCalls, MAP_ROUTE104
+ waitmovement LOCALID_ROUTE104_BOAT, MAP_ROUTE104
waitmovement 0
goto Route104_EventScript_ArriveInDewford
Route104_EventScript_ArriveInDewford::
delay 50
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_PlayerExitBoat
+ applymovement LOCALID_PLAYER, Route104_Movement_PlayerExitBoat
waitmovement 0
call Common_EventScript_StopBrineysBoatMusic
- showobjectat OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN
- applymovement OBJ_EVENT_ID_PLAYER, Route104_Movement_PlayerMoveForBriney
+ showobjectat LOCALID_PLAYER, MAP_DEWFORD_TOWN
+ applymovement LOCALID_PLAYER, Route104_Movement_PlayerMoveForBriney
waitmovement 0
- setobjectxyperm LOCALID_BRINEY_DEWFORD, 12, 8
- addobject LOCALID_BRINEY_DEWFORD
- setobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0
+ setobjectxyperm LOCALID_DEWFORD_BRINEY, 12, 8
+ addobject LOCALID_DEWFORD_BRINEY
+ setobjectsubpriority LOCALID_DEWFORD_BRINEY, MAP_DEWFORD_TOWN, 0
clearflag FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN
- applymovement LOCALID_BRINEY_DEWFORD, Route104_Movement_BrineyExitBoat
+ applymovement LOCALID_DEWFORD_BRINEY, Route104_Movement_BrineyExitBoat
waitmovement 0
- addobject LOCALID_BOAT_DEWFORD
+ addobject LOCALID_DEWFORD_BOAT
clearflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN
call Common_EventScript_StopBrineysBoatMusic
setflag FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT
- hideobjectat LOCALID_BOAT_R104, MAP_ROUTE104
+ hideobjectat LOCALID_ROUTE104_BOAT, MAP_ROUTE104
copyvar VAR_BRINEY_LOCATION, VAR_0x8008
- resetobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE104
- resetobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN
- copyobjectxytoperm LOCALID_BRINEY_DEWFORD
+ resetobjectsubpriority LOCALID_PLAYER, MAP_ROUTE104
+ resetobjectsubpriority LOCALID_DEWFORD_BRINEY, MAP_DEWFORD_TOWN
+ copyobjectxytoperm LOCALID_DEWFORD_BRINEY
setvar VAR_BOARD_BRINEY_BOAT_STATE, 0
goto_if_unset FLAG_DELIVERED_STEVEN_LETTER, Route104_EventScript_DeliverLetterReminder
goto_if_set FLAG_DELIVERED_STEVEN_LETTER, Route104_EventScript_LandedInDewford
diff --git a/data/maps/Route104_MrBrineysHouse/map.json b/data/maps/Route104_MrBrineysHouse/map.json
index 6424965291..91420bd746 100644
--- a/data/maps/Route104_MrBrineysHouse/map.json
+++ b/data/maps/Route104_MrBrineysHouse/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_BRINEYS_HOUSE_BRINEY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 5,
"y": 3,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_BRINEYS_HOUSE_MR_BRINEY"
},
{
+ "local_id": "LOCALID_BRINEYS_HOUSE_PEEKO",
"graphics_id": "OBJ_EVENT_GFX_WINGULL",
"x": 6,
"y": 3,
diff --git a/data/maps/Route104_MrBrineysHouse/scripts.inc b/data/maps/Route104_MrBrineysHouse/scripts.inc
index 73e6010b33..9d60778d17 100644
--- a/data/maps/Route104_MrBrineysHouse/scripts.inc
+++ b/data/maps/Route104_MrBrineysHouse/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_BRINEY, 1
-.set LOCALID_PEEKO, 2
-
Route104_MrBrineysHouse_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route104_MrBrineysHouse_OnTransition
end_map_scripts
@@ -16,10 +13,10 @@ Route104_MrBrineysHouse_EventScript_HideRustboroRival::
return
Route104_MrBrineysHouse_EventScript_SetBrineyPeekoPos::
- setobjectxyperm LOCALID_BRINEY, 9, 3
- setobjectmovementtype LOCALID_BRINEY, MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT
- setobjectxyperm LOCALID_PEEKO, 9, 6
- setobjectmovementtype LOCALID_PEEKO, MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN
+ setobjectxyperm LOCALID_BRINEYS_HOUSE_BRINEY, 9, 3
+ setobjectmovementtype LOCALID_BRINEYS_HOUSE_BRINEY, MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT
+ setobjectxyperm LOCALID_BRINEYS_HOUSE_PEEKO, 9, 6
+ setobjectmovementtype LOCALID_BRINEYS_HOUSE_PEEKO, MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN
return
Route104_MrBrineysHouse_EventScript_Briney::
diff --git a/data/maps/Route104_PrettyPetalFlowerShop/map.json b/data/maps/Route104_PrettyPetalFlowerShop/map.json
index 27e18ddc71..9f81453c60 100644
--- a/data/maps/Route104_PrettyPetalFlowerShop/map.json
+++ b/data/maps/Route104_PrettyPetalFlowerShop/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FLOWER_SHOP_OWNER",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_2",
"x": 0,
"y": 3,
diff --git a/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc b/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc
index 4b59177b42..ea88d663f0 100644
--- a/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc
+++ b/data/maps/Route104_PrettyPetalFlowerShop/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_OWNER, 1
-
Route104_PrettyPetalFlowerShop_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route104_PrettyPetalFlowerShop_OnTransition
end_map_scripts
@@ -12,7 +10,7 @@ Route104_PrettyPetalFlowerShop_OnTransition:
end
Route104_PrettyPetalFlowerShop_EventScript_MoveShopOwner::
- setobjectxyperm LOCALID_OWNER, 4, 6
+ setobjectxyperm LOCALID_FLOWER_SHOP_OWNER, 4, 6
end
Route104_PrettyPetalFlowerShop_EventScript_ShopOwner::
@@ -59,9 +57,7 @@ Route104_PrettyPetalFlowerShop_Pokemart_Plants:
.2byte DECOR_COLORFUL_PLANT
.2byte DECOR_BIG_PLANT
.2byte DECOR_GORGEOUS_PLANT
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
Route104_PrettyPetalFlowerShop_EventScript_WailmerPailGirl::
lock
diff --git a/data/maps/Route109/map.json b/data/maps/Route109/map.json
index 49357f0a0e..be5fa5a6b2 100644
--- a/data/maps/Route109/map.json
+++ b/data/maps/Route109/map.json
@@ -26,6 +26,7 @@
],
"object_events": [
{
+ "local_id": "LOCALID_ROUTE109_BOAT",
"graphics_id": "OBJ_EVENT_GFX_MR_BRINEYS_BOAT",
"x": 21,
"y": 26,
@@ -39,6 +40,7 @@
"flag": "FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT"
},
{
+ "local_id": "LOCALID_ROUTE109_BRINEY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 21,
"y": 24,
diff --git a/data/maps/Route109/scripts.inc b/data/maps/Route109/scripts.inc
index 76875b65dc..f292ded32a 100644
--- a/data/maps/Route109/scripts.inc
+++ b/data/maps/Route109/scripts.inc
@@ -6,11 +6,11 @@ Route109_MapScripts::
Route109_EventScript_StartDepartForDewford::
call EventScript_BackupMrBrineyLocation
- setobjectsubpriority LOCALID_BRINEY_R109, MAP_ROUTE109, 0
- setobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE109, 0
- applymovement LOCALID_BRINEY_R109, Route109_Movement_BrineyEnterBoat
+ setobjectsubpriority LOCALID_ROUTE109_BRINEY, MAP_ROUTE109, 0
+ setobjectsubpriority LOCALID_PLAYER, MAP_ROUTE109, 0
+ applymovement LOCALID_ROUTE109_BRINEY, Route109_Movement_BrineyEnterBoat
waitmovement 0
- removeobject LOCALID_BRINEY_R109
+ removeobject LOCALID_ROUTE109_BRINEY
switch VAR_FACING
case DIR_SOUTH, Route109_EventScript_EnterBoatSouth
case DIR_WEST, Route109_EventScript_EnterBoatWest
@@ -18,50 +18,50 @@ Route109_EventScript_StartDepartForDewford::
end
Route109_EventScript_EnterBoatSouth::
- applymovement OBJ_EVENT_ID_PLAYER, Route109_Movement_PlayerEnterBoatSouth
+ applymovement LOCALID_PLAYER, Route109_Movement_PlayerEnterBoatSouth
waitmovement 0
goto Route109_EventScript_DoSailToDewford
end
Route109_EventScript_EnterBoatEast::
- applymovement OBJ_EVENT_ID_PLAYER, Route109_Movement_PlayerEnterBoatEast
+ applymovement LOCALID_PLAYER, Route109_Movement_PlayerEnterBoatEast
waitmovement 0
goto Route109_EventScript_DoSailToDewford
end
Route109_EventScript_EnterBoatWest::
- applymovement OBJ_EVENT_ID_PLAYER, Route109_Movement_PlayerEnterBoatWest
+ applymovement LOCALID_PLAYER, Route109_Movement_PlayerEnterBoatWest
waitmovement 0
goto Route109_EventScript_DoSailToDewford
end
Route109_EventScript_DoSailToDewford::
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_ROUTE109
+ hideobjectat LOCALID_PLAYER, MAP_ROUTE109
call Common_EventScript_PlayBrineysBoatMusic
- applymovement LOCALID_BOAT_R109, Route109_Movement_SailToDewford
- applymovement OBJ_EVENT_ID_PLAYER, Route109_Movement_SailToDewford
+ applymovement LOCALID_ROUTE109_BOAT, Route109_Movement_SailToDewford
+ applymovement LOCALID_PLAYER, Route109_Movement_SailToDewford
waitmovement 0
delay 50
call Common_EventScript_StopBrineysBoatMusic
- showobjectat OBJ_EVENT_ID_PLAYER, MAP_DEWFORD_TOWN
- applymovement OBJ_EVENT_ID_PLAYER, Route109_Movement_PlayerExitBoat
+ showobjectat LOCALID_PLAYER, MAP_DEWFORD_TOWN
+ applymovement LOCALID_PLAYER, Route109_Movement_PlayerExitBoat
waitmovement 0
- addobject LOCALID_BOAT_DEWFORD
+ addobject LOCALID_DEWFORD_BOAT
clearflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN
- setobjectxyperm LOCALID_BRINEY_DEWFORD, 12, 8
- addobject LOCALID_BRINEY_DEWFORD
- setobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN, 0
- applymovement LOCALID_BRINEY_DEWFORD, Route109_Movement_BrineyExitBoat
+ setobjectxyperm LOCALID_DEWFORD_BRINEY, 12, 8
+ addobject LOCALID_DEWFORD_BRINEY
+ setobjectsubpriority LOCALID_DEWFORD_BRINEY, MAP_DEWFORD_TOWN, 0
+ applymovement LOCALID_DEWFORD_BRINEY, Route109_Movement_BrineyExitBoat
waitmovement 0
clearflag FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN
setflag FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT
- hideobjectat LOCALID_BOAT_R109, MAP_ROUTE109
+ hideobjectat LOCALID_ROUTE109_BOAT, MAP_ROUTE109
msgbox DewfordTown_Text_BrineyLandedInDewford, MSGBOX_DEFAULT
closemessage
copyvar VAR_BRINEY_LOCATION, VAR_0x8008
- resetobjectsubpriority OBJ_EVENT_ID_PLAYER, MAP_ROUTE109
- resetobjectsubpriority LOCALID_BRINEY_DEWFORD, MAP_DEWFORD_TOWN
- copyobjectxytoperm LOCALID_BRINEY_DEWFORD
+ resetobjectsubpriority LOCALID_PLAYER, MAP_ROUTE109
+ resetobjectsubpriority LOCALID_DEWFORD_BRINEY, MAP_DEWFORD_TOWN
+ copyobjectxytoperm LOCALID_DEWFORD_BRINEY
release
end
diff --git a/data/maps/Route110/map.json b/data/maps/Route110/map.json
index 2b52164113..989229f8c9 100644
--- a/data/maps/Route110/map.json
+++ b/data/maps/Route110/map.json
@@ -291,6 +291,7 @@
"flag": "FLAG_ITEM_ROUTE_110_RARE_CANDY"
},
{
+ "local_id": "LOCALID_CHALLENGE_BIKER",
"graphics_id": "OBJ_EVENT_GFX_CYCLING_TRIATHLETE_M",
"x": 27,
"y": 92,
@@ -382,6 +383,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE110_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 34,
"y": 54,
@@ -395,6 +397,7 @@
"flag": "FLAG_HIDE_ROUTE_110_RIVAL"
},
{
+ "local_id": "LOCALID_ROUTE110_RIVAL_ON_BIKE",
"graphics_id": "OBJ_EVENT_GFX_VAR_3",
"x": 34,
"y": 54,
@@ -486,6 +489,7 @@
"flag": "FLAG_ITEM_ROUTE_110_ELIXIR"
},
{
+ "local_id": "LOCALID_ROUTE110_BIRCH",
"graphics_id": "OBJ_EVENT_GFX_PROF_BIRCH",
"x": 9,
"y": 79,
@@ -518,28 +522,28 @@
"x": 15,
"y": 16,
"elevation": 0,
- "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE",
+ "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE",
"dest_warp_id": "0"
},
{
"x": 18,
"y": 16,
"elevation": 0,
- "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE",
+ "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE",
"dest_warp_id": "2"
},
{
"x": 16,
"y": 88,
"elevation": 0,
- "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE",
+ "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE",
"dest_warp_id": "0"
},
{
"x": 19,
"y": 88,
"elevation": 0,
- "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE",
+ "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE",
"dest_warp_id": "2"
}
],
diff --git a/data/maps/Route110/scripts.inc b/data/maps/Route110/scripts.inc
index 152ffa13ce..add7cb9f62 100644
--- a/data/maps/Route110/scripts.inc
+++ b/data/maps/Route110/scripts.inc
@@ -1,8 +1,3 @@
-.set LOCALID_CHALLENGE_BIKER, 21
-.set LOCALID_RIVAL, 28
-.set LOCALID_RIVAL_ON_BIKE, 29
-.set LOCALID_BIRCH, 36
-
Route110_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, Route110_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, Route110_OnTransition
@@ -378,11 +373,11 @@ Route110_EventScript_RivalScene::
checkplayergender
call_if_eq VAR_RESULT, MALE, Route110_EventScript_PlayMayMusic
call_if_eq VAR_RESULT, FEMALE, Route110_EventScript_PlayBrendanMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_ROUTE110_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_ROUTE110_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_ROUTE110_RIVAL, Common_Movement_Delay48
waitmovement 0
delay 30
call_if_eq VAR_0x8008, 1, Route110_EventScript_RivalApproachPlayer1
@@ -471,15 +466,15 @@ Route110_EventScript_RivalExit::
call_if_eq VAR_0x8008, 1, Route110_EventScript_MoveRival1
call_if_eq VAR_0x8008, 2, Route110_EventScript_MoveRival2
call_if_eq VAR_0x8008, 3, Route110_EventScript_MoveRival3
- setobjectmovementtype LOCALID_RIVAL, MOVEMENT_TYPE_FACE_RIGHT
- setobjectmovementtype LOCALID_RIVAL_ON_BIKE, MOVEMENT_TYPE_FACE_RIGHT
- removeobject LOCALID_RIVAL
- addobject LOCALID_RIVAL_ON_BIKE
+ setobjectmovementtype LOCALID_ROUTE110_RIVAL, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectmovementtype LOCALID_ROUTE110_RIVAL_ON_BIKE, MOVEMENT_TYPE_FACE_RIGHT
+ removeobject LOCALID_ROUTE110_RIVAL
+ addobject LOCALID_ROUTE110_RIVAL_ON_BIKE
delay 45
call_if_eq VAR_0x8008, 1, Route110_EventScript_RivalExit1
call_if_eq VAR_0x8008, 2, Route110_EventScript_RivalExit2
call_if_eq VAR_0x8008, 3, Route110_EventScript_RivalExit3
- removeobject LOCALID_RIVAL_ON_BIKE
+ removeobject LOCALID_ROUTE110_RIVAL_ON_BIKE
setvar VAR_ROUTE110_STATE, 1
savebgm MUS_DUMMY
fadedefaultbgm
@@ -487,45 +482,45 @@ Route110_EventScript_RivalExit::
end
Route110_EventScript_RivalApproachPlayer1::
- applymovement LOCALID_RIVAL, Route110_Movement_RivalApproachPlayer1
+ applymovement LOCALID_ROUTE110_RIVAL, Route110_Movement_RivalApproachPlayer1
waitmovement 0
return
Route110_EventScript_RivalApproachPlayer2::
- applymovement LOCALID_RIVAL, Route110_Movement_RivalApproachPlayer2
+ applymovement LOCALID_ROUTE110_RIVAL, Route110_Movement_RivalApproachPlayer2
waitmovement 0
return
Route110_EventScript_RivalApproachPlayer3::
- applymovement LOCALID_RIVAL, Route110_Movement_RivalApproachPlayer3
+ applymovement LOCALID_ROUTE110_RIVAL, Route110_Movement_RivalApproachPlayer3
waitmovement 0
return
Route110_EventScript_RivalExit1::
- applymovement LOCALID_RIVAL_ON_BIKE, Route110_Movement_RivalExit1
+ applymovement LOCALID_ROUTE110_RIVAL_ON_BIKE, Route110_Movement_RivalExit1
waitmovement 0
return
Route110_EventScript_RivalExit2::
- applymovement LOCALID_RIVAL_ON_BIKE, Route110_Movement_RivalExit2
+ applymovement LOCALID_ROUTE110_RIVAL_ON_BIKE, Route110_Movement_RivalExit2
waitmovement 0
return
Route110_EventScript_RivalExit3::
- applymovement LOCALID_RIVAL_ON_BIKE, Route110_Movement_RivalExit3
+ applymovement LOCALID_ROUTE110_RIVAL_ON_BIKE, Route110_Movement_RivalExit3
waitmovement 0
return
Route110_EventScript_MoveRival1::
- setobjectxyperm LOCALID_RIVAL_ON_BIKE, 33, 55
+ setobjectxyperm LOCALID_ROUTE110_RIVAL_ON_BIKE, 33, 55
return
Route110_EventScript_MoveRival2::
- setobjectxyperm LOCALID_RIVAL_ON_BIKE, 34, 55
+ setobjectxyperm LOCALID_ROUTE110_RIVAL_ON_BIKE, 34, 55
return
Route110_EventScript_MoveRival3::
- setobjectxyperm LOCALID_RIVAL_ON_BIKE, 35, 55
+ setobjectxyperm LOCALID_ROUTE110_RIVAL_ON_BIKE, 35, 55
return
Route110_Movement_RivalApproachPlayer1:
@@ -596,13 +591,13 @@ Route110_EventScript_BirchScene4::
goto Route110_EventScript_BirchScene
Route110_EventScript_BirchScene::
- addobject LOCALID_BIRCH
- applymovement LOCALID_BIRCH, Route110_Movement_BirchEntrance
+ addobject LOCALID_ROUTE110_BIRCH
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchEntrance
waitmovement 0
playse SE_PIN
- applymovement LOCALID_BIRCH, Common_Movement_ExclamationMark
+ applymovement LOCALID_ROUTE110_BIRCH, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_BIRCH, Common_Movement_Delay48
+ applymovement LOCALID_ROUTE110_BIRCH, Common_Movement_Delay48
waitmovement 0
call_if_eq VAR_0x8008, 1, Route110_EventScript_BirchApproachPlayer1
call_if_eq VAR_0x8008, 2, Route110_EventScript_BirchApproachPlayer2
@@ -611,13 +606,13 @@ Route110_EventScript_BirchScene::
msgbox Route110_Text_ImagineSeeingYouHere, MSGBOX_DEFAULT
closemessage
delay 20
- applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_ROUTE110_BIRCH, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
delay 10
- applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_ROUTE110_BIRCH, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 20
- applymovement LOCALID_BIRCH, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_ROUTE110_BIRCH, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
msgbox Route110_Text_HeardYouInstallMatchCall, MSGBOX_DEFAULT
@@ -635,48 +630,48 @@ Route110_EventScript_BirchScene::
call_if_eq VAR_0x8008, 2, Route110_EventScript_BirchExit2
call_if_eq VAR_0x8008, 3, Route110_EventScript_BirchExit3
call_if_eq VAR_0x8008, 4, Route110_EventScript_BirchExit4
- removeobject LOCALID_BIRCH
+ removeobject LOCALID_ROUTE110_BIRCH
setvar VAR_REGISTER_BIRCH_STATE, 2
releaseall
end
Route110_EventScript_BirchApproachPlayer1::
- applymovement LOCALID_BIRCH, Route110_Movement_BirchApproachPlayer1
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchApproachPlayer1
waitmovement 0
return
Route110_EventScript_BirchApproachPlayer2::
- applymovement LOCALID_BIRCH, Route110_Movement_BirchApproachPlayer2
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchApproachPlayer2
waitmovement 0
return
Route110_EventScript_BirchApproachPlayer3::
- applymovement LOCALID_BIRCH, Route110_Movement_BirchApproachPlayer3
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchApproachPlayer3
waitmovement 0
return
Route110_EventScript_BirchApproachPlayer4::
- applymovement LOCALID_BIRCH, Route110_Movement_BirchApproachPlayer4
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchApproachPlayer4
waitmovement 0
return
Route110_EventScript_BirchExit1::
- applymovement LOCALID_BIRCH, Route110_Movement_BirchExit1
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchExit1
waitmovement 0
return
Route110_EventScript_BirchExit2::
- applymovement LOCALID_BIRCH, Route110_Movement_BirchExit2
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchExit2
waitmovement 0
return
Route110_EventScript_BirchExit3::
- applymovement LOCALID_BIRCH, Route110_Movement_BirchExit3
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchExit3
waitmovement 0
return
Route110_EventScript_BirchExit4::
- applymovement LOCALID_BIRCH, Route110_Movement_BirchExit4
+ applymovement LOCALID_ROUTE110_BIRCH, Route110_Movement_BirchExit4
waitmovement 0
return
diff --git a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/map.json b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/map.json
index 6f3c6c75c5..88cbf1cc88 100644
--- a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/map.json
+++ b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/map.json
@@ -34,28 +34,28 @@
"y": 5,
"elevation": 0,
"dest_map": "MAP_ROUTE110",
- "dest_warp_id": "4"
+ "dest_warp_id": "2"
},
{
"x": 2,
"y": 5,
"elevation": 0,
"dest_map": "MAP_ROUTE110",
- "dest_warp_id": "4"
+ "dest_warp_id": "2"
},
{
"x": 12,
"y": 5,
"elevation": 0,
"dest_map": "MAP_ROUTE110",
- "dest_warp_id": "5"
+ "dest_warp_id": "3"
},
{
"x": 13,
"y": 5,
"elevation": 0,
"dest_map": "MAP_ROUTE110",
- "dest_warp_id": "5"
+ "dest_warp_id": "3"
}
],
"coord_events": [
diff --git a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc
index eeffe54d82..cc872413b8 100644
--- a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc
+++ b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/scripts.inc
@@ -1,6 +1,16 @@
Route110_SeasideCyclingRoadNorthEntrance_MapScripts::
+ map_script MAP_SCRIPT_ON_TRANSITION, Route110_SeasideCyclingRoadNorthEntrance_OnTransition
end_map_scripts
+Route110_SeasideCyclingRoadNorthEntrance_OnTransition:
+ call_if_eq VAR_CYCLING_CHALLENGE_STATE, 3, Route110_SeasideCyclingRoadNorthEntrance_EventScript_RestartChallenge
+ call_if_eq VAR_CYCLING_CHALLENGE_STATE, 2, Route110_SeasideCyclingRoadNorthEntrance_EventScript_RestartChallenge
+ end
+
+Route110_SeasideCyclingRoadNorthEntrance_EventScript_RestartChallenge::
+ setvar VAR_CYCLING_CHALLENGE_STATE, 1
+ return
+
Route110_SeasideCyclingRoadNorthEntrance_EventScript_Clerk::
lock
faceplayer
@@ -11,16 +21,21 @@ Route110_SeasideCyclingRoadNorthEntrance_EventScript_Clerk::
Route110_SeasideCyclingRoadNorthEntrance_EventScript_BikeCheck::
lockall
specialvar VAR_RESULT, GetPlayerAvatarBike
+ call_if_eq VAR_RESULT, 2, Route110_SeasideCyclingRoadNorthEntrance_EventScript_OnMachBike
goto_if_eq VAR_RESULT, 0, Route110_SeasideCyclingRoadNorthEntrance_EventScript_NoBike
setflag FLAG_SYS_CYCLING_ROAD
setvar VAR_TEMP_1, 1
releaseall
end
+Route110_SeasideCyclingRoadNorthEntrance_EventScript_OnMachBike::
+ setvar VAR_CYCLING_CHALLENGE_STATE, 1
+ return
+
Route110_SeasideCyclingRoadNorthEntrance_EventScript_NoBike::
msgbox Route110_SeasideCyclingRoadNorthEntrance_Text_TooDangerousToWalk, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Route110_SeasideCyclingRoadNorthEntrance_Movement_PushPlayerBackFromCounter
+ applymovement LOCALID_PLAYER, Route110_SeasideCyclingRoadNorthEntrance_Movement_PushPlayerBackFromCounter
waitmovement 0
releaseall
end
@@ -31,6 +46,7 @@ Route110_SeasideCyclingRoadNorthEntrance_Movement_PushPlayerBackFromCounter:
Route110_SeasideCyclingRoadNorthEntrance_EventScript_ClearCyclingRoad::
lockall
+ setvar VAR_CYCLING_CHALLENGE_STATE, 0
clearflag FLAG_SYS_CYCLING_ROAD
setvar VAR_TEMP_1, 0
releaseall
diff --git a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.json b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.json
index 59e3e5be65..943984075d 100644
--- a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.json
+++ b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.json
@@ -34,28 +34,28 @@
"y": 5,
"elevation": 0,
"dest_map": "MAP_ROUTE110",
- "dest_warp_id": "2"
+ "dest_warp_id": "4"
},
{
"x": 2,
"y": 5,
"elevation": 0,
"dest_map": "MAP_ROUTE110",
- "dest_warp_id": "2"
+ "dest_warp_id": "4"
},
{
"x": 12,
"y": 5,
"elevation": 0,
"dest_map": "MAP_ROUTE110",
- "dest_warp_id": "3"
+ "dest_warp_id": "5"
},
{
"x": 13,
"y": 5,
"elevation": 0,
"dest_map": "MAP_ROUTE110",
- "dest_warp_id": "3"
+ "dest_warp_id": "5"
}
],
"coord_events": [
diff --git a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc
index 2c627ded69..fc035fdd9d 100644
--- a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc
+++ b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/scripts.inc
@@ -1,16 +1,6 @@
Route110_SeasideCyclingRoadSouthEntrance_MapScripts::
- map_script MAP_SCRIPT_ON_TRANSITION, Route110_SeasideCyclingRoadSouthEntrance_OnTransition
end_map_scripts
-Route110_SeasideCyclingRoadSouthEntrance_OnTransition:
- call_if_eq VAR_CYCLING_CHALLENGE_STATE, 3, Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge
- call_if_eq VAR_CYCLING_CHALLENGE_STATE, 2, Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge
- end
-
-Route110_SeasideCyclingRoadSouthEntrance_EventScript_RestartChallenge::
- setvar VAR_CYCLING_CHALLENGE_STATE, 1
- return
-
Route110_SeasideCyclingRoadSouthEntrance_EventScript_Clerk::
lock
faceplayer
@@ -21,21 +11,16 @@ Route110_SeasideCyclingRoadSouthEntrance_EventScript_Clerk::
Route110_SeasideCyclingRoadSouthEntrance_EventScript_BikeCheck::
lockall
specialvar VAR_RESULT, GetPlayerAvatarBike
- call_if_eq VAR_RESULT, 2, Route110_SeasideCyclingRoadSouthEntrance_EventScript_OnMachBike
goto_if_eq VAR_RESULT, 0, Route110_SeasideCyclingRoadSouthEntrance_EventScript_NoBike
setflag FLAG_SYS_CYCLING_ROAD
setvar VAR_TEMP_1, 1
releaseall
end
-Route110_SeasideCyclingRoadSouthEntrance_EventScript_OnMachBike::
- setvar VAR_CYCLING_CHALLENGE_STATE, 1
- return
-
Route110_SeasideCyclingRoadSouthEntrance_EventScript_NoBike::
msgbox Route110_SeasideCyclingRoadSouthEntrance_Text_TooDangerousToWalk, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Route110_SeasideCyclingRoadSouthEntrance_Movement_PushPlayerBackFromCounter
+ applymovement LOCALID_PLAYER, Route110_SeasideCyclingRoadSouthEntrance_Movement_PushPlayerBackFromCounter
waitmovement 0
releaseall
end
@@ -46,7 +31,6 @@ Route110_SeasideCyclingRoadSouthEntrance_Movement_PushPlayerBackFromCounter:
Route110_SeasideCyclingRoadSouthEntrance_EventScript_ClearCyclingRoad::
lockall
- setvar VAR_CYCLING_CHALLENGE_STATE, 0
clearflag FLAG_SYS_CYCLING_ROAD
setvar VAR_TEMP_1, 0
releaseall
diff --git a/data/maps/Route110_TrickHouseEnd/map.json b/data/maps/Route110_TrickHouseEnd/map.json
index 90d2285496..2a44e297c4 100644
--- a/data/maps/Route110_TrickHouseEnd/map.json
+++ b/data/maps/Route110_TrickHouseEnd/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TRICK_MASTER_END",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 4,
"y": 5,
diff --git a/data/maps/Route110_TrickHouseEnd/scripts.inc b/data/maps/Route110_TrickHouseEnd/scripts.inc
index 0bd743a1cf..1aa1344fb9 100644
--- a/data/maps/Route110_TrickHouseEnd/scripts.inc
+++ b/data/maps/Route110_TrickHouseEnd/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_TRICK_MASTER, 1
-
Route110_TrickHouseEnd_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, Route110_TrickHouseEnd_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHouseEnd_OnTransition
@@ -22,9 +20,9 @@ Route110_TrickHouseEnd_OnWarp:
end_map_script_table
Route110_TrickHouseEnd_EventScript_SetTrickMasterPos::
- addobject LOCALID_TRICK_MASTER
- showobjectat LOCALID_TRICK_MASTER, MAP_ROUTE110_TRICK_HOUSE_END
- turnobject LOCALID_TRICK_MASTER, DIR_EAST
+ addobject LOCALID_TRICK_MASTER_END
+ showobjectat LOCALID_TRICK_MASTER_END, MAP_ROUTE110_TRICK_HOUSE_END
+ turnobject LOCALID_TRICK_MASTER_END, DIR_EAST
end
Route110_TrickHouseEnd_OnFrame:
@@ -151,7 +149,7 @@ Route110_TrickHouseEnd_EventScript_CompletedPuzzle8::
delay 30
msgbox Route110_TrickHouseEnd_Text_FountainOfIdeasRunDry, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_TRICK_MASTER, Common_Movement_FacePlayer
+ applymovement LOCALID_TRICK_MASTER_END, Common_Movement_FacePlayer
waitmovement 0
delay 30
msgbox Route110_TrickHouseEnd_Text_DefeatedMePreferWhichTent, MSGBOX_DEFAULT
@@ -179,12 +177,12 @@ Route110_TrickHouseEnd_EventScript_GiveBlueTent::
return
Route110_TrickHouseEnd_EventScript_TrickMasterExit::
- applymovement LOCALID_TRICK_MASTER, Route110_TrickHouse_Movement_TrickMasterSpin
+ applymovement LOCALID_TRICK_MASTER_END, Route110_TrickHouse_Movement_TrickMasterSpin
waitmovement 0
playse SE_M_EXPLOSION
- applymovement LOCALID_TRICK_MASTER, Route110_TrickHouse_Movement_TrickMasterJumpAway
+ applymovement LOCALID_TRICK_MASTER_END, Route110_TrickHouse_Movement_TrickMasterJumpAway
waitmovement 0
- removeobject LOCALID_TRICK_MASTER
+ removeobject LOCALID_TRICK_MASTER_END
addvar VAR_TRICK_HOUSE_LEVEL, 1
return
@@ -201,43 +199,43 @@ Route110_TrickHouseEnd_EventScript_NoRoomForTent::
return
Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwaySouth::
- applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_TRICK_MASTER_END, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayNorth::
- applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_TRICK_MASTER_END, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayWest::
- applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_TRICK_MASTER_END, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
Route110_TrickHouseEnd_EventScript_TrickMasterFaceAwayEast::
- applymovement LOCALID_TRICK_MASTER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_TRICK_MASTER_END, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
Route110_TrickHouseEnd_EventScript_TrickMasterExitTrigger::
lockall
- turnobject LOCALID_TRICK_MASTER, DIR_WEST
+ turnobject LOCALID_TRICK_MASTER_END, DIR_WEST
playse SE_PIN
- applymovement LOCALID_TRICK_MASTER, Common_Movement_ExclamationMark
+ applymovement LOCALID_TRICK_MASTER_END, Common_Movement_ExclamationMark
waitmovement 0
delay 20
- applymovement LOCALID_TRICK_MASTER, Route110_TrickHouseEnd_Movement_TrickMasterSurprise
+ applymovement LOCALID_TRICK_MASTER_END, Route110_TrickHouseEnd_Movement_TrickMasterSurprise
waitmovement 0
playse SE_M_EXPLOSION
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox Route110_TrickHouseEnd_Text_YoureIgnoringMe, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Route110_TrickHouseEnd_Movement_KeepPlayerInRoom
+ applymovement LOCALID_PLAYER, Route110_TrickHouseEnd_Movement_KeepPlayerInRoom
waitmovement 0
delay 4
- turnobject LOCALID_TRICK_MASTER, DIR_EAST
+ turnobject LOCALID_TRICK_MASTER_END, DIR_EAST
releaseall
end
diff --git a/data/maps/Route110_TrickHouseEntrance/map.json b/data/maps/Route110_TrickHouseEntrance/map.json
index 5584a534c3..60f2bec2a0 100644
--- a/data/maps/Route110_TrickHouseEntrance/map.json
+++ b/data/maps/Route110_TrickHouseEntrance/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TRICK_MASTER",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 6,
"y": 2,
diff --git a/data/maps/Route110_TrickHouseEntrance/scripts.inc b/data/maps/Route110_TrickHouseEntrance/scripts.inc
index d4e2d2ec46..330858c535 100644
--- a/data/maps/Route110_TrickHouseEntrance/scripts.inc
+++ b/data/maps/Route110_TrickHouseEntrance/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_TRICK_MASTER, 1
-
Route110_TrickHouseEntrance_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHouseEntrance_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, Route110_TrickHouseEntrance_OnFrame
@@ -129,7 +127,7 @@ Route110_TrickHouseEntrance_EventScript_TrickMasterFound::
addobject LOCALID_TRICK_MASTER
showobjectat LOCALID_TRICK_MASTER, MAP_ROUTE110_TRICK_HOUSE_ENTRANCE
turnobject LOCALID_TRICK_MASTER, DIR_EAST
- turnobject OBJ_EVENT_ID_PLAYER, DIR_WEST
+ turnobject LOCALID_PLAYER, DIR_WEST
end
Route110_TrickHouseEntrance_EventScript_SetTrickMasterHidingSpot::
@@ -231,9 +229,9 @@ Route110_TrickHouseEntrance_EventScript_TrickMaster::
Route110_TrickHouseEntrance_EventScript_FoundTrickMaster::
playse SE_PIN
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_ExclamationMark
+ applymovement LOCALID_PLAYER, Common_Movement_ExclamationMark
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_Delay48
+ applymovement LOCALID_PLAYER, Common_Movement_Delay48
waitmovement 0
call_if_eq VAR_TRICK_HOUSE_LEVEL, 0, Route110_TrickHouseEntrance_EventScript_FoundBeneathDesk
call_if_eq VAR_TRICK_HOUSE_LEVEL, 1, Route110_TrickHouseEntrance_EventScript_FoundBehindTree
@@ -467,9 +465,9 @@ Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom::
setmetatile 5, 1, METATILE_GenericBuilding_TrickHouse_Stairs_Down, FALSE
special DrawWholeMapView
delay 20
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkUp
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Route110_TrickHouseEntrance_Movement_EnterRoom
+ applymovement LOCALID_PLAYER, Route110_TrickHouseEntrance_Movement_EnterRoom
waitmovement 0
switch VAR_TRICK_HOUSE_LEVEL
case 0, Route110_TrickHouseEntrance_EventScript_EnterPuzzleRoom1
diff --git a/data/maps/Route110_TrickHousePuzzle5/map.json b/data/maps/Route110_TrickHousePuzzle5/map.json
index 3775505235..e094688bbf 100644
--- a/data/maps/Route110_TrickHousePuzzle5/map.json
+++ b/data/maps/Route110_TrickHousePuzzle5/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MECHADOLL_1",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 6,
"y": 17,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MECHADOLL_2",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 0,
"y": 7,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MECHADOLL_3",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 14,
"y": 10,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MECHADOLL_4",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 14,
"y": 19,
@@ -67,6 +71,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_MECHADOLL_5",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 10,
"y": 4,
diff --git a/data/maps/Route110_TrickHousePuzzle5/scripts.inc b/data/maps/Route110_TrickHousePuzzle5/scripts.inc
index 588ca63625..db94674d1b 100644
--- a/data/maps/Route110_TrickHousePuzzle5/scripts.inc
+++ b/data/maps/Route110_TrickHousePuzzle5/scripts.inc
@@ -1,9 +1,3 @@
-.set LOCALID_MECHADOLL_1, 1
-.set LOCALID_MECHADOLL_2, 2
-.set LOCALID_MECHADOLL_3, 3
-.set LOCALID_MECHADOLL_4, 4
-.set LOCALID_MECHADOLL_5, 5
-
Route110_TrickHousePuzzle5_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route110_TrickHousePuzzle5_OnTransition
end_map_scripts
diff --git a/data/maps/Route111/map.json b/data/maps/Route111/map.json
index 6efa1770e2..c090b61c9f 100644
--- a/data/maps/Route111/map.json
+++ b/data/maps/Route111/map.json
@@ -31,6 +31,7 @@
],
"object_events": [
{
+ "local_id": "LOCALID_ROUTE111_VICTOR",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 13,
"y": 114,
@@ -44,6 +45,7 @@
"flag": "FLAG_HIDE_ROUTE_111_VICTOR_WINSTRATE"
},
{
+ "local_id": "LOCALID_ROUTE111_VICTORIA",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_F",
"x": 13,
"y": 113,
@@ -57,6 +59,7 @@
"flag": "FLAG_HIDE_ROUTE_111_VICTORIA_WINSTRATE"
},
{
+ "local_id": "LOCALID_ROUTE111_VIVI",
"graphics_id": "OBJ_EVENT_GFX_LASS",
"x": 13,
"y": 113,
@@ -70,6 +73,7 @@
"flag": "FLAG_HIDE_ROUTE_111_VIVI_WINSTRATE"
},
{
+ "local_id": "LOCALID_ROUTE111_VICKY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_F",
"x": 13,
"y": 113,
@@ -187,6 +191,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE111_TY_1",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 14,
"y": 86,
@@ -200,6 +205,7 @@
"flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1"
},
{
+ "local_id": "LOCALID_ROUTE111_GABBY_1",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 13,
"y": 86,
@@ -291,6 +297,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE111_GABBY_2",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 13,
"y": 86,
@@ -301,9 +308,10 @@
"trainer_type": "TRAINER_TYPE_NONE",
"trainer_sight_or_berry_tree_id": "0",
"script": "GabbyAndTy_EventScript_GabbyBattle4",
- "flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3"
+ "flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2"
},
{
+ "local_id": "LOCALID_ROUTE111_TY_2",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 14,
"y": 86,
@@ -314,9 +322,10 @@
"trainer_type": "TRAINER_TYPE_NONE",
"trainer_sight_or_berry_tree_id": "0",
"script": "GabbyAndTy_EventScript_TyBattle4",
- "flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3"
+ "flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2"
},
{
+ "local_id": "LOCALID_ROUTE111_GABBY_3",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 13,
"y": 86,
@@ -327,9 +336,10 @@
"trainer_type": "TRAINER_TYPE_NONE",
"trainer_sight_or_berry_tree_id": "0",
"script": "GabbyAndTy_EventScript_GabbyBattle6",
- "flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2"
+ "flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3"
},
{
+ "local_id": "LOCALID_ROUTE111_TY_3",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 14,
"y": 86,
@@ -340,7 +350,7 @@
"trainer_type": "TRAINER_TYPE_NONE",
"trainer_sight_or_berry_tree_id": "0",
"script": "GabbyAndTy_EventScript_TyBattle6",
- "flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2"
+ "flag": "FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3"
},
{
"graphics_id": "OBJ_EVENT_GFX_ITEM_BALL",
@@ -603,6 +613,7 @@
"flag": "FLAG_HIDE_ROUTE_111_DESERT_FOSSIL"
},
{
+ "local_id": "LOCALID_ROUTE111_PLAYER_FALLING",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 19,
"y": 53,
@@ -616,6 +627,7 @@
"flag": "FLAG_HIDE_ROUTE_111_PLAYER_DESCENT"
},
{
+ "local_id": "LOCALID_ROUTE111_ROCK_SMASH_MAN",
"graphics_id": "OBJ_EVENT_GFX_FAT_MAN",
"x": 19,
"y": 101,
diff --git a/data/maps/Route111/scripts.inc b/data/maps/Route111/scripts.inc
index fa4be81a77..dd4a34d60e 100644
--- a/data/maps/Route111/scripts.inc
+++ b/data/maps/Route111/scripts.inc
@@ -1,11 +1,3 @@
-.set LOCALID_VICTOR, 1
-.set LOCALID_VICTORIA, 2
-.set LOCALID_VIVI, 3
-.set LOCALID_VICKY, 4
-.set LOCALID_ROCK_SMASH_MAN, 46
-
-@ Note: LOCALID_ROUTE111_PLAYER_FALLING is a local id for this map used elsewhere. It's defined in event_objects.h
-
Route111_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, Route111_OnLoad
map_script MAP_SCRIPT_ON_TRANSITION, Route111_OnTransition
@@ -105,7 +97,7 @@ Route111_OnWarp:
end_map_script_table
Route111_EventScript_HidePlayerForMirageTower::
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_LITTLEROOT_TOWN
+ hideobjectat LOCALID_PLAYER, MAP_LITTLEROOT_TOWN
end
Route111_OnFrame:
@@ -121,10 +113,10 @@ Route111_EventScript_MirageTowerDisappear::
addobject LOCALID_ROUTE111_PLAYER_FALLING
special StartPlayerDescendMirageTower
waitstate
- showobjectat OBJ_EVENT_ID_PLAYER, MAP_LITTLEROOT_TOWN
+ showobjectat LOCALID_PLAYER, MAP_LITTLEROOT_TOWN
removeobject LOCALID_ROUTE111_PLAYER_FALLING
delay 16
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
delay 16
special StartMirageTowerDisintegration
waitstate
@@ -216,22 +208,22 @@ Route111_EventScript_PreventRouteAccess::
end
Route111_EventScript_PushUpFromRoute::
- applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_PushUpFromRoute
+ applymovement LOCALID_PLAYER, Route111_Movement_PushUpFromRoute
waitmovement 0
return
Route111_EventScript_PushDownFromRoute::
- applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_PushDownFromRoute
+ applymovement LOCALID_PLAYER, Route111_Movement_PushDownFromRoute
waitmovement 0
return
Route111_EventScript_PushLeftFromRoute::
- applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_PushLeftFromRoute
+ applymovement LOCALID_PLAYER, Route111_Movement_PushLeftFromRoute
waitmovement 0
return
Route111_EventScript_PushRightFromRoute::
- applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_PushRightFromRoute
+ applymovement LOCALID_PLAYER, Route111_Movement_PushRightFromRoute
waitmovement 0
return
@@ -277,68 +269,68 @@ Route111_EventScript_Victor::
Route111_EventScript_BattleWinstrates::
msgbox Route111_Text_VictorIntro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_VICTOR, Route111_Text_VictorDefeat
- applymovement LOCALID_VICTOR, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_ROUTE111_VICTOR, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
call Route111_EventScript_OpenWinstrateDoor
msgbox Route111_Text_VictorPostBattle, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_VICTOR, Route111_Movement_WinstrateEnterHouse
+ applymovement LOCALID_ROUTE111_VICTOR, Route111_Movement_WinstrateEnterHouse
waitmovement 0
- removeobject LOCALID_VICTOR
+ removeobject LOCALID_ROUTE111_VICTOR
call Route111_EventScript_CloseWinstrateDoor
- applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_WaitForNextWinstrate
+ applymovement LOCALID_PLAYER, Route111_Movement_WaitForNextWinstrate
waitmovement 0
call Route111_EventScript_OpenWinstrateDoor
- addobject LOCALID_VICTORIA
- applymovement LOCALID_VICTORIA, Route111_Movement_WinstrateExitHouse
+ addobject LOCALID_ROUTE111_VICTORIA
+ applymovement LOCALID_ROUTE111_VICTORIA, Route111_Movement_WinstrateExitHouse
waitmovement 0
call Route111_EventScript_CloseWinstrateDoor
msgbox Route111_Text_VictoriaIntro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_VICTORIA, Route111_Text_VictoriaDefeat
- applymovement LOCALID_VICTORIA, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_ROUTE111_VICTORIA, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
call Route111_EventScript_OpenWinstrateDoor
msgbox Route111_Text_VictoriaPostBattle, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_VICTORIA, Route111_Movement_WinstrateEnterHouse
+ applymovement LOCALID_ROUTE111_VICTORIA, Route111_Movement_WinstrateEnterHouse
waitmovement 0
- removeobject LOCALID_VICTORIA
+ removeobject LOCALID_ROUTE111_VICTORIA
call Route111_EventScript_CloseWinstrateDoor
- applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_WaitForNextWinstrate
+ applymovement LOCALID_PLAYER, Route111_Movement_WaitForNextWinstrate
waitmovement 0
call Route111_EventScript_OpenWinstrateDoor
- addobject LOCALID_VIVI
- applymovement LOCALID_VIVI, Route111_Movement_WinstrateExitHouse
+ addobject LOCALID_ROUTE111_VIVI
+ applymovement LOCALID_ROUTE111_VIVI, Route111_Movement_WinstrateExitHouse
waitmovement 0
call Route111_EventScript_CloseWinstrateDoor
msgbox Route111_Text_ViviIntro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_VIVI, Route111_Text_ViviDefeat
- applymovement LOCALID_VIVI, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_ROUTE111_VIVI, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
call Route111_EventScript_OpenWinstrateDoor
msgbox Route111_Text_ViviPostBattle, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_VIVI, Route111_Movement_WinstrateEnterHouse
+ applymovement LOCALID_ROUTE111_VIVI, Route111_Movement_WinstrateEnterHouse
waitmovement 0
- removeobject LOCALID_VIVI
+ removeobject LOCALID_ROUTE111_VIVI
call Route111_EventScript_CloseWinstrateDoor
- applymovement OBJ_EVENT_ID_PLAYER, Route111_Movement_WaitForNextWinstrate
+ applymovement LOCALID_PLAYER, Route111_Movement_WaitForNextWinstrate
waitmovement 0
call Route111_EventScript_OpenWinstrateDoor
- addobject LOCALID_VICKY
- applymovement LOCALID_VICKY, Route111_Movement_WinstrateExitHouse
+ addobject LOCALID_ROUTE111_VICKY
+ applymovement LOCALID_ROUTE111_VICKY, Route111_Movement_WinstrateExitHouse
waitmovement 0
call Route111_EventScript_CloseWinstrateDoor
msgbox Route111_Text_VickyIntro, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_VICKY, Route111_Text_VickyDefeat
msgbox Route111_Text_VickyPostBattle, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_VICKY, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_ROUTE111_VICKY, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
call Route111_EventScript_OpenWinstrateDoor
- applymovement LOCALID_VICKY, Route111_Movement_WinstrateEnterHouse
+ applymovement LOCALID_ROUTE111_VICKY, Route111_Movement_WinstrateEnterHouse
waitmovement 0
- removeobject LOCALID_VICKY
+ removeobject LOCALID_ROUTE111_VICKY
call Route111_EventScript_CloseWinstrateDoor
release
end
@@ -427,11 +419,11 @@ Route111_EventScript_HikerMirageTowerVisible::
Route111_EventScript_RockSmashTipFatMan::
lockall
- applymovement LOCALID_ROCK_SMASH_MAN, Common_Movement_FacePlayer
+ applymovement LOCALID_ROUTE111_ROCK_SMASH_MAN, Common_Movement_FacePlayer
waitmovement 0
msgbox Route111_Text_MauvilleUncleToldMeToTakeRockSmash, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ROCK_SMASH_MAN, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_ROUTE111_ROCK_SMASH_MAN, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
diff --git a/data/maps/Route111_WinstrateFamilysHouse/map.json b/data/maps/Route111_WinstrateFamilysHouse/map.json
index 5e6f9d75e8..3e061ae94e 100644
--- a/data/maps/Route111_WinstrateFamilysHouse/map.json
+++ b/data/maps/Route111_WinstrateFamilysHouse/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_WINSTRATE_HOUSE_VIVI",
"graphics_id": "OBJ_EVENT_GFX_LASS",
"x": 7,
"y": 5,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_WINSTRATE_HOUSE_VICTOR",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 4,
"y": 5,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_WINSTRATE_HOUSE_VICTORIA",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_F",
"x": 7,
"y": 4,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_WINSTRATE_HOUSE_VICKY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_F",
"x": 4,
"y": 4,
diff --git a/data/maps/Route111_WinstrateFamilysHouse/scripts.inc b/data/maps/Route111_WinstrateFamilysHouse/scripts.inc
index c5177f1cad..83438e2612 100644
--- a/data/maps/Route111_WinstrateFamilysHouse/scripts.inc
+++ b/data/maps/Route111_WinstrateFamilysHouse/scripts.inc
@@ -1,15 +1,10 @@
-.set LOCALID_VIVI, 1
-.set LOCALID_VICTOR, 2
-.set LOCALID_VICTORIA, 3
-.set LOCALID_VICKY, 4
-
Route111_WinstrateFamilysHouse_MapScripts::
end_map_scripts
Route111_WinstrateFamilysHouse_EventScript_Victor::
lock
faceplayer
- setvar VAR_0x8008, LOCALID_VICTOR
+ setvar VAR_0x8008, LOCALID_WINSTRATE_HOUSE_VICTOR
msgbox Route111_WinstrateFamilysHouse_Text_MySonIsStrongerThanYou, MSGBOX_DEFAULT
goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection
end
@@ -17,7 +12,7 @@ Route111_WinstrateFamilysHouse_EventScript_Victor::
Route111_WinstrateFamilysHouse_EventScript_Victoria::
lock
faceplayer
- setvar VAR_0x8008, LOCALID_VICTORIA
+ setvar VAR_0x8008, LOCALID_WINSTRATE_HOUSE_VICTORIA
goto_if_set FLAG_RECEIVED_MACHO_BRACE, Route111_WinstrateFamilysHouse_EventScript_ReceivedMachoBrace
msgbox Route111_WinstrateFamilysHouse_Text_LikeYouToHaveMachoBrace, MSGBOX_DEFAULT
giveitem ITEM_MACHO_BRACE
@@ -34,7 +29,7 @@ Route111_WinstrateFamilysHouse_EventScript_ReceivedMachoBrace::
Route111_WinstrateFamilysHouse_EventScript_Vivi::
lock
faceplayer
- setvar VAR_0x8008, LOCALID_VIVI
+ setvar VAR_0x8008, LOCALID_WINSTRATE_HOUSE_VIVI
msgbox Route111_WinstrateFamilysHouse_Text_StrongerFamilyMembers, MSGBOX_DEFAULT
goto Route111_WinstrateFamilysHouse_EventScript_FaceOriginalDirection
end
@@ -42,7 +37,7 @@ Route111_WinstrateFamilysHouse_EventScript_Vivi::
Route111_WinstrateFamilysHouse_EventScript_Vicky::
lock
faceplayer
- setvar VAR_0x8008, LOCALID_VICKY
+ setvar VAR_0x8008, LOCALID_WINSTRATE_HOUSE_VICKY
goto_if_set FLAG_TEMP_4, Route111_WinstrateFamilysHouse_EventScript_AlreadySpokenTo
msgbox Route111_WinstrateFamilysHouse_Text_GrandsonStrong, MSGBOX_DEFAULT
setflag FLAG_TEMP_4
diff --git a/data/maps/Route112/map.json b/data/maps/Route112/map.json
index 5340680ea5..d3260f27fe 100644
--- a/data/maps/Route112/map.json
+++ b/data/maps/Route112/map.json
@@ -31,6 +31,7 @@
],
"object_events": [
{
+ "local_id": "LOCALID_ROUTE112_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 26,
"y": 30,
@@ -96,6 +97,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE112_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 27,
"y": 30,
diff --git a/data/maps/Route112/scripts.inc b/data/maps/Route112/scripts.inc
index 282d006af6..d24decd40a 100644
--- a/data/maps/Route112/scripts.inc
+++ b/data/maps/Route112/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_GRUNT_1, 1
-.set LOCALID_GRUNT_2, 6
-
Route112_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route112_OnTransition
end_map_scripts
@@ -13,36 +10,36 @@ Route112_OnTransition:
Route112_EventScript_MagmaGrunts::
lockall
delay 40
- applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_ROUTE112_GRUNT_1, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 20
msgbox Route112_Text_LeaderGoingToAwakenThing, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_1, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_ROUTE112_GRUNT_1, Common_Movement_FaceOriginalDirection
waitmovement 0
delay 40
- applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_ROUTE112_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
delay 20
msgbox Route112_Text_YeahWeNeedMeteorite, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_2, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_ROUTE112_GRUNT_2, Common_Movement_FaceOriginalDirection
waitmovement 0
delay 40
- applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_ROUTE112_GRUNT_1, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 20
msgbox Route112_Text_OhThatsWhyCrewWentToFallarbor, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_1, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_ROUTE112_GRUNT_1, Common_Movement_FaceOriginalDirection
waitmovement 0
delay 40
- applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_ROUTE112_GRUNT_2, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
delay 20
msgbox Route112_Text_CantLetAnyonePassUntilTheyreBack, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_2, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_ROUTE112_GRUNT_2, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
diff --git a/data/maps/Route112_CableCarStation/map.json b/data/maps/Route112_CableCarStation/map.json
index 09401d83b0..3aeadc6f1f 100644
--- a/data/maps/Route112_CableCarStation/map.json
+++ b/data/maps/Route112_CableCarStation/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_ROUTE112_CABLE_CAR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_BEAUTY",
"x": 6,
"y": 6,
diff --git a/data/maps/Route112_CableCarStation/scripts.inc b/data/maps/Route112_CableCarStation/scripts.inc
index 44d216f5c1..5d07a11d42 100644
--- a/data/maps/Route112_CableCarStation/scripts.inc
+++ b/data/maps/Route112_CableCarStation/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
Route112_CableCarStation_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route112_CableCarStation_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, Route112_CableCarStation_OnFrame
@@ -11,8 +9,8 @@ Route112_CableCarStation_OnTransition:
end
Route112_CableCarStation_EventScript_MoveAttendantAside::
- setobjectxyperm LOCALID_ATTENDANT, 7, 4
- setobjectmovementtype LOCALID_ATTENDANT, MOVEMENT_TYPE_FACE_LEFT
+ setobjectxyperm LOCALID_ROUTE112_CABLE_CAR_ATTENDANT, 7, 4
+ setobjectmovementtype LOCALID_ROUTE112_CABLE_CAR_ATTENDANT, MOVEMENT_TYPE_FACE_LEFT
return
Route112_CableCarStation_OnFrame:
@@ -21,12 +19,12 @@ Route112_CableCarStation_OnFrame:
Route112_CableCarStation_EventScript_ExitCableCar::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Route112_CableCarStation_Movement_ExitCableCar
- applymovement LOCALID_ATTENDANT, Route112_CableCarStation_Movement_FollowPlayerOutFromCableCar
+ applymovement LOCALID_PLAYER, Route112_CableCarStation_Movement_ExitCableCar
+ applymovement LOCALID_ROUTE112_CABLE_CAR_ATTENDANT, Route112_CableCarStation_Movement_FollowPlayerOutFromCableCar
waitmovement 0
setvar VAR_CABLE_CAR_STATION_STATE, 0
- setobjectxyperm LOCALID_ATTENDANT, 6, 7
- setobjectmovementtype LOCALID_ATTENDANT, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_ROUTE112_CABLE_CAR_ATTENDANT, 6, 7
+ setobjectmovementtype LOCALID_ROUTE112_CABLE_CAR_ATTENDANT, MOVEMENT_TYPE_FACE_DOWN
releaseall
end
@@ -41,8 +39,8 @@ Route112_CableCarStation_EventScript_Attendant::
Route112_CableCarStation_EventScript_RideCableCar::
msgbox Route112_CableCarStation_Text_StepThisWay, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, Route112_CableCarStation_Movement_LeadPlayerToCableCar
- applymovement OBJ_EVENT_ID_PLAYER, Route112_CableCarStation_Movement_BoardCableCar
+ applymovement LOCALID_ROUTE112_CABLE_CAR_ATTENDANT, Route112_CableCarStation_Movement_LeadPlayerToCableCar
+ applymovement LOCALID_PLAYER, Route112_CableCarStation_Movement_BoardCableCar
waitmovement 0
setvar VAR_0x8004, FALSE @ Going up
setvar VAR_CABLE_CAR_STATION_STATE, 1
diff --git a/data/maps/Route114_FossilManiacsTunnel/map.json b/data/maps/Route114_FossilManiacsTunnel/map.json
index 034545e6ba..625c5afc08 100644
--- a/data/maps/Route114_FossilManiacsTunnel/map.json
+++ b/data/maps/Route114_FossilManiacsTunnel/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_FOSSIL_MANIAC",
"graphics_id": "OBJ_EVENT_GFX_MANIAC",
"x": 5,
"y": 3,
diff --git a/data/maps/Route114_FossilManiacsTunnel/scripts.inc b/data/maps/Route114_FossilManiacsTunnel/scripts.inc
index 1a9bf281cd..b5bcf1b35b 100644
--- a/data/maps/Route114_FossilManiacsTunnel/scripts.inc
+++ b/data/maps/Route114_FossilManiacsTunnel/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_FOSSIL_MANIAC, 1
-
Route114_FossilManiacsTunnel_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route114_FossilManiacsTunnel_OnTransition
map_script MAP_SCRIPT_ON_LOAD, Route114_FossilManiacsTunnel_OnLoad
@@ -26,7 +24,7 @@ Route114_FossilManiacsTunnel_EventScript_CloseDesertUnderpass::
Route114_FossilManiacsTunnel_EventScript_ManiacMentionCaveIn::
lockall
applymovement LOCALID_FOSSIL_MANIAC, Common_Movement_WalkInPlaceFasterUp
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox Route114_FossilManiacsTunnel_Text_NotSafeThatWay, MSGBOX_DEFAULT
setvar VAR_FOSSIL_MANIAC_STATE, 2
diff --git a/data/maps/Route116/map.json b/data/maps/Route116/map.json
index adf9a86d59..6e4da0ac0a 100644
--- a/data/maps/Route116/map.json
+++ b/data/maps/Route116/map.json
@@ -156,6 +156,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE116_BRINEY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 46,
"y": 9,
@@ -286,6 +287,7 @@
"flag": "FLAG_ITEM_ROUTE_116_X_SPECIAL"
},
{
+ "local_id": "LOCALID_ROUTE116_WANDAS_BF",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 38,
"y": 9,
diff --git a/data/maps/Route116/scripts.inc b/data/maps/Route116/scripts.inc
index 0494f6e787..117c3ebe3d 100644
--- a/data/maps/Route116/scripts.inc
+++ b/data/maps/Route116/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_BRINEY, 11
-.set LOCALID_WANDAS_BF_OUTSIDE, 21
-
Route116_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route116_OnTransition
map_script MAP_SCRIPT_ON_LOAD, Route116_OnLoad
@@ -15,7 +12,7 @@ Route116_OnTransition:
end
Route116_EventScript_SetWandasBoyfriendPos::
- setobjectxyperm LOCALID_WANDAS_BF_OUTSIDE, 38, 10
+ setobjectxyperm LOCALID_ROUTE116_WANDAS_BF, 38, 10
return
Route116_OnLoad:
@@ -144,8 +141,8 @@ Route116_EventScript_Briney::
Route116_EventScript_BrineyTrigger::
lockall
- applymovement LOCALID_BRINEY, Common_Movement_WalkInPlaceFasterRight
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_ROUTE116_BRINEY, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox Route116_Text_ScoundrelMadeOffWithPeeko, MSGBOX_DEFAULT
setvar VAR_ROUTE116_STATE, 2
diff --git a/data/maps/Route117/map.json b/data/maps/Route117/map.json
index 80304ddf4b..07a08500c7 100644
--- a/data/maps/Route117/map.json
+++ b/data/maps/Route117/map.json
@@ -52,6 +52,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DAYCARE_MAN",
"graphics_id": "OBJ_EVENT_GFX_OLD_MAN",
"x": 47,
"y": 4,
diff --git a/data/maps/Route117/scripts.inc b/data/maps/Route117/scripts.inc
index a665eec82a..23e66b8873 100644
--- a/data/maps/Route117/scripts.inc
+++ b/data/maps/Route117/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_DAYCARE_MAN, 3
-
Route117_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route117_OnTransition
end_map_scripts
diff --git a/data/maps/Route117_PokemonDayCare/map.json b/data/maps/Route117_PokemonDayCare/map.json
index 128c9f6e72..31849863de 100644
--- a/data/maps/Route117_PokemonDayCare/map.json
+++ b/data/maps/Route117_PokemonDayCare/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_DAYCARE_LADY",
"graphics_id": "OBJ_EVENT_GFX_OLD_WOMAN",
"x": 2,
"y": 2,
diff --git a/data/maps/Route118/map.json b/data/maps/Route118/map.json
index 1068e4a1a7..f1a292c00d 100644
--- a/data/maps/Route118/map.json
+++ b/data/maps/Route118/map.json
@@ -83,6 +83,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE118_GABBY_1",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 33,
"y": 8,
@@ -96,6 +97,7 @@
"flag": "FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1"
},
{
+ "local_id": "LOCALID_ROUTE118_TY_1",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 34,
"y": 8,
@@ -122,6 +124,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE118_GABBY_2",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 33,
"y": 8,
@@ -135,6 +138,7 @@
"flag": "FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2"
},
{
+ "local_id": "LOCALID_ROUTE118_TY_2",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 34,
"y": 8,
@@ -148,6 +152,7 @@
"flag": "FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2"
},
{
+ "local_id": "LOCALID_ROUTE118_GABBY_3",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 33,
"y": 8,
@@ -161,6 +166,7 @@
"flag": "FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3"
},
{
+ "local_id": "LOCALID_ROUTE118_TY_3",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 34,
"y": 8,
@@ -265,6 +271,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE118_STEVEN",
"graphics_id": "OBJ_EVENT_GFX_STEVEN",
"x": 44,
"y": 7,
diff --git a/data/maps/Route118/scripts.inc b/data/maps/Route118/scripts.inc
index eb572e304c..f851e026e5 100644
--- a/data/maps/Route118/scripts.inc
+++ b/data/maps/Route118/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_STEVEN, 19
-
Route118_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route118_OnTransition
map_script MAP_SCRIPT_ON_LOAD, Route118_OnLoad
@@ -64,9 +62,9 @@ Route118_EventScript_RouteSign119::
Route118_EventScript_StevenTrigger0::
lockall
setvar VAR_0x8008, 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp
+ applymovement LOCALID_PLAYER, Common_Movement_FaceUp
waitmovement 0
- applymovement LOCALID_STEVEN, Route118_Movement_StevenApproachLedge0
+ applymovement LOCALID_ROUTE118_STEVEN, Route118_Movement_StevenApproachLedge0
waitmovement 0
goto Route118_EventScript_StevenTrigger
end
@@ -74,7 +72,7 @@ Route118_EventScript_StevenTrigger0::
Route118_EventScript_StevenTrigger1::
lockall
setvar VAR_0x8008, 1
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp
+ applymovement LOCALID_PLAYER, Common_Movement_FaceUp
waitmovement 0
goto Route118_EventScript_StevenTrigger
end
@@ -82,16 +80,16 @@ Route118_EventScript_StevenTrigger1::
Route118_EventScript_StevenTrigger2::
lockall
setvar VAR_0x8008, 2
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp
+ applymovement LOCALID_PLAYER, Common_Movement_FaceUp
waitmovement 0
- applymovement LOCALID_STEVEN, Route118_Movement_StevenApproachLedge2
+ applymovement LOCALID_ROUTE118_STEVEN, Route118_Movement_StevenApproachLedge2
waitmovement 0
goto Route118_EventScript_StevenTrigger
end
Route118_EventScript_StevenTrigger::
playse SE_LEDGE
- applymovement LOCALID_STEVEN, Route118_Movement_StevenJumpLedge
+ applymovement LOCALID_ROUTE118_STEVEN, Route118_Movement_StevenJumpLedge
waitmovement 0
delay 30
msgbox Route118_Text_StevenQuestions, MSGBOX_DEFAULT
@@ -100,25 +98,25 @@ Route118_EventScript_StevenTrigger::
call_if_eq VAR_0x8008, 1, Route118_EventScript_StevenExit1
call_if_eq VAR_0x8008, 2, Route118_EventScript_StevenExit2
setvar VAR_ROUTE118_STATE, 1
- removeobject LOCALID_STEVEN
+ removeobject LOCALID_ROUTE118_STEVEN
releaseall
end
Route118_EventScript_StevenExit0::
- applymovement OBJ_EVENT_ID_PLAYER, Route118_Movement_PlayerWatchStevenExit
- applymovement LOCALID_STEVEN, Route118_Movement_StevenExit0
+ applymovement LOCALID_PLAYER, Route118_Movement_PlayerWatchStevenExit
+ applymovement LOCALID_ROUTE118_STEVEN, Route118_Movement_StevenExit0
waitmovement 0
return
Route118_EventScript_StevenExit1::
- applymovement OBJ_EVENT_ID_PLAYER, Route118_Movement_PlayerWatchStevenExit
- applymovement LOCALID_STEVEN, Route118_Movement_StevenExit1
+ applymovement LOCALID_PLAYER, Route118_Movement_PlayerWatchStevenExit
+ applymovement LOCALID_ROUTE118_STEVEN, Route118_Movement_StevenExit1
waitmovement 0
return
Route118_EventScript_StevenExit2::
- applymovement OBJ_EVENT_ID_PLAYER, Route118_Movement_PlayerWatchStevenExit
- applymovement LOCALID_STEVEN, Route118_Movement_StevenExit2
+ applymovement LOCALID_PLAYER, Route118_Movement_PlayerWatchStevenExit
+ applymovement LOCALID_ROUTE118_STEVEN, Route118_Movement_StevenExit2
waitmovement 0
return
diff --git a/data/maps/Route119/map.json b/data/maps/Route119/map.json
index f8591a5ba2..a2850b70ab 100644
--- a/data/maps/Route119/map.json
+++ b/data/maps/Route119/map.json
@@ -221,6 +221,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE119_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 25,
"y": 32,
@@ -338,6 +339,7 @@
"flag": "FLAG_HIDE_ROUTE_119_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_ROUTE119_RIVAL_ON_BIKE",
"graphics_id": "OBJ_EVENT_GFX_VAR_3",
"x": 17,
"y": 33,
@@ -572,6 +574,7 @@
"flag": "FLAG_ITEM_ROUTE_119_ELIXIR_2"
},
{
+ "local_id": "LOCALID_ROUTE119_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 28,
"y": 25,
diff --git a/data/maps/Route119/scripts.inc b/data/maps/Route119/scripts.inc
index b11b536008..5f7d63e3c7 100644
--- a/data/maps/Route119/scripts.inc
+++ b/data/maps/Route119/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_RIVAL, 16
-.set LOCALID_RIVAL_ON_BIKE, 25
-.set LOCALID_SCOTT, 43
-
Route119_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, Route119_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, Route119_OnTransition
@@ -42,20 +38,20 @@ Route119_EventScript_RivalTrigger2::
Route119_EventScript_RivalEncounter::
lockall
- addobject LOCALID_RIVAL_ON_BIKE
+ addobject LOCALID_ROUTE119_RIVAL_ON_BIKE
checkplayergender
call_if_eq VAR_RESULT, MALE, Route119_EventScript_PlayMayMusic
call_if_eq VAR_RESULT, FEMALE, Route119_EventScript_PlayBrendanMusic
delay 65
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_RivalEnter1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_RivalEnter2
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_SetRivalPos1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_SetRivalPos2
- removeobject LOCALID_RIVAL_ON_BIKE
- addobject LOCALID_RIVAL
+ removeobject LOCALID_ROUTE119_RIVAL_ON_BIKE
+ addobject LOCALID_ROUTE119_RIVAL
delay 30
checkplayergender
goto_if_eq VAR_RESULT, MALE, Route119_EventScript_BattleMay
@@ -140,78 +136,78 @@ Route119_EventScript_RivalExitScottArrive::
closemessage
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_SetRivalPos1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_SetRivalPos2
- removeobject LOCALID_RIVAL
- addobject LOCALID_RIVAL_ON_BIKE
+ removeobject LOCALID_ROUTE119_RIVAL
+ addobject LOCALID_ROUTE119_RIVAL_ON_BIKE
delay 30
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_RivalExit1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_RivalExit2
- removeobject LOCALID_RIVAL_ON_BIKE
+ removeobject LOCALID_ROUTE119_RIVAL_ON_BIKE
setvar VAR_ROUTE119_STATE, 1
savebgm MUS_DUMMY
fadedefaultbgm
delay 60
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_SetScottPos1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_SetScottPos2
- addobject LOCALID_SCOTT
- applymovement LOCALID_SCOTT, Route119_Movement_ScottEnter
+ addobject LOCALID_ROUTE119_SCOTT
+ applymovement LOCALID_ROUTE119_SCOTT, Route119_Movement_ScottEnter
waitmovement 0
addvar VAR_SCOTT_STATE, 1
msgbox Route119_Text_ScottWayToGoBeSeeingYou, MSGBOX_DEFAULT
closemessage
call_if_eq VAR_TEMP_1, 1, Route119_EventScript_ScottExit1
call_if_eq VAR_TEMP_1, 2, Route119_EventScript_ScottExit2
- removeobject LOCALID_SCOTT
+ removeobject LOCALID_ROUTE119_SCOTT
releaseall
end
Route119_EventScript_SetScottPos1::
- setobjectxyperm LOCALID_SCOTT, 27, 25
+ setobjectxyperm LOCALID_ROUTE119_SCOTT, 27, 25
return
Route119_EventScript_SetScottPos2::
- setobjectxyperm LOCALID_SCOTT, 28, 25
+ setobjectxyperm LOCALID_ROUTE119_SCOTT, 28, 25
return
Route119_EventScript_ScottExit1::
- applymovement LOCALID_SCOTT, Route119_Movement_ScottExit1
+ applymovement LOCALID_ROUTE119_SCOTT, Route119_Movement_ScottExit1
waitmovement 0
return
Route119_EventScript_ScottExit2::
- applymovement LOCALID_SCOTT, Route119_Movement_ScottExit2
+ applymovement LOCALID_ROUTE119_SCOTT, Route119_Movement_ScottExit2
waitmovement 0
return
Route119_EventScript_RivalEnter1::
- applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalEnter1
+ applymovement LOCALID_ROUTE119_RIVAL_ON_BIKE, Route119_Movement_RivalEnter1
waitmovement 0
return
Route119_EventScript_RivalEnter2::
- applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalEnter2
+ applymovement LOCALID_ROUTE119_RIVAL_ON_BIKE, Route119_Movement_RivalEnter2
waitmovement 0
return
Route119_EventScript_RivalExit1::
- applymovement OBJ_EVENT_ID_PLAYER, Route119_Movement_PlayerWatchRivalExit1
- applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalExit1
+ applymovement LOCALID_PLAYER, Route119_Movement_PlayerWatchRivalExit1
+ applymovement LOCALID_ROUTE119_RIVAL_ON_BIKE, Route119_Movement_RivalExit1
waitmovement 0
return
Route119_EventScript_RivalExit2::
- applymovement OBJ_EVENT_ID_PLAYER, Route119_Movement_PlayerWatchRivalExit2
- applymovement LOCALID_RIVAL_ON_BIKE, Route119_Movement_RivalExit2
+ applymovement LOCALID_PLAYER, Route119_Movement_PlayerWatchRivalExit2
+ applymovement LOCALID_ROUTE119_RIVAL_ON_BIKE, Route119_Movement_RivalExit2
waitmovement 0
return
Route119_EventScript_SetRivalPos1::
- setobjectxyperm LOCALID_RIVAL, 25, 32
- setobjectxyperm LOCALID_RIVAL_ON_BIKE, 25, 32
+ setobjectxyperm LOCALID_ROUTE119_RIVAL, 25, 32
+ setobjectxyperm LOCALID_ROUTE119_RIVAL_ON_BIKE, 25, 32
return
Route119_EventScript_SetRivalPos2::
- setobjectxyperm LOCALID_RIVAL, 26, 32
- setobjectxyperm LOCALID_RIVAL_ON_BIKE, 26, 32
+ setobjectxyperm LOCALID_ROUTE119_RIVAL, 26, 32
+ setobjectxyperm LOCALID_ROUTE119_RIVAL_ON_BIKE, 26, 32
return
Route119_Movement_PlayerWatchRivalExit1:
diff --git a/data/maps/Route119_WeatherInstitute_1F/map.json b/data/maps/Route119_WeatherInstitute_1F/map.json
index 02f2ffe37f..a0d5e12ff3 100644
--- a/data/maps/Route119_WeatherInstitute_1F/map.json
+++ b/data/maps/Route119_WeatherInstitute_1F/map.json
@@ -67,6 +67,7 @@
"flag": "FLAG_HIDE_WEATHER_INSTITUTE_1F_WORKERS"
},
{
+ "local_id": "LOCALID_WEATHER_INSTITUTE_LITTLE_BOY",
"graphics_id": "OBJ_EVENT_GFX_NINJA_BOY",
"x": 14,
"y": 11,
diff --git a/data/maps/Route119_WeatherInstitute_1F/scripts.inc b/data/maps/Route119_WeatherInstitute_1F/scripts.inc
index cf7726b08f..85b6f3e1eb 100644
--- a/data/maps/Route119_WeatherInstitute_1F/scripts.inc
+++ b/data/maps/Route119_WeatherInstitute_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_LITTLE_BOY, 5
-
Route119_WeatherInstitute_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route119_WeatherInstitute_1F_OnTransition
end_map_scripts
@@ -9,8 +7,8 @@ Route119_WeatherInstitute_1F_OnTransition:
end
Route119_WeatherInstitute_1F_EventScript_SetLittleBoyPos::
- setobjectxyperm LOCALID_LITTLE_BOY, 0, 5
- setobjectmovementtype LOCALID_LITTLE_BOY, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_WEATHER_INSTITUTE_LITTLE_BOY, 0, 5
+ setobjectmovementtype LOCALID_WEATHER_INSTITUTE_LITTLE_BOY, MOVEMENT_TYPE_FACE_RIGHT
return
Route119_WeatherInstitute_1F_EventScript_LittleBoy::
diff --git a/data/maps/Route119_WeatherInstitute_2F/map.json b/data/maps/Route119_WeatherInstitute_2F/map.json
index 935ea48dd9..8b62e63a91 100644
--- a/data/maps/Route119_WeatherInstitute_2F/map.json
+++ b/data/maps/Route119_WeatherInstitute_2F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_WEATHER_INSTITUTE_2F_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 15,
"y": 6,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_ROUTE_119_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_WEATHER_INSTITUTE_2F_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 10,
"y": 8,
@@ -41,6 +43,7 @@
"flag": "FLAG_HIDE_ROUTE_119_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_WEATHER_INSTITUTE_2F_SHELLY",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_F",
"x": 4,
"y": 6,
@@ -67,6 +70,7 @@
"flag": "FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS"
},
{
+ "local_id": "LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 18,
"y": 6,
@@ -93,6 +97,7 @@
"flag": "FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS"
},
{
+ "local_id": "LOCALID_WEATHER_INSTITUTE_2F_GRUNT_3",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 16,
"y": 6,
@@ -106,6 +111,7 @@
"flag": "FLAG_HIDE_WEATHER_INSTITUTE_2F_AQUA_GRUNT_M"
},
{
+ "local_id": "LOCALID_WEATHER_INSTITUTE_2F_GRUNT_4",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_F",
"x": 19,
"y": 6,
diff --git a/data/maps/Route119_WeatherInstitute_2F/scripts.inc b/data/maps/Route119_WeatherInstitute_2F/scripts.inc
index 45de323a1e..57c7065026 100644
--- a/data/maps/Route119_WeatherInstitute_2F/scripts.inc
+++ b/data/maps/Route119_WeatherInstitute_2F/scripts.inc
@@ -1,10 +1,3 @@
-.set LOCALID_GRUNT_1, 1
-.set LOCALID_GRUNT_2, 2
-.set LOCALID_SHELLY, 3
-.set LOCALID_SCIENTIST, 5
-.set LOCALID_GRUNT_3, 7
-.set LOCALID_GRUNT_4, 8
-
Route119_WeatherInstitute_2F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route119_WeatherInstitute_2F_OnTransition
end_map_scripts
@@ -16,18 +9,18 @@ Route119_WeatherInstitute_2F_OnTransition:
end
Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaHere::
- setobjectxyperm LOCALID_SCIENTIST, 1, 6
- setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST, 1, 6
+ setobjectmovementtype LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT
return
Route119_WeatherInstitute_2F_EventScript_SetScientistPosAquaGone::
- setobjectxyperm LOCALID_SCIENTIST, 4, 6
- setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST, 4, 6
+ setobjectmovementtype LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST, MOVEMENT_TYPE_FACE_RIGHT
return
Route119_WeatherInstitute_2F_EventScript_SetScientistPosGameClear::
- setobjectxyperm LOCALID_SCIENTIST, 2, 2
- setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_FACE_UP
+ setobjectxyperm LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST, 2, 2
+ setobjectmovementtype LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST, MOVEMENT_TYPE_FACE_UP
return
Route119_WeatherInstitute_2F_EventScript_Grunt5::
@@ -53,16 +46,16 @@ Route119_WeatherInstitute_2F_EventScript_Shelly::
Route119_WeatherInstitute_2F_EventScript_ShellyDefeated::
msgbox Route119_WeatherInstitute_2F_Text_ShellyPostBattle, MSGBOX_DEFAULT
closemessage
- addobject LOCALID_GRUNT_3
- applymovement LOCALID_GRUNT_3, Route119_WeatherInstitute_2F_Movement_GruntApproachShelly
- applymovement OBJ_EVENT_ID_PLAYER, Route119_WeatherInstitute_2F_Movement_ShovePlayerOutOfWay
+ addobject LOCALID_WEATHER_INSTITUTE_2F_GRUNT_3
+ applymovement LOCALID_WEATHER_INSTITUTE_2F_GRUNT_3, Route119_WeatherInstitute_2F_Movement_GruntApproachShelly
+ applymovement LOCALID_PLAYER, Route119_WeatherInstitute_2F_Movement_ShovePlayerOutOfWay
waitmovement 0
msgbox Route119_WeatherInstitute_2F_Text_TeamMagmaJustPassedBy, MSGBOX_DEFAULT
closemessage
playse SE_PIN
- applymovement LOCALID_SHELLY, Common_Movement_ExclamationMark
+ applymovement LOCALID_WEATHER_INSTITUTE_2F_SHELLY, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_SHELLY, Common_Movement_Delay48
+ applymovement LOCALID_WEATHER_INSTITUTE_2F_SHELLY, Common_Movement_Delay48
waitmovement 0
msgbox Route119_WeatherInstitute_2F_Text_WeHaveToHurryToMtPyre, MSGBOX_DEFAULT
closemessage
@@ -72,17 +65,17 @@ Route119_WeatherInstitute_2F_EventScript_ShellyDefeated::
fadescreen FADE_TO_BLACK
setflag FLAG_HIDE_ROUTE_119_TEAM_AQUA
setflag FLAG_HIDE_WEATHER_INSTITUTE_2F_AQUA_GRUNT_M
- removeobject LOCALID_GRUNT_1
- removeobject LOCALID_GRUNT_2
- removeobject LOCALID_SHELLY
- removeobject LOCALID_GRUNT_4
- removeobject LOCALID_GRUNT_3
- applymovement OBJ_EVENT_ID_PLAYER, Route119_WeatherInstitute_2F_Movement_PlayerReturnToPosition
+ removeobject LOCALID_WEATHER_INSTITUTE_2F_GRUNT_1
+ removeobject LOCALID_WEATHER_INSTITUTE_2F_GRUNT_2
+ removeobject LOCALID_WEATHER_INSTITUTE_2F_SHELLY
+ removeobject LOCALID_WEATHER_INSTITUTE_2F_GRUNT_4
+ removeobject LOCALID_WEATHER_INSTITUTE_2F_GRUNT_3
+ applymovement LOCALID_PLAYER, Route119_WeatherInstitute_2F_Movement_PlayerReturnToPosition
waitmovement 0
fadescreen FADE_FROM_BLACK
- applymovement LOCALID_SCIENTIST, Route119_WeatherInstitute_2F_Movement_ScientistApproachPlayer
+ applymovement LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST, Route119_WeatherInstitute_2F_Movement_ScientistApproachPlayer
waitmovement 0
- copyobjectxytoperm LOCALID_SCIENTIST
+ copyobjectxytoperm LOCALID_WEATHER_INSTITUTE_2F_SCIENTIST
goto Route119_WeatherInstitute_2F_EventScript_ReceiveCastform
end
diff --git a/data/maps/Route120/map.json b/data/maps/Route120/map.json
index 6bb2c84c1a..0a12521c67 100644
--- a/data/maps/Route120/map.json
+++ b/data/maps/Route120/map.json
@@ -234,6 +234,7 @@
"flag": "FLAG_ITEM_ROUTE_120_NUGGET"
},
{
+ "local_id": "LOCALID_ROUTE120_TY_1",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 37,
"y": 5,
@@ -247,6 +248,7 @@
"flag": "FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1"
},
{
+ "local_id": "LOCALID_ROUTE120_GABBY_1",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 36,
"y": 5,
@@ -260,6 +262,7 @@
"flag": "FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1"
},
{
+ "local_id": "LOCALID_ROUTE120_GABBY_2",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 36,
"y": 5,
@@ -273,6 +276,7 @@
"flag": "FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2"
},
{
+ "local_id": "LOCALID_ROUTE120_TY_2",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 37,
"y": 5,
@@ -403,6 +407,7 @@
"flag": "FLAG_ITEM_ROUTE_120_HYPER_POTION"
},
{
+ "local_id": "LOCALID_BRIDGE_KECLEON",
"graphics_id": "OBJ_EVENT_GFX_KECLEON",
"x": 12,
"y": 16,
@@ -416,6 +421,7 @@
"flag": "FLAG_HIDE_ROUTE_120_KECLEON_BRIDGE"
},
{
+ "local_id": "LOCALID_ROUTE120_STEVEN",
"graphics_id": "OBJ_EVENT_GFX_STEVEN",
"x": 13,
"y": 15,
@@ -481,6 +487,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_BRIDGE_KECLEON_SHADOW",
"graphics_id": "OBJ_EVENT_GFX_KECLEON_BRIDGE_SHADOW",
"x": 12,
"y": 16,
diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc
index f387f6d8ca..f9cb3d52ff 100644
--- a/data/maps/Route120/scripts.inc
+++ b/data/maps/Route120/scripts.inc
@@ -1,7 +1,4 @@
-.set LOCALID_BRIDGE_KECLEON, 30
-.set LOCALID_STEVEN, 31
-.set LOCALID_BRIDGE_KECLEON_SHADOW, 36 @ They use a second object which is identical to Kecleon but has a reflection palette tag for the bridge shadow
-
+@ LOCALID_BRIDGE_KECLEON_SHADOW is a second object which is identical to LOCALID_BRIDGE_KECLEON but has a reflection palette tag for the bridge shadow
Route120_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, Route120_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, Route120_OnTransition
@@ -180,7 +177,7 @@ Route120_EventScript_StevenBattleKecleon::
closemessage
call_if_eq VAR_FACING, DIR_NORTH, Route120_EventScript_PlayerApproachKecleonNorth
call_if_eq VAR_FACING, DIR_WEST, Route120_EventScript_PlayerApproachKecleonWest
- applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_ROUTE120_STEVEN, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
delay 20
msgbox Route120_Text_StevenUsedDevonScope, MSGBOX_DEFAULT
@@ -214,21 +211,21 @@ Route120_EventScript_RemoveBridgeKecleonPostBattle::
end
Route120_EventScript_StevenGiveDeconScope::
- applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterDown
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_ROUTE120_STEVEN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox Route120_Text_StevenGiveDevonScope, MSGBOX_DEFAULT
giveitem ITEM_DEVON_SCOPE
setflag FLAG_RECEIVED_DEVON_SCOPE
msgbox Route120_Text_StevenGoodbye, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_ROUTE120_STEVEN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 50
setfieldeffectargument 0, 1
dofieldeffect FLDEFF_NPCFLY_OUT
delay 15
- removeobject LOCALID_STEVEN
+ removeobject LOCALID_ROUTE120_STEVEN
waitfieldeffect FLDEFF_NPCFLY_OUT
setmetatile 13, 15, METATILE_Fortree_WoodBridge1_Top, FALSE
setmetatile 12, 16, METATILE_Fortree_WoodBridge1_Bottom, FALSE
@@ -239,12 +236,12 @@ Route120_EventScript_StevenGiveDeconScope::
end
Route120_EventScript_PlayerApproachKecleonNorth::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
Route120_EventScript_PlayerApproachKecleonWest::
- applymovement OBJ_EVENT_ID_PLAYER, Route120_Movement_ApproachKecleonWest
+ applymovement LOCALID_PLAYER, Route120_Movement_ApproachKecleonWest
waitmovement 0
return
diff --git a/data/maps/Route121/map.json b/data/maps/Route121/map.json
index 4a73f3fdd9..9911a619c5 100644
--- a/data/maps/Route121/map.json
+++ b/data/maps/Route121/map.json
@@ -174,6 +174,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE121_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 30,
"y": 8,
@@ -187,6 +188,7 @@
"flag": "FLAG_HIDE_ROUTE_121_TEAM_AQUA_GRUNTS"
},
{
+ "local_id": "LOCALID_ROUTE121_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 30,
"y": 7,
@@ -200,6 +202,7 @@
"flag": "FLAG_HIDE_ROUTE_121_TEAM_AQUA_GRUNTS"
},
{
+ "local_id": "LOCALID_ROUTE121_GRUNT_3",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 31,
"y": 7,
diff --git a/data/maps/Route121/scripts.inc b/data/maps/Route121/scripts.inc
index 66cf6a8edf..e7ebbeedab 100644
--- a/data/maps/Route121/scripts.inc
+++ b/data/maps/Route121/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_GRUNT_1, 12
-.set LOCALID_GRUNT_2, 13
-.set LOCALID_GRUNT_3, 14
-
Route121_MapScripts::
end_map_scripts
@@ -20,18 +16,18 @@ Route121_EventScript_SafariZoneSign::
Route121_EventScript_AquaGruntsMoveOut::
lockall
playbgm MUS_ENCOUNTER_AQUA, FALSE
- applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceRight
+ applymovement LOCALID_ROUTE121_GRUNT_2, Common_Movement_WalkInPlaceRight
waitmovement 0
msgbox Route121_Text_OkayMoveOutToMtPyre, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_1, Route121_Movement_Grunt1Exit
- applymovement LOCALID_GRUNT_2, Route121_Movement_Grunt2Exit
- applymovement LOCALID_GRUNT_3, Route121_Movement_Grunt3Exit
+ applymovement LOCALID_ROUTE121_GRUNT_1, Route121_Movement_Grunt1Exit
+ applymovement LOCALID_ROUTE121_GRUNT_2, Route121_Movement_Grunt2Exit
+ applymovement LOCALID_ROUTE121_GRUNT_3, Route121_Movement_Grunt3Exit
waitmovement 0
fadedefaultbgm
- removeobject LOCALID_GRUNT_1
- removeobject LOCALID_GRUNT_2
- removeobject LOCALID_GRUNT_3
+ removeobject LOCALID_ROUTE121_GRUNT_1
+ removeobject LOCALID_ROUTE121_GRUNT_2
+ removeobject LOCALID_ROUTE121_GRUNT_3
setvar VAR_ROUTE121_STATE, 1
releaseall
end
diff --git a/data/maps/Route121_SafariZoneEntrance/scripts.inc b/data/maps/Route121_SafariZoneEntrance/scripts.inc
index 874ed3f259..0a760917ab 100644
--- a/data/maps/Route121_SafariZoneEntrance/scripts.inc
+++ b/data/maps/Route121_SafariZoneEntrance/scripts.inc
@@ -8,7 +8,7 @@ Route121_SafariZoneEntrance_OnFrame:
Route121_SafariZoneEntrance_EventScript_ExitSafariZone::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Route121_SafariZoneEntrance_Movement_ExitSafariZone
+ applymovement LOCALID_PLAYER, Route121_SafariZoneEntrance_Movement_ExitSafariZone
waitmovement 0
setvar VAR_SAFARI_ZONE_STATE, 0
releaseall
@@ -45,7 +45,7 @@ Route121_SafariZoneEntrance_EventScript_FirstTimeInfo::
Route121_SafariZoneEntrance_EventScript_EntranceCounterTrigger::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
showmoneybox 0, 0
msgbox Route121_SafariZoneEntrance_Text_WouldYouLikeToPlay, MSGBOX_YESNO
@@ -71,7 +71,7 @@ Route121_SafariZoneEntrance_EventScript_TryEnterSafariZone::
msgbox Route121_SafariZoneEntrance_Text_PleaseEnjoyYourself, MSGBOX_DEFAULT
closemessage
hidemoneybox
- applymovement OBJ_EVENT_ID_PLAYER, Route121_SafariZoneEntrance_Movement_EnterSafariZone
+ applymovement LOCALID_PLAYER, Route121_SafariZoneEntrance_Movement_EnterSafariZone
waitmovement 0
special EnterSafariMode
setvar VAR_SAFARI_ZONE_STATE, 2
@@ -105,7 +105,7 @@ Route121_SafariZoneEntrance_EventScript_NotEnoughMoney::
Route121_SafariZoneEntrance_EventScript_MovePlayerBackFromCounter::
closemessage
hidemoneybox
- applymovement OBJ_EVENT_ID_PLAYER, Route121_SafariZoneEntrance_Movement_BackAwayFromCounter
+ applymovement LOCALID_PLAYER, Route121_SafariZoneEntrance_Movement_BackAwayFromCounter
waitmovement 0
releaseall
end
diff --git a/data/maps/Route128/map.json b/data/maps/Route128/map.json
index 464aa83fcc..6ca7fbc908 100644
--- a/data/maps/Route128/map.json
+++ b/data/maps/Route128/map.json
@@ -62,6 +62,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_ROUTE128_STEVEN",
"graphics_id": "OBJ_EVENT_GFX_STEVEN",
"x": 40,
"y": 22,
@@ -75,6 +76,7 @@
"flag": "FLAG_HIDE_ROUTE_128_STEVEN"
},
{
+ "local_id": "LOCALID_ROUTE128_ARCHIE",
"graphics_id": "OBJ_EVENT_GFX_ARCHIE",
"x": 37,
"y": 22,
@@ -88,6 +90,7 @@
"flag": "FLAG_HIDE_ROUTE_128_ARCHIE"
},
{
+ "local_id": "LOCALID_ROUTE128_MAXIE",
"graphics_id": "OBJ_EVENT_GFX_MAXIE",
"x": 38,
"y": 21,
diff --git a/data/maps/Route128/scripts.inc b/data/maps/Route128/scripts.inc
index 1c95a8490c..ecad8a9652 100644
--- a/data/maps/Route128/scripts.inc
+++ b/data/maps/Route128/scripts.inc
@@ -1,7 +1,3 @@
-.set LOCALID_STEVEN, 3
-.set LOCALID_ARCHIE, 4
-.set LOCALID_MAXIE, 5
-
Route128_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, Route128_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, Route128_OnFrame
@@ -18,64 +14,64 @@ Route128_OnFrame:
Route128_EventScript_KyogreAwakenedScene::
lockall
delay 20
- applymovement LOCALID_ARCHIE, Route128_Movement_ArchieLookAround
+ applymovement LOCALID_ROUTE128_ARCHIE, Route128_Movement_ArchieLookAround
waitmovement 0
msgbox Route128_Text_ArchieWhatHappened, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ARCHIE, Route128_Movement_ArchieBackUp
+ applymovement LOCALID_ROUTE128_ARCHIE, Route128_Movement_ArchieBackUp
waitmovement 0
msgbox Route128_Text_ArchieIOnlyWanted, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_MAXIE, Route128_Movement_MaxieApproachArchie
+ applymovement LOCALID_ROUTE128_MAXIE, Route128_Movement_MaxieApproachArchie
waitmovement 0
- applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_ROUTE128_ARCHIE, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox Route128_Text_MaxieDoYouUnderstandNow, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_MAXIE, Route128_Movement_MaxieApproachPlayer
+ applymovement LOCALID_ROUTE128_MAXIE, Route128_Movement_MaxieApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox Route128_Text_MaxieResposibilityFallsToArchieAndMe, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ARCHIE, Route128_Movement_ArchieRunLeft
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_MAXIE, Route128_Movement_MaxieWalkLeft
+ applymovement LOCALID_ROUTE128_ARCHIE, Route128_Movement_ArchieRunLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_ROUTE128_MAXIE, Route128_Movement_MaxieWalkLeft
waitmovement 0
msgbox Route128_Text_MaxieThisDefiesBelief, MSGBOX_DEFAULT
closemessage
delay 40
- applymovement LOCALID_MAXIE, Route128_Movement_MaxieExit
- applymovement LOCALID_ARCHIE, Route128_Movement_ArchieExit
+ applymovement LOCALID_ROUTE128_MAXIE, Route128_Movement_MaxieExit
+ applymovement LOCALID_ROUTE128_ARCHIE, Route128_Movement_ArchieExit
waitmovement 0
- removeobject LOCALID_MAXIE
- removeobject LOCALID_ARCHIE
+ removeobject LOCALID_ROUTE128_MAXIE
+ removeobject LOCALID_ROUTE128_ARCHIE
delay 100
setfieldeffectargument 0, 1
dofieldeffect FLDEFF_NPCFLY_OUT
waitfieldeffect FLDEFF_NPCFLY_OUT
- addobject LOCALID_STEVEN
- applymovement LOCALID_STEVEN, Route128_Movement_StevenApproachPlayer
+ addobject LOCALID_ROUTE128_STEVEN
+ applymovement LOCALID_ROUTE128_STEVEN, Route128_Movement_StevenApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox Route128_Text_StevenWhatIsHappening, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_STEVEN, Route128_Movement_StevenWalkUp
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_ROUTE128_STEVEN, Route128_Movement_StevenWalkUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox Route128_Text_StevenWholeWorldWillDrown, MSGBOX_DEFAULT
- applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_ROUTE128_STEVEN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox Route128_Text_StevenImGoingToSootopolis, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_STEVEN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_ROUTE128_STEVEN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 50
setfieldeffectargument 0, 1
dofieldeffect FLDEFF_NPCFLY_OUT
delay 15
- removeobject LOCALID_STEVEN
+ removeobject LOCALID_ROUTE128_STEVEN
waitfieldeffect FLDEFF_NPCFLY_OUT
clearflag FLAG_HIDE_MAP_NAME_POPUP
setvar VAR_ROUTE128_STATE, 2
diff --git a/data/maps/RustboroCity/map.json b/data/maps/RustboroCity/map.json
index 3d77404ee7..b4eadc2a77 100644
--- a/data/maps/RustboroCity/map.json
+++ b/data/maps/RustboroCity/map.json
@@ -109,6 +109,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_RUSTBORO_LITTLE_BOY",
"graphics_id": "OBJ_EVENT_GFX_LITTLE_BOY",
"x": 24,
"y": 51,
@@ -122,6 +123,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_RUSTBORO_LITTLE_GIRL",
"graphics_id": "OBJ_EVENT_GFX_LITTLE_GIRL",
"x": 25,
"y": 51,
@@ -135,6 +137,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_RUSTBORO_DEVON_EMPLOYEE",
"graphics_id": "OBJ_EVENT_GFX_MAN_2",
"x": 30,
"y": 10,
@@ -148,6 +151,7 @@
"flag": "FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1"
},
{
+ "local_id": "LOCALID_RUSTBORO_GRUNT",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 13,
"y": 21,
@@ -200,6 +204,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_RUSTBORO_RIVAL",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 16,
"y": 50,
@@ -213,6 +218,7 @@
"flag": "FLAG_HIDE_RUSTBORO_CITY_RIVAL"
},
{
+ "local_id": "LOCALID_RUSTBORO_SCIENTIST",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 11,
"y": 15,
diff --git a/data/maps/RustboroCity/scripts.inc b/data/maps/RustboroCity/scripts.inc
index 147520752c..e40b6b43ab 100644
--- a/data/maps/RustboroCity/scripts.inc
+++ b/data/maps/RustboroCity/scripts.inc
@@ -1,10 +1,3 @@
-.set LOCALID_LITTLE_BOY, 7
-.set LOCALID_LITTLE_GIRL, 8
-.set LOCALID_DEVON_EMPLOYEE, 9
-.set LOCALID_GRUNT, 10
-.set LOCALID_RIVAL, 14
-.set LOCALID_SCIENTIST, 15
-
RustboroCity_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, RustboroCity_OnFrame
@@ -20,11 +13,11 @@ RustboroCity_OnTransition:
RustboroCity_EventScript_PositionScientistForExit::
goto_if_eq VAR_TEMP_0, 11, RustboroCity_EventScript_PositionScientistLeftExit
- setobjectxyperm LOCALID_SCIENTIST, 12, 15
+ setobjectxyperm LOCALID_RUSTBORO_SCIENTIST, 12, 15
end
RustboroCity_EventScript_PositionScientistLeftExit::
- setobjectxyperm LOCALID_SCIENTIST, 11, 15
+ setobjectxyperm LOCALID_RUSTBORO_SCIENTIST, 11, 15
end
RustboroCity_EventScript_HideMapNamePopup::
@@ -38,26 +31,26 @@ RustboroCity_OnFrame:
RustboroCity_EventScript_ScientistAddMatchCall::
lockall
setvar VAR_ROUTE104_STATE, 1
- applymovement OBJ_EVENT_ID_PLAYER, RustboroCity_Movement_PlayerWalkDown
+ applymovement LOCALID_PLAYER, RustboroCity_Movement_PlayerWalkDown
waitmovement 0
playse SE_EXIT
delay 10
- addobject LOCALID_SCIENTIST
- applymovement LOCALID_SCIENTIST, RustboroCity_Movement_ScientistApproachPlayer
+ addobject LOCALID_RUSTBORO_SCIENTIST
+ applymovement LOCALID_RUSTBORO_SCIENTIST, RustboroCity_Movement_ScientistApproachPlayer
waitmovement 0
playse SE_PIN
- applymovement LOCALID_SCIENTIST, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_SCIENTIST, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_SCIENTIST, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_SCIENTIST, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
- applymovement LOCALID_SCIENTIST, RustboroCity_Movement_ScientistWalkInPlaceDown
+ applymovement LOCALID_RUSTBORO_SCIENTIST, RustboroCity_Movement_ScientistWalkInPlaceDown
waitmovement 0
msgbox RustboroCity_Text_DevelopedNewPokenavFeature, MSGBOX_DEFAULT
closemessage
setflag FLAG_HAS_MATCH_CALL
- applymovement LOCALID_SCIENTIST, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_RUSTBORO_SCIENTIST, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
playse SE_CLICK
delay 10
@@ -67,7 +60,7 @@ RustboroCity_EventScript_ScientistAddMatchCall::
delay 10
playse SE_CLICK
delay 20
- applymovement LOCALID_SCIENTIST, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_SCIENTIST, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox RustboroCity_Text_AddedMatchCallPleaseCallMrStone, MSGBOX_DEFAULT
closemessage
@@ -98,10 +91,10 @@ RustboroCity_EventScript_MatchCallTutorial::
delay 20
msgbox RustboroCity_Text_IdBetterGetBackToWork, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_SCIENTIST, RustboroCity_Movement_ScientistLeave
+ applymovement LOCALID_RUSTBORO_SCIENTIST, RustboroCity_Movement_ScientistLeave
waitmovement 0
playse SE_EXIT
- removeobject LOCALID_SCIENTIST
+ removeobject LOCALID_RUSTBORO_SCIENTIST
setflag FLAG_HIDE_RUSTBORO_CITY_SCIENTIST
setvar VAR_RUSTBORO_CITY_STATE, 7
clearflag FLAG_HIDE_MAP_NAME_POPUP
@@ -227,7 +220,7 @@ RustboroCity_EventScript_LittleBoy::
lock
faceplayer
msgbox RustboroCity_Text_PokemonCanChangeLookFromExp, MSGBOX_DEFAULT
- applymovement LOCALID_LITTLE_BOY, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_RUSTBORO_LITTLE_BOY, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -236,7 +229,7 @@ RustboroCity_EventScript_LittleGirl::
lock
faceplayer
msgbox RustboroCity_Text_PokemonChangeShape, MSGBOX_DEFAULT
- applymovement LOCALID_LITTLE_GIRL, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_RUSTBORO_LITTLE_GIRL, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -250,40 +243,40 @@ RustboroCity_EventScript_Man2::
RustboroCity_EventScript_StolenGoodsTrigger0::
lockall
- setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21
- setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_RUSTBORO_DEVON_EMPLOYEE, 14, 21
+ setobjectmovementtype LOCALID_RUSTBORO_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
setvar VAR_0x8004, 0
goto RustboroCity_EventScript_StolenGoodsScene
end
RustboroCity_EventScript_StolenGoodsTrigger1::
lockall
- setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21
- setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_RUSTBORO_DEVON_EMPLOYEE, 14, 21
+ setobjectmovementtype LOCALID_RUSTBORO_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
setvar VAR_0x8004, 1
goto RustboroCity_EventScript_StolenGoodsScene
end
RustboroCity_EventScript_StolenGoodsTrigger2::
lockall
- setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21
- setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_RUSTBORO_DEVON_EMPLOYEE, 14, 21
+ setobjectmovementtype LOCALID_RUSTBORO_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
setvar VAR_0x8004, 2
goto RustboroCity_EventScript_StolenGoodsScene
end
RustboroCity_EventScript_StolenGoodsTrigger3::
lockall
- setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21
- setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_RUSTBORO_DEVON_EMPLOYEE, 14, 21
+ setobjectmovementtype LOCALID_RUSTBORO_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
setvar VAR_0x8004, 3
goto RustboroCity_EventScript_StolenGoodsScene
end
RustboroCity_EventScript_StolenGoodsTrigger4::
lockall
- setobjectxyperm LOCALID_DEVON_EMPLOYEE, 14, 21
- setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_RUSTBORO_DEVON_EMPLOYEE, 14, 21
+ setobjectmovementtype LOCALID_RUSTBORO_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_RIGHT
setvar VAR_0x8004, 4
goto RustboroCity_EventScript_StolenGoodsScene
end
@@ -292,20 +285,20 @@ RustboroCity_EventScript_StolenGoodsScene::
msgbox RustboroCity_Text_OutOfTheWay, MSGBOX_DEFAULT
closemessage
playbgm MUS_ENCOUNTER_AQUA, FALSE
- addobject LOCALID_GRUNT
- addobject LOCALID_DEVON_EMPLOYEE
- applymovement LOCALID_GRUNT, RustboroCity_Movement_GruntEscape
+ addobject LOCALID_RUSTBORO_GRUNT
+ addobject LOCALID_RUSTBORO_DEVON_EMPLOYEE
+ applymovement LOCALID_RUSTBORO_GRUNT, RustboroCity_Movement_GruntEscape
waitmovement 0
- removeobject LOCALID_GRUNT
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeChaseGrunt1
+ removeobject LOCALID_RUSTBORO_GRUNT
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeChaseGrunt1
waitmovement 0
msgbox RustboroCity_Text_WaitDontTakeMyGoods, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeChaseGrunt2
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeChaseGrunt2
waitmovement 0
fadedefaultbgm
- removeobject LOCALID_DEVON_EMPLOYEE
- setobjectxyperm LOCALID_DEVON_EMPLOYEE, 30, 10
+ removeobject LOCALID_RUSTBORO_DEVON_EMPLOYEE
+ setobjectxyperm LOCALID_RUSTBORO_DEVON_EMPLOYEE, 30, 10
clearflag FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1
setflag FLAG_DEVON_GOODS_STOLEN
setvar VAR_RUSTBORO_CITY_STATE, 2
@@ -331,33 +324,33 @@ RustboroCity_EventScript_YouGotItThankYou::
@ Unknown, unused employee movements. Based on the differences in movement theyre for approaching an object (probably the player) in different positions
RustboroCity_EventScript_EmployeeApproachUp::
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachUp
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachUp
waitmovement 0
return
@ Unused, see above
RustboroCity_EventScript_EmployeeApproachLeft::
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachLeft
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachLeft
waitmovement 0
return
@ Unused, see above
RustboroCity_EventScript_EmployeeApproachRight::
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachRight
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachRight
waitmovement 0
return
@ Unused, see above
RustboroCity_EventScript_EmployeeApproachDown::
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachDown
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachDown
waitmovement 0
return
@ Unused, similar movement to the above scripts
RustboroCity_EventScript_EmployeeApproachPlayerFar::
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerFar
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerFar
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
@@ -509,59 +502,59 @@ RustboroCity_EventScript_EmployeeAskToGetGoods::
call_if_eq VAR_TEMP_1, 3, RustboroCity_EventScript_EmployeeApproachPlayerDown1
setflag FLAG_INTERACTED_WITH_DEVON_EMPLOYEE_GOODS_STOLEN
setvar VAR_RUSTBORO_CITY_STATE, 3
- copyobjectxytoperm LOCALID_DEVON_EMPLOYEE
+ copyobjectxytoperm LOCALID_RUSTBORO_DEVON_EMPLOYEE
msgbox RustboroCity_Text_HelpMeIWasRobbed, MSGBOX_DEFAULT
releaseall
end
@ The below movement scripts are either partially or fully duplicated by the movement scripts when the player returns the goods
RustboroCity_EventScript_EmployeeFacePlayerUp1::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
RustboroCity_EventScript_EmployeeFacePlayerLeft1::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceRight
+ applymovement LOCALID_PLAYER, Common_Movement_FaceRight
waitmovement 0
return
RustboroCity_EventScript_EmployeeFacePlayerDown1::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
RustboroCity_EventScript_EmployeeApproachPlayerDown1::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerDown
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerDown
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
@@ -618,69 +611,69 @@ RustboroCity_EventScript_BagFull::
return
RustboroCity_EventScript_EmployeeFacePlayerUp2::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
RustboroCity_EventScript_EmployeeFacePlayerLeft2::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceLeft
+ applymovement LOCALID_PLAYER, Common_Movement_FaceLeft
waitmovement 0
return
RustboroCity_EventScript_EmployeeFacePlayerDown2::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
RustboroCity_EventScript_EmployeeApproachPlayerDown2::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerDown
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, RustboroCity_Movement_EmployeeApproachPlayerDown
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
return
RustboroCity_EventScript_EmployeeFacePlayerRight::
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
playse SE_PIN
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_DEVON_EMPLOYEE, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_DEVON_EMPLOYEE, Common_Movement_Delay48
waitmovement 0
return
RustboroCity_EventScript_Rival::
lockall
call_if_unset FLAG_MET_RIVAL_RUSTBORO, RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_FacePlayer
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_FacePlayer
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
@@ -701,128 +694,128 @@ RustboroCity_EventScript_PlayBrendanMusic::
RustboroCity_EventScript_RivalTrigger0::
lockall
call RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer0
+ applymovement LOCALID_RUSTBORO_RIVAL, RustboroCity_Movement_RivalApproachPlayer0
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
RustboroCity_EventScript_RivalTrigger1::
lockall
call RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer1
+ applymovement LOCALID_RUSTBORO_RIVAL, RustboroCity_Movement_RivalApproachPlayer1
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
RustboroCity_EventScript_RivalTrigger2::
lockall
call RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer2
+ applymovement LOCALID_RUSTBORO_RIVAL, RustboroCity_Movement_RivalApproachPlayer2
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
RustboroCity_EventScript_RivalTrigger3::
lockall
call RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer3
+ applymovement LOCALID_RUSTBORO_RIVAL, RustboroCity_Movement_RivalApproachPlayer3
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
RustboroCity_EventScript_RivalTrigger4::
lockall
call RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer4
+ applymovement LOCALID_RUSTBORO_RIVAL, RustboroCity_Movement_RivalApproachPlayer4
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
RustboroCity_EventScript_RivalTrigger5::
lockall
call RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer5
+ applymovement LOCALID_RUSTBORO_RIVAL, RustboroCity_Movement_RivalApproachPlayer5
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
RustboroCity_EventScript_RivalTrigger6::
lockall
call RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer6
+ applymovement LOCALID_RUSTBORO_RIVAL, RustboroCity_Movement_RivalApproachPlayer6
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
RustboroCity_EventScript_RivalTrigger7::
lockall
call RustboroCity_EventScript_PlayRivalMusic
- applymovement LOCALID_RIVAL, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
playse SE_PIN
- applymovement LOCALID_RIVAL, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_RIVAL, Common_Movement_Delay48
+ applymovement LOCALID_RUSTBORO_RIVAL, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_RIVAL, RustboroCity_Movement_RivalApproachPlayer7
+ applymovement LOCALID_RUSTBORO_RIVAL, RustboroCity_Movement_RivalApproachPlayer7
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
goto RustboroCity_EventScript_RivalEncounter
diff --git a/data/maps/RustboroCity_DevonCorp_1F/map.json b/data/maps/RustboroCity_DevonCorp_1F/map.json
index 64a8b917a1..ecbf542589 100644
--- a/data/maps/RustboroCity_DevonCorp_1F/map.json
+++ b/data/maps/RustboroCity_DevonCorp_1F/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEVON_CORP_STAIR_GUARD",
"graphics_id": "OBJ_EVENT_GFX_DEVON_EMPLOYEE",
"x": 15,
"y": 5,
diff --git a/data/maps/RustboroCity_DevonCorp_1F/scripts.inc b/data/maps/RustboroCity_DevonCorp_1F/scripts.inc
index 3fa4c26658..03f8b11e0a 100644
--- a/data/maps/RustboroCity_DevonCorp_1F/scripts.inc
+++ b/data/maps/RustboroCity_DevonCorp_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_STAIR_GUARD, 2
-
RustboroCity_DevonCorp_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_DevonCorp_1F_OnTransition
end_map_scripts
@@ -9,8 +7,8 @@ RustboroCity_DevonCorp_1F_OnTransition:
end
RustboroCity_DevonCorp_1F_EventScript_BlockStairs::
- setobjectxyperm LOCALID_STAIR_GUARD, 14, 2
- setobjectmovementtype LOCALID_STAIR_GUARD, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_DEVON_CORP_STAIR_GUARD, 14, 2
+ setobjectmovementtype LOCALID_DEVON_CORP_STAIR_GUARD, MOVEMENT_TYPE_FACE_DOWN
return
RustboroCity_DevonCorp_1F_EventScript_Employee::
diff --git a/data/maps/RustboroCity_DevonCorp_2F/map.json b/data/maps/RustboroCity_DevonCorp_2F/map.json
index 3892ba40ae..70a5312f9f 100644
--- a/data/maps/RustboroCity_DevonCorp_2F/map.json
+++ b/data/maps/RustboroCity_DevonCorp_2F/map.json
@@ -67,6 +67,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_FOSSIL_SCIENTIST",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 14,
"y": 8,
diff --git a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc
index ba5694e1f2..d55cb890c8 100644
--- a/data/maps/RustboroCity_DevonCorp_2F/scripts.inc
+++ b/data/maps/RustboroCity_DevonCorp_2F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_FOSSIL_SCIENTIST, 5
-
RustboroCity_DevonCorp_2F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_DevonCorp_2F_OnTransition
end_map_scripts
diff --git a/data/maps/RustboroCity_DevonCorp_3F/map.json b/data/maps/RustboroCity_DevonCorp_3F/map.json
index 4ddb727185..ffe289e759 100644
--- a/data/maps/RustboroCity_DevonCorp_3F/map.json
+++ b/data/maps/RustboroCity_DevonCorp_3F/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_DEVON_CORP_3F_EMPLOYEE",
"graphics_id": "OBJ_EVENT_GFX_MAN_2",
"x": 3,
"y": 5,
diff --git a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc
index 0861b4d106..720f6ed0ec 100644
--- a/data/maps/RustboroCity_DevonCorp_3F/scripts.inc
+++ b/data/maps/RustboroCity_DevonCorp_3F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_DEVON_EMPLOYEE, 2
-
RustboroCity_DevonCorp_3F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_DevonCorp_3F_OnTransition
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, RustboroCity_DevonCorp_3F_OnWarp
@@ -11,8 +9,8 @@ RustboroCity_DevonCorp_3F_OnTransition:
end
RustboroCity_DevonCorp_3F_EventScript_SetEmployeePos::
- setobjectxyperm LOCALID_DEVON_EMPLOYEE, 3, 2
- setobjectmovementtype LOCALID_DEVON_EMPLOYEE, MOVEMENT_TYPE_FACE_LEFT
+ setobjectxyperm LOCALID_DEVON_CORP_3F_EMPLOYEE, 3, 2
+ setobjectmovementtype LOCALID_DEVON_CORP_3F_EMPLOYEE, MOVEMENT_TYPE_FACE_LEFT
return
RustboroCity_DevonCorp_3F_OnWarp:
@@ -20,7 +18,7 @@ RustboroCity_DevonCorp_3F_OnWarp:
end_map_script_table
RustboroCity_DevonCorp_3F_EventScript_PlayerFaceEast::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_EAST
+ turnobject LOCALID_PLAYER, DIR_EAST
end
RustboroCity_DevonCorp_3F_OnFrame:
@@ -31,22 +29,22 @@ RustboroCity_DevonCorp_3F_EventScript_MeetPresident::
lockall
msgbox RustboroCity_DevonCorp_3F_Text_ThisIs3rdFloorWaitHere, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_EmployeeWalkOffscreen
+ applymovement LOCALID_DEVON_CORP_3F_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_EmployeeWalkOffscreen
waitmovement 0
delay 80
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_EmployeeReturnToPlayer
+ applymovement LOCALID_DEVON_CORP_3F_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_EmployeeReturnToPlayer
waitmovement 0
msgbox RustboroCity_DevonCorp_3F_Text_WordWithPresidentComeWithMe, MSGBOX_DEFAULT
closemessage
playbgm MUS_FOLLOW_ME, FALSE
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_LeadPlayerToPresident
- applymovement OBJ_EVENT_ID_PLAYER, RustboroCity_DevonCorp_3F_Movement_PlayerFollowToPresident
+ applymovement LOCALID_DEVON_CORP_3F_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_LeadPlayerToPresident
+ applymovement LOCALID_PLAYER, RustboroCity_DevonCorp_3F_Movement_PlayerFollowToPresident
waitmovement 0
msgbox RustboroCity_DevonCorp_3F_Text_PleaseGoAhead, MSGBOX_DEFAULT
closemessage
fadedefaultbgm
- applymovement LOCALID_DEVON_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_EmployeeFaceDesk
- applymovement OBJ_EVENT_ID_PLAYER, RustboroCity_DevonCorp_3F_Movement_PlayerApproachDesk
+ applymovement LOCALID_DEVON_CORP_3F_EMPLOYEE, RustboroCity_DevonCorp_3F_Movement_EmployeeFaceDesk
+ applymovement LOCALID_PLAYER, RustboroCity_DevonCorp_3F_Movement_PlayerApproachDesk
waitmovement 0
msgbox RustboroCity_DevonCorp_3F_Text_MrStoneIHaveFavor, MSGBOX_DEFAULT
giveitem ITEM_LETTER
diff --git a/data/maps/RustboroCity_Flat1_2F/map.json b/data/maps/RustboroCity_Flat1_2F/map.json
index bb87670627..5591c344ff 100644
--- a/data/maps/RustboroCity_Flat1_2F/map.json
+++ b/data/maps/RustboroCity_Flat1_2F/map.json
@@ -80,6 +80,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_WALDAS_DAD",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 8,
"y": 5,
diff --git a/data/maps/RustboroCity_Flat1_2F/scripts.inc b/data/maps/RustboroCity_Flat1_2F/scripts.inc
index 4122443f3e..7d7062b3a3 100644
--- a/data/maps/RustboroCity_Flat1_2F/scripts.inc
+++ b/data/maps/RustboroCity_Flat1_2F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WALDAS_DAD, 6
-
RustboroCity_Flat1_2F_MapScripts::
end_map_scripts
diff --git a/data/maps/RustboroCity_Mart/map.json b/data/maps/RustboroCity_Mart/map.json
index 92a23b6bf0..886b500df6 100644
--- a/data/maps/RustboroCity_Mart/map.json
+++ b/data/maps/RustboroCity_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_RUSTBORO_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/RustboroCity_Mart/scripts.inc b/data/maps/RustboroCity_Mart/scripts.inc
index 0f4e4903f7..932ad1a13c 100644
--- a/data/maps/RustboroCity_Mart/scripts.inc
+++ b/data/maps/RustboroCity_Mart/scripts.inc
@@ -28,9 +28,7 @@ RustboroCity_Mart_Pokemart_Basic:
.2byte ITEM_X_SPEED
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
RustboroCity_Mart_EventScript_PokemartExpanded::
pokemart RustboroCity_Mart_Pokemart_Expanded
@@ -52,9 +50,7 @@ RustboroCity_Mart_Pokemart_Expanded:
.2byte ITEM_X_SPEED
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
RustboroCity_Mart_EventScript_PokefanF::
msgbox RustboroCity_Mart_Text_BuyingHealsInCaseOfShroomish, MSGBOX_NPC
diff --git a/data/maps/RustboroCity_PokemonCenter_1F/map.json b/data/maps/RustboroCity_PokemonCenter_1F/map.json
index d187d49a32..be36274d8f 100644
--- a/data/maps/RustboroCity_PokemonCenter_1F/map.json
+++ b/data/maps/RustboroCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_RUSTBORO_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/RustboroCity_PokemonCenter_1F/scripts.inc b/data/maps/RustboroCity_PokemonCenter_1F/scripts.inc
index 544b2eeef7..bb6a8f02f9 100644
--- a/data/maps/RustboroCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/RustboroCity_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
RustboroCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, RustboroCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -11,7 +9,7 @@ RustboroCity_PokemonCenter_1F_OnTransition:
end
RustboroCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_RUSTBORO_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/RusturfTunnel/map.json b/data/maps/RusturfTunnel/map.json
index ef07714add..9883ac306a 100644
--- a/data/maps/RusturfTunnel/map.json
+++ b/data/maps/RusturfTunnel/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_RUSTURF_TUNNEL_WANDAS_BF",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 23,
"y": 5,
@@ -67,6 +68,7 @@
"flag": "FLAG_ITEM_RUSTURF_TUNNEL_MAX_ETHER"
},
{
+ "local_id": "LOCALID_RUSTURF_TUNNEL_BRINEY",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 5,
"y": 4,
@@ -80,6 +82,7 @@
"flag": "FLAG_HIDE_RUSTURF_TUNNEL_BRINEY"
},
{
+ "local_id": "LOCALID_RUSTURF_TUNNEL_GRUNT",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 14,
"y": 5,
@@ -93,6 +96,7 @@
"flag": "FLAG_HIDE_RUSTURF_TUNNEL_AQUA_GRUNT"
},
{
+ "local_id": "LOCALID_RUSTURF_TUNNEL_PEEKO",
"graphics_id": "OBJ_EVENT_GFX_WINGULL",
"x": 14,
"y": 4,
@@ -132,6 +136,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_RUSTURF_TUNNEL_WANDA",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_2",
"x": 25,
"y": 4,
diff --git a/data/maps/RusturfTunnel/scripts.inc b/data/maps/RusturfTunnel/scripts.inc
index 0071b83794..7a524cdb10 100644
--- a/data/maps/RusturfTunnel/scripts.inc
+++ b/data/maps/RusturfTunnel/scripts.inc
@@ -1,9 +1,3 @@
-.equ LOCALID_WANDAS_BF, 1
-.set LOCALID_BRINEY, 5
-.set LOCALID_GRUNT, 6
-.set LOCALID_PEEKO, 7
-.equ LOCALID_WANDA, 10
-
RusturfTunnel_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, RusturfTunnel_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, RusturfTunnel_OnFrame
@@ -19,8 +13,8 @@ RusturfTunnel_OnTransition:
end
RusturfTunnel_EventScript_SetAquaGruntAndPeekoPos::
- setobjectxyperm LOCALID_PEEKO, 13, 4
- setobjectxyperm LOCALID_GRUNT, 13, 5
+ setobjectxyperm LOCALID_RUSTURF_TUNNEL_PEEKO, 13, 4
+ setobjectxyperm LOCALID_RUSTURF_TUNNEL_GRUNT, 13, 5
return
RusturfTunnel_EventScript_Wanda::
@@ -79,36 +73,36 @@ RusturfTunnel_EventScript_ClearTunnelScene::
end
RusturfTunnel_EventScript_BoyfriendApproachWanda1::
- applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend1
- applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda1
+ applymovement LOCALID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend1
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda1
waitmovement 0
return
RusturfTunnel_EventScript_BoyfriendApproachWanda2::
- applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend
- applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda
+ applymovement LOCALID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda
waitmovement 0
- applymovement LOCALID_WANDA, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDA, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
RusturfTunnel_EventScript_BoyfriendApproachWanda3::
- applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend
- applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda
+ applymovement LOCALID_PLAYER, RusturfTunnel_Movement_PlayerWatchBoyfriend
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, RusturfTunnel_Movement_BoyfriendApproachWanda
waitmovement 0
- applymovement LOCALID_WANDA, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDA, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
RusturfTunnel_EventScript_FaceWandasBoyfriend1::
- applymovement LOCALID_WANDAS_BF, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
RusturfTunnel_EventScript_FaceWandasBoyfriend2::
- applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_BoyfriendFaceRight
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, RusturfTunnel_Movement_BoyfriendFaceRight
waitmovement 0
return
@@ -117,28 +111,28 @@ RusturfTunnel_EventScript_FaceWandasBoyfriend3::
RusturfTunnel_EventScript_WandasBoyfriendApproachPlayer::
closemessage
- applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendApproachPlayer
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendApproachPlayer
waitmovement 0
return
RusturfTunnel_EventScript_WandaAndBoyfriendExit1::
- applymovement LOCALID_WANDA, RusturfTunnel_Movement_WandaExit1
- applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendExit1
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDA, RusturfTunnel_Movement_WandaExit1
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendExit1
waitmovement 0
return
RusturfTunnel_EventScript_WandaAndBoyfriendExit::
- applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchWandaExit
- applymovement LOCALID_WANDA, RusturfTunnel_Movement_WandaExit
- applymovement LOCALID_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendExit
+ applymovement LOCALID_PLAYER, RusturfTunnel_Movement_PlayerWatchWandaExit
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDA, RusturfTunnel_Movement_WandaExit
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, RusturfTunnel_Movement_WandasBoyfriendExit
waitmovement 0
return
RusturfTunnel_EventScript_WandasBoyfriendNotice::
playse SE_PIN
- applymovement LOCALID_WANDAS_BF, Common_Movement_ExclamationMark
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_WANDAS_BF, Common_Movement_Delay48
+ applymovement LOCALID_RUSTURF_TUNNEL_WANDAS_BF, Common_Movement_Delay48
waitmovement 0
return
@@ -276,11 +270,11 @@ RusturfTunnel_EventScript_AquaGruntBackUp::
lockall
msgbox RusturfTunnel_Text_ComeAndGetSome, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT, RusturfTunnel_Movement_GruntAndPeekoBackUp
- applymovement LOCALID_PEEKO, RusturfTunnel_Movement_GruntAndPeekoBackUp
+ applymovement LOCALID_RUSTURF_TUNNEL_GRUNT, RusturfTunnel_Movement_GruntAndPeekoBackUp
+ applymovement LOCALID_RUSTURF_TUNNEL_PEEKO, RusturfTunnel_Movement_GruntAndPeekoBackUp
waitmovement 0
- copyobjectxytoperm LOCALID_GRUNT
- copyobjectxytoperm LOCALID_PEEKO
+ copyobjectxytoperm LOCALID_RUSTURF_TUNNEL_GRUNT
+ copyobjectxytoperm LOCALID_RUSTURF_TUNNEL_PEEKO
setvar VAR_RUSTURF_TUNNEL_STATE, 3
releaseall
end
@@ -310,19 +304,19 @@ RusturfTunnel_EventScript_Grunt::
msgbox RusturfTunnel_Text_GruntTakePackage, MSGBOX_DEFAULT
giveitem ITEM_DEVON_GOODS
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PushPlayerAsideForGrunt
- applymovement LOCALID_GRUNT, RusturfTunnel_Movement_GruntEscape
+ applymovement LOCALID_PLAYER, RusturfTunnel_Movement_PushPlayerAsideForGrunt
+ applymovement LOCALID_RUSTURF_TUNNEL_GRUNT, RusturfTunnel_Movement_GruntEscape
waitmovement 0
- removeobject LOCALID_GRUNT
+ removeobject LOCALID_RUSTURF_TUNNEL_GRUNT
delay 50
- addobject LOCALID_BRINEY
- applymovement LOCALID_BRINEY, RusturfTunnel_Movement_BrineyApproachPeeko1
+ addobject LOCALID_RUSTURF_TUNNEL_BRINEY
+ applymovement LOCALID_RUSTURF_TUNNEL_BRINEY, RusturfTunnel_Movement_BrineyApproachPeeko1
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerMoveAsideForBriney
- applymovement LOCALID_BRINEY, RusturfTunnel_Movement_BrineyApproachPeeko2
+ applymovement LOCALID_PLAYER, RusturfTunnel_Movement_PlayerMoveAsideForBriney
+ applymovement LOCALID_RUSTURF_TUNNEL_BRINEY, RusturfTunnel_Movement_BrineyApproachPeeko2
waitmovement 0
msgbox RusturfTunnel_Text_PeekoGladToSeeYouSafe, MSGBOX_DEFAULT
- applymovement LOCALID_BRINEY, Common_Movement_FacePlayer
+ applymovement LOCALID_RUSTURF_TUNNEL_BRINEY, Common_Movement_FacePlayer
waitmovement 0
message RusturfTunnel_Text_ThankYouLetsGoHomePeeko
waitmessage
@@ -331,12 +325,12 @@ RusturfTunnel_EventScript_Grunt::
waitbuttonpress
waitmoncry
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, RusturfTunnel_Movement_PlayerWatchBrineyExit
- applymovement LOCALID_BRINEY, RusturfTunnel_Movement_BrineyExit
- applymovement LOCALID_PEEKO, RusturfTunnel_Movement_PeekoExit
+ applymovement LOCALID_PLAYER, RusturfTunnel_Movement_PlayerWatchBrineyExit
+ applymovement LOCALID_RUSTURF_TUNNEL_BRINEY, RusturfTunnel_Movement_BrineyExit
+ applymovement LOCALID_RUSTURF_TUNNEL_PEEKO, RusturfTunnel_Movement_PeekoExit
waitmovement 0
- removeobject LOCALID_BRINEY
- removeobject LOCALID_PEEKO
+ removeobject LOCALID_RUSTURF_TUNNEL_BRINEY
+ removeobject LOCALID_RUSTURF_TUNNEL_PEEKO
clearflag FLAG_DEVON_GOODS_STOLEN
setflag FLAG_RECOVERED_DEVON_GOODS
setvar VAR_RUSTBORO_CITY_STATE, 4
diff --git a/data/maps/SSTidalCorridor/map.json b/data/maps/SSTidalCorridor/map.json
index 7a25d4450c..460359a82c 100644
--- a/data/maps/SSTidalCorridor/map.json
+++ b/data/maps/SSTidalCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SS_TIDAL_EXIT_SAILOR",
"graphics_id": "OBJ_EVENT_GFX_SAILOR",
"x": 1,
"y": 11,
@@ -67,6 +68,7 @@
"flag": "FLAG_HIDE_SS_TIDAL_CORRIDOR_MR_BRINEY"
},
{
+ "local_id": "LOCALID_SS_TIDAL_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 9,
"y": 10,
diff --git a/data/maps/SSTidalCorridor/scripts.inc b/data/maps/SSTidalCorridor/scripts.inc
index 73d2c5ed6d..261ca98f4c 100644
--- a/data/maps/SSTidalCorridor/scripts.inc
+++ b/data/maps/SSTidalCorridor/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_SAILOR, 1
-.set LOCALID_SCOTT, 5
-
SSTidalCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, SSTidalCorridor_OnFrame
end_map_scripts
@@ -188,20 +185,20 @@ SSTidalCorridor_EventScript_TrainerNotDefeated::
SSTidalCorridor_EventScript_ScottScene::
lockall
- applymovement LOCALID_SCOTT, SSTidalCorridor_Movement_ScottApproachPlayer
+ applymovement LOCALID_SS_TIDAL_SCOTT, SSTidalCorridor_Movement_ScottApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox SSTidalCorridor_Text_ScottBattleFrontierInvite, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, SSTidalCorridor_Movement_PlayerWatchScottExit
- applymovement LOCALID_SAILOR, SSTidalCorridor_Movement_SailorMoveForScott
- applymovement LOCALID_SCOTT, SSTidalCorridor_Movement_ScottExit
+ applymovement LOCALID_PLAYER, SSTidalCorridor_Movement_PlayerWatchScottExit
+ applymovement LOCALID_SS_TIDAL_EXIT_SAILOR, SSTidalCorridor_Movement_SailorMoveForScott
+ applymovement LOCALID_SS_TIDAL_SCOTT, SSTidalCorridor_Movement_ScottExit
waitmovement 0
playse SE_EXIT
waitse
- removeobject LOCALID_SCOTT
- applymovement LOCALID_SAILOR, SSTidalCorridor_Movement_SailorReturn
+ removeobject LOCALID_SS_TIDAL_SCOTT
+ applymovement LOCALID_SS_TIDAL_EXIT_SAILOR, SSTidalCorridor_Movement_SailorReturn
waitmovement 0
delay 30
setflag FLAG_MET_SCOTT_ON_SS_TIDAL
diff --git a/data/maps/SafariZone_South/map.json b/data/maps/SafariZone_South/map.json
index dee1e40629..4fffe8afb9 100644
--- a/data/maps/SafariZone_South/map.json
+++ b/data/maps/SafariZone_South/map.json
@@ -31,6 +31,7 @@
],
"object_events": [
{
+ "local_id": "LOCALID_SAFARI_EXIT_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_CAMPER",
"x": 32,
"y": 34,
diff --git a/data/maps/SafariZone_South/scripts.inc b/data/maps/SafariZone_South/scripts.inc
index 4b8c715d2a..639a65549b 100644
--- a/data/maps/SafariZone_South/scripts.inc
+++ b/data/maps/SafariZone_South/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
SafariZone_South_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SafariZone_South_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, SafariZone_South_OnFrame
@@ -11,11 +9,11 @@ SafariZone_South_OnFrame:
SafariZone_South_EventScript_EnterSafariZone::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, SafariZone_South_Movement_PlayerEnter
+ applymovement LOCALID_PLAYER, SafariZone_South_Movement_PlayerEnter
waitmovement 0
- applymovement LOCALID_ATTENDANT, SafariZone_South_Movement_ExitAttendantBlockDoor
+ applymovement LOCALID_SAFARI_EXIT_ATTENDANT, SafariZone_South_Movement_ExitAttendantBlockDoor
waitmovement 0
- setobjectxyperm LOCALID_ATTENDANT, 32, 34
+ setobjectxyperm LOCALID_SAFARI_EXIT_ATTENDANT, 32, 34
setvar VAR_SAFARI_ZONE_STATE, 0
releaseall
end
@@ -25,7 +23,7 @@ SafariZone_South_OnTransition:
end
SafariZone_South_EventScript_SetExitAttendantAside::
- setobjectxyperm LOCALID_ATTENDANT, 31, 34
+ setobjectxyperm LOCALID_SAFARI_EXIT_ATTENDANT, 31, 34
return
SafariZone_South_Movement_PlayerEnter:
@@ -74,17 +72,17 @@ SafariZone_South_EventScript_ExitEarly::
end
SafariZone_South_EventScript_ExitEarlyNorth::
- applymovement LOCALID_ATTENDANT, SafariZone_South_Movement_MoveExitAttendantNorth
+ applymovement LOCALID_SAFARI_EXIT_ATTENDANT, SafariZone_South_Movement_MoveExitAttendantNorth
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, SafariZone_South_Movement_PlayerExitNorth
+ applymovement LOCALID_PLAYER, SafariZone_South_Movement_PlayerExitNorth
waitmovement 0
goto SafariZone_South_EventScript_Exit
end
SafariZone_South_EventScript_ExitEarlyEast::
- applymovement LOCALID_ATTENDANT, SafariZone_South_Movement_MoveExitAttendantEast
+ applymovement LOCALID_SAFARI_EXIT_ATTENDANT, SafariZone_South_Movement_MoveExitAttendantEast
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, SafariZone_South_Movement_PlayerExitEast
+ applymovement LOCALID_PLAYER, SafariZone_South_Movement_PlayerExitEast
waitmovement 0
goto SafariZone_South_EventScript_Exit
end
diff --git a/data/maps/SeafloorCavern_Entrance/map.json b/data/maps/SeafloorCavern_Entrance/map.json
index 5e88d71432..7968d7afe9 100644
--- a/data/maps/SeafloorCavern_Entrance/map.json
+++ b/data/maps/SeafloorCavern_Entrance/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 10,
"y": 2,
diff --git a/data/maps/SeafloorCavern_Entrance/scripts.inc b/data/maps/SeafloorCavern_Entrance/scripts.inc
index 22a52d2905..55e2df2d0a 100644
--- a/data/maps/SeafloorCavern_Entrance/scripts.inc
+++ b/data/maps/SeafloorCavern_Entrance/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_GRUNT, 1
-
SeafloorCavern_Entrance_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, SeafloorCavern_Entrance_OnResume
end_map_scripts
@@ -14,9 +12,9 @@ SeafloorCavern_Entrance_EventScript_Grunt::
goto_if_eq VAR_HAS_TALKED_TO_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, 1, SeafloorCavern_Entrance_EventScript_GruntSpeechShort
waitse
playse SE_PIN
- applymovement LOCALID_GRUNT, Common_Movement_ExclamationMark
+ applymovement LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_GRUNT, Common_Movement_Delay48
+ applymovement LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, Common_Movement_Delay48
waitmovement 0
delay 20
call_if_eq VAR_FACING, DIR_WEST, SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest
@@ -24,10 +22,10 @@ SeafloorCavern_Entrance_EventScript_Grunt::
call_if_eq VAR_FACING, DIR_NORTH, SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth
delay 30
setvar VAR_HAS_TALKED_TO_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, 1
- copyobjectxytoperm LOCALID_GRUNT
+ copyobjectxytoperm LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT
msgbox SeafloorCavern_Entrance_Text_HearMagmaNearMossdeep, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
releaseall
end
@@ -38,23 +36,23 @@ SeafloorCavern_Entrance_EventScript_GruntSpeechShort::
call_if_eq VAR_FACING, DIR_NORTH, SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth
msgbox SeafloorCavern_Entrance_Text_HearMagmaNearMossdeepShort, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
releaseall
end
SeafloorCavern_Entrance_EventScript_GruntFacePlayerEast::
- applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
SeafloorCavern_Entrance_EventScript_GruntFacePlayerWest::
- applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
SeafloorCavern_Entrance_EventScript_GruntFacePlayerNorth::
- applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_SEAFLOOR_CAVERN_ENTRANCE_GRUNT, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
diff --git a/data/maps/SeafloorCavern_Room9/map.json b/data/maps/SeafloorCavern_Room9/map.json
index 04fb621df1..241a53fe69 100644
--- a/data/maps/SeafloorCavern_Room9/map.json
+++ b/data/maps/SeafloorCavern_Room9/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SEAFLOOR_CAVERN_KYOGRE",
"graphics_id": "OBJ_EVENT_GFX_KYOGRE_FRONT",
"x": 17,
"y": 38,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE"
},
{
+ "local_id": "LOCALID_SEAFLOOR_CAVERN_ARCHIE",
"graphics_id": "OBJ_EVENT_GFX_ARCHIE",
"x": 9,
"y": 42,
@@ -41,6 +43,7 @@
"flag": "FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_ARCHIE"
},
{
+ "local_id": "LOCALID_SEAFLOOR_CAVERN_MAXIE",
"graphics_id": "OBJ_EVENT_GFX_MAXIE",
"x": 9,
"y": 42,
@@ -54,6 +57,7 @@
"flag": "FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAXIE"
},
{
+ "local_id": "LOCALID_SEAFLOOR_CAVERN_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_M",
"x": 8,
"y": 41,
@@ -67,6 +71,7 @@
"flag": "FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAGMA_GRUNTS"
},
{
+ "local_id": "LOCALID_SEAFLOOR_CAVERN_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_MAGMA_MEMBER_F",
"x": 8,
"y": 42,
@@ -93,6 +98,7 @@
"flag": "FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_EARTHQUAKE"
},
{
+ "local_id": "LOCALID_SEAFLOOR_CAVERN_KYOGRE_SLEEPING",
"graphics_id": "OBJ_EVENT_GFX_KYOGRE_ASLEEP",
"x": 17,
"y": 38,
diff --git a/data/maps/SeafloorCavern_Room9/scripts.inc b/data/maps/SeafloorCavern_Room9/scripts.inc
index 4f340f981d..8081e01bef 100644
--- a/data/maps/SeafloorCavern_Room9/scripts.inc
+++ b/data/maps/SeafloorCavern_Room9/scripts.inc
@@ -1,28 +1,21 @@
-.set LOCALID_KYOGRE, 1
-.set LOCALID_ARCHIE, 2
-.set LOCALID_MAXIE, 3
-.set LOCALID_GRUNT_1, 4
-.set LOCALID_GRUNT_2, 5
-.set LOCALID_KYOGRE_SLEEPING, 7
-
SeafloorCavern_Room9_MapScripts::
end_map_scripts
SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre::
lockall
- setvar VAR_0x8004, LOCALID_ARCHIE
- setvar VAR_0x8005, LOCALID_MAXIE
- setvar VAR_0x8006, LOCALID_GRUNT_1
- setvar VAR_0x8007, LOCALID_GRUNT_2
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ setvar VAR_0x8004, LOCALID_SEAFLOOR_CAVERN_ARCHIE
+ setvar VAR_0x8005, LOCALID_SEAFLOOR_CAVERN_MAXIE
+ setvar VAR_0x8006, LOCALID_SEAFLOOR_CAVERN_GRUNT_1
+ setvar VAR_0x8007, LOCALID_SEAFLOOR_CAVERN_GRUNT_2
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, SeafloorCavern_Room9_Movement_Delay32
+ applymovement LOCALID_PLAYER, SeafloorCavern_Room9_Movement_Delay32
waitmovement 0
playbgm MUS_ENCOUNTER_AQUA, FALSE
msgbox SeafloorCavern_Room9_Text_ArchieHoldItRightThere, MSGBOX_DEFAULT
closemessage
addobject VAR_0x8004
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
applymovement VAR_0x8004, SeafloorCavern_Room9_Movement_ArchieApproachPlayer
waitmovement 0
@@ -52,14 +45,14 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre::
playse SE_ORB
special DoOrbEffect
applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterUp
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
delay 150
- removeobject LOCALID_KYOGRE_SLEEPING
- addobject LOCALID_KYOGRE
+ removeobject LOCALID_SEAFLOOR_CAVERN_KYOGRE_SLEEPING
+ addobject LOCALID_SEAFLOOR_CAVERN_KYOGRE
waitstate
delay 60
- applymovement LOCALID_KYOGRE, SeafloorCavern_Room9_Movement_KyogreApproach
+ applymovement LOCALID_SEAFLOOR_CAVERN_KYOGRE, SeafloorCavern_Room9_Movement_KyogreApproach
waitmovement 0
special FadeOutOrbEffect
waitstate
@@ -69,9 +62,9 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre::
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
- applymovement LOCALID_KYOGRE, SeafloorCavern_Room9_Movement_KyogreExit
+ applymovement LOCALID_SEAFLOOR_CAVERN_KYOGRE, SeafloorCavern_Room9_Movement_KyogreExit
waitmovement 0
- removeobject LOCALID_KYOGRE
+ removeobject LOCALID_SEAFLOOR_CAVERN_KYOGRE
delay 4
setvar VAR_0x8004, 2 @ vertical pan
setvar VAR_0x8005, 2 @ horizontal pan
@@ -80,13 +73,13 @@ SeafloorCavern_Room9_EventScript_ArchieAwakenKyogre::
special ShakeCamera
waitstate
delay 30
- setvar VAR_0x8004, LOCALID_ARCHIE
- setvar VAR_0x8005, LOCALID_MAXIE
- setvar VAR_0x8006, LOCALID_GRUNT_1
- setvar VAR_0x8007, LOCALID_GRUNT_2
+ setvar VAR_0x8004, LOCALID_SEAFLOOR_CAVERN_ARCHIE
+ setvar VAR_0x8005, LOCALID_SEAFLOOR_CAVERN_MAXIE
+ setvar VAR_0x8006, LOCALID_SEAFLOOR_CAVERN_GRUNT_1
+ setvar VAR_0x8007, LOCALID_SEAFLOOR_CAVERN_GRUNT_2
msgbox SeafloorCavern_Room9_Text_ArchieWhereDidKyogreGo, MSGBOX_DEFAULT
playse SE_PC_LOGIN
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox SeafloorCavern_Room9_Text_ArchieAMessageFromOutside, MSGBOX_DEFAULT
closemessage
diff --git a/data/maps/SkyPillar_Outside/map.json b/data/maps/SkyPillar_Outside/map.json
index d72441266e..545ebcd25e 100644
--- a/data/maps/SkyPillar_Outside/map.json
+++ b/data/maps/SkyPillar_Outside/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SKY_PILLAR_WALLACE",
"graphics_id": "OBJ_EVENT_GFX_WALLACE",
"x": 13,
"y": 7,
diff --git a/data/maps/SkyPillar_Outside/scripts.inc b/data/maps/SkyPillar_Outside/scripts.inc
index 34033899de..5d5c831f2c 100644
--- a/data/maps/SkyPillar_Outside/scripts.inc
+++ b/data/maps/SkyPillar_Outside/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WALLACE, 1
-
SkyPillar_Outside_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_Outside_OnTransition
map_script MAP_SCRIPT_ON_LOAD, SkyPillar_Outside_OnLoad
@@ -34,9 +32,9 @@ SkyPillar_Outside_OnFrame:
SkyPillar_Outside_EventScript_WallaceScene::
lockall
- applymovement LOCALID_WALLACE, SkyPillar_Outside_Movement_WallaceApproachPlayer
+ applymovement LOCALID_SKY_PILLAR_WALLACE, SkyPillar_Outside_Movement_WallaceApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox SkyPillar_Outside_Text_OpenedDoorToSkyPillar, MSGBOX_DEFAULT
closemessage
@@ -50,8 +48,8 @@ SkyPillar_Outside_EventScript_WallaceScene::
delay 40
msgbox SkyPillar_Outside_Text_EarthquakeNotMomentToWaste, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, SkyPillar_Outside_Movement_PlayerClimbSkyPillar
- applymovement LOCALID_WALLACE, SkyPillar_Outside_Movement_WallaceClimbSkyPillar
+ applymovement LOCALID_PLAYER, SkyPillar_Outside_Movement_PlayerClimbSkyPillar
+ applymovement LOCALID_SKY_PILLAR_WALLACE, SkyPillar_Outside_Movement_WallaceClimbSkyPillar
waitmovement 0
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 3 @ horizontal pan
@@ -60,13 +58,13 @@ SkyPillar_Outside_EventScript_WallaceScene::
special ShakeCamera
waitstate
delay 20
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SKY_PILLAR_WALLACE, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
delay 10
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_SKY_PILLAR_WALLACE, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 20
- applymovement LOCALID_WALLACE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_SKY_PILLAR_WALLACE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
msgbox SkyPillar_Outside_Text_SituationGettingWorse, MSGBOX_DEFAULT
@@ -83,7 +81,7 @@ SkyPillar_Outside_EventScript_WallaceScene::
fadescreenswapbuffers FADE_TO_BLACK
clearflag FLAG_HIDE_MAP_NAME_POPUP
setvar VAR_SOOTOPOLIS_CITY_STATE, 4
- removeobject LOCALID_WALLACE
+ removeobject LOCALID_SKY_PILLAR_WALLACE
clearflag FLAG_HIDE_SOOTOPOLIS_CITY_WALLACE
fadescreenswapbuffers FADE_FROM_BLACK
releaseall
diff --git a/data/maps/SkyPillar_Top/map.json b/data/maps/SkyPillar_Top/map.json
index 4c7ea03d15..888e05805d 100644
--- a/data/maps/SkyPillar_Top/map.json
+++ b/data/maps/SkyPillar_Top/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_RAYQUAZA_SLEEPING",
"graphics_id": "OBJ_EVENT_GFX_RAYQUAZA",
"x": 14,
"y": 7,
diff --git a/data/maps/SkyPillar_Top/scripts.inc b/data/maps/SkyPillar_Top/scripts.inc
index 464ba07467..dfda804578 100644
--- a/data/maps/SkyPillar_Top/scripts.inc
+++ b/data/maps/SkyPillar_Top/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_RAYQUAZA_SLEEPING, 1
-
SkyPillar_Top_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, SkyPillar_Top_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, SkyPillar_Top_OnTransition
@@ -90,10 +88,10 @@ SkyPillar_Top_EventScript_RanFromRayquaza2::
SkyPillar_Top_EventScript_AwakenRayquaza::
lockall
fadeoutbgm 1
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp
+ applymovement LOCALID_PLAYER, Common_Movement_FaceUp
waitmovement 0
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SkyPillar_Top_Movement_CameraPanUp
+ applymovement LOCALID_CAMERA, SkyPillar_Top_Movement_CameraPanUp
waitmovement 0
special RemoveCameraObject
applymovement LOCALID_RAYQUAZA_SLEEPING, SkyPillar_Top_Movement_RayquazaStir
@@ -123,7 +121,7 @@ SkyPillar_Top_EventScript_AwakenRayquaza::
delay 20
fadeinbgm 1
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SkyPillar_Top_Movement_CameraPanDown
+ applymovement LOCALID_CAMERA, SkyPillar_Top_Movement_CameraPanDown
waitmovement 0
special RemoveCameraObject
setvar VAR_SOOTOPOLIS_CITY_STATE, 5
diff --git a/data/maps/SlateportCity/map.json b/data/maps/SlateportCity/map.json
index 972b51447e..aa281c6bb8 100644
--- a/data/maps/SlateportCity/map.json
+++ b/data/maps/SlateportCity/map.json
@@ -31,6 +31,7 @@
],
"object_events": [
{
+ "local_id": "LOCALID_SLATEPORT_FAT_MAN",
"graphics_id": "OBJ_EVENT_GFX_FAT_MAN",
"x": 21,
"y": 11,
@@ -44,6 +45,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_MAN_1",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 34,
"y": 29,
@@ -57,6 +59,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_RICH_BOY",
"graphics_id": "OBJ_EVENT_GFX_RICH_BOY",
"x": 5,
"y": 13,
@@ -83,6 +86,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_F",
"x": 31,
"y": 27,
@@ -96,6 +100,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_SLATEPORT_COOK",
"graphics_id": "OBJ_EVENT_GFX_COOK",
"x": 5,
"y": 43,
@@ -109,6 +114,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_OLD_WOMAN",
"graphics_id": "OBJ_EVENT_GFX_OLD_WOMAN",
"x": 20,
"y": 37,
@@ -122,6 +128,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_GIRL",
"graphics_id": "OBJ_EVENT_GFX_GIRL_1",
"x": 8,
"y": 42,
@@ -135,6 +142,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_TY",
"graphics_id": "OBJ_EVENT_GFX_CAMERAMAN",
"x": 29,
"y": 13,
@@ -148,6 +156,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_GABBY_AND_TY"
},
{
+ "local_id": "LOCALID_SLATEPORT_GABBY",
"graphics_id": "OBJ_EVENT_GFX_REPORTER_F",
"x": 28,
"y": 14,
@@ -161,6 +170,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_GABBY_AND_TY"
},
{
+ "local_id": "LOCALID_SLATEPORT_CAPT_STERN",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 28,
"y": 13,
@@ -252,6 +262,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 30,
"y": 27,
@@ -265,6 +276,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_3",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 29,
"y": 27,
@@ -343,6 +355,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TM_SALESMAN"
},
{
+ "local_id": "LOCALID_SLATEPORT_ENERGY_GURU",
"graphics_id": "OBJ_EVENT_GFX_POKEFAN_M",
"x": 5,
"y": 47,
@@ -356,6 +369,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_4",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 22,
"y": 27,
@@ -369,6 +383,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_5",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 23,
"y": 27,
@@ -382,6 +397,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_6",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 24,
"y": 27,
@@ -395,6 +411,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_7",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 21,
"y": 26,
@@ -408,6 +425,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_8",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 20,
"y": 26,
@@ -421,6 +439,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_9",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 26,
"y": 27,
@@ -447,6 +466,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA"
},
{
+ "local_id": "LOCALID_SLATEPORT_GRUNT_11",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 25,
"y": 27,
@@ -473,6 +493,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_SCOTT",
"graphics_id": "OBJ_EVENT_GFX_SCOTT",
"x": 10,
"y": 12,
diff --git a/data/maps/SlateportCity/scripts.inc b/data/maps/SlateportCity/scripts.inc
index 334c0cecfa..b37fbdd2ad 100644
--- a/data/maps/SlateportCity/scripts.inc
+++ b/data/maps/SlateportCity/scripts.inc
@@ -1,26 +1,3 @@
-.set LOCALID_FAT_MAN, 1
-.set LOCALID_MAN_1, 2
-.set LOCALID_RICH_BOY, 3
-.set LOCALID_GRUNT_1, 5
-.set LOCALID_COOK, 6
-.set LOCALID_OLD_WOMAN, 7
-.set LOCALID_GIRL, 8
-.set LOCALID_TY, 9
-.set LOCALID_GABBY, 10
-.set LOCALID_CAPT_STERN, 11
-.set LOCALID_GRUNT_2, 18
-.set LOCALID_GRUNT_3, 19
-.set LOCALID_GRUNT_4, 26
-.set LOCALID_GRUNT_5, 27
-.set LOCALID_GRUNT_6, 28
-.set LOCALID_GRUNT_7, 29
-.set LOCALID_GRUNT_8, 30
-.set LOCALID_GRUNT_9, 31
-.set LOCALID_GRUNT_11, 33
-.set LOCALID_SCOTT, 35
-
-@ Note: LOCALID_SLATEPORT_ENERGY_GURU is a local id for this map used elsewhere. It's defined in event_objects.h
-
SlateportCity_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_OnFrame
@@ -40,33 +17,33 @@ SlateportCity_EventScript_EnterSlateport::
return
SlateportCity_EventScript_MovePeopleForSternInterview::
- setobjectxyperm LOCALID_CAPT_STERN, 28, 13
- setobjectxyperm LOCALID_OLD_WOMAN, 25, 13
- setobjectxyperm LOCALID_RICH_BOY, 25, 14
- setobjectxyperm LOCALID_COOK, 27, 16
- setobjectxyperm LOCALID_GIRL, 28, 16
- setobjectxyperm LOCALID_FAT_MAN, 29, 16
- setobjectxyperm LOCALID_MAN_1, 31, 14
- setobjectmovementtype LOCALID_CAPT_STERN, MOVEMENT_TYPE_FACE_DOWN
- setobjectmovementtype LOCALID_OLD_WOMAN, MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT
- setobjectmovementtype LOCALID_RICH_BOY, MOVEMENT_TYPE_FACE_UP_AND_RIGHT
- setobjectmovementtype LOCALID_COOK, MOVEMENT_TYPE_FACE_UP
- setobjectmovementtype LOCALID_GIRL, MOVEMENT_TYPE_FACE_UP
- setobjectmovementtype LOCALID_FAT_MAN, MOVEMENT_TYPE_FACE_UP
- setobjectmovementtype LOCALID_MAN_1, MOVEMENT_TYPE_FACE_LEFT
+ setobjectxyperm LOCALID_SLATEPORT_CAPT_STERN, 28, 13
+ setobjectxyperm LOCALID_SLATEPORT_OLD_WOMAN, 25, 13
+ setobjectxyperm LOCALID_SLATEPORT_RICH_BOY, 25, 14
+ setobjectxyperm LOCALID_SLATEPORT_COOK, 27, 16
+ setobjectxyperm LOCALID_SLATEPORT_GIRL, 28, 16
+ setobjectxyperm LOCALID_SLATEPORT_FAT_MAN, 29, 16
+ setobjectxyperm LOCALID_SLATEPORT_MAN_1, 31, 14
+ setobjectmovementtype LOCALID_SLATEPORT_CAPT_STERN, MOVEMENT_TYPE_FACE_DOWN
+ setobjectmovementtype LOCALID_SLATEPORT_OLD_WOMAN, MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT
+ setobjectmovementtype LOCALID_SLATEPORT_RICH_BOY, MOVEMENT_TYPE_FACE_UP_AND_RIGHT
+ setobjectmovementtype LOCALID_SLATEPORT_COOK, MOVEMENT_TYPE_FACE_UP
+ setobjectmovementtype LOCALID_SLATEPORT_GIRL, MOVEMENT_TYPE_FACE_UP
+ setobjectmovementtype LOCALID_SLATEPORT_FAT_MAN, MOVEMENT_TYPE_FACE_UP
+ setobjectmovementtype LOCALID_SLATEPORT_MAN_1, MOVEMENT_TYPE_FACE_LEFT
return
SlateportCity_EventScript_SetReadyForScottScene::
setflag FLAG_HIDE_MAP_NAME_POPUP
getplayerxy VAR_0x8004, VAR_0x8005
goto_if_eq VAR_0x8004, 30, SlateportCity_EventScript_MoveScottLeft
- setobjectxyperm LOCALID_SCOTT, 23, 27
- setobjectmovementtype LOCALID_SCOTT, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SLATEPORT_SCOTT, 23, 27
+ setobjectmovementtype LOCALID_SLATEPORT_SCOTT, MOVEMENT_TYPE_FACE_RIGHT
return
SlateportCity_EventScript_MoveScottLeft::
- setobjectxyperm LOCALID_SCOTT, 22, 27
- setobjectmovementtype LOCALID_SCOTT, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_SLATEPORT_SCOTT, 22, 27
+ setobjectmovementtype LOCALID_SLATEPORT_SCOTT, MOVEMENT_TYPE_FACE_RIGHT
return
SlateportCity_OnFrame:
@@ -75,17 +52,17 @@ SlateportCity_OnFrame:
SlateportCity_EventScript_ScottScene::
lockall
- addobject LOCALID_SCOTT
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Movement_PlayerFaceScott
- applymovement LOCALID_SCOTT, SlateportCity_Movement_ScottApproachPlayer
+ addobject LOCALID_SLATEPORT_SCOTT
+ applymovement LOCALID_PLAYER, SlateportCity_Movement_PlayerFaceScott
+ applymovement LOCALID_SLATEPORT_SCOTT, SlateportCity_Movement_ScottApproachPlayer
waitmovement 0
msgbox SlateportCity_Text_YouDroveTeamAquaAway, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SLATEPORT_SCOTT, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
delay 60
msgbox SlateportCity_Text_MaybeThisTrainer, MSGBOX_DEFAULT
- applymovement LOCALID_SCOTT, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_SLATEPORT_SCOTT, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox SlateportCity_Text_LetsRegisterEachOther, MSGBOX_DEFAULT
closemessage
@@ -98,11 +75,11 @@ SlateportCity_EventScript_ScottScene::
setflag FLAG_ENABLE_SCOTT_MATCH_CALL
msgbox SlateportCity_Text_KeepEyeOnTrainersBeSeeingYou, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_SCOTT, SlateportCity_Movement_ScottExit
+ applymovement LOCALID_SLATEPORT_SCOTT, SlateportCity_Movement_ScottExit
waitmovement 0
- removeobject LOCALID_SCOTT
- setobjectxyperm LOCALID_SCOTT, 10, 12
- setobjectmovementtype LOCALID_SCOTT, MOVEMENT_TYPE_FACE_DOWN
+ removeobject LOCALID_SLATEPORT_SCOTT
+ setobjectxyperm LOCALID_SLATEPORT_SCOTT, 10, 12
+ setobjectmovementtype LOCALID_SLATEPORT_SCOTT, MOVEMENT_TYPE_FACE_DOWN
clearflag FLAG_HIDE_MAP_NAME_POPUP
setvar VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE, 2
addvar VAR_SCOTT_STATE, 1
@@ -154,9 +131,7 @@ SlateportCity_Pokemart_EnergyGuru:
.2byte ITEM_ZINC
.2byte ITEM_CALCIUM
.2byte ITEM_HP_UP
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
SlateportCity_EventScript_EffortRibbonWoman::
lock
@@ -372,7 +347,7 @@ SlateportCity_EventScript_AquaGrunt1::
faceplayer
msgbox SlateportCity_Text_QuitPushing, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_1, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_1, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -382,7 +357,7 @@ SlateportCity_EventScript_AquaGrunt2::
faceplayer
msgbox SlateportCity_Text_AquaHasPolicy, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_2, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_2, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -392,7 +367,7 @@ SlateportCity_EventScript_AquaGrunt3::
faceplayer
msgbox SlateportCity_Text_BossIsBrilliant, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_3, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_3, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -402,7 +377,7 @@ SlateportCity_EventScript_AquaGrunt4::
faceplayer
msgbox SlateportCity_Text_WhatsNewSchemeIWonder, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_4, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_4, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -412,7 +387,7 @@ SlateportCity_EventScript_AquaGrunt5::
faceplayer
msgbox SlateportCity_Text_ShouldTakeItAll, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_5, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_5, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -422,7 +397,7 @@ SlateportCity_EventScript_AquaGrunt6::
faceplayer
msgbox SlateportCity_Text_DontButtIn, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_6, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_6, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -432,7 +407,7 @@ SlateportCity_EventScript_AquaGrunt7::
faceplayer
msgbox SlateportCity_Text_RemindsMeOfLongLineForGames, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_7, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_7, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -442,7 +417,7 @@ SlateportCity_EventScript_AquaGrunt8::
faceplayer
msgbox SlateportCity_Text_WhyAreWeLiningUp, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_8, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_8, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -451,31 +426,31 @@ SlateportCity_EventScript_AquaGrunt9::
lock
faceplayer
playse SE_PIN
- applymovement LOCALID_GRUNT_9, Common_Movement_ExclamationMark
+ applymovement LOCALID_SLATEPORT_GRUNT_9, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_GRUNT_9, Common_Movement_Delay48
+ applymovement LOCALID_SLATEPORT_GRUNT_9, Common_Movement_Delay48
waitmovement 0
msgbox SlateportCity_Text_WhatDoYouWant, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_9, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_9, Common_Movement_FaceOriginalDirection
waitmovement 0
- applymovement LOCALID_GRUNT_9, SlateportCity_Movement_DelayAquaGrunt
+ applymovement LOCALID_SLATEPORT_GRUNT_9, SlateportCity_Movement_DelayAquaGrunt
waitmovement 0
- applymovement LOCALID_GRUNT_9, Common_Movement_FacePlayer
+ applymovement LOCALID_SLATEPORT_GRUNT_9, Common_Movement_FacePlayer
waitmovement 0
msgbox SlateportCity_Text_IllReadSignForYou, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_9, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_9, Common_Movement_FaceOriginalDirection
waitmovement 0
- applymovement LOCALID_GRUNT_9, SlateportCity_Movement_DelayAquaGrunt
+ applymovement LOCALID_SLATEPORT_GRUNT_9, SlateportCity_Movement_DelayAquaGrunt
waitmovement 0
msgbox SlateportCity_Text_SaysSomethingLikeSeaIsEndless, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_9, Common_Movement_FacePlayer
+ applymovement LOCALID_SLATEPORT_GRUNT_9, Common_Movement_FacePlayer
waitmovement 0
- applymovement LOCALID_GRUNT_9, SlateportCity_Movement_DelayAquaGrunt
+ applymovement LOCALID_SLATEPORT_GRUNT_9, SlateportCity_Movement_DelayAquaGrunt
waitmovement 0
- applymovement LOCALID_GRUNT_9, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_9, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -494,7 +469,7 @@ SlateportCity_EventScript_AquaGrunt11::
faceplayer
msgbox SlateportCity_Text_HotSpringsAfterOperation, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_11, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SLATEPORT_GRUNT_11, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -514,9 +489,7 @@ SlateportCity_PokemartDecor_Dolls:
.2byte DECOR_AZURILL_DOLL
.2byte DECOR_MARILL_DOLL
.2byte DECOR_SKITTY_DOLL
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
SlateportCity_EventScript_ComeBackWithSecretPower::
msgbox gText_ComeBackWithSecretPower, MSGBOX_DEFAULT
@@ -550,9 +523,7 @@ SlateportCity_PokemartDecor:
.2byte DECOR_A_NOTE_MAT
.2byte DECOR_B_NOTE_MAT
.2byte DECOR_C_HIGH_NOTE_MAT
- .2byte DECOR_NONE
- release
- end
+ pokemartlistend
SlateportCity_EventScript_PowerTMClerk::
lock
@@ -568,9 +539,7 @@ SlateportCity_EventScript_PowerTMClerk::
SlateportCity_Pokemart_PowerTMs:
.2byte ITEM_TM_HIDDEN_POWER
.2byte ITEM_TM_SECRET_POWER
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
@ Scene with Capt Sterns interview and Team Aqua announcing plans to steal Submarine
SlateportCity_EventScript_CaptStern::
@@ -578,48 +547,48 @@ SlateportCity_EventScript_CaptStern::
msgbox SlateportCity_Text_SternMoveAheadWithExploration, MSGBOX_DEFAULT
msgbox SlateportCity_Text_GabbyWonderfulThanksForInterview, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GABBY, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_SLATEPORT_GABBY, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 10
- applymovement LOCALID_TY, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_SLATEPORT_TY, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 25
- applymovement LOCALID_CAPT_STERN, SlateportCity_Movement_SternWatchGabbyAndTyExit
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Movement_PlayerFaceStern
- applymovement LOCALID_GABBY, SlateportCity_Movement_GabbyExit
- applymovement LOCALID_TY, SlateportCity_Movement_TyExit
+ applymovement LOCALID_SLATEPORT_CAPT_STERN, SlateportCity_Movement_SternWatchGabbyAndTyExit
+ applymovement LOCALID_PLAYER, SlateportCity_Movement_PlayerFaceStern
+ applymovement LOCALID_SLATEPORT_GABBY, SlateportCity_Movement_GabbyExit
+ applymovement LOCALID_SLATEPORT_TY, SlateportCity_Movement_TyExit
waitmovement 0
- removeobject LOCALID_GABBY
- removeobject LOCALID_TY
+ removeobject LOCALID_SLATEPORT_GABBY
+ removeobject LOCALID_SLATEPORT_TY
msgbox SlateportCity_Text_SternWhewFirstInterview, MSGBOX_DEFAULT
- applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_SLATEPORT_CAPT_STERN, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox SlateportCity_Text_OhPlayerWeMadeDiscovery, MSGBOX_DEFAULT
playbgm MUS_ENCOUNTER_AQUA, FALSE
msgbox SlateportCity_Text_AquaWillAssumeControlOfSubmarine, MSGBOX_DEFAULT
- applymovement LOCALID_COOK, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_FAT_MAN, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_OLD_WOMAN, SlateportCity_Movement_OldWomanConcern
- applymovement LOCALID_RICH_BOY, Common_Movement_QuestionMark
- applymovement LOCALID_MAN_1, SlateportCity_Movement_ManConcern
+ applymovement LOCALID_SLATEPORT_COOK, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SLATEPORT_FAT_MAN, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SLATEPORT_OLD_WOMAN, SlateportCity_Movement_OldWomanConcern
+ applymovement LOCALID_SLATEPORT_RICH_BOY, Common_Movement_QuestionMark
+ applymovement LOCALID_SLATEPORT_MAN_1, SlateportCity_Movement_ManConcern
waitmovement 0
- applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_SLATEPORT_CAPT_STERN, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox SlateportCity_Text_SternWhatWasAllThat, MSGBOX_DEFAULT
playse SE_PIN
- applymovement LOCALID_CAPT_STERN, Common_Movement_ExclamationMark
+ applymovement LOCALID_SLATEPORT_CAPT_STERN, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_CAPT_STERN, Common_Movement_Delay48
+ applymovement LOCALID_SLATEPORT_CAPT_STERN, Common_Movement_Delay48
waitmovement 0
- applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_SLATEPORT_CAPT_STERN, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox SlateportCity_Text_FromHarborTryingToTakeSub, MSGBOX_DEFAULT
msgbox SlateportCity_Text_PleaseComeWithMe, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_CAPT_STERN, SlateportCity_Movement_SternEnterHarbor
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Movement_PlayerEnterHarbor
+ applymovement LOCALID_SLATEPORT_CAPT_STERN, SlateportCity_Movement_SternEnterHarbor
+ applymovement LOCALID_PLAYER, SlateportCity_Movement_PlayerEnterHarbor
waitmovement 0
- removeobject LOCALID_CAPT_STERN
+ removeobject LOCALID_SLATEPORT_CAPT_STERN
clearflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_CAPTAIN_STERN
clearflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_SUBMARINE_SHADOW
clearflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_AQUA_GRUNT
@@ -895,22 +864,22 @@ SlateportCity_EventScript_NotEnoughBerryPowder::
SlateportCity_EventScript_ScottBattleTentScene::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp
+ applymovement LOCALID_PLAYER, Common_Movement_FaceUp
waitmovement 0
opendoor 10, 12
waitdooranim
- addobject LOCALID_SCOTT
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Movement_PushPlayerDown
- applymovement LOCALID_SCOTT, SlateportCity_Movement_ScottExitBattleTent
+ addobject LOCALID_SLATEPORT_SCOTT
+ applymovement LOCALID_PLAYER, SlateportCity_Movement_PushPlayerDown
+ applymovement LOCALID_SLATEPORT_SCOTT, SlateportCity_Movement_ScottExitBattleTent
waitmovement 0
closedoor 10, 12
waitdooranim
msgbox SlateportCity_Text_TakingBattleTentChallenge, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Movement_PlayerWatchScottExit
- applymovement LOCALID_SCOTT, SlateportCity_Movement_ScottExitAfterBattleTent
+ applymovement LOCALID_PLAYER, SlateportCity_Movement_PlayerWatchScottExit
+ applymovement LOCALID_SLATEPORT_SCOTT, SlateportCity_Movement_ScottExitAfterBattleTent
waitmovement 0
- removeobject LOCALID_SCOTT
+ removeobject LOCALID_SLATEPORT_SCOTT
addvar VAR_SCOTT_STATE, 1
setvar VAR_SLATEPORT_OUTSIDE_MUSEUM_STATE, 3
releaseall
diff --git a/data/maps/SlateportCity_BattleTentBattleRoom/map.json b/data/maps/SlateportCity_BattleTentBattleRoom/map.json
index 27cce84b49..13b8005364 100644
--- a/data/maps/SlateportCity_BattleTentBattleRoom/map.json
+++ b/data/maps/SlateportCity_BattleTentBattleRoom/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_TENT_BATTLE_OPPONENT",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 5,
"y": 1,
@@ -41,6 +42,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SLATEPORT_TENT_BATTLE_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 4,
"y": 8,
diff --git a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc
index 769f94899c..21c499c1a4 100644
--- a/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc
+++ b/data/maps/SlateportCity_BattleTentBattleRoom/scripts.inc
@@ -1,5 +1,7 @@
-.set LOCALID_OPPONENT, 2
-.set LOCALID_PLAYER, 3
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_SLATEPORT_TENT_BATTLE_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_1.
+@ The graphics of the opponent are represented with VAR_OBJ_GFX_ID_0, which will ultimately be set by factory_setopponentgfx.
SlateportCity_BattleTentBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_BattleTentBattleRoom_OnTransition
@@ -7,9 +9,6 @@ SlateportCity_BattleTentBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentBattleRoom_OnFrame
end_map_scripts
- @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
- @ The player is represented instead by LOCALID_PLAYER, which has the gfx id VAR_OBJ_GFX_ID_1
-
SlateportCity_BattleTentBattleRoom_OnTransition:
call SlateportCity_BattleTentBattleRoom_EventScript_SetPlayerGfx
end
@@ -34,8 +33,8 @@ SlateportCity_BattleTentBattleRoom_OnWarp:
SlateportCity_BattleTentBattleRoom_EventScript_SetUpObjects::
setvar VAR_TEMP_1, 1
- hideobjectat OBJ_EVENT_ID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
- hideobjectat LOCALID_OPPONENT, MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM
+ hideobjectat LOCALID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
+ hideobjectat LOCALID_SLATEPORT_TENT_BATTLE_OPPONENT, MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM
end
SlateportCity_BattleTentBattleRoom_OnFrame:
@@ -43,13 +42,13 @@ SlateportCity_BattleTentBattleRoom_OnFrame:
end_map_script_table
SlateportCity_BattleTentBattleRoom_EventScript_EnterRoom::
- applymovement LOCALID_PLAYER, SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter
+ applymovement LOCALID_SLATEPORT_TENT_BATTLE_PLAYER, SlateportCity_BattleTentBattleRoom_Movement_PlayerEnter
waitmovement 0
factory_setopponentgfx
- setobjectxyperm LOCALID_OPPONENT, 5, 1
- removeobject LOCALID_OPPONENT
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter
+ setobjectxyperm LOCALID_SLATEPORT_TENT_BATTLE_OPPONENT, 5, 1
+ removeobject LOCALID_SLATEPORT_TENT_BATTLE_OPPONENT
+ addobject LOCALID_SLATEPORT_TENT_BATTLE_OPPONENT
+ applymovement LOCALID_SLATEPORT_TENT_BATTLE_OPPONENT, SlateportCity_BattleTentBattleRoom_Movement_OpponentEnter
waitmovement 0
battletent_getopponentintro
lockall
diff --git a/data/maps/SlateportCity_BattleTentCorridor/map.json b/data/maps/SlateportCity_BattleTentCorridor/map.json
index c9cd4b1a71..a6f1e60de7 100644
--- a/data/maps/SlateportCity_BattleTentCorridor/map.json
+++ b/data/maps/SlateportCity_BattleTentCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SLATEPORT_TENT_CORRIDOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 2,
"y": 6,
diff --git a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc
index d464495f4f..a54e27ab1b 100644
--- a/data/maps/SlateportCity_BattleTentCorridor/scripts.inc
+++ b/data/maps/SlateportCity_BattleTentCorridor/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
SlateportCity_BattleTentCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentCorridor_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentCorridor_OnWarp
@@ -14,10 +12,10 @@ SlateportCity_BattleTentCorridor_OnWarp:
SlateportCity_BattleTentCorridor_EventScript_SetUpObjects::
setvar VAR_TEMP_1, 1
goto_if_ne VAR_0x8006, 1, SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth
- setobjectxy LOCALID_ATTENDANT, 2, 2
- turnobject LOCALID_ATTENDANT, DIR_SOUTH
+ setobjectxy LOCALID_SLATEPORT_TENT_CORRIDOR_ATTENDANT, 2, 2
+ turnobject LOCALID_SLATEPORT_TENT_CORRIDOR_ATTENDANT, DIR_SOUTH
SlateportCity_BattleTentCorridor_EventScript_TurnPlayerNorth::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
SlateportCity_BattleTentCorridor_OnFrame:
@@ -27,8 +25,8 @@ SlateportCity_BattleTentCorridor_OnFrame:
SlateportCity_BattleTentCorridor_EventScript_EnterCorridor::
goto_if_eq VAR_0x8006, 1, SlateportCity_BattleTentCorridor_EventScript_ReturnToRoomFromBattle
setvar VAR_TEMP_0, 1
- applymovement LOCALID_ATTENDANT, SlateportCity_BattleTentCorridor_Movement_AttendantEnter
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_PlayerEnter
+ applymovement LOCALID_SLATEPORT_TENT_CORRIDOR_ATTENDANT, SlateportCity_BattleTentCorridor_Movement_AttendantEnter
+ applymovement LOCALID_PLAYER, SlateportCity_BattleTentCorridor_Movement_PlayerEnter
waitmovement 0
goto_if_eq VAR_0x8006, 2, SlateportCity_BattleTentCorridor_EventScript_ResumeChallenge
slateporttent_generaterentalmons
@@ -40,12 +38,12 @@ SlateportCity_BattleTentCorridor_EventScript_EnterCorridor::
SlateportCity_BattleTentCorridor_EventScript_EnterBattleRoom::
msgbox BattleFrontier_BattleFactoryPreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_SLATEPORT_TENT_CORRIDOR_ATTENDANT, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
opendoor 2, 1
waitdooranim
- applymovement LOCALID_ATTENDANT, SlateportCity_BattleTentCorridor_Movement_AttendantExit
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentCorridor_Movement_PlayerExit
+ applymovement LOCALID_SLATEPORT_TENT_CORRIDOR_ATTENDANT, SlateportCity_BattleTentCorridor_Movement_AttendantExit
+ applymovement LOCALID_PLAYER, SlateportCity_BattleTentCorridor_Movement_PlayerExit
waitmovement 0
closedoor 2, 1
waitdooranim
diff --git a/data/maps/SlateportCity_BattleTentLobby/map.json b/data/maps/SlateportCity_BattleTentLobby/map.json
index 6a599df8f3..227c0bb414 100644
--- a/data/maps/SlateportCity_BattleTentLobby/map.json
+++ b/data/maps/SlateportCity_BattleTentLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SLATEPORT_TENT_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 6,
"y": 5,
diff --git a/data/maps/SlateportCity_BattleTentLobby/scripts.inc b/data/maps/SlateportCity_BattleTentLobby/scripts.inc
index c85fcd71cc..c74bb3cc45 100644
--- a/data/maps/SlateportCity_BattleTentLobby/scripts.inc
+++ b/data/maps/SlateportCity_BattleTentLobby/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
SlateportCity_BattleTentLobby_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, SlateportCity_BattleTentLobby_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, SlateportCity_BattleTentLobby_OnWarp
@@ -11,7 +9,7 @@ SlateportCity_BattleTentLobby_OnWarp:
SlateportCity_BattleTentLobby_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
SlateportCity_BattleTentLobby_OnFrame:
@@ -138,13 +136,13 @@ SlateportCity_BattleTentLobby_EventScript_EnterChallenge::
end
SlateportCity_BattleTentLobby_EventScript_WalkToDoor::
- applymovement LOCALID_ATTENDANT, SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor
+ applymovement LOCALID_SLATEPORT_TENT_ATTENDANT, SlateportCity_BattleTentLobby_Movement_AttendantWalkToDoor
+ applymovement LOCALID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerWalkToDoor
waitmovement 0
opendoor 6, 1
waitdooranim
- applymovement LOCALID_ATTENDANT, SlateportCity_BattleTentLobby_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerEnterDoor
+ applymovement LOCALID_SLATEPORT_TENT_ATTENDANT, SlateportCity_BattleTentLobby_Movement_AttendantEnterDoor
+ applymovement LOCALID_PLAYER, SlateportCity_BattleTentLobby_Movement_PlayerEnterDoor
waitmovement 0
closedoor 6, 1
waitdooranim
diff --git a/data/maps/SlateportCity_Harbor/map.json b/data/maps/SlateportCity_Harbor/map.json
index 05fe77c61c..11b530cd1e 100644
--- a/data/maps/SlateportCity_Harbor/map.json
+++ b/data/maps/SlateportCity_Harbor/map.json
@@ -54,6 +54,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_HARBOR_PATRONS"
},
{
+ "local_id": "LOCALID_SLATEPORT_HARBOR_CAPT_STERN",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 6,
"y": 13,
@@ -67,6 +68,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_HARBOR_CAPTAIN_STERN"
},
{
+ "local_id": "LOCALID_SLATEPORT_HARBOR_SS_TIDAL",
"graphics_id": "OBJ_EVENT_GFX_SS_TIDAL",
"x": 8,
"y": 9,
@@ -80,6 +82,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_HARBOR_SS_TIDAL"
},
{
+ "local_id": "LOCALID_SLATEPORT_HARBOR_GRUNT",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 7,
"y": 10,
@@ -93,6 +96,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_HARBOR_AQUA_GRUNT"
},
{
+ "local_id": "LOCALID_SLATEPORT_HARBOR_ARCHIE",
"graphics_id": "OBJ_EVENT_GFX_ARCHIE",
"x": 8,
"y": 10,
@@ -106,6 +110,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_HARBOR_ARCHIE"
},
{
+ "local_id": "LOCALID_SLATEPORT_HARBOR_SUBMARINE",
"graphics_id": "OBJ_EVENT_GFX_SUBMARINE_SHADOW",
"x": 7,
"y": 9,
diff --git a/data/maps/SlateportCity_Harbor/scripts.inc b/data/maps/SlateportCity_Harbor/scripts.inc
index d05fd4e678..6901c2b3ff 100644
--- a/data/maps/SlateportCity_Harbor/scripts.inc
+++ b/data/maps/SlateportCity_Harbor/scripts.inc
@@ -1,9 +1,3 @@
-.set LOCALID_CAPT_STERN, 4
-.set LOCALID_SS_TIDAL, 5
-.set LOCALID_GRUNT, 6
-.set LOCALID_ARCHIE, 7
-.set LOCALID_SUBMARINE, 8
-
SlateportCity_Harbor_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_Harbor_OnTransition
end_map_scripts
@@ -21,8 +15,8 @@ SlateportCity_Harbor_EventScript_ShowSSTidal::
SlateportCity_Harbor_EventScript_ReadyAquaEscapeScene::
savebgm MUS_ENCOUNTER_AQUA
- setobjectxyperm LOCALID_CAPT_STERN, 12, 13
- setobjectmovementtype LOCALID_CAPT_STERN, MOVEMENT_TYPE_FACE_LEFT
+ setobjectxyperm LOCALID_SLATEPORT_HARBOR_CAPT_STERN, 12, 13
+ setobjectmovementtype LOCALID_SLATEPORT_HARBOR_CAPT_STERN, MOVEMENT_TYPE_FACE_LEFT
setflag FLAG_HIDE_SLATEPORT_CITY_HARBOR_PATRONS
return
@@ -47,26 +41,26 @@ SlateportCity_Harbor_EventScript_AquaEscapeTrigger2::
SlateportCity_Harbor_EventScript_AquaEscapeTrigger3::
lockall
setvar VAR_0x8008, 3
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Harbor_Movement_PlayerWalkUp
+ applymovement LOCALID_PLAYER, SlateportCity_Harbor_Movement_PlayerWalkUp
waitmovement 0
goto SlateportCity_Harbor_EventScript_AquaEscapeScene
end
SlateportCity_Harbor_EventScript_AquaEscapeScene::
- applymovement LOCALID_ARCHIE, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_SLATEPORT_HARBOR_ARCHIE, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
- applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterDown
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_SLATEPORT_HARBOR_GRUNT, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox SlateportCity_Harbor_Text_ArchieYouAgainHideoutInLilycove, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT, SlateportCity_Harbor_Movement_AquaBoardSub
- applymovement LOCALID_ARCHIE, SlateportCity_Harbor_Movement_AquaBoardSub
- applymovement LOCALID_SUBMARINE, SlateportCity_Harbor_Movement_SubmarineExit
+ applymovement LOCALID_SLATEPORT_HARBOR_GRUNT, SlateportCity_Harbor_Movement_AquaBoardSub
+ applymovement LOCALID_SLATEPORT_HARBOR_ARCHIE, SlateportCity_Harbor_Movement_AquaBoardSub
+ applymovement LOCALID_SLATEPORT_HARBOR_SUBMARINE, SlateportCity_Harbor_Movement_SubmarineExit
waitmovement 0
- removeobject LOCALID_GRUNT
- removeobject LOCALID_ARCHIE
- removeobject LOCALID_SUBMARINE
+ removeobject LOCALID_SLATEPORT_HARBOR_GRUNT
+ removeobject LOCALID_SLATEPORT_HARBOR_ARCHIE
+ removeobject LOCALID_SLATEPORT_HARBOR_SUBMARINE
setvar VAR_SLATEPORT_HARBOR_STATE, 2
setflag FLAG_MET_TEAM_AQUA_HARBOR
setflag FLAG_HIDE_LILYCOVE_MOTEL_SCOTT
@@ -78,29 +72,29 @@ SlateportCity_Harbor_EventScript_AquaEscapeScene::
closemessage
setflag FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_1_BLOCKING_ENTRANCE
setflag FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_2_BLOCKING_ENTRANCE
- copyobjectxytoperm LOCALID_CAPT_STERN
- setobjectmovementtype LOCALID_CAPT_STERN, MOVEMENT_TYPE_FACE_RIGHT
+ copyobjectxytoperm LOCALID_SLATEPORT_HARBOR_CAPT_STERN
+ setobjectmovementtype LOCALID_SLATEPORT_HARBOR_CAPT_STERN, MOVEMENT_TYPE_FACE_RIGHT
releaseall
end
SlateportCity_Harbor_EventScript_SternApproachPlayer0::
- applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer0
+ applymovement LOCALID_SLATEPORT_HARBOR_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer0
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
return
SlateportCity_Harbor_EventScript_SternApproachPlayer1::
- applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer1
+ applymovement LOCALID_SLATEPORT_HARBOR_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer1
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
SlateportCity_Harbor_EventScript_SternApproachPlayer::
- applymovement LOCALID_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer
+ applymovement LOCALID_SLATEPORT_HARBOR_CAPT_STERN, SlateportCity_Harbor_Movement_SternApproachPlayer
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
@@ -234,8 +228,8 @@ SlateportCity_Harbor_EventScript_BoardFerry::
call_if_eq VAR_FACING, DIR_NORTH, SlateportCity_Harbor_EventScript_BoardFerryNorth
call_if_eq VAR_FACING, DIR_EAST, SlateportCity_Harbor_EventScript_BoardFerryEast
delay 30
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ hideobjectat LOCALID_PLAYER, 0
+ setvar VAR_0x8004, LOCALID_SLATEPORT_HARBOR_SS_TIDAL
call Common_EventScript_FerryDepart
return
@@ -245,12 +239,12 @@ SlateportCity_Harbor_EventScript_CancelDestinationSelect::
end
SlateportCity_Harbor_EventScript_BoardFerryEast::
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Harbor_Movement_BoardFerryEast
+ applymovement LOCALID_PLAYER, SlateportCity_Harbor_Movement_BoardFerryEast
waitmovement 0
return
SlateportCity_Harbor_EventScript_BoardFerryNorth::
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_Harbor_Movement_BoardFerryNorth
+ applymovement LOCALID_PLAYER, SlateportCity_Harbor_Movement_BoardFerryNorth
waitmovement 0
return
diff --git a/data/maps/SlateportCity_Mart/map.json b/data/maps/SlateportCity_Mart/map.json
index a86614bd14..d0f698013e 100644
--- a/data/maps/SlateportCity_Mart/map.json
+++ b/data/maps/SlateportCity_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SLATEPORT_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/SlateportCity_Mart/scripts.inc b/data/maps/SlateportCity_Mart/scripts.inc
index fb43d23e92..224ed44cc0 100644
--- a/data/maps/SlateportCity_Mart/scripts.inc
+++ b/data/maps/SlateportCity_Mart/scripts.inc
@@ -22,9 +22,7 @@ SlateportCity_Mart_Pokemart:
.2byte ITEM_ESCAPE_ROPE
.2byte ITEM_REPEL
.2byte ITEM_HARBOR_MAIL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
SlateportCity_Mart_EventScript_BlackBelt::
msgbox SlateportCity_Mart_Text_SomeItemsOnlyAtMart, MSGBOX_NPC
diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/map.json b/data/maps/SlateportCity_OceanicMuseum_1F/map.json
index fd3468a52d..14d6b0583d 100644
--- a/data/maps/SlateportCity_OceanicMuseum_1F/map.json
+++ b/data/maps/SlateportCity_OceanicMuseum_1F/map.json
@@ -171,6 +171,7 @@
"flag": "FLAG_HIDE_SLATEPORT_MUSEUM_POPULATION"
},
{
+ "local_id": "LOCALID_OCEANIC_MUSEUM_FAMILIAR_GRUNT",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 9,
"y": 4,
diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc
index 7b0b0866f8..9f250b90ad 100644
--- a/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc
+++ b/data/maps/SlateportCity_OceanicMuseum_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_FAMILIAR_GRUNT, 13
-
SlateportCity_OceanicMuseum_1F_MapScripts::
end_map_scripts
@@ -9,14 +7,14 @@ SlateportCity_OceanicMuseum_1F_EventScript_EntranceAttendant::
SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeLeft::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
goto SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee
end
SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFeeRight::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
goto SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee
end
@@ -27,7 +25,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_PayEntranceFee::
goto_if_eq VAR_RESULT, YES, SlateportCity_OceanicMuseum_1F_EventScript_CheckMoneyForFee
closemessage
hidemoneybox
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PushPlayerBackFromCounter
+ applymovement LOCALID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PushPlayerBackFromCounter
waitmovement 0
releaseall
end
@@ -49,7 +47,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_NotEnoughMoney::
msgbox SlateportCity_OceanicMuseum_1F_Text_NotEnoughMoney, MSGBOX_DEFAULT
closemessage
hidemoneybox
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PushPlayerBackFromCounter
+ applymovement LOCALID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PushPlayerBackFromCounter
waitmovement 0
releaseall
end
@@ -146,9 +144,9 @@ SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGrunt::
faceplayer
delay 8
playse SE_PIN
- applymovement LOCALID_FAMILIAR_GRUNT, Common_Movement_ExclamationMark
+ applymovement LOCALID_OCEANIC_MUSEUM_FAMILIAR_GRUNT, Common_Movement_ExclamationMark
waitmovement 0
- applymovement LOCALID_FAMILIAR_GRUNT, Common_Movement_Delay48
+ applymovement LOCALID_OCEANIC_MUSEUM_FAMILIAR_GRUNT, Common_Movement_Delay48
waitmovement 0
msgbox SlateportCity_OceanicMuseum_1F_Text_RememberMeTakeThis, MSGBOX_DEFAULT
giveitem ITEM_TM_THIEF
@@ -163,21 +161,21 @@ SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGrunt::
end
SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitNorth::
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitNorth
- applymovement LOCALID_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExitNorth
+ applymovement LOCALID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitNorth
+ applymovement LOCALID_OCEANIC_MUSEUM_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExitNorth
waitmovement 0
goto SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited
end
SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitSouth::
- applymovement LOCALID_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit
+ applymovement LOCALID_OCEANIC_MUSEUM_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit
waitmovement 0
goto SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited
end
SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast::
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitWestEast
- applymovement LOCALID_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit
+ applymovement LOCALID_PLAYER, SlateportCity_OceanicMuseum_1F_Movement_PlayerWatchGruntExitWestEast
+ applymovement LOCALID_OCEANIC_MUSEUM_FAMILIAR_GRUNT, SlateportCity_OceanicMuseum_1F_Movement_FamiliarGruntExit
waitmovement 0
goto SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited
end
@@ -185,7 +183,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExitWestEast::
SlateportCity_OceanicMuseum_1F_EventScript_FamiliarGruntExited::
setflag FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_FAMILIAR_AQUA_GRUNT
playse SE_EXIT
- removeobject LOCALID_FAMILIAR_GRUNT
+ removeobject LOCALID_OCEANIC_MUSEUM_FAMILIAR_GRUNT
release
end
diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/map.json b/data/maps/SlateportCity_OceanicMuseum_2F/map.json
index bab9c1ea58..7ada1f8ac1 100644
--- a/data/maps/SlateportCity_OceanicMuseum_2F/map.json
+++ b/data/maps/SlateportCity_OceanicMuseum_2F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_OCEANIC_MUSEUM_2F_CAPT_STERN",
"graphics_id": "OBJ_EVENT_GFX_SCIENTIST_1",
"x": 13,
"y": 6,
@@ -28,6 +29,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_CAPTAIN_STERN"
},
{
+ "local_id": "LOCALID_OCEANIC_MUSEUM_2F_ARCHIE",
"graphics_id": "OBJ_EVENT_GFX_ARCHIE",
"x": 6,
"y": 1,
@@ -41,6 +43,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_ARCHIE"
},
{
+ "local_id": "LOCALID_OCEANIC_MUSEUM_2F_GRUNT_1",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 6,
"y": 1,
@@ -54,6 +57,7 @@
"flag": "FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_AQUA_GRUNT_1"
},
{
+ "local_id": "LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2",
"graphics_id": "OBJ_EVENT_GFX_AQUA_MEMBER_M",
"x": 6,
"y": 1,
diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
index e57afd48ea..32df465afc 100644
--- a/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
+++ b/data/maps/SlateportCity_OceanicMuseum_2F/scripts.inc
@@ -1,8 +1,3 @@
-.set LOCALID_CAPT_STERN, 1
-.set LOCALID_ARCHIE, 2
-.set LOCALID_GRUNT_1, 3
-.set LOCALID_GRUNT_2, 4
-
SlateportCity_OceanicMuseum_2F_MapScripts::
end_map_scripts
@@ -12,14 +7,14 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern::
msgbox SlateportCity_OceanicMuseum_2F_Text_ThankYouForTheParts, MSGBOX_DEFAULT
closemessage
playbgm MUS_ENCOUNTER_AQUA, TRUE
- addobject LOCALID_GRUNT_1
- applymovement LOCALID_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_FirstGruntEnter
+ addobject LOCALID_OCEANIC_MUSEUM_2F_GRUNT_1
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_FirstGruntEnter
waitmovement 0
- addobject LOCALID_GRUNT_2
- applymovement LOCALID_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_SecondGruntEnter
+ addobject LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_SecondGruntEnter
waitmovement 0
- applymovement LOCALID_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_FirstGruntApproach
- applymovement LOCALID_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_SecondGruntApproach
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_FirstGruntApproach
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_SecondGruntApproach
waitmovement 0
call_if_eq VAR_FACING, DIR_SOUTH, SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts
call_if_eq VAR_FACING, DIR_EAST, SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts
@@ -28,47 +23,47 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern::
msgbox SlateportCity_OceanicMuseum_2F_Text_SternWhoAreYou, MSGBOX_DEFAULT
msgbox SlateportCity_OceanicMuseum_2F_Text_WereTeamAqua, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_GruntApproachToBattle
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_GruntApproachToBattle
waitmovement 0
call_if_eq VAR_FACING, DIR_SOUTH, SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntSouth
call_if_eq VAR_FACING, DIR_WEST, SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntWest
trainerbattle_no_intro TRAINER_GRUNT_MUSEUM_1, SlateportCity_OceanicMuseum_2F_Text_Grunt1Defeat
msgbox SlateportCity_OceanicMuseum_2F_Text_BossGoingToBeFurious, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_GruntDefeated
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_GruntDefeated
waitmovement 0
- applymovement LOCALID_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_GruntApproachToBattle
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_GruntApproachToBattle
waitmovement 0
msgbox SlateportCity_OceanicMuseum_2F_Text_LetMeTakeCareOfThis, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_GRUNT_MUSEUM_2, SlateportCity_OceanicMuseum_2F_Text_Grunt2Defeat
- applymovement LOCALID_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_GruntDefeated
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_1, SlateportCity_OceanicMuseum_2F_Movement_GruntDefeated
waitmovement 0
- applymovement LOCALID_GRUNT_1, Common_Movement_WalkInPlaceFasterDown
- applymovement LOCALID_GRUNT_2, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_1, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox SlateportCity_OceanicMuseum_2F_Text_MeddlingKid, MSGBOX_DEFAULT
closemessage
delay 35
- addobject LOCALID_ARCHIE
- applymovement LOCALID_ARCHIE, SlateportCity_OceanicMuseum_2F_Movement_ArchieEnter
- applymovement LOCALID_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_GruntMoveForArchie
+ addobject LOCALID_OCEANIC_MUSEUM_2F_ARCHIE
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_ARCHIE, SlateportCity_OceanicMuseum_2F_Movement_ArchieEnter
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2, SlateportCity_OceanicMuseum_2F_Movement_GruntMoveForArchie
waitmovement 0
msgbox SlateportCity_OceanicMuseum_2F_Text_CameToSeeWhatsTakingSoLong, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_ARCHIE, SlateportCity_OceanicMuseum_2F_Movement_ArchieApproachPlayer
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_ARCHIE, SlateportCity_OceanicMuseum_2F_Movement_ArchieApproachPlayer
waitmovement 0
msgbox SlateportCity_OceanicMuseum_2F_Text_ArchieWarning, MSGBOX_DEFAULT
closemessage
savebgm MUS_DUMMY
fadedefaultbgm
fadescreen FADE_TO_BLACK
- removeobject LOCALID_ARCHIE
- removeobject LOCALID_GRUNT_1
- removeobject LOCALID_GRUNT_2
+ removeobject LOCALID_OCEANIC_MUSEUM_2F_ARCHIE
+ removeobject LOCALID_OCEANIC_MUSEUM_2F_GRUNT_1
+ removeobject LOCALID_OCEANIC_MUSEUM_2F_GRUNT_2
fadescreen FADE_FROM_BLACK
delay 30
setflag FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_AQUA_GRUNTS
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox SlateportCity_OceanicMuseum_2F_Text_SternThankYouForSavingUs, MSGBOX_DEFAULT
setvar VAR_0x8004, ITEM_DEVON_GOODS
@@ -79,7 +74,7 @@ SlateportCity_OceanicMuseum_2F_EventScript_CaptStern::
playfanfare MUS_HEAL
waitfanfare
special HealPlayerParty
- removeobject LOCALID_CAPT_STERN
+ removeobject LOCALID_OCEANIC_MUSEUM_2F_CAPT_STERN
setflag FLAG_HIDE_ROUTE_110_TEAM_AQUA
call_if_eq VAR_REGISTER_BIRCH_STATE, 0, SlateportCity_OceanicMuseum_2F_EventScript_ReadyRegisterBirch
setflag FLAG_DELIVERED_DEVON_GOODS
@@ -95,22 +90,22 @@ SlateportCity_OceanicMuseum_2F_EventScript_ReadyRegisterBirch::
return
SlateportCity_OceanicMuseum_2F_EventScript_PlayerFaceGrunts::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
SlateportCity_OceanicMuseum_2F_EventScript_SternFaceGrunts::
- applymovement LOCALID_CAPT_STERN, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_OCEANIC_MUSEUM_2F_CAPT_STERN, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntSouth::
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntSouth
+ applymovement LOCALID_PLAYER, SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntSouth
waitmovement 0
return
SlateportCity_OceanicMuseum_2F_EventScript_PlayerApproachGruntWest::
- applymovement OBJ_EVENT_ID_PLAYER, SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntWest
+ applymovement LOCALID_PLAYER, SlateportCity_OceanicMuseum_2F_Movement_PlayerApproachGruntWest
waitmovement 0
return
diff --git a/data/maps/SlateportCity_PokemonCenter_1F/map.json b/data/maps/SlateportCity_PokemonCenter_1F/map.json
index 418210f0bd..458ab934e0 100644
--- a/data/maps/SlateportCity_PokemonCenter_1F/map.json
+++ b/data/maps/SlateportCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SLATEPORT_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/SlateportCity_PokemonCenter_1F/scripts.inc b/data/maps/SlateportCity_PokemonCenter_1F/scripts.inc
index eac878e957..d7f6dd0a0c 100644
--- a/data/maps/SlateportCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/SlateportCity_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
SlateportCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SlateportCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -11,7 +9,7 @@ SlateportCity_PokemonCenter_1F_OnTransition:
end
SlateportCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_SLATEPORT_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/SlateportCity_SternsShipyard_1F/map.json b/data/maps/SlateportCity_SternsShipyard_1F/map.json
index 4414fcfb12..cd5bd174aa 100644
--- a/data/maps/SlateportCity_SternsShipyard_1F/map.json
+++ b/data/maps/SlateportCity_SternsShipyard_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_DOCK",
"graphics_id": "OBJ_EVENT_GFX_MAN_1",
"x": 5,
"y": 5,
diff --git a/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc b/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc
index 0b5f03bf8e..5037cb1898 100644
--- a/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc
+++ b/data/maps/SlateportCity_SternsShipyard_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_DOCK, 1
-
SlateportCity_SternsShipyard_1F_MapScripts::
end_map_scripts
diff --git a/data/maps/SootopolisCity/map.json b/data/maps/SootopolisCity/map.json
index c6a6757d23..35bd4d51eb 100644
--- a/data/maps/SootopolisCity/map.json
+++ b/data/maps/SootopolisCity/map.json
@@ -15,6 +15,7 @@
"connections": [],
"object_events": [
{
+ "local_id": "LOCALID_SOOTOPOLIS_EXPERT",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 31,
"y": 18,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_WOMAN_2",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_4",
"x": 47,
"y": 33,
@@ -41,6 +43,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS"
},
{
+ "local_id": "LOCALID_KIRI",
"graphics_id": "OBJ_EVENT_GFX_GIRL_2",
"x": 9,
"y": 43,
@@ -54,6 +57,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_NINJA_BOY",
"graphics_id": "OBJ_EVENT_GFX_NINJA_BOY",
"x": 51,
"y": 14,
@@ -67,6 +71,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_BOY_1",
"graphics_id": "OBJ_EVENT_GFX_BOY_1",
"x": 43,
"y": 26,
@@ -93,6 +98,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_MAN_1"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_STEVEN",
"graphics_id": "OBJ_EVENT_GFX_STEVEN",
"x": 20,
"y": 36,
@@ -106,6 +112,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_STEVEN"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_WOMAN_1",
"graphics_id": "OBJ_EVENT_GFX_WOMAN_5",
"x": 49,
"y": 34,
@@ -119,6 +126,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_GROUDON",
"graphics_id": "OBJ_EVENT_GFX_GROUDON_SIDE",
"x": 28,
"y": 44,
@@ -132,6 +140,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_GROUDON"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_KYOGRE",
"graphics_id": "OBJ_EVENT_GFX_KYOGRE_SIDE",
"x": 34,
"y": 44,
@@ -145,6 +154,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_KYOGRE"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_RAYQUAZA",
"graphics_id": "OBJ_EVENT_GFX_RAYQUAZA",
"x": 31,
"y": 41,
@@ -158,6 +168,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_RAYQUAZA"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_MANIAC",
"graphics_id": "OBJ_EVENT_GFX_MANIAC",
"x": 17,
"y": 44,
@@ -171,6 +182,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_GIRL",
"graphics_id": "OBJ_EVENT_GFX_GIRL_3",
"x": 14,
"y": 42,
@@ -184,6 +196,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_BLACK_BELT",
"graphics_id": "OBJ_EVENT_GFX_BLACK_BELT",
"x": 17,
"y": 40,
@@ -197,6 +210,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_BOY_2",
"graphics_id": "OBJ_EVENT_GFX_BOY_2",
"x": 19,
"y": 37,
@@ -210,6 +224,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_MAXIE",
"graphics_id": "OBJ_EVENT_GFX_MAXIE",
"x": 29,
"y": 33,
@@ -223,6 +238,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_MAXIE"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_ARCHIE",
"graphics_id": "OBJ_EVENT_GFX_ARCHIE",
"x": 31,
"y": 33,
@@ -236,6 +252,7 @@
"flag": "FLAG_HIDE_SOOTOPOLIS_CITY_ARCHIE"
},
{
+ "local_id": "LOCALID_SOOTOPOLIS_WALLACE",
"graphics_id": "OBJ_EVENT_GFX_WALLACE",
"x": 31,
"y": 18,
diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc
index 702ff7c206..61dc41e092 100644
--- a/data/maps/SootopolisCity/scripts.inc
+++ b/data/maps/SootopolisCity/scripts.inc
@@ -1,21 +1,3 @@
-.set LOCALID_EXPERT, 1
-.set LOCALID_WOMAN_2, 2
-.set LOCALID_KIRI, 3
-.set LOCALID_NINJA_BOY, 4
-.set LOCALID_BOY_1, 5
-.set LOCALID_STEVEN, 7
-.set LOCALID_WOMAN_1, 8
-.set LOCALID_GROUDON, 9
-.set LOCALID_KYOGRE, 10
-.set LOCALID_RAYQUAZA, 11
-.set LOCALID_MANIAC, 12
-.set LOCALID_GIRL, 13
-.set LOCALID_BLACK_BELT, 14
-.set LOCALID_BOY_2, 15
-.set LOCALID_MAXIE, 16
-.set LOCALID_ARCHIE, 17
-.set LOCALID_WALLACE, 18
-
SootopolisCity_MapScripts::
map_script MAP_SCRIPT_ON_LOAD, SootopolisCity_OnLoad
map_script MAP_SCRIPT_ON_TRANSITION, SootopolisCity_OnTransition
@@ -73,13 +55,13 @@ SootopolisCity_EventScript_HideMapNamePopup::
SootopolisCity_EventScript_SetBattleSpectators::
setobjectxyperm LOCALID_KIRI, 13, 48
- setobjectxyperm LOCALID_BOY_1, 46, 32
- setobjectxyperm LOCALID_NINJA_BOY, 48, 41
- setobjectxyperm LOCALID_WOMAN_1, 45, 43
+ setobjectxyperm LOCALID_SOOTOPOLIS_BOY_1, 46, 32
+ setobjectxyperm LOCALID_SOOTOPOLIS_NINJA_BOY, 48, 41
+ setobjectxyperm LOCALID_SOOTOPOLIS_WOMAN_1, 45, 43
setobjectmovementtype LOCALID_KIRI, MOVEMENT_TYPE_FACE_UP
- setobjectmovementtype LOCALID_BOY_1, MOVEMENT_TYPE_FACE_LEFT
- setobjectmovementtype LOCALID_NINJA_BOY, MOVEMENT_TYPE_FACE_LEFT
- setobjectmovementtype LOCALID_WOMAN_1, MOVEMENT_TYPE_FACE_LEFT
+ setobjectmovementtype LOCALID_SOOTOPOLIS_BOY_1, MOVEMENT_TYPE_FACE_LEFT
+ setobjectmovementtype LOCALID_SOOTOPOLIS_NINJA_BOY, MOVEMENT_TYPE_FACE_LEFT
+ setobjectmovementtype LOCALID_SOOTOPOLIS_WOMAN_1, MOVEMENT_TYPE_FACE_LEFT
return
SootopolisCity_EventScript_SetLayout::
@@ -119,43 +101,43 @@ SootopolisCity_EventScript_CheckSetEnterCaveOfOriginObjPos::
return
SootopolisCity_EventScript_SetEnterCaveOfOriginObjPos::
- setobjectxyperm LOCALID_EXPERT, 30, 18
- setobjectxyperm LOCALID_STEVEN, 32, 18
+ setobjectxyperm LOCALID_SOOTOPOLIS_EXPERT, 30, 18
+ setobjectxyperm LOCALID_SOOTOPOLIS_STEVEN, 32, 18
return
SootopolisCity_EventScript_SetExitCaveOfOriginObjPos::
- setobjectxyperm LOCALID_EXPERT, 30, 18
- setobjectxyperm LOCALID_WALLACE, 31, 18
- setobjectxyperm LOCALID_STEVEN, 32, 18
+ setobjectxyperm LOCALID_SOOTOPOLIS_EXPERT, 30, 18
+ setobjectxyperm LOCALID_SOOTOPOLIS_WALLACE, 31, 18
+ setobjectxyperm LOCALID_SOOTOPOLIS_STEVEN, 32, 18
end
SootopolisCity_EventScript_SetOutsideGymObjPos::
- setobjectxyperm LOCALID_EXPERT, 31, 18
- setobjectxyperm LOCALID_STEVEN, 29, 33
- setobjectxyperm LOCALID_MAXIE, 33, 35
- setobjectxyperm LOCALID_ARCHIE, 34, 35
+ setobjectxyperm LOCALID_SOOTOPOLIS_EXPERT, 31, 18
+ setobjectxyperm LOCALID_SOOTOPOLIS_STEVEN, 29, 33
+ setobjectxyperm LOCALID_SOOTOPOLIS_MAXIE, 33, 35
+ setobjectxyperm LOCALID_SOOTOPOLIS_ARCHIE, 34, 35
call_if_eq VAR_SOOTOPOLIS_WALLACE_STATE, 0, SootopolisCity_EventScript_SetWallaceMiddle
call_if_eq VAR_SOOTOPOLIS_WALLACE_STATE, 1, SootopolisCity_EventScript_SetWallaceRight
call_if_eq VAR_SOOTOPOLIS_WALLACE_STATE, 2, SootopolisCity_EventScript_SetWallaceLeft
return
SootopolisCity_EventScript_SetWallaceMiddle::
- setobjectxyperm LOCALID_WALLACE, 31, 33
- setobjectmovementtype LOCALID_WALLACE, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_SOOTOPOLIS_WALLACE, 31, 33
+ setobjectmovementtype LOCALID_SOOTOPOLIS_WALLACE, MOVEMENT_TYPE_FACE_DOWN
return
SootopolisCity_EventScript_SetWallaceRight::
- setobjectxyperm LOCALID_WALLACE, 32, 33
- setobjectmovementtype LOCALID_WALLACE, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_SOOTOPOLIS_WALLACE, 32, 33
+ setobjectmovementtype LOCALID_SOOTOPOLIS_WALLACE, MOVEMENT_TYPE_FACE_DOWN
return
SootopolisCity_EventScript_SetWallaceLeft::
- setobjectxyperm LOCALID_WALLACE, 30, 33
- setobjectmovementtype LOCALID_WALLACE, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_SOOTOPOLIS_WALLACE, 30, 33
+ setobjectmovementtype LOCALID_SOOTOPOLIS_WALLACE, MOVEMENT_TYPE_FACE_DOWN
return
SootopolisCity_EventScript_SetExpertBlockCaveEntrance::
- setobjectxyperm LOCALID_EXPERT, 31, 18
+ setobjectxyperm LOCALID_SOOTOPOLIS_EXPERT, 31, 18
return
SootopolisCity_OnWarp:
@@ -168,11 +150,11 @@ SootopolisCity_EventScript_PlayerFaceLegendaries::
end
SootopolisCity_EventScript_PlayerFaceLegendaries1::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
return
SootopolisCity_EventScript_PlayerFaceLegendaries2::
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
setvar VAR_SKY_PILLAR_STATE, 3
return
@@ -197,7 +179,7 @@ SootopolisCity_EventScript_StartLegendariesScene::
SootopolisCity_EventScript_LegendariesSceneFromPokeCenter::
delay 60
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanToActionFromPokeCenter
+ applymovement LOCALID_CAMERA, SootopolisCity_Movement_PanToActionFromPokeCenter
waitmovement 0
special RemoveCameraObject
delay 60
@@ -207,14 +189,14 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter::
setvar VAR_0x8004, FALSE @ Just do Groudon/Kyogre fight scene
special Script_DoRayquazaScene
waitstate
- applymovement LOCALID_KYOGRE, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_GROUDON, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 60
waitse
playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreAttack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonDefend
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreAttack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonDefend
waitmovement 0
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
@@ -222,13 +204,13 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter::
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonMoveBack
waitmovement 0
waitse
playmoncry SPECIES_GROUDON, CRY_MODE_ENCOUNTER
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreDefend
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonAttack
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreDefend
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonAttack
waitmovement 0
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
@@ -236,13 +218,13 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter::
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonMoveBack
waitmovement 0
waitse
playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreAttack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonDefend
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreAttack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonDefend
waitmovement 0
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
@@ -250,13 +232,13 @@ SootopolisCity_EventScript_LegendariesSceneFromPokeCenter::
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonMoveBack
waitmovement 0
special SpawnCameraObject
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreIdle
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonIdle
- applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanBackToPokeCenter
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreIdle
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonIdle
+ applymovement LOCALID_CAMERA, SootopolisCity_Movement_PanBackToPokeCenter
waitmovement 0
special RemoveCameraObject
setvar VAR_SOOTOPOLIS_CITY_STATE, 2
@@ -297,7 +279,7 @@ SootopolisCity_Movement_PanBackToPokeCenter:
SootopolisCity_EventScript_LegendariesSceneFromDive::
delay 60
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanToActionFromDive
+ applymovement LOCALID_CAMERA, SootopolisCity_Movement_PanToActionFromDive
waitmovement 0
special RemoveCameraObject
delay 60
@@ -307,14 +289,14 @@ SootopolisCity_EventScript_LegendariesSceneFromDive::
setvar VAR_0x8004, FALSE @ Just do Groudon/Kyogre fight scene
special Script_DoRayquazaScene
waitstate
- applymovement LOCALID_KYOGRE, Common_Movement_WalkInPlaceFasterLeft
- applymovement LOCALID_GROUDON, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
delay 60
waitse
playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreAttack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonDefend
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreAttack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonDefend
waitmovement 0
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
@@ -322,13 +304,13 @@ SootopolisCity_EventScript_LegendariesSceneFromDive::
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonMoveBack
waitmovement 0
waitse
playmoncry SPECIES_GROUDON, CRY_MODE_ENCOUNTER
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreDefend
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonAttack
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreDefend
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonAttack
waitmovement 0
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
@@ -336,13 +318,13 @@ SootopolisCity_EventScript_LegendariesSceneFromDive::
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonMoveBack
waitmovement 0
waitse
playmoncry SPECIES_KYOGRE, CRY_MODE_ENCOUNTER
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreAttack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonDefend
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreAttack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonDefend
waitmovement 0
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
@@ -350,13 +332,13 @@ SootopolisCity_EventScript_LegendariesSceneFromDive::
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonMoveBack
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreMoveBack
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonMoveBack
waitmovement 0
special SpawnCameraObject
- applymovement LOCALID_KYOGRE, SootopolisCity_Movement_KyogreIdle
- applymovement LOCALID_GROUDON, SootopolisCity_Movement_GroudonIdle
- applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanBackToDive
+ applymovement LOCALID_SOOTOPOLIS_KYOGRE, SootopolisCity_Movement_KyogreIdle
+ applymovement LOCALID_SOOTOPOLIS_GROUDON, SootopolisCity_Movement_GroudonIdle
+ applymovement LOCALID_CAMERA, SootopolisCity_Movement_PanBackToDive
waitmovement 0
special RemoveCameraObject
setvar VAR_SOOTOPOLIS_CITY_STATE, 2
@@ -486,21 +468,21 @@ SootopolisCity_EventScript_StartRayquazaScene::
SootopolisCity_EventScript_RayquazaSceneFromPokeCenter::
delay 60
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanToActionFromPokeCenter
+ applymovement LOCALID_CAMERA, SootopolisCity_Movement_PanToActionFromPokeCenter
waitmovement 0
special RemoveCameraObject
delay 60
fadescreenspeed FADE_TO_BLACK, 8
call SootopolisCity_EventScript_SetRoughWater
- removeobject LOCALID_GROUDON
- removeobject LOCALID_KYOGRE
- addobject LOCALID_RAYQUAZA
+ removeobject LOCALID_SOOTOPOLIS_GROUDON
+ removeobject LOCALID_SOOTOPOLIS_KYOGRE
+ addobject LOCALID_SOOTOPOLIS_RAYQUAZA
setvar VAR_0x8004, TRUE
special Script_DoRayquazaScene
waitstate
playse SE_THUNDER
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanUp
+ applymovement LOCALID_CAMERA, SootopolisCity_Movement_PanUp
waitmovement 0
waitse
playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER
@@ -521,9 +503,9 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter::
waitmoncry
setweather WEATHER_NONE
doweather
- applymovement LOCALID_RAYQUAZA, SootopolisCity_Movement_RayquazaFlyOff
+ applymovement LOCALID_SOOTOPOLIS_RAYQUAZA, SootopolisCity_Movement_RayquazaFlyOff
waitmovement 0
- removeobject LOCALID_RAYQUAZA
+ removeobject LOCALID_SOOTOPOLIS_RAYQUAZA
special WaitWeather
waitstate
clearflag FLAG_SYS_WEATHER_CTRL
@@ -539,21 +521,21 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter::
SootopolisCity_EventScript_RayquazaSceneFromDive::
delay 60
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanToActionFromDive
+ applymovement LOCALID_CAMERA, SootopolisCity_Movement_PanToActionFromDive
waitmovement 0
special RemoveCameraObject
delay 60
fadescreenspeed FADE_TO_BLACK, 8
call SootopolisCity_EventScript_SetRoughWater
- removeobject LOCALID_GROUDON
- removeobject LOCALID_KYOGRE
- addobject LOCALID_RAYQUAZA
+ removeobject LOCALID_SOOTOPOLIS_GROUDON
+ removeobject LOCALID_SOOTOPOLIS_KYOGRE
+ addobject LOCALID_SOOTOPOLIS_RAYQUAZA
setvar VAR_0x8004, TRUE
special Script_DoRayquazaScene
waitstate
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SootopolisCity_Movement_PanUp
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerApproachLegendaries
+ applymovement LOCALID_CAMERA, SootopolisCity_Movement_PanUp
+ applymovement LOCALID_PLAYER, SootopolisCity_Movement_PlayerApproachLegendaries
waitmovement 0
waitse
playmoncry SPECIES_RAYQUAZA, CRY_MODE_ENCOUNTER
@@ -574,9 +556,9 @@ SootopolisCity_EventScript_RayquazaSceneFromDive::
waitmoncry
setweather WEATHER_NONE
doweather
- applymovement LOCALID_RAYQUAZA, SootopolisCity_Movement_RayquazaFlyOff
+ applymovement LOCALID_SOOTOPOLIS_RAYQUAZA, SootopolisCity_Movement_RayquazaFlyOff
waitmovement 0
- removeobject LOCALID_RAYQUAZA
+ removeobject LOCALID_SOOTOPOLIS_RAYQUAZA
special WaitWeather
waitstate
clearflag FLAG_SYS_WEATHER_CTRL
@@ -771,12 +753,12 @@ SootopolisCity_EventScript_KiriLikeSeasonBornIn::
SootopolisCity_EventScript_Woman2::
lockall
- applymovement LOCALID_WOMAN_2, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_WOMAN_2, Common_Movement_FacePlayer
waitmovement 0
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_Woman2Rayquaza
msgbox SootopolisCity_Text_WeatherWentWild, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_WOMAN_2, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SOOTOPOLIS_WOMAN_2, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
@@ -812,7 +794,7 @@ SootopolisCity_EventScript_Woman1::
SootopolisCity_EventScript_Woman1Legendaries::
msgbox SootopolisCity_Text_GiganticPokemonFight, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_WOMAN_1, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SOOTOPOLIS_WOMAN_1, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -829,14 +811,14 @@ SootopolisCity_EventScript_Woman1Rayquaza::
SootopolisCity_EventScript_NinjaBoy::
lockall
- applymovement LOCALID_NINJA_BOY, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_NINJA_BOY, Common_Movement_FacePlayer
waitmovement 0
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_NinjaBoyRayquaza
goto_if_ge VAR_SOOTOPOLIS_CITY_STATE, 6, SootopolisCity_EventScript_NinjaBoyNormal
goto_if_le VAR_SOOTOPOLIS_CITY_STATE, 1, SootopolisCity_EventScript_NinjaBoyNormal
msgbox SootopolisCity_Text_ThisIsWicked, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_NINJA_BOY, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SOOTOPOLIS_NINJA_BOY, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -853,7 +835,7 @@ SootopolisCity_EventScript_NinjaBoyRayquaza::
SootopolisCity_EventScript_Boy1::
lockall
- applymovement LOCALID_BOY_1, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_BOY_1, Common_Movement_FacePlayer
waitmovement 0
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_Boy1Rayquaza
goto_if_set FLAG_SYS_GAME_CLEAR, SootopolisCity_EventScript_Boy1GameClear
@@ -861,7 +843,7 @@ SootopolisCity_EventScript_Boy1::
goto_if_le VAR_SOOTOPOLIS_CITY_STATE, 1, SootopolisCity_EventScript_Boy1Normal
msgbox SootopolisCity_Text_GiantPokemonSuddenlyAppeared, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_BOY_1, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SOOTOPOLIS_BOY_1, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
@@ -895,7 +877,7 @@ EventScript_ClosedSootopolisDoor::
SootopolisCity_EventScript_Steven::
lockall
- applymovement LOCALID_STEVEN, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_STEVEN, Common_Movement_FacePlayer
waitmovement 0
call_if_unset FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN, SootopolisCity_EventScript_StevenLeadPlayerCaveOfOrigin
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 2, SootopolisCity_EventScript_StevenHelpWallace
@@ -928,33 +910,33 @@ SootopolisCity_EventScript_StevenLeadPlayerCaveOfOrigin::
call_if_eq VAR_FACING, DIR_NORTH, SootopolisCity_EventScript_StartWalkToCaveOfOriginNorth
msgbox SootopolisCity_Text_DoesThisMakeYourFearPokemon, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_STEVEN, SootopolisCity_Movement_StevenWalkToCaveOfOrigin
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerWalkToCaveOfOrigin
+ applymovement LOCALID_SOOTOPOLIS_STEVEN, SootopolisCity_Movement_StevenWalkToCaveOfOrigin
+ applymovement LOCALID_PLAYER, SootopolisCity_Movement_PlayerWalkToCaveOfOrigin
waitmovement 0
delay 120
- applymovement LOCALID_EXPERT, SootopolisCity_Movement_ExpertMoveAside
+ applymovement LOCALID_SOOTOPOLIS_EXPERT, SootopolisCity_Movement_ExpertMoveAside
waitmovement 0
- applymovement LOCALID_STEVEN, SootopolisCity_Movement_StevenArriveCaveEntrance
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerArriveCaveEntrance
+ applymovement LOCALID_SOOTOPOLIS_STEVEN, SootopolisCity_Movement_StevenArriveCaveEntrance
+ applymovement LOCALID_PLAYER, SootopolisCity_Movement_PlayerArriveCaveEntrance
waitmovement 0
msgbox SootopolisCity_Text_HereWereAreHelpWallace, MSGBOX_DEFAULT
closemessage
setflag FLAG_STEVEN_GUIDES_TO_CAVE_OF_ORIGIN
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerEnterCaveOfOrigin
+ applymovement LOCALID_PLAYER, SootopolisCity_Movement_PlayerEnterCaveOfOrigin
waitmovement 0
warp MAP_CAVE_OF_ORIGIN_ENTRANCE, 9, 20
waitstate
end
SootopolisCity_EventScript_StartWalkToCaveOfOriginWest::
- applymovement LOCALID_STEVEN, SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginWest
+ applymovement LOCALID_SOOTOPOLIS_STEVEN, SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin
+ applymovement LOCALID_PLAYER, SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginWest
waitmovement 0
return
SootopolisCity_EventScript_StartWalkToCaveOfOriginNorth::
- applymovement LOCALID_STEVEN, SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginNorth
+ applymovement LOCALID_SOOTOPOLIS_STEVEN, SootopolisCity_Movement_StevenStartWalkToCaveOfOrigin
+ applymovement LOCALID_PLAYER, SootopolisCity_Movement_PlayerStartWalkToCaveOfOriginNorth
waitmovement 0
return
@@ -1224,12 +1206,12 @@ SootopolisCity_Movement_PlayerEnterCaveOfOrigin:
SootopolisCity_EventScript_Boy2::
lockall
- applymovement LOCALID_BOY_2, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_BOY_2, Common_Movement_FacePlayer
waitmovement 0
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_Boy2Rayquaza
msgbox SootopolisCity_Text_TwoPokemonArentAngry, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_BOY_2, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SOOTOPOLIS_BOY_2, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
@@ -1245,17 +1227,17 @@ SootopolisCity_EventScript_BlackBelt::
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_BlackBeltRayquaza
msgbox SootopolisCity_Text_GoRedAndBlueMon, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_BLACK_BELT, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_BLACK_BELT, Common_Movement_FacePlayer
waitmovement 0
msgbox SootopolisCity_Text_DoYouKnowMonNames, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_BLACK_BELT, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SOOTOPOLIS_BLACK_BELT, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
SootopolisCity_EventScript_BlackBeltRayquaza::
- applymovement LOCALID_BLACK_BELT, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_BLACK_BELT, Common_Movement_FacePlayer
waitmovement 0
msgbox SootopolisCity_Text_GreenOneSettlesThings, MSGBOX_DEFAULT
releaseall
@@ -1263,12 +1245,12 @@ SootopolisCity_EventScript_BlackBeltRayquaza::
SootopolisCity_EventScript_Girl::
lockall
- applymovement LOCALID_GIRL, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_GIRL, Common_Movement_FacePlayer
waitmovement 0
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_GirlRayquaza
msgbox SootopolisCity_Text_SootopolisWillBeWrecked, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_GIRL, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SOOTOPOLIS_GIRL, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
@@ -1281,12 +1263,12 @@ SootopolisCity_EventScript_GirlRayquaza::
SootopolisCity_EventScript_Maniac::
lockall
- applymovement LOCALID_MANIAC, Common_Movement_FacePlayer
+ applymovement LOCALID_SOOTOPOLIS_MANIAC, Common_Movement_FacePlayer
waitmovement 0
goto_if_eq VAR_SOOTOPOLIS_CITY_STATE, 5, SootopolisCity_EventScript_ManiacRayquaza
msgbox SootopolisCity_Text_SeeingLegendWithOwnEyes, MSGBOX_DEFAULT
closemessage
- applymovement LOCALID_MANIAC, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_SOOTOPOLIS_MANIAC, Common_Movement_FaceOriginalDirection
waitmovement 0
releaseall
end
@@ -1319,16 +1301,16 @@ SootopolisCity_EventScript_GiveWaterfall::
end
SootopolisCity_EventScript_WallaceMoveFromGym::
- applymovement LOCALID_WALLACE, SootopolisCity_Movement_WallaceMoveFromGym
+ applymovement LOCALID_SOOTOPOLIS_WALLACE, SootopolisCity_Movement_WallaceMoveFromGym
waitmovement 0
- copyobjectxytoperm LOCALID_WALLACE
+ copyobjectxytoperm LOCALID_SOOTOPOLIS_WALLACE
setvar VAR_SOOTOPOLIS_WALLACE_STATE, 1
return
SootopolisCity_EventScript_WallaceMoveFromGymWest::
- applymovement LOCALID_WALLACE, SootopolisCity_Movement_WallaceMoveFromGymWest
+ applymovement LOCALID_SOOTOPOLIS_WALLACE, SootopolisCity_Movement_WallaceMoveFromGymWest
waitmovement 0
- copyobjectxytoperm LOCALID_WALLACE
+ copyobjectxytoperm LOCALID_SOOTOPOLIS_WALLACE
setvar VAR_SOOTOPOLIS_WALLACE_STATE, 2
return
diff --git a/data/maps/SootopolisCity_Gym_1F/scripts.inc b/data/maps/SootopolisCity_Gym_1F/scripts.inc
index 62ed607fca..9fe922ccc9 100644
--- a/data/maps/SootopolisCity_Gym_1F/scripts.inc
+++ b/data/maps/SootopolisCity_Gym_1F/scripts.inc
@@ -67,7 +67,7 @@ SootopolisCity_Gym_1F_EventScript_UnlockThirdStairs::
SootopolisCity_Gym_1F_EventScript_FallThroughIce::
lockall
delay 20
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_Gym_1F_Movement_FallThroughIce
+ applymovement LOCALID_PLAYER, SootopolisCity_Gym_1F_Movement_FallThroughIce
waitmovement 0
playse SE_FALL
delay 60
diff --git a/data/maps/SootopolisCity_Mart/map.json b/data/maps/SootopolisCity_Mart/map.json
index 1f75af5de4..cf8dbae571 100644
--- a/data/maps/SootopolisCity_Mart/map.json
+++ b/data/maps/SootopolisCity_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SOOTOPOLIS_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/SootopolisCity_Mart/scripts.inc b/data/maps/SootopolisCity_Mart/scripts.inc
index 02b05602a0..140f6fdaea 100644
--- a/data/maps/SootopolisCity_Mart/scripts.inc
+++ b/data/maps/SootopolisCity_Mart/scripts.inc
@@ -22,9 +22,7 @@ SootopolisCity_Mart_Pokemart:
.2byte ITEM_X_ATTACK
.2byte ITEM_X_DEFEND
.2byte ITEM_SHADOW_MAIL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
SootopolisCity_Mart_EventScript_FatMan::
lock
diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/map.json b/data/maps/SootopolisCity_MysteryEventsHouse_1F/map.json
index 0b2ad974c0..f9307a231b 100644
--- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/map.json
+++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_MYSTERY_EVENTS_OLD_MAN",
"graphics_id": "OBJ_EVENT_GFX_OLD_MAN",
"x": 6,
"y": 4,
diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc
index c33f51dab2..08ceb4189e 100644
--- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc
+++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_OLD_MAN, 1
-
SootopolisCity_MysteryEventsHouse_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SootopolisCity_MysteryEventsHouse_1F_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, SootopolisCity_MysteryEventsHouse_1F_OnFrame
@@ -13,14 +11,14 @@ SootopolisCity_MysteryEventsHouse_1F_OnTransition:
SootopolisCity_MysteryEventsHouse_1F_EventScript_SetTrainerVisitingLayout::
setvar VAR_TEMP_1, 1
- setobjectxyperm LOCALID_OLD_MAN, 3, 2
- setobjectmovementtype LOCALID_OLD_MAN, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_MYSTERY_EVENTS_OLD_MAN, 3, 2
+ setobjectmovementtype LOCALID_MYSTERY_EVENTS_OLD_MAN, MOVEMENT_TYPE_FACE_DOWN
setmaplayoutindex LAYOUT_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F_STAIRS_UNBLOCKED
return
SootopolisCity_MysteryEventsHouse_1F_EventScript_MoveOldManToDoor::
- setobjectxyperm LOCALID_OLD_MAN, 2, 2
- setobjectmovementtype LOCALID_OLD_MAN, MOVEMENT_TYPE_FACE_RIGHT
+ setobjectxyperm LOCALID_MYSTERY_EVENTS_OLD_MAN, 2, 2
+ setobjectmovementtype LOCALID_MYSTERY_EVENTS_OLD_MAN, MOVEMENT_TYPE_FACE_RIGHT
return
SootopolisCity_MysteryEventsHouse_1F_OnFrame:
@@ -31,12 +29,12 @@ SootopolisCity_MysteryEventsHouse_1F_OnFrame:
SootopolisCity_MysteryEventsHouse_1F_EventScript_OldManCommentOnBattle::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerExitStairs
+ applymovement LOCALID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerExitStairs
waitmovement 0
- applymovement LOCALID_OLD_MAN, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManWalkBehindPlayer
+ applymovement LOCALID_MYSTERY_EVENTS_OLD_MAN, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManWalkBehindPlayer
waitmovement 0
- copyobjectxytoperm LOCALID_OLD_MAN
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ copyobjectxytoperm LOCALID_MYSTERY_EVENTS_OLD_MAN
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
call_if_eq VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 1, SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleWonComment
call_if_eq VAR_SOOTOPOLIS_MYSTERY_EVENTS_STATE, 2, SootopolisCity_MysteryEventsHouse_1F_EventScript_BattleLostComment
@@ -121,19 +119,19 @@ SootopolisCity_MysteryEventsHouse_1F_EventScript_ChooseParty::
SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementNorth::
applymovement VAR_LAST_TALKED, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideLeft
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementNorth
+ applymovement LOCALID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementNorth
waitmovement 0
return
SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementEast::
applymovement VAR_LAST_TALKED, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideRight
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementEast
+ applymovement LOCALID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementEast
waitmovement 0
return
SootopolisCity_MysteryEventsHouse_1F_EventScript_EnterBasementWest::
applymovement VAR_LAST_TALKED, SootopolisCity_MysteryEventsHouse_1F_Movement_OldManMoveAsideLeft
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementWest
+ applymovement LOCALID_PLAYER, SootopolisCity_MysteryEventsHouse_1F_Movement_PlayerEnterBasementWest
waitmovement 0
return
diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc
index deca7a574c..6b68e6667e 100644
--- a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc
+++ b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/scripts.inc
@@ -13,7 +13,7 @@ SootopolisCity_MysteryEventsHouse_B1F_OnFrame:
SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleVisitingTrainer::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerEnterBasement
+ applymovement LOCALID_PLAYER, SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerEnterBasement
waitmovement 0
special CopyEReaderTrainerGreeting
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -27,7 +27,7 @@ SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleVisitingTrainer::
call_if_eq VAR_RESULT, B_OUTCOME_LOST, SootopolisCity_MysteryEventsHouse_B1F_EventScript_BattleLost
closemessage
special HealPlayerParty
- applymovement OBJ_EVENT_ID_PLAYER, SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerExitBasement
+ applymovement LOCALID_PLAYER, SootopolisCity_MysteryEventsHouse_B1F_Movement_PlayerExitBasement
waitmovement 0
special LoadPlayerParty
setvar VAR_TEMP_1, 1
diff --git a/data/maps/SootopolisCity_PokemonCenter_1F/map.json b/data/maps/SootopolisCity_PokemonCenter_1F/map.json
index 0fa27599da..8db695278d 100644
--- a/data/maps/SootopolisCity_PokemonCenter_1F/map.json
+++ b/data/maps/SootopolisCity_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SOOTOPOLIS_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc b/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc
index e29a5132c4..79d7972f56 100644
--- a/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc
+++ b/data/maps/SootopolisCity_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
SootopolisCity_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SootopolisCity_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -10,7 +8,7 @@ SootopolisCity_PokemonCenter_1F_OnTransition:
end
SootopolisCity_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_SOOTOPOLIS_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/SouthernIsland_Exterior/map.json b/data/maps/SouthernIsland_Exterior/map.json
index 53a988398c..f6775f2483 100644
--- a/data/maps/SouthernIsland_Exterior/map.json
+++ b/data/maps/SouthernIsland_Exterior/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_SOUTHERN_ISLAND_SAILOR",
"graphics_id": "OBJ_EVENT_GFX_SAILOR",
"x": 13,
"y": 23,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_SOUTHERN_ISLAND_SS_TIDAL",
"graphics_id": "OBJ_EVENT_GFX_SS_TIDAL",
"x": 13,
"y": 25,
diff --git a/data/maps/SouthernIsland_Exterior/scripts.inc b/data/maps/SouthernIsland_Exterior/scripts.inc
index e004afb29a..352a19a2a5 100644
--- a/data/maps/SouthernIsland_Exterior/scripts.inc
+++ b/data/maps/SouthernIsland_Exterior/scripts.inc
@@ -1,6 +1,3 @@
-.set LOCALID_SAILOR, 1
-.set LOCALID_SS_TIDAL, 2
-
SouthernIsland_Exterior_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, SouthernIsland_Exterior_OnTransition
end_map_scripts
@@ -19,8 +16,8 @@ SouthernIsland_Exterior_EventScript_Sailor::
applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
delay 30
- hideobjectat LOCALID_SAILOR, MAP_SOUTHERN_ISLAND_EXTERIOR
- setvar VAR_0x8004, LOCALID_SS_TIDAL
+ hideobjectat LOCALID_SOUTHERN_ISLAND_SAILOR, MAP_SOUTHERN_ISLAND_EXTERIOR
+ setvar VAR_0x8004, LOCALID_SOUTHERN_ISLAND_SS_TIDAL
call Common_EventScript_FerryDepartIsland
warp MAP_LILYCOVE_CITY_HARBOR, 8, 11
waitstate
@@ -33,12 +30,12 @@ SouthernIsland_Exterior_EventScript_AsYouLike::
end
Ferry_EventScript_DepartIslandSouth::
- applymovement OBJ_EVENT_ID_PLAYER, Ferry_Movement_DepartIslandBoardSouth
+ applymovement LOCALID_PLAYER, Ferry_Movement_DepartIslandBoardSouth
waitmovement 0
return
Ferry_EventScript_DepartIslandWest::
- applymovement OBJ_EVENT_ID_PLAYER, Ferry_Movement_DepartIslandBoardWest
+ applymovement LOCALID_PLAYER, Ferry_Movement_DepartIslandBoardWest
waitmovement 0
return
diff --git a/data/maps/SouthernIsland_Interior/map.json b/data/maps/SouthernIsland_Interior/map.json
index 76212cbbd1..6871b7704f 100644
--- a/data/maps/SouthernIsland_Interior/map.json
+++ b/data/maps/SouthernIsland_Interior/map.json
@@ -28,6 +28,7 @@
"flag": "FLAG_HIDE_SOUTHERN_ISLAND_EON_STONE"
},
{
+ "local_id": "LOCALID_SOUTHERN_ISLAND_LATI",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 13,
"y": 2,
diff --git a/data/maps/SouthernIsland_Interior/scripts.inc b/data/maps/SouthernIsland_Interior/scripts.inc
index 6dadddf3fb..cb2f2e53ad 100644
--- a/data/maps/SouthernIsland_Interior/scripts.inc
+++ b/data/maps/SouthernIsland_Interior/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_LATI, 2
-
SouthernIsland_Interior_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, SouthernIsland_Interior_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, SouthernIsland_Interior_OnTransition
@@ -12,7 +10,7 @@ SouthernIsland_Interior_OnResume:
SouthernIsland_Interior_EventScript_TryRemoveLati::
specialvar VAR_RESULT, GetBattleOutcome
goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn
- removeobject LOCALID_LATI
+ removeobject LOCALID_SOUTHERN_ISLAND_LATI
return
SouthernIsland_Interior_OnTransition:
@@ -59,21 +57,21 @@ SouthernIsland_Interior_EventScript_Lati::
setflag FLAG_ENCOUNTERED_LATIAS_OR_LATIOS
setflag FLAG_TEMP_2
special SpawnCameraObject
- applymovement OBJ_EVENT_ID_CAMERA, SouthernIsland_Interior_Movement_CameraPanUp
+ applymovement LOCALID_CAMERA, SouthernIsland_Interior_Movement_CameraPanUp
waitmovement 0
delay 50
waitse
playmoncry VAR_TEMP_4, CRY_MODE_NORMAL
delay 30
waitmoncry
- addobject LOCALID_LATI
+ addobject LOCALID_SOUTHERN_ISLAND_LATI
delay 30
- applymovement OBJ_EVENT_ID_CAMERA, SouthernIsland_Interior_Movement_CameraPanDown
- applymovement LOCALID_LATI, SouthernIsland_Interior_Movement_LatiApproach
+ applymovement LOCALID_CAMERA, SouthernIsland_Interior_Movement_CameraPanDown
+ applymovement LOCALID_SOUTHERN_ISLAND_LATI, SouthernIsland_Interior_Movement_LatiApproach
waitmovement 0
delay 50
special RemoveCameraObject
- setvar VAR_LAST_TALKED, LOCALID_LATI
+ setvar VAR_LAST_TALKED, LOCALID_SOUTHERN_ISLAND_LATI
call_if_eq VAR_ROAMER_POKEMON, 0, SouthernIsland_Interior_EventScript_SetLatiosBattleVars
call_if_ne VAR_ROAMER_POKEMON, 0, SouthernIsland_Interior_EventScript_SetLatiasBattleVars
setflag FLAG_SYS_CTRL_OBJ_DELETE
diff --git a/data/maps/TerraCave_End/map.json b/data/maps/TerraCave_End/map.json
index 264b35af23..78cf26b168 100644
--- a/data/maps/TerraCave_End/map.json
+++ b/data/maps/TerraCave_End/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TERRA_CAVE_GROUDON",
"graphics_id": "OBJ_EVENT_GFX_GROUDON_FRONT",
"x": 17,
"y": 22,
diff --git a/data/maps/TerraCave_End/scripts.inc b/data/maps/TerraCave_End/scripts.inc
index b93068bbbf..4decc443df 100644
--- a/data/maps/TerraCave_End/scripts.inc
+++ b/data/maps/TerraCave_End/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_GROUDON, 1
-
TerraCave_End_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, TerraCave_End_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, TerraCave_End_OnTransition
@@ -12,7 +10,7 @@ TerraCave_End_OnResume:
TerraCave_End_EventScript_TryRemoveGroudon::
specialvar VAR_RESULT, GetBattleOutcome
goto_if_ne VAR_RESULT, B_OUTCOME_CAUGHT, Common_EventScript_NopReturn
- removeobject LOCALID_GROUDON
+ removeobject LOCALID_TERRA_CAVE_GROUDON
return
TerraCave_End_OnTransition:
@@ -26,15 +24,15 @@ TerraCave_End_EventScript_ShowGroudon::
TerraCave_End_EventScript_Groudon::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_FaceUp
+ applymovement LOCALID_PLAYER, Common_Movement_FaceUp
waitmovement 0
- applymovement LOCALID_GROUDON, TerraCave_End_Movement_GroudonApproach
+ applymovement LOCALID_TERRA_CAVE_GROUDON, TerraCave_End_Movement_GroudonApproach
waitmovement 0
waitse
playmoncry SPECIES_GROUDON, CRY_MODE_ENCOUNTER
delay 40
waitmoncry
- setvar VAR_LAST_TALKED, LOCALID_GROUDON
+ setvar VAR_LAST_TALKED, LOCALID_TERRA_CAVE_GROUDON
setwildbattle SPECIES_GROUDON, 70
setflag FLAG_SYS_CTRL_OBJ_DELETE
special BattleSetup_StartLegendaryBattle
diff --git a/data/maps/TrainerHill_Elevator/map.json b/data/maps/TrainerHill_Elevator/map.json
index a611cbf641..c24a063633 100644
--- a/data/maps/TrainerHill_Elevator/map.json
+++ b/data/maps/TrainerHill_Elevator/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TRAINER_HILL_ELEVATOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 0,
"y": 6,
diff --git a/data/maps/TrainerHill_Elevator/scripts.inc b/data/maps/TrainerHill_Elevator/scripts.inc
index eb3907755e..a701bb9db3 100644
--- a/data/maps/TrainerHill_Elevator/scripts.inc
+++ b/data/maps/TrainerHill_Elevator/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
TrainerHill_Elevator_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, TrainerHill_Elevator_OnFrame
end_map_scripts
@@ -12,7 +10,7 @@ TrainerHill_Elevator_EventScript_Attendant::
end
TrainerHill_Elevator_EventScript_ExitToRoof::
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Elevator_Movement_PlayerExitElevatorToRoof
+ applymovement LOCALID_PLAYER, TrainerHill_Elevator_Movement_PlayerExitElevatorToRoof
waitmovement 0
releaseall
warp MAP_TRAINER_HILL_ROOF, 15, 5
@@ -20,21 +18,21 @@ TrainerHill_Elevator_EventScript_ExitToRoof::
end
TrainerHill_Elevator_EventScript_EnterElevator::
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Elevator_Movement_PlayerApproachAttendant
+ applymovement LOCALID_PLAYER, TrainerHill_Elevator_Movement_PlayerApproachAttendant
waitmovement 0
- applymovement LOCALID_ATTENDANT, TrainerHill_Elevator_Movement_AttendantFacePlayer
+ applymovement LOCALID_TRAINER_HILL_ELEVATOR_ATTENDANT, TrainerHill_Elevator_Movement_AttendantFacePlayer
waitmovement 0
lockall
msgbox TrainerHill_Elevator_Text_ReturnToReception, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, TrainerHill_Elevator_EventScript_ExitToRoof
releaseall
- applymovement LOCALID_ATTENDANT, TrainerHill_Elevator_Movement_AttendantFaceDown
+ applymovement LOCALID_TRAINER_HILL_ELEVATOR_ATTENDANT, TrainerHill_Elevator_Movement_AttendantFaceDown
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Elevator_Movement_PlayerMoveToCenterOfElevator
+ applymovement LOCALID_PLAYER, TrainerHill_Elevator_Movement_PlayerMoveToCenterOfElevator
waitmovement 0
call TrainerHill_Elevator_EventScript_MoveElevator
delay 25
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Elevator_Movement_PlayerExitElevator
+ applymovement LOCALID_PLAYER, TrainerHill_Elevator_Movement_PlayerExitElevator
waitmovement 0
warp MAP_TRAINER_HILL_ENTRANCE, 17, 8
waitstate
diff --git a/data/maps/TrainerHill_Entrance/map.json b/data/maps/TrainerHill_Entrance/map.json
index 0f2b4ec558..5c931215c4 100644
--- a/data/maps/TrainerHill_Entrance/map.json
+++ b/data/maps/TrainerHill_Entrance/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_TRAINER_HILL_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_TEALA",
"x": 11,
"y": 6,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRAINER_HILL_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 4,
"y": 9,
@@ -54,6 +56,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRAINER_HILL_GIRL",
"graphics_id": "OBJ_EVENT_GFX_GIRL_3",
"x": 5,
"y": 14,
@@ -67,6 +70,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_TRAINER_HILL_MAN",
"graphics_id": "OBJ_EVENT_GFX_MAN_3",
"x": 14,
"y": 15,
diff --git a/data/maps/TrainerHill_Entrance/scripts.inc b/data/maps/TrainerHill_Entrance/scripts.inc
index 2f0ec3e028..ebb353cdbb 100644
--- a/data/maps/TrainerHill_Entrance/scripts.inc
+++ b/data/maps/TrainerHill_Entrance/scripts.inc
@@ -1,8 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-.set LOCALID_NURSE, 2
-.set LOCALID_GIRL, 4
-.set LOCALID_MAN, 5
-
TrainerHill_Entrance_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, TrainerHill_Entrance_OnResume
map_script MAP_SCRIPT_ON_RETURN_TO_FIELD, TrainerHill_Entrance_OnReturn
@@ -25,24 +20,24 @@ TrainerHill_Entrance_OnResume:
setvar VAR_TEMP_0, 0
trainerhill_getusingereader
goto_if_eq VAR_RESULT, FALSE, TrainerHill_Entrance_EventScript_TryFaceAttendant @ VAR_RESULT always FALSE here
- setobjectxy OBJ_EVENT_ID_PLAYER, 9, 6
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
+ setobjectxy LOCALID_PLAYER, 9, 6
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
end
TrainerHill_Entrance_EventScript_TryFaceAttendant::
trainerhill_getwon
goto_if_eq VAR_RESULT, TRUE, TrainerHill_Entrance_EventScript_PlayerDontFaceAttendant
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
end
TrainerHill_Entrance_EventScript_PlayerDontFaceAttendant::
end
TrainerHill_Entrance_OnReturn:
- addobject LOCALID_NURSE
- addobject LOCALID_ATTENDANT
- addobject LOCALID_MAN
- addobject LOCALID_GIRL
+ addobject LOCALID_TRAINER_HILL_NURSE
+ addobject LOCALID_TRAINER_HILL_ATTENDANT
+ addobject LOCALID_TRAINER_HILL_MAN
+ addobject LOCALID_TRAINER_HILL_GIRL
end
TrainerHill_Entrance_OnLoad:
@@ -62,7 +57,7 @@ TrainerHill_Entrance_OnFrame:
TrainerHill_Entrance_EventScript_ExitElevator::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerExitElevator
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PlayerExitElevator
waitmovement 0
setmetatile 17, 10, METATILE_TrainerHill_CounterDoor, TRUE
special DrawWholeMapView
@@ -82,17 +77,17 @@ TrainerHill_Entrance_EventScript_ExitChallenge::
TrainerHill_Entrance_EventScript_ExitChallengeLost::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
msgbox TrainerHill_Entrance_Text_TooBadTremendousEffort, MSGBOX_DEFAULT
goto TrainerHill_Entrance_EventScript_PlayerExitChallenge
TrainerHill_Entrance_EventScript_ExitChallengeECard::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
msgbox TrainerHill_Entrance_Text_MovedReceptionHereForSwitch, MSGBOX_DEFAULT
TrainerHill_Entrance_EventScript_PlayerExitChallenge::
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PushPlayerBackFromCounter
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PushPlayerBackFromCounter
waitmovement 0
setvar VAR_TRAINER_HILL_IS_ACTIVE, 0
special HealPlayerParty
@@ -101,7 +96,7 @@ TrainerHill_Entrance_EventScript_EndExitChallenge::
end
TrainerHill_Entrance_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_TRAINER_HILL_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
@@ -124,7 +119,7 @@ TrainerHill_Entrance_EventScript_AttendantEnd::
TrainerHill_Entrance_EventScript_EntryTrigger::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PlayerFaceAttendant
goto_if_unset FLAG_SYS_GAME_CLEAR, TrainerHill_Entrance_EventScript_Closed
msgbox TrainerHill_Entrance_Text_WelcomeToTrainerHill, MSGBOX_DEFAULT
trainerhill_getsaved
@@ -170,7 +165,7 @@ TrainerHill_Entrance_EventScript_CancelEntry::
setvar VAR_TEMP_5, 0
msgbox TrainerHill_Entrance_Text_PleaseVisitUsAgain, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PushPlayerBackFromCounter
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PushPlayerBackFromCounter
waitmovement 0
releaseall
end
@@ -192,7 +187,7 @@ TrainerHill_Entrance_EventScript_SaveFailed::
TrainerHill_Entrance_EventScript_Closed::
msgbox TrainerHill_Entrance_Text_StillGettingReady, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, TrainerHill_Entrance_Movement_PushPlayerBackFromCounter
+ applymovement LOCALID_PLAYER, TrainerHill_Entrance_Movement_PushPlayerBackFromCounter
waitmovement 0
releaseall
end
@@ -265,9 +260,7 @@ TrainerHill_Entrance_Pokemart_Basic:
.2byte ITEM_DIRE_HIT
.2byte ITEM_GUARD_SPEC
.2byte ITEM_X_ACCURACY
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
TrainerHill_Entrance_EventScript_ExpandedPokemart::
pokemart TrainerHill_Entrance_Pokemart_Expanded
@@ -289,9 +282,7 @@ TrainerHill_Entrance_Pokemart_Expanded:
.2byte ITEM_DIRE_HIT
.2byte ITEM_GUARD_SPEC
.2byte ITEM_X_ACCURACY
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
TrainerHill_Entrance_Text_StillGettingReady:
.string "This is the TRAINER HILL where\n"
diff --git a/data/maps/UnionRoom/map.json b/data/maps/UnionRoom/map.json
index 8c663eb42e..e54ac0c228 100644
--- a/data/maps/UnionRoom/map.json
+++ b/data/maps/UnionRoom/map.json
@@ -28,6 +28,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_UNION_ROOM_PLAYER_4",
"graphics_id": "OBJ_EVENT_GFX_VAR_3",
"x": 1,
"y": 8,
@@ -41,6 +42,7 @@
"flag": "FLAG_HIDE_UNION_ROOM_PLAYER_4"
},
{
+ "local_id": "LOCALID_UNION_ROOM_PLAYER_8",
"graphics_id": "OBJ_EVENT_GFX_VAR_7",
"x": 7,
"y": 8,
@@ -54,6 +56,7 @@
"flag": "FLAG_HIDE_UNION_ROOM_PLAYER_8"
},
{
+ "local_id": "LOCALID_UNION_ROOM_PLAYER_7",
"graphics_id": "OBJ_EVENT_GFX_VAR_6",
"x": 1,
"y": 4,
@@ -67,6 +70,7 @@
"flag": "FLAG_HIDE_UNION_ROOM_PLAYER_7"
},
{
+ "local_id": "LOCALID_UNION_ROOM_PLAYER_6",
"graphics_id": "OBJ_EVENT_GFX_VAR_5",
"x": 7,
"y": 4,
@@ -80,6 +84,7 @@
"flag": "FLAG_HIDE_UNION_ROOM_PLAYER_6"
},
{
+ "local_id": "LOCALID_UNION_ROOM_PLAYER_5",
"graphics_id": "OBJ_EVENT_GFX_VAR_4",
"x": 13,
"y": 4,
@@ -93,6 +98,7 @@
"flag": "FLAG_HIDE_UNION_ROOM_PLAYER_5"
},
{
+ "local_id": "LOCALID_UNION_ROOM_PLAYER_3",
"graphics_id": "OBJ_EVENT_GFX_VAR_2",
"x": 10,
"y": 6,
@@ -106,6 +112,7 @@
"flag": "FLAG_HIDE_UNION_ROOM_PLAYER_3"
},
{
+ "local_id": "LOCALID_UNION_ROOM_PLAYER_2",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 13,
"y": 8,
@@ -119,6 +126,7 @@
"flag": "FLAG_HIDE_UNION_ROOM_PLAYER_2"
},
{
+ "local_id": "LOCALID_UNION_ROOM_PLAYER_1",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 4,
"y": 6,
diff --git a/data/maps/UnionRoom/scripts.inc b/data/maps/UnionRoom/scripts.inc
index 1c99fb0586..25c8aad65b 100644
--- a/data/maps/UnionRoom/scripts.inc
+++ b/data/maps/UnionRoom/scripts.inc
@@ -1,5 +1,3 @@
-@ Note: LOCALID_UNION_ROOM_PLAYER_# are local ids for this map used elsewhere. They're defined in event_objects.h
-
UnionRoom_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, UnionRoom_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, UnionRoom_OnTransition
diff --git a/data/maps/VerdanturfTown/map.json b/data/maps/VerdanturfTown/map.json
index ae40730c0e..1b29ea7153 100644
--- a/data/maps/VerdanturfTown/map.json
+++ b/data/maps/VerdanturfTown/map.json
@@ -39,6 +39,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_VERDANTURF_TWIN",
"graphics_id": "OBJ_EVENT_GFX_TWIN",
"x": 9,
"y": 2,
diff --git a/data/maps/VerdanturfTown/scripts.inc b/data/maps/VerdanturfTown/scripts.inc
index 319be1f32d..1ca3abd2fd 100644
--- a/data/maps/VerdanturfTown/scripts.inc
+++ b/data/maps/VerdanturfTown/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_TWIN, 2
-
VerdanturfTown_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, VerdanturfTown_OnTransition
end_map_scripts
@@ -14,14 +12,14 @@ VerdanturfTown_EventScript_Twin::
faceplayer
goto_if_set FLAG_RUSTURF_TUNNEL_OPENED, VerdanturfTown_EventScript_TwinTunnelOpen
msgbox VerdanturfTown_Text_ManTryingToDigTunnel, MSGBOX_DEFAULT
- applymovement LOCALID_TWIN, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_VERDANTURF_TWIN, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
VerdanturfTown_EventScript_TwinTunnelOpen::
msgbox VerdanturfTown_Text_ManDugTunnelForLove, MSGBOX_DEFAULT
- applymovement LOCALID_TWIN, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_VERDANTURF_TWIN, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/map.json b/data/maps/VerdanturfTown_BattleTentBattleRoom/map.json
index 72eca1d95c..7913b66e98 100644
--- a/data/maps/VerdanturfTown_BattleTentBattleRoom/map.json
+++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_VERDANTURF_TENT_BATTLE_PLAYER",
"graphics_id": "OBJ_EVENT_GFX_VAR_1",
"x": 2,
"y": 8,
@@ -28,6 +29,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_VERDANTURF_TENT_BATTLE_OPPONENT",
"graphics_id": "OBJ_EVENT_GFX_VAR_0",
"x": 11,
"y": 1,
@@ -41,6 +43,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_VERDANTURF_TENT_BATTLE_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 2,
"y": 4,
diff --git a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc
index 2d6a715946..3f7d5ebb54 100644
--- a/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc
+++ b/data/maps/VerdanturfTown_BattleTentBattleRoom/scripts.inc
@@ -1,17 +1,13 @@
-.set LOCALID_PLAYER, 1
-.set LOCALID_OPPONENT, 2
-.set LOCALID_ATTENDANT, 3
-
+@ On this map the player will automatically walk into the room, but the camera is supposed to remain still.
+@ To do this GF sets the player (LOCALID_PLAYER) invisible and creates a fake player object (LOCALID_VERDANTURF_TENT_BATTLE_PLAYER).
+@ The graphics of this fake player object are represented with VAR_OBJ_GFX_ID_1.
+@ The graphics of the opponent are represented with VAR_OBJ_GFX_ID_0, which will ultimately be set by tower_setopponent.
VerdanturfTown_BattleTentBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, VerdanturfTown_BattleTentBattleRoom_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentBattleRoom_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentBattleRoom_OnWarp
end_map_scripts
- @ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
- @ The player is represented instead by object event 1, which has the gfx id VAR_OBJ_GFX_ID_1
- @ The opponent is represented by object event 2, which has the gfx id VAR_OBJ_GFX_ID_0
-
VerdanturfTown_BattleTentBattleRoom_OnTransition:
call VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx
end
@@ -37,15 +33,15 @@ VerdanturfTown_BattleTentBattleRoom_OnFrame:
end_map_script_table
VerdanturfTown_BattleTentBattleRoom_EventScript_EnterRoom::
- showobjectat LOCALID_PLAYER, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM
- applymovement LOCALID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter
+ showobjectat LOCALID_VERDANTURF_TENT_BATTLE_PLAYER, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM
+ applymovement LOCALID_VERDANTURF_TENT_BATTLE_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_PlayerEnter
waitmovement 0
frontier_get FRONTIER_DATA_BATTLE_NUM
goto_if_ne VAR_RESULT, 0, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter::
tower_setopponent
- addobject LOCALID_OPPONENT
- applymovement LOCALID_OPPONENT, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter
+ addobject LOCALID_VERDANTURF_TENT_BATTLE_OPPONENT
+ applymovement LOCALID_VERDANTURF_TENT_BATTLE_OPPONENT, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentEnter
waitmovement 0
battletent_getopponentintro
msgbox gStringVar4, MSGBOX_DEFAULT
@@ -65,11 +61,11 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_DefeatedOpponent::
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
switch VAR_RESULT
case 3, VerdanturfTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon
- applymovement LOCALID_OPPONENT, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit
+ applymovement LOCALID_VERDANTURF_TENT_BATTLE_OPPONENT, VerdanturfTown_BattleTentBattleRoom_Movement_OpponentExit
waitmovement 0
- removeobject LOCALID_OPPONENT
- applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterDown
- applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ removeobject LOCALID_VERDANTURF_TENT_BATTLE_OPPONENT
+ applymovement LOCALID_VERDANTURF_TENT_BATTLE_ATTENDANT, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_VERDANTURF_TENT_BATTLE_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox BattleFrontier_BattlePalaceBattleRoom_Text_LetMeRestoreYourMons, MSGBOX_DEFAULT
special LoadPlayerParty
@@ -106,8 +102,8 @@ VerdanturfTown_BattleTentBattleRoom_EventScript_AskRetireChallenge::
case MULTI_B_PRESSED, VerdanturfTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
VerdanturfTown_BattleTentBattleRoom_EventScript_ContinueChallenge::
- applymovement LOCALID_ATTENDANT, Common_Movement_WalkInPlaceFasterRight
- applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_VERDANTURF_TENT_BATTLE_ATTENDANT, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_VERDANTURF_TENT_BATTLE_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
closemessage
goto VerdanturfTown_BattleTentBattleRoom_EventScript_NextOpponentEnter
@@ -133,11 +129,11 @@ VerdanturfTown_BattleTentBattleRoom_OnWarp:
end_map_script_table
VerdanturfTown_BattleTentBattleRoom_EventScript_SetUpObjects::
- hideobjectat LOCALID_PLAYER, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM
+ hideobjectat LOCALID_VERDANTURF_TENT_BATTLE_PLAYER, MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM
call VerdanturfTown_BattleTentBattleRoom_EventScript_SetPlayerGfx
setvar VAR_TEMP_1, 1
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_SetInvisible
- removeobject LOCALID_OPPONENT
+ applymovement LOCALID_PLAYER, VerdanturfTown_BattleTentBattleRoom_Movement_SetInvisible
+ removeobject LOCALID_VERDANTURF_TENT_BATTLE_OPPONENT
end
VerdanturfTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent::
diff --git a/data/maps/VerdanturfTown_BattleTentCorridor/map.json b/data/maps/VerdanturfTown_BattleTentCorridor/map.json
index 2b875b9009..95c0dffc5a 100644
--- a/data/maps/VerdanturfTown_BattleTentCorridor/map.json
+++ b/data/maps/VerdanturfTown_BattleTentCorridor/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_VERDANTURF_TENT_CORRIDOR_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 2,
"y": 6,
diff --git a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc
index db7b7846ff..883bae568e 100644
--- a/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc
+++ b/data/maps/VerdanturfTown_BattleTentCorridor/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
VerdanturfTown_BattleTentCorridor_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentCorridor_OnFrame
end_map_scripts
@@ -11,13 +9,13 @@ VerdanturfTown_BattleTentCorridor_OnFrame:
VerdanturfTown_BattleTentCorridor_EventScript_EnterCorridor::
lockall
setvar VAR_TEMP_0, 1
- applymovement LOCALID_ATTENDANT, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor
+ applymovement LOCALID_VERDANTURF_TENT_CORRIDOR_ATTENDANT, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor
+ applymovement LOCALID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_WalkToDoor
waitmovement 0
opendoor 2, 1
waitdooranim
- applymovement LOCALID_ATTENDANT, VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_PlayerEnterDoor
+ applymovement LOCALID_VERDANTURF_TENT_CORRIDOR_ATTENDANT, VerdanturfTown_BattleTentCorridor_Movement_AttendantEnterDoor
+ applymovement LOCALID_PLAYER, VerdanturfTown_BattleTentCorridor_Movement_PlayerEnterDoor
waitmovement 0
closedoor 2, 1
waitdooranim
diff --git a/data/maps/VerdanturfTown_BattleTentLobby/map.json b/data/maps/VerdanturfTown_BattleTentLobby/map.json
index ddb4b9dd35..132e08c9c0 100644
--- a/data/maps/VerdanturfTown_BattleTentLobby/map.json
+++ b/data/maps/VerdanturfTown_BattleTentLobby/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_VERDANTURF_TENT_ATTENDANT",
"graphics_id": "OBJ_EVENT_GFX_EXPERT_M",
"x": 6,
"y": 5,
diff --git a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
index dbb5646d03..aadaf3cbb2 100644
--- a/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
+++ b/data/maps/VerdanturfTown_BattleTentLobby/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_ATTENDANT, 1
-
VerdanturfTown_BattleTentLobby_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, VerdanturfTown_BattleTentLobby_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, VerdanturfTown_BattleTentLobby_OnWarp
@@ -11,7 +9,7 @@ VerdanturfTown_BattleTentLobby_OnWarp:
VerdanturfTown_BattleTentLobby_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
VerdanturfTown_BattleTentLobby_OnFrame:
@@ -193,13 +191,13 @@ VerdanturfTown_BattleTentLobby_EventScript_EndCancelChallenge::
end
VerdanturfTown_BattleTentLobby_EventScript_WalkToDoor::
- applymovement LOCALID_ATTENDANT, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor
+ applymovement LOCALID_VERDANTURF_TENT_ATTENDANT, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor
+ applymovement LOCALID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_WalkToDoor
waitmovement 0
opendoor 6, 1
waitdooranim
- applymovement LOCALID_ATTENDANT, VerdanturfTown_BattleTentLobby_Movement_AttendantEnterDoor
- applymovement OBJ_EVENT_ID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_PlayerEnterDoor
+ applymovement LOCALID_VERDANTURF_TENT_ATTENDANT, VerdanturfTown_BattleTentLobby_Movement_AttendantEnterDoor
+ applymovement LOCALID_PLAYER, VerdanturfTown_BattleTentLobby_Movement_PlayerEnterDoor
waitmovement 0
closedoor 6, 1
waitdooranim
diff --git a/data/maps/VerdanturfTown_Mart/map.json b/data/maps/VerdanturfTown_Mart/map.json
index 096d63552e..0faadcf266 100644
--- a/data/maps/VerdanturfTown_Mart/map.json
+++ b/data/maps/VerdanturfTown_Mart/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_VERDANTURF_MART_CLERK",
"graphics_id": "OBJ_EVENT_GFX_MART_EMPLOYEE",
"x": 1,
"y": 3,
diff --git a/data/maps/VerdanturfTown_Mart/scripts.inc b/data/maps/VerdanturfTown_Mart/scripts.inc
index aa9669b4a6..85a8d0f39a 100644
--- a/data/maps/VerdanturfTown_Mart/scripts.inc
+++ b/data/maps/VerdanturfTown_Mart/scripts.inc
@@ -24,9 +24,7 @@ VerdanturfTown_Mart_Pokemart:
.2byte ITEM_REPEL
.2byte ITEM_X_SPECIAL
.2byte ITEM_FLUFFY_TAIL
- .2byte ITEM_NONE
- release
- end
+ pokemartlistend
VerdanturfTown_Mart_EventScript_Boy::
msgbox VerdanturfTown_Mart_Text_XSpecialIsCrucial, MSGBOX_NPC
diff --git a/data/maps/VerdanturfTown_PokemonCenter_1F/map.json b/data/maps/VerdanturfTown_PokemonCenter_1F/map.json
index 20a144afb9..4bae6ce2f4 100644
--- a/data/maps/VerdanturfTown_PokemonCenter_1F/map.json
+++ b/data/maps/VerdanturfTown_PokemonCenter_1F/map.json
@@ -15,6 +15,7 @@
"connections": null,
"object_events": [
{
+ "local_id": "LOCALID_VERDANTURF_NURSE",
"graphics_id": "OBJ_EVENT_GFX_NURSE",
"x": 7,
"y": 2,
diff --git a/data/maps/VerdanturfTown_PokemonCenter_1F/scripts.inc b/data/maps/VerdanturfTown_PokemonCenter_1F/scripts.inc
index bd6699ce5c..40ae1ceaa8 100644
--- a/data/maps/VerdanturfTown_PokemonCenter_1F/scripts.inc
+++ b/data/maps/VerdanturfTown_PokemonCenter_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_NURSE, 1
-
VerdanturfTown_PokemonCenter_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, VerdanturfTown_PokemonCenter_1F_OnTransition
map_script MAP_SCRIPT_ON_RESUME, CableClub_OnResume
@@ -11,7 +9,7 @@ VerdanturfTown_PokemonCenter_1F_OnTransition:
end
VerdanturfTown_PokemonCenter_1F_EventScript_Nurse::
- setvar VAR_0x800B, LOCALID_NURSE
+ setvar VAR_0x800B, LOCALID_VERDANTURF_NURSE
call Common_EventScript_PkmnCenterNurse
waitmessage
waitbuttonpress
diff --git a/data/maps/VictoryRoad_1F/map.json b/data/maps/VictoryRoad_1F/map.json
index 44a2bca660..469981cde0 100644
--- a/data/maps/VictoryRoad_1F/map.json
+++ b/data/maps/VictoryRoad_1F/map.json
@@ -54,6 +54,7 @@
"flag": "0"
},
{
+ "local_id": "LOCALID_VICTORY_ROAD_ENTRANCE_WALLY",
"graphics_id": "OBJ_EVENT_GFX_WALLY",
"x": 12,
"y": 25,
diff --git a/data/maps/VictoryRoad_1F/scripts.inc b/data/maps/VictoryRoad_1F/scripts.inc
index 1bd6cd229c..e1f65d6e01 100644
--- a/data/maps/VictoryRoad_1F/scripts.inc
+++ b/data/maps/VictoryRoad_1F/scripts.inc
@@ -1,5 +1,3 @@
-.set LOCALID_WALLY_ENTRANCE, 4
-
VictoryRoad_1F_MapScripts::
map_script MAP_SCRIPT_ON_TRANSITION, VictoryRoad_1F_OnTransition
end_map_scripts
@@ -10,20 +8,20 @@ VictoryRoad_1F_OnTransition:
end
VictoryRoad_1F_EventScript_SetEntranceWallyPos1::
- setobjectxyperm LOCALID_WALLY_ENTRANCE, 2, 24
- setobjectmovementtype LOCALID_WALLY_ENTRANCE, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_VICTORY_ROAD_ENTRANCE_WALLY, 2, 24
+ setobjectmovementtype LOCALID_VICTORY_ROAD_ENTRANCE_WALLY, MOVEMENT_TYPE_FACE_DOWN
return
VictoryRoad_1F_EventScript_SetEntranceWallyPos2::
- setobjectxyperm LOCALID_WALLY_ENTRANCE, 3, 24
- setobjectmovementtype LOCALID_WALLY_ENTRANCE, MOVEMENT_TYPE_FACE_DOWN
+ setobjectxyperm LOCALID_VICTORY_ROAD_ENTRANCE_WALLY, 3, 24
+ setobjectmovementtype LOCALID_VICTORY_ROAD_ENTRANCE_WALLY, MOVEMENT_TYPE_FACE_DOWN
return
VictoryRoad_1F_EventScript_WallyBattleTrigger1::
lockall
setvar VAR_0x8008, 1
- addobject LOCALID_WALLY_ENTRANCE
- applymovement LOCALID_WALLY_ENTRANCE, VictoryRoad_1F_Movement_WallyApproachPlayer1
+ addobject LOCALID_VICTORY_ROAD_ENTRANCE_WALLY
+ applymovement LOCALID_VICTORY_ROAD_ENTRANCE_WALLY, VictoryRoad_1F_Movement_WallyApproachPlayer1
waitmovement 0
goto VictoryRoad_1F_EventScript_WallyEntranceBattle
end
@@ -31,20 +29,20 @@ VictoryRoad_1F_EventScript_WallyBattleTrigger1::
VictoryRoad_1F_EventScript_WallyBattleTrigger2::
lockall
setvar VAR_0x8008, 2
- addobject LOCALID_WALLY_ENTRANCE
- applymovement LOCALID_WALLY_ENTRANCE, VictoryRoad_1F_Movement_WallyApproachPlayer2
+ addobject LOCALID_VICTORY_ROAD_ENTRANCE_WALLY
+ applymovement LOCALID_VICTORY_ROAD_ENTRANCE_WALLY, VictoryRoad_1F_Movement_WallyApproachPlayer2
waitmovement 0
goto VictoryRoad_1F_EventScript_WallyEntranceBattle
end
VictoryRoad_1F_EventScript_WallyEntranceBattle::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterDown
waitmovement 0
msgbox VictoryRoad_1F_Text_WallyNotGoingToLoseAnymore, MSGBOX_DEFAULT
trainerbattle_no_intro TRAINER_WALLY_VR_1, VictoryRoad_1F_Text_WallyEntranceDefeat
msgbox VictoryRoad_1F_Text_WallyPostEntranceBattle, MSGBOX_DEFAULT
clearflag FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY
- copyobjectxytoperm LOCALID_WALLY_ENTRANCE
+ copyobjectxytoperm LOCALID_VICTORY_ROAD_ENTRANCE_WALLY
setflag FLAG_DEFEATED_WALLY_VICTORY_ROAD
copyvar VAR_VICTORY_ROAD_1F_STATE, VAR_0x8008
releaseall
diff --git a/data/maps/map_groups.json b/data/maps/map_groups.json
index ebef431b30..8a90679c8d 100644
--- a/data/maps/map_groups.json
+++ b/data/maps/map_groups.json
@@ -604,8 +604,8 @@
"Route110_TrickHousePuzzle6",
"Route110_TrickHousePuzzle7",
"Route110_TrickHousePuzzle8",
- "Route110_SeasideCyclingRoadNorthEntrance",
- "Route110_SeasideCyclingRoadSouthEntrance"
+ "Route110_SeasideCyclingRoadSouthEntrance",
+ "Route110_SeasideCyclingRoadNorthEntrance"
],
"gMapGroup_IndoorRoute113": [
"Route113_GlassWorkshop"
diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc
index f50ce5322b..5b7ed740fa 100644
--- a/data/script_cmd_table.inc
+++ b/data/script_cmd_table.inc
@@ -1,232 +1,249 @@
+ .ifndef SCRIPT_CMD_TABLE_ENTRY_MACRO
+ .set SCRIPT_CMD_TABLE_ENTRY_MACRO, 1
+ .macro script_cmd_table_entry constant:req value:req
+ .if ALLOCATE_SCRIPT_CMD_TABLE
+ .4byte \value
+ .else
+ enum \constant
+ .endif
+ .endm
+ .endif
+
+
+ enum_start
+ .if ALLOCATE_SCRIPT_CMD_TABLE
.align 2
gScriptCmdTable::
- .4byte ScrCmd_nop @ 0x00
- .4byte ScrCmd_nop1 @ 0x01
- .4byte ScrCmd_end @ 0x02
- .4byte ScrCmd_return @ 0x03
- .4byte ScrCmd_call @ 0x04
- .4byte ScrCmd_goto @ 0x05
- .4byte ScrCmd_goto_if @ 0x06
- .4byte ScrCmd_call_if @ 0x07
- .4byte ScrCmd_gotostd @ 0x08
- .4byte ScrCmd_callstd @ 0x09
- .4byte ScrCmd_gotostd_if @ 0x0a
- .4byte ScrCmd_callstd_if @ 0x0b
- .4byte ScrCmd_returnram @ 0x0c
- .4byte ScrCmd_endram @ 0x0d
- .4byte ScrCmd_setmysteryeventstatus @ 0x0e
- .4byte ScrCmd_loadword @ 0x0f
- .4byte ScrCmd_loadbyte @ 0x10
- .4byte ScrCmd_setptr @ 0x11
- .4byte ScrCmd_loadbytefromptr @ 0x12
- .4byte ScrCmd_setptrbyte @ 0x13
- .4byte ScrCmd_copylocal @ 0x14
- .4byte ScrCmd_copybyte @ 0x15
- .4byte ScrCmd_setvar @ 0x16
- .4byte ScrCmd_addvar @ 0x17
- .4byte ScrCmd_subvar @ 0x18
- .4byte ScrCmd_copyvar @ 0x19
- .4byte ScrCmd_setorcopyvar @ 0x1a
- .4byte ScrCmd_compare_local_to_local @ 0x1b
- .4byte ScrCmd_compare_local_to_value @ 0x1c
- .4byte ScrCmd_compare_local_to_ptr @ 0x1d
- .4byte ScrCmd_compare_ptr_to_local @ 0x1e
- .4byte ScrCmd_compare_ptr_to_value @ 0x1f
- .4byte ScrCmd_compare_ptr_to_ptr @ 0x20
- .4byte ScrCmd_compare_var_to_value @ 0x21
- .4byte ScrCmd_compare_var_to_var @ 0x22
- .4byte ScrCmd_callnative @ 0x23
- .4byte ScrCmd_gotonative @ 0x24
- .4byte ScrCmd_special @ 0x25
- .4byte ScrCmd_specialvar @ 0x26
- .4byte ScrCmd_waitstate @ 0x27
- .4byte ScrCmd_delay @ 0x28
- .4byte ScrCmd_setflag @ 0x29
- .4byte ScrCmd_clearflag @ 0x2a
- .4byte ScrCmd_checkflag @ 0x2b
- .4byte ScrCmd_initclock @ 0x2c
- .4byte ScrCmd_dotimebasedevents @ 0x2d
- .4byte ScrCmd_gettime @ 0x2e
- .4byte ScrCmd_playse @ 0x2f
- .4byte ScrCmd_waitse @ 0x30
- .4byte ScrCmd_playfanfare @ 0x31
- .4byte ScrCmd_waitfanfare @ 0x32
- .4byte ScrCmd_playbgm @ 0x33
- .4byte ScrCmd_savebgm @ 0x34
- .4byte ScrCmd_fadedefaultbgm @ 0x35
- .4byte ScrCmd_fadenewbgm @ 0x36
- .4byte ScrCmd_fadeoutbgm @ 0x37
- .4byte ScrCmd_fadeinbgm @ 0x38
- .4byte ScrCmd_warp @ 0x39
- .4byte ScrCmd_warpsilent @ 0x3a
- .4byte ScrCmd_warpdoor @ 0x3b
- .4byte ScrCmd_warphole @ 0x3c
- .4byte ScrCmd_warpteleport @ 0x3d
- .4byte ScrCmd_setwarp @ 0x3e
- .4byte ScrCmd_setdynamicwarp @ 0x3f
- .4byte ScrCmd_setdivewarp @ 0x40
- .4byte ScrCmd_setholewarp @ 0x41
- .4byte ScrCmd_getplayerxy @ 0x42
- .4byte ScrCmd_getpartysize @ 0x43
- .4byte ScrCmd_additem @ 0x44
- .4byte ScrCmd_removeitem @ 0x45
- .4byte ScrCmd_checkitemspace @ 0x46
- .4byte ScrCmd_checkitem @ 0x47
- .4byte ScrCmd_checkitemtype @ 0x48
- .4byte ScrCmd_addpcitem @ 0x49
- .4byte ScrCmd_checkpcitem @ 0x4a
- .4byte ScrCmd_adddecoration @ 0x4b
- .4byte ScrCmd_removedecoration @ 0x4c
- .4byte ScrCmd_checkdecor @ 0x4d
- .4byte ScrCmd_checkdecorspace @ 0x4e
- .4byte ScrCmd_applymovement @ 0x4f
- .4byte ScrCmd_applymovementat @ 0x50
- .4byte ScrCmd_waitmovement @ 0x51
- .4byte ScrCmd_waitmovementat @ 0x52
- .4byte ScrCmd_removeobject @ 0x53
- .4byte ScrCmd_removeobjectat @ 0x54
- .4byte ScrCmd_addobject @ 0x55
- .4byte ScrCmd_addobjectat @ 0x56
- .4byte ScrCmd_setobjectxy @ 0x57
- .4byte ScrCmd_showobjectat @ 0x58
- .4byte ScrCmd_hideobjectat @ 0x59
- .4byte ScrCmd_faceplayer @ 0x5a
- .4byte ScrCmd_turnobject @ 0x5b
- .4byte ScrCmd_trainerbattle @ 0x5c
- .4byte ScrCmd_dotrainerbattle @ 0x5d
- .4byte ScrCmd_gotopostbattlescript @ 0x5e
- .4byte ScrCmd_gotobeatenscript @ 0x5f
- .4byte ScrCmd_checktrainerflag @ 0x60
- .4byte ScrCmd_settrainerflag @ 0x61
- .4byte ScrCmd_cleartrainerflag @ 0x62
- .4byte ScrCmd_setobjectxyperm @ 0x63
- .4byte ScrCmd_copyobjectxytoperm @ 0x64
- .4byte ScrCmd_setobjectmovementtype @ 0x65
- .4byte ScrCmd_waitmessage @ 0x66
- .4byte ScrCmd_message @ 0x67
- .4byte ScrCmd_closemessage @ 0x68
- .4byte ScrCmd_lockall @ 0x69
- .4byte ScrCmd_lock @ 0x6a
- .4byte ScrCmd_releaseall @ 0x6b
- .4byte ScrCmd_release @ 0x6c
- .4byte ScrCmd_waitbuttonpress @ 0x6d
- .4byte ScrCmd_yesnobox @ 0x6e
- .4byte ScrCmd_multichoice @ 0x6f
- .4byte ScrCmd_multichoicedefault @ 0x70
- .4byte ScrCmd_multichoicegrid @ 0x71
- .4byte ScrCmd_drawbox @ 0x72
- .4byte ScrCmd_erasebox @ 0x73
- .4byte ScrCmd_drawboxtext @ 0x74
- .4byte ScrCmd_showmonpic @ 0x75
- .4byte ScrCmd_hidemonpic @ 0x76
- .4byte ScrCmd_showcontestpainting @ 0x77
- .4byte ScrCmd_braillemessage @ 0x78
- .4byte ScrCmd_givemon @ 0x79
- .4byte ScrCmd_giveegg @ 0x7a
- .4byte ScrCmd_setmonmove @ 0x7b
- .4byte ScrCmd_checkpartymove @ 0x7c
- .4byte ScrCmd_bufferspeciesname @ 0x7d
- .4byte ScrCmd_bufferleadmonspeciesname @ 0x7e
- .4byte ScrCmd_bufferpartymonnick @ 0x7f
- .4byte ScrCmd_bufferitemname @ 0x80
- .4byte ScrCmd_bufferdecorationname @ 0x81
- .4byte ScrCmd_buffermovename @ 0x82
- .4byte ScrCmd_buffernumberstring @ 0x83
- .4byte ScrCmd_bufferstdstring @ 0x84
- .4byte ScrCmd_bufferstring @ 0x85
- .4byte ScrCmd_pokemart @ 0x86
- .4byte ScrCmd_pokemartdecoration @ 0x87
- .4byte ScrCmd_pokemartdecoration2 @ 0x88
- .4byte ScrCmd_playslotmachine @ 0x89
- .4byte ScrCmd_setberrytree @ 0x8a
- .4byte ScrCmd_choosecontestmon @ 0x8b
- .4byte ScrCmd_startcontest @ 0x8c
- .4byte ScrCmd_showcontestresults @ 0x8d
- .4byte ScrCmd_contestlinktransfer @ 0x8e
- .4byte ScrCmd_random @ 0x8f
- .4byte ScrCmd_addmoney @ 0x90
- .4byte ScrCmd_removemoney @ 0x91
- .4byte ScrCmd_checkmoney @ 0x92
- .4byte ScrCmd_showmoneybox @ 0x93
- .4byte ScrCmd_hidemoneybox @ 0x94
- .4byte ScrCmd_updatemoneybox @ 0x95
- .4byte ScrCmd_getpokenewsactive @ 0x96
- .4byte ScrCmd_fadescreen @ 0x97
- .4byte ScrCmd_fadescreenspeed @ 0x98
- .4byte ScrCmd_setflashlevel @ 0x99
- .4byte ScrCmd_animateflash @ 0x9a
- .4byte ScrCmd_messageautoscroll @ 0x9b
- .4byte ScrCmd_dofieldeffect @ 0x9c
- .4byte ScrCmd_setfieldeffectargument @ 0x9d
- .4byte ScrCmd_waitfieldeffect @ 0x9e
- .4byte ScrCmd_setrespawn @ 0x9f
- .4byte ScrCmd_checkplayergender @ 0xa0
- .4byte ScrCmd_playmoncry @ 0xa1
- .4byte ScrCmd_setmetatile @ 0xa2
- .4byte ScrCmd_resetweather @ 0xa3
- .4byte ScrCmd_setweather @ 0xa4
- .4byte ScrCmd_doweather @ 0xa5
- .4byte ScrCmd_setstepcallback @ 0xa6
- .4byte ScrCmd_setmaplayoutindex @ 0xa7
- .4byte ScrCmd_setobjectsubpriority @ 0xa8
- .4byte ScrCmd_resetobjectsubpriority @ 0xa9
- .4byte ScrCmd_createvobject @ 0xaa
- .4byte ScrCmd_turnvobject @ 0xab
- .4byte ScrCmd_opendoor @ 0xac
- .4byte ScrCmd_closedoor @ 0xad
- .4byte ScrCmd_waitdooranim @ 0xae
- .4byte ScrCmd_setdooropen @ 0xaf
- .4byte ScrCmd_setdoorclosed @ 0xb0
- .4byte ScrCmd_addelevmenuitem @ 0xb1
- .4byte ScrCmd_showelevmenu @ 0xb2
- .4byte ScrCmd_checkcoins @ 0xb3
- .4byte ScrCmd_addcoins @ 0xb4
- .4byte ScrCmd_removecoins @ 0xb5
- .4byte ScrCmd_setwildbattle @ 0xb6
- .4byte ScrCmd_dowildbattle @ 0xb7
- .4byte ScrCmd_setvaddress @ 0xb8
- .4byte ScrCmd_vgoto @ 0xb9
- .4byte ScrCmd_vcall @ 0xba
- .4byte ScrCmd_vgoto_if @ 0xbb
- .4byte ScrCmd_vcall_if @ 0xbc
- .4byte ScrCmd_vmessage @ 0xbd
- .4byte ScrCmd_vbuffermessage @ 0xbe
- .4byte ScrCmd_vbufferstring @ 0xbf
- .4byte ScrCmd_showcoinsbox @ 0xc0
- .4byte ScrCmd_hidecoinsbox @ 0xc1
- .4byte ScrCmd_updatecoinsbox @ 0xc2
- .4byte ScrCmd_incrementgamestat @ 0xc3
- .4byte ScrCmd_setescapewarp @ 0xc4
- .4byte ScrCmd_waitmoncry @ 0xc5
- .4byte ScrCmd_bufferboxname @ 0xc6
- .4byte ScrCmd_nop1 @ 0xc7
- .4byte ScrCmd_nop1 @ 0xc8
- .4byte ScrCmd_nop1 @ 0xc9
- .4byte ScrCmd_nop1 @ 0xca
- .4byte ScrCmd_nop1 @ 0xcb
- .4byte ScrCmd_nop1 @ 0xcc
- .4byte ScrCmd_setmonmodernfatefulencounter @ 0xcd
- .4byte ScrCmd_checkmonmodernfatefulencounter @ 0xce
- .4byte ScrCmd_trywondercardscript @ 0xcf
- .4byte ScrCmd_nop1 @ 0xd0
- .4byte ScrCmd_warpspinenter @ 0xd1
- .4byte ScrCmd_setmonmetlocation @ 0xd2
- .4byte ScrCmd_moverotatingtileobjects @ 0xd3
- .4byte ScrCmd_turnrotatingtileobjects @ 0xd4
- .4byte ScrCmd_initrotatingtilepuzzle @ 0xd5
- .4byte ScrCmd_freerotatingtilepuzzle @ 0xd6
- .4byte ScrCmd_warpmossdeepgym @ 0xd7
- .4byte ScrCmd_selectapproachingtrainer @ 0xd8
- .4byte ScrCmd_lockfortrainer @ 0xd9
- .4byte ScrCmd_closebraillemessage @ 0xda
- .4byte ScrCmd_messageinstant @ 0xdb
- .4byte ScrCmd_fadescreenswapbuffers @ 0xdc
- .4byte ScrCmd_buffertrainerclassname @ 0xdd
- .4byte ScrCmd_buffertrainername @ 0xde
- .4byte ScrCmd_pokenavcall @ 0xdf
- .4byte ScrCmd_warpwhitefade @ 0xe0
- .4byte ScrCmd_buffercontestname @ 0xe1
- .4byte ScrCmd_bufferitemnameplural @ 0xe2
+ .endif
+ script_cmd_table_entry SCR_OP_NOP ScrCmd_nop @ 0x00
+ script_cmd_table_entry SCR_OP_NOP1 ScrCmd_nop1 @ 0x01
+ script_cmd_table_entry SCR_OP_END ScrCmd_end @ 0x02
+ script_cmd_table_entry SCR_OP_RETURN ScrCmd_return @ 0x03
+ script_cmd_table_entry SCR_OP_CALL ScrCmd_call @ 0x04
+ script_cmd_table_entry SCR_OP_GOTO ScrCmd_goto @ 0x05
+ script_cmd_table_entry SCR_OP_GOTO_IF ScrCmd_goto_if @ 0x06
+ script_cmd_table_entry SCR_OP_CALL_IF ScrCmd_call_if @ 0x07
+ script_cmd_table_entry SCR_OP_GOTO_STD ScrCmd_gotostd @ 0x08
+ script_cmd_table_entry SCR_OP_CALL_STD ScrCmd_callstd @ 0x09
+ script_cmd_table_entry SCR_OP_GOTO_STD_IF ScrCmd_gotostd_if @ 0x0a
+ script_cmd_table_entry SCR_OP_CALL_STD_IF ScrCmd_callstd_if @ 0x0b
+ script_cmd_table_entry SCR_OP_RETURNRAM ScrCmd_returnram @ 0x0c
+ script_cmd_table_entry SCR_OP_ENDRAM ScrCmd_endram @ 0x0d
+ script_cmd_table_entry SCR_OP_SETMYSTERYEVENTSTATUS ScrCmd_setmysteryeventstatus @ 0x0e
+ script_cmd_table_entry SCR_OP_LOAD_WORD ScrCmd_loadword @ 0x0f
+ script_cmd_table_entry SCR_OP_LOAD_BYTE ScrCmd_loadbyte @ 0x10
+ script_cmd_table_entry SCR_OP_SETPTR ScrCmd_setptr @ 0x11
+ script_cmd_table_entry SCR_OP_LOADBYTEFROMPTR ScrCmd_loadbytefromptr @ 0x12
+ script_cmd_table_entry SCR_OP_SETPTRBYTE ScrCmd_setptrbyte @ 0x13
+ script_cmd_table_entry SCR_OP_COPYLOCAL ScrCmd_copylocal @ 0x14
+ script_cmd_table_entry SCR_OP_COPYBYTE ScrCmd_copybyte @ 0x15
+ script_cmd_table_entry SCR_OP_SETVAR ScrCmd_setvar @ 0x16
+ script_cmd_table_entry SCR_OP_ADDVAR ScrCmd_addvar @ 0x17
+ script_cmd_table_entry SCR_OP_SUBVAR ScrCmd_subvar @ 0x18
+ script_cmd_table_entry SCR_OP_COPYVAR ScrCmd_copyvar @ 0x19
+ script_cmd_table_entry SCR_OP_SETORCOPYVAR ScrCmd_setorcopyvar @ 0x1a
+ script_cmd_table_entry SCR_OP_COMPARE_LOCAL_TO_LOCAL ScrCmd_compare_local_to_local @ 0x1b
+ script_cmd_table_entry SCR_OP_COMPARE_LOCAL_TO_VALUE ScrCmd_compare_local_to_value @ 0x1c
+ script_cmd_table_entry SCR_OP_COMPARE_LOCAL_TO_PTR ScrCmd_compare_local_to_ptr @ 0x1d
+ script_cmd_table_entry SCR_OP_COMPARE_PTR_TO_LOCAL ScrCmd_compare_ptr_to_local @ 0x1e
+ script_cmd_table_entry SCR_OP_COMPARE_PTR_TO_VALUE ScrCmd_compare_ptr_to_value @ 0x1f
+ script_cmd_table_entry SCR_OP_COMPARE_PTR_TO_PTR ScrCmd_compare_ptr_to_ptr @ 0x20
+ script_cmd_table_entry SCR_OP_COMPARE_VAR_TO_VALUE ScrCmd_compare_var_to_value @ 0x21
+ script_cmd_table_entry SCR_OP_COMPARE_VAR_TO_VAR ScrCmd_compare_var_to_var @ 0x22
+ script_cmd_table_entry SCR_OP_CALLNATIVE ScrCmd_callnative @ 0x23
+ script_cmd_table_entry SCR_OP_GOTONATIVE ScrCmd_gotonative @ 0x24
+ script_cmd_table_entry SCR_OP_SPECIAL ScrCmd_special @ 0x25
+ script_cmd_table_entry SCR_OP_SPECIALVAR ScrCmd_specialvar @ 0x26
+ script_cmd_table_entry SCR_OP_WAITSTATE ScrCmd_waitstate @ 0x27
+ script_cmd_table_entry SCR_OP_DELAY ScrCmd_delay @ 0x28
+ script_cmd_table_entry SCR_OP_SETFLAG ScrCmd_setflag @ 0x29
+ script_cmd_table_entry SCR_OP_CLEARFLAG ScrCmd_clearflag @ 0x2a
+ script_cmd_table_entry SCR_OP_CHECKFLAG ScrCmd_checkflag @ 0x2b
+ script_cmd_table_entry SCR_OP_INITCLOCK ScrCmd_initclock @ 0x2c
+ script_cmd_table_entry SCR_OP_DOTIMEBASEDEVENTS ScrCmd_dotimebasedevents @ 0x2d
+ script_cmd_table_entry SCR_OP_GETTIME ScrCmd_gettime @ 0x2e
+ script_cmd_table_entry SCR_OP_PLAYSE ScrCmd_playse @ 0x2f
+ script_cmd_table_entry SCR_OP_WAITSE ScrCmd_waitse @ 0x30
+ script_cmd_table_entry SCR_OP_PLAYFANFARE ScrCmd_playfanfare @ 0x31
+ script_cmd_table_entry SCR_OP_WAITFANFARE ScrCmd_waitfanfare @ 0x32
+ script_cmd_table_entry SCR_OP_PLAYBGM ScrCmd_playbgm @ 0x33
+ script_cmd_table_entry SCR_OP_SAVEBGM ScrCmd_savebgm @ 0x34
+ script_cmd_table_entry SCR_OP_FADEDEFAULTBGM ScrCmd_fadedefaultbgm @ 0x35
+ script_cmd_table_entry SCR_OP_FADENEWBGM ScrCmd_fadenewbgm @ 0x36
+ script_cmd_table_entry SCR_OP_FADEOUTBGM ScrCmd_fadeoutbgm @ 0x37
+ script_cmd_table_entry SCR_OP_FADEINBGM ScrCmd_fadeinbgm @ 0x38
+ script_cmd_table_entry SCR_OP_WARP ScrCmd_warp @ 0x39
+ script_cmd_table_entry SCR_OP_WARPSILENT ScrCmd_warpsilent @ 0x3a
+ script_cmd_table_entry SCR_OP_WARPDOOR ScrCmd_warpdoor @ 0x3b
+ script_cmd_table_entry SCR_OP_WARPHOLE ScrCmd_warphole @ 0x3c
+ script_cmd_table_entry SCR_OP_WARPTELEPORT ScrCmd_warpteleport @ 0x3d
+ script_cmd_table_entry SCR_OP_SETWARP ScrCmd_setwarp @ 0x3e
+ script_cmd_table_entry SCR_OP_SETDYNAMICWARP ScrCmd_setdynamicwarp @ 0x3f
+ script_cmd_table_entry SCR_OP_SETDIVEWARP ScrCmd_setdivewarp @ 0x40
+ script_cmd_table_entry SCR_OP_SETHOLEWARP ScrCmd_setholewarp @ 0x41
+ script_cmd_table_entry SCR_OP_GETPLAYERXY ScrCmd_getplayerxy @ 0x42
+ script_cmd_table_entry SCR_OP_GETPARTYSIZE ScrCmd_getpartysize @ 0x43
+ script_cmd_table_entry SCR_OP_ADDITEM ScrCmd_additem @ 0x44
+ script_cmd_table_entry SCR_OP_REMOVEITEM ScrCmd_removeitem @ 0x45
+ script_cmd_table_entry SCR_OP_CHECKITEMSPACE ScrCmd_checkitemspace @ 0x46
+ script_cmd_table_entry SCR_OP_CHECKITEM ScrCmd_checkitem @ 0x47
+ script_cmd_table_entry SCR_OP_CHECKITEMTYPE ScrCmd_checkitemtype @ 0x48
+ script_cmd_table_entry SCR_OP_ADDPCITEM ScrCmd_addpcitem @ 0x49
+ script_cmd_table_entry SCR_OP_CHECKPCITEM ScrCmd_checkpcitem @ 0x4a
+ script_cmd_table_entry SCR_OP_ADDDECORATION ScrCmd_adddecoration @ 0x4b
+ script_cmd_table_entry SCR_OP_REMOVEDECORATION ScrCmd_removedecoration @ 0x4c
+ script_cmd_table_entry SCR_OP_CHECKDECOR ScrCmd_checkdecor @ 0x4d
+ script_cmd_table_entry SCR_OP_CHECKDECORSPACE ScrCmd_checkdecorspace @ 0x4e
+ script_cmd_table_entry SCR_OP_APPLYMOVEMENT ScrCmd_applymovement @ 0x4f
+ script_cmd_table_entry SCR_OP_APPLYMOVEMENTAT ScrCmd_applymovementat @ 0x50
+ script_cmd_table_entry SCR_OP_WAITMOVEMENT ScrCmd_waitmovement @ 0x51
+ script_cmd_table_entry SCR_OP_WAITMOVEMENTAT ScrCmd_waitmovementat @ 0x52
+ script_cmd_table_entry SCR_OP_REMOVEOBJECT ScrCmd_removeobject @ 0x53
+ script_cmd_table_entry SCR_OP_REMOVEOBJECTAT ScrCmd_removeobjectat @ 0x54
+ script_cmd_table_entry SCR_OP_ADDOBJECT ScrCmd_addobject @ 0x55
+ script_cmd_table_entry SCR_OP_ADDOBJECTAT ScrCmd_addobjectat @ 0x56
+ script_cmd_table_entry SCR_OP_SETOBJECTXY ScrCmd_setobjectxy @ 0x57
+ script_cmd_table_entry SCR_OP_SHOWOBJECTAT ScrCmd_showobjectat @ 0x58
+ script_cmd_table_entry SCR_OP_HIDEOBJECTAT ScrCmd_hideobjectat @ 0x59
+ script_cmd_table_entry SCR_OP_FACEPLAYER ScrCmd_faceplayer @ 0x5a
+ script_cmd_table_entry SCR_OP_TURNOBJECT ScrCmd_turnobject @ 0x5b
+ script_cmd_table_entry SCR_OP_TRAINERBATTLE ScrCmd_trainerbattle @ 0x5c
+ script_cmd_table_entry SCR_OP_DOTRAINERBATTLE ScrCmd_dotrainerbattle @ 0x5d
+ script_cmd_table_entry SCR_OP_GOTOPOSTBATTLESCRIPT ScrCmd_gotopostbattlescript @ 0x5e
+ script_cmd_table_entry SCR_OP_GOTOBEATENSCRIPT ScrCmd_gotobeatenscript @ 0x5f
+ script_cmd_table_entry SCR_OP_CHECKTRAINERFLAG ScrCmd_checktrainerflag @ 0x60
+ script_cmd_table_entry SCR_OP_SETTRAINERFLAG ScrCmd_settrainerflag @ 0x61
+ script_cmd_table_entry SCR_OP_CLEARTRAINERFLAG ScrCmd_cleartrainerflag @ 0x62
+ script_cmd_table_entry SCR_OP_SETOBJECTXYPERM ScrCmd_setobjectxyperm @ 0x63
+ script_cmd_table_entry SCR_OP_COPYOBJECTXYTOPERM ScrCmd_copyobjectxytoperm @ 0x64
+ script_cmd_table_entry SCR_OP_SETOBJECTMOVEMENTTYPE ScrCmd_setobjectmovementtype @ 0x65
+ script_cmd_table_entry SCR_OP_WAITMESSAGE ScrCmd_waitmessage @ 0x66
+ script_cmd_table_entry SCR_OP_MESSAGE ScrCmd_message @ 0x67
+ script_cmd_table_entry SCR_OP_CLOSEMESSAGE ScrCmd_closemessage @ 0x68
+ script_cmd_table_entry SCR_OP_LOCKALL ScrCmd_lockall @ 0x69
+ script_cmd_table_entry SCR_OP_LOCK ScrCmd_lock @ 0x6a
+ script_cmd_table_entry SCR_OP_RELEASEALL ScrCmd_releaseall @ 0x6b
+ script_cmd_table_entry SCR_OP_RELEASE ScrCmd_release @ 0x6c
+ script_cmd_table_entry SCR_OP_WAITBUTTONPRESS ScrCmd_waitbuttonpress @ 0x6d
+ script_cmd_table_entry SCR_OP_YESNOBOX ScrCmd_yesnobox @ 0x6e
+ script_cmd_table_entry SCR_OP_MULTICHOICE ScrCmd_multichoice @ 0x6f
+ script_cmd_table_entry SCR_OP_MULTICHOICEDEFAULT ScrCmd_multichoicedefault @ 0x70
+ script_cmd_table_entry SCR_OP_MULTICHOICEGRID ScrCmd_multichoicegrid @ 0x71
+ script_cmd_table_entry SCR_OP_DRAWBOX ScrCmd_drawbox @ 0x72
+ script_cmd_table_entry SCR_OP_ERASEBOX ScrCmd_erasebox @ 0x73
+ script_cmd_table_entry SCR_OP_DRAWBOXTEXT ScrCmd_drawboxtext @ 0x74
+ script_cmd_table_entry SCR_OP_SHOWMONPIC ScrCmd_showmonpic @ 0x75
+ script_cmd_table_entry SCR_OP_HIDEMONPIC ScrCmd_hidemonpic @ 0x76
+ script_cmd_table_entry SCR_OP_SHOWCONTESTPAINTING ScrCmd_showcontestpainting @ 0x77
+ script_cmd_table_entry SCR_OP_BRAILLEMESSAGE ScrCmd_braillemessage @ 0x78
+ script_cmd_table_entry SCR_OP_GIVEMON ScrCmd_givemon @ 0x79
+ script_cmd_table_entry SCR_OP_GIVEEGG ScrCmd_giveegg @ 0x7a
+ script_cmd_table_entry SCR_OP_SETMONMOVE ScrCmd_setmonmove @ 0x7b
+ script_cmd_table_entry SCR_OP_CHECKPARTYMOVE ScrCmd_checkpartymove @ 0x7c
+ script_cmd_table_entry SCR_OP_BUFFERSPECIESNAME ScrCmd_bufferspeciesname @ 0x7d
+ script_cmd_table_entry SCR_OP_BUFFERLEADMONSPECIESNAME ScrCmd_bufferleadmonspeciesname @ 0x7e
+ script_cmd_table_entry SCR_OP_BUFFERPARTYMONNICK ScrCmd_bufferpartymonnick @ 0x7f
+ script_cmd_table_entry SCR_OP_BUFFERITEMNAME ScrCmd_bufferitemname @ 0x80
+ script_cmd_table_entry SCR_OP_BUFFERDECORATIONNAME ScrCmd_bufferdecorationname @ 0x81
+ script_cmd_table_entry SCR_OP_BUFFERMOVENAME ScrCmd_buffermovename @ 0x82
+ script_cmd_table_entry SCR_OP_BUFFERNUMBERSTRING ScrCmd_buffernumberstring @ 0x83
+ script_cmd_table_entry SCR_OP_BUFFERSTDSTRING ScrCmd_bufferstdstring @ 0x84
+ script_cmd_table_entry SCR_OP_BUFFERSTRING ScrCmd_bufferstring @ 0x85
+ script_cmd_table_entry SCR_OP_POKEMART ScrCmd_pokemart @ 0x86
+ script_cmd_table_entry SCR_OP_POKEMARTDECORATION ScrCmd_pokemartdecoration @ 0x87
+ script_cmd_table_entry SCR_OP_POKEMARTDECORATION2 ScrCmd_pokemartdecoration2 @ 0x88
+ script_cmd_table_entry SCR_OP_PLAYSLOTMACHINE ScrCmd_playslotmachine @ 0x89
+ script_cmd_table_entry SCR_OP_SETBERRYTREE ScrCmd_setberrytree @ 0x8a
+ script_cmd_table_entry SCR_OP_CHOOSECONTESTMON ScrCmd_choosecontestmon @ 0x8b
+ script_cmd_table_entry SCR_OP_STARTCONTEST ScrCmd_startcontest @ 0x8c
+ script_cmd_table_entry SCR_OP_SHOWCONTESTRESULTS ScrCmd_showcontestresults @ 0x8d
+ script_cmd_table_entry SCR_OP_CONTESTLINKTRANSFER ScrCmd_contestlinktransfer @ 0x8e
+ script_cmd_table_entry SCR_OP_RANDOM ScrCmd_random @ 0x8f
+ script_cmd_table_entry SCR_OP_ADDMONEY ScrCmd_addmoney @ 0x90
+ script_cmd_table_entry SCR_OP_REMOVEMONEY ScrCmd_removemoney @ 0x91
+ script_cmd_table_entry SCR_OP_CHECKMONEY ScrCmd_checkmoney @ 0x92
+ script_cmd_table_entry SCR_OP_SHOWMONEYBOX ScrCmd_showmoneybox @ 0x93
+ script_cmd_table_entry SCR_OP_HIDEMONEYBOX ScrCmd_hidemoneybox @ 0x94
+ script_cmd_table_entry SCR_OP_UPDATEMONEYBOX ScrCmd_updatemoneybox @ 0x95
+ script_cmd_table_entry SCR_OP_GETPOKENEWSACTIVE ScrCmd_getpokenewsactive @ 0x96
+ script_cmd_table_entry SCR_OP_FADESCREEN ScrCmd_fadescreen @ 0x97
+ script_cmd_table_entry SCR_OP_FADESCREENSPEED ScrCmd_fadescreenspeed @ 0x98
+ script_cmd_table_entry SCR_OP_SETFLASHLEVEL ScrCmd_setflashlevel @ 0x99
+ script_cmd_table_entry SCR_OP_ANIMATEFLASH ScrCmd_animateflash @ 0x9a
+ script_cmd_table_entry SCR_OP_MESSAGEAUTOSCROLL ScrCmd_messageautoscroll @ 0x9b
+ script_cmd_table_entry SCR_OP_DOFIELDEFFECT ScrCmd_dofieldeffect @ 0x9c
+ script_cmd_table_entry SCR_OP_SETFIELDEFFECTARGUMENT ScrCmd_setfieldeffectargument @ 0x9d
+ script_cmd_table_entry SCR_OP_WAITFIELDEFFECT ScrCmd_waitfieldeffect @ 0x9e
+ script_cmd_table_entry SCR_OP_SETRESPAWN ScrCmd_setrespawn @ 0x9f
+ script_cmd_table_entry SCR_OP_CHECKPLAYERGENDER ScrCmd_checkplayergender @ 0xa0
+ script_cmd_table_entry SCR_OP_PLAYMONCRY ScrCmd_playmoncry @ 0xa1
+ script_cmd_table_entry SCR_OP_SETMETATILE ScrCmd_setmetatile @ 0xa2
+ script_cmd_table_entry SCR_OP_RESETWEATHER ScrCmd_resetweather @ 0xa3
+ script_cmd_table_entry SCR_OP_SETWEATHER ScrCmd_setweather @ 0xa4
+ script_cmd_table_entry SCR_OP_DOWEATHER ScrCmd_doweather @ 0xa5
+ script_cmd_table_entry SCR_OP_SETSTEPCALLBACK ScrCmd_setstepcallback @ 0xa6
+ script_cmd_table_entry SCR_OP_SETMAPLAYOUTINDEX ScrCmd_setmaplayoutindex @ 0xa7
+ script_cmd_table_entry SCR_OP_SETOBJECTSUBPRIORITY ScrCmd_setobjectsubpriority @ 0xa8
+ script_cmd_table_entry SCR_OP_RESETOBJECTSUBPRIORITY ScrCmd_resetobjectsubpriority @ 0xa9
+ script_cmd_table_entry SCR_OP_CREATEVOBJECT ScrCmd_createvobject @ 0xaa
+ script_cmd_table_entry SCR_OP_TURNVOBJECT ScrCmd_turnvobject @ 0xab
+ script_cmd_table_entry SCR_OP_OPENDOOR ScrCmd_opendoor @ 0xac
+ script_cmd_table_entry SCR_OP_CLOSEDOOR ScrCmd_closedoor @ 0xad
+ script_cmd_table_entry SCR_OP_WAITDOORANIM ScrCmd_waitdooranim @ 0xae
+ script_cmd_table_entry SCR_OP_SETDOOROPEN ScrCmd_setdooropen @ 0xaf
+ script_cmd_table_entry SCR_OP_SETDOORCLOSED ScrCmd_setdoorclosed @ 0xb0
+ script_cmd_table_entry SCR_OP_ADDELEVMENUITEM ScrCmd_addelevmenuitem @ 0xb1
+ script_cmd_table_entry SCR_OP_SHOWELEVMENU ScrCmd_showelevmenu @ 0xb2
+ script_cmd_table_entry SCR_OP_CHECKCOINS ScrCmd_checkcoins @ 0xb3
+ script_cmd_table_entry SCR_OP_ADDCOINS ScrCmd_addcoins @ 0xb4
+ script_cmd_table_entry SCR_OP_REMOVECOINS ScrCmd_removecoins @ 0xb5
+ script_cmd_table_entry SCR_OP_SETWILDBATTLE ScrCmd_setwildbattle @ 0xb6
+ script_cmd_table_entry SCR_OP_DOWILDBATTLE ScrCmd_dowildbattle @ 0xb7
+ script_cmd_table_entry SCR_OP_SETVADDRESS ScrCmd_setvaddress @ 0xb8
+ script_cmd_table_entry SCR_OP_VGOTO ScrCmd_vgoto @ 0xb9
+ script_cmd_table_entry SCR_OP_VCALL ScrCmd_vcall @ 0xba
+ script_cmd_table_entry SCR_OP_VGOTO_IF ScrCmd_vgoto_if @ 0xbb
+ script_cmd_table_entry SCR_OP_VCALL_IF ScrCmd_vcall_if @ 0xbc
+ script_cmd_table_entry SCR_OP_VMESSAGE ScrCmd_vmessage @ 0xbd
+ script_cmd_table_entry SCR_OP_VBUFFERMESSAGE ScrCmd_vbuffermessage @ 0xbe
+ script_cmd_table_entry SCR_OP_VBUFFERSTRING ScrCmd_vbufferstring @ 0xbf
+ script_cmd_table_entry SCR_OP_SHOWCOINSBOX ScrCmd_showcoinsbox @ 0xc0
+ script_cmd_table_entry SCR_OP_HIDECOINSBOX ScrCmd_hidecoinsbox @ 0xc1
+ script_cmd_table_entry SCR_OP_UPDATECOINSBOX ScrCmd_updatecoinsbox @ 0xc2
+ script_cmd_table_entry SCR_OP_INCREMENTGAMESTAT ScrCmd_incrementgamestat @ 0xc3
+ script_cmd_table_entry SCR_OP_SETESCAPEWARP ScrCmd_setescapewarp @ 0xc4
+ script_cmd_table_entry SCR_OP_WAITMONCRY ScrCmd_waitmoncry @ 0xc5
+ script_cmd_table_entry SCR_OP_BUFFERBOXNAME ScrCmd_bufferboxname @ 0xc6
+ script_cmd_table_entry SCR_OP_TEXTCOLOR ScrCmd_nop1 @ 0xc7
+ script_cmd_table_entry SCR_OP_LOADHELP ScrCmd_nop1 @ 0xc8
+ script_cmd_table_entry SCR_OP_UNLOADHELP ScrCmd_nop1 @ 0xc9
+ script_cmd_table_entry SCR_OP_SIGNMSG ScrCmd_nop1 @ 0xca
+ script_cmd_table_entry SCR_OP_NORMALMSG ScrCmd_nop1 @ 0xcb
+ script_cmd_table_entry SCR_OP_COMPAREHIDDENVAR ScrCmd_nop1 @ 0xcc
+ script_cmd_table_entry SCR_OP_SETMODERNFATEFULENCOUNTER ScrCmd_setmodernfatefulencounter @ 0xcd
+ script_cmd_table_entry SCR_OP_CHECKMODERNFATEFULENCOUNTER ScrCmd_checkmodernfatefulencounter @ 0xce
+ script_cmd_table_entry SCR_OP_TRYWONDERCARDSCRIPT ScrCmd_trywondercardscript @ 0xcf
+ script_cmd_table_entry SCR_OP_SETWORLDMAPFLAG ScrCmd_nop1 @ 0xd0
+ script_cmd_table_entry SCR_OP_WARPSPINENTER ScrCmd_warpspinenter @ 0xd1
+ script_cmd_table_entry SCR_OP_SETMONMETLOCATION ScrCmd_setmonmetlocation @ 0xd2
+ script_cmd_table_entry SCR_OP_MOVEROTATINGTILEOBJECTS ScrCmd_moverotatingtileobjects @ 0xd3
+ script_cmd_table_entry SCR_OP_TURNROTATINGTILEOBJECTS ScrCmd_turnrotatingtileobjects @ 0xd4
+ script_cmd_table_entry SCR_OP_INITROTATINGTILEPUZZLE ScrCmd_initrotatingtilepuzzle @ 0xd5
+ script_cmd_table_entry SCR_OP_FREEROTATINGTILEPUZZLE ScrCmd_freerotatingtilepuzzle @ 0xd6
+ script_cmd_table_entry SCR_OP_WARPMOSSDEEPGYM ScrCmd_warpmossdeepgym @ 0xd7
+ script_cmd_table_entry SCR_OP_SELECTAPPROACHINGTRAINER ScrCmd_selectapproachingtrainer @ 0xd8
+ script_cmd_table_entry SCR_OP_LOCKFORTRAINER ScrCmd_lockfortrainer @ 0xd9
+ script_cmd_table_entry SCR_OP_CLOSEBRAILLEMESSAGE ScrCmd_closebraillemessage @ 0xda
+ script_cmd_table_entry SCR_OP_MESSAGEINSTANT ScrCmd_messageinstant @ 0xdb
+ script_cmd_table_entry SCR_OP_FADESCREENSWAPBUFFERS ScrCmd_fadescreenswapbuffers @ 0xdc
+ script_cmd_table_entry SCR_OP_BUFFERTRAINERCLASSNAME ScrCmd_buffertrainerclassname @ 0xdd
+ script_cmd_table_entry SCR_OP_BUFFERTRAINERNAME ScrCmd_buffertrainername @ 0xde
+ script_cmd_table_entry SCR_OP_POKENAVCALL ScrCmd_pokenavcall @ 0xdf
+ script_cmd_table_entry SCR_OP_WARPWHITEFADE ScrCmd_warpwhitefade @ 0xe0
+ script_cmd_table_entry SCR_OP_BUFFERCONTESTNAME ScrCmd_buffercontestname @ 0xe1
+ script_cmd_table_entry SCR_OP_BUFFERITEMNAMEPLURAL ScrCmd_bufferitemnameplural @ 0xe2
+ .if ALLOCATE_SCRIPT_CMD_TABLE
gScriptCmdTableEnd::
.4byte ScrCmd_nop
+ .endif
diff --git a/data/scripts/apprentice.inc b/data/scripts/apprentice.inc
index 6b3a99e728..246922f7f2 100644
--- a/data/scripts/apprentice.inc
+++ b/data/scripts/apprentice.inc
@@ -1,5 +1,3 @@
-.set LOCALID_APPRENTICE, 6
-
BattleFrontier_BattleTowerLobby_EventScript_Apprentice::
lock
faceplayer
diff --git a/data/scripts/battle_pike.inc b/data/scripts/battle_pike.inc
index ba03f437f0..7243b9479e 100644
--- a/data/scripts/battle_pike.inc
+++ b/data/scripts/battle_pike.inc
@@ -1,4 +1,3 @@
-@ Note: LOCALIDs shared with BattleFrontier_BattlePikeRoomNormal
BattleFrontier_BattlePikeRoom_MapScripts:
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePikeRoom_OnTransition
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePikeRoom_OnWarp
@@ -18,28 +17,28 @@ BattleFrontier_BattlePikeRoom_OnTransition:
end
BattleFrontier_BattlePikeRoomNormal_EventScript_SetDoubleBattleObjPos::
- setobjectxyperm LOCALID_OBJ_0, 2, 5
- setobjectxyperm LOCALID_OBJ_1, 6, 5
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_1, 2, 5
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_2, 6, 5
end
BattleFrontier_BattlePikeRoomNormal_EventScript_SetTwoObjectRoomPos::
- setobjectxyperm LOCALID_OBJ_0, 4, 4
- setobjectxyperm LOCALID_OBJ_1, 3, 4
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_1, 4, 4
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_2, 3, 4
end
BattleFrontier_BattlePikeRoomNormal_EventScript_SetOneObjectRoomPos::
- setobjectxyperm LOCALID_OBJ_0, 4, 4
- setobjectxyperm LOCALID_OBJ_1, 0, 0
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_1, 4, 4
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_2, 0, 0
end
BattleFrontier_BattlePikeRoomNormal_EventScript_SetNPCRoomObjPos::
- setobjectxyperm LOCALID_OBJ_0, 5, 5
- setobjectxyperm LOCALID_OBJ_1, 0, 0
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_1, 5, 5
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_2, 0, 0
end
BattleFrontier_BattlePikeRoomNormal_EventScript_SetBrainRoomObjPos::
- setobjectxyperm LOCALID_OBJ_0, 4, 3
- setobjectxyperm LOCALID_OBJ_1, 4, 4
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_1, 4, 3
+ setobjectxyperm LOCALID_PIKE_ROOM_NPC_2, 4, 4
end
BattleFrontier_BattlePikeRoom_OnWarp:
@@ -54,20 +53,20 @@ BattleFrontier_BattlePikeRoomNormal_EventScript_InitRoomObjects::
goto_if_eq VAR_RESULT, PIKE_ROOM_HARD_BATTLE, BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom
goto_if_eq VAR_RESULT, PIKE_ROOM_DOUBLE_BATTLE, BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom
goto_if_eq VAR_RESULT, PIKE_ROOM_BRAIN, BattleFrontier_BattlePikeRoomNormal_EventScript_InitBrainRoomObjects
- hideobjectat LOCALID_OBJ_1, MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL
+ hideobjectat LOCALID_PIKE_ROOM_NPC_2, MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL
setvar VAR_TEMP_4, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePikeRoomNormal_EventScript_InitTwoObjectRoom::
setvar VAR_TEMP_4, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
+ turnobject LOCALID_PLAYER, DIR_NORTH
end
BattleFrontier_BattlePikeRoomNormal_EventScript_InitBrainRoomObjects::
setvar VAR_TEMP_4, 1
- turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
- hideobjectat LOCALID_OBJ_0, MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL @ Pike Queen hidden initially
+ turnobject LOCALID_PLAYER, DIR_NORTH
+ hideobjectat LOCALID_PIKE_ROOM_NPC_1, MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL @ Pike Queen hidden initially
end
BattleFrontier_BattlePikeThreePathRoom_EventScript_LeftRoomWarp::
@@ -107,7 +106,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_RoomWarp::
end
BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom::
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer
waitmovement 0
call BattleFrontier_BattlePike_EventScript_CloseCurtain
warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL, 4, 7
@@ -115,7 +114,7 @@ BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpNPCRoom::
end
BattleFrontier_BattlePikeThreePathRoom_EventScript_WarpWildMonRoom::
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer
waitmovement 0
call BattleFrontier_BattlePike_EventScript_CloseCurtain
warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS, 4, 19
@@ -173,14 +172,14 @@ BattleFrontier_BattlePikeRoom_EventScript_EnableHealing::
return
BattleFrontier_BattlePikeRoom_EventScript_WarpToFinalRoom::
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer
waitmovement 0
call BattleFrontier_BattlePike_EventScript_CloseCurtain
warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL, 2, 7
return
BattleFrontier_BattlePikeRoom_EventScript_WarpToThreePathRoom::
- applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer
+ applymovement LOCALID_PLAYER, BattleFrontier_BattlePikeRoom_Movement_HidePlayer
waitmovement 0
call BattleFrontier_BattlePike_EventScript_CloseCurtain
warpsilent MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM, 6, 10
diff --git a/data/scripts/berry_blender.inc b/data/scripts/berry_blender.inc
index f860ef066c..3fab60a58b 100644
--- a/data/scripts/berry_blender.inc
+++ b/data/scripts/berry_blender.inc
@@ -1,11 +1,3 @@
-@ Note: local IDs shared with scripts.inc for LilycoveCity_ContestLobby
-.set LOCALID_MAN, 3
-.set LOCALID_BOY, 9
-.set LOCALID_TWIN, 10
-.set LOCALID_POKEFAN_F, 15
-.set LOCALID_EXPERT_M, 16
-.set LOCALID_GIRL, 17
-
.set NUM_OPPONENTS, VAR_0x8009
BerryBlender_Text_WantToMakePokeblocks:
@@ -246,7 +238,7 @@ BerryBlender_EventScript_BerryBlender1::
lockall
goto_if_unset FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER, BerryBlender_EventScript_BlendMasterPresent
setvar NUM_OPPONENTS, 1
- applymovement LOCALID_EXPERT_M, BerryBlender_Movement_BlendLeaderWalkInPlace
+ applymovement LOCALID_BLEND_MASTER, BerryBlender_Movement_BlendLeaderWalkInPlace
waitmovement 0
msgbox BerryBlender_Text_WantToMakePokeblocks, MSGBOX_YESNO
goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryUseBerryBlender1
@@ -325,8 +317,8 @@ BerryBlender_EventScript_Blender1NoCase:
BerryBlender_EventScript_BerryBlender2::
lockall
setvar NUM_OPPONENTS, 2
- applymovement LOCALID_TWIN, Common_Movement_FaceOriginalDirection
- applymovement LOCALID_MAN, BerryBlender_Movement_BlendLeaderWalkInPlace
+ applymovement LOCALID_CONTEST_LOBBY_BLENDER_2_PARTICIPANT, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_CONTEST_LOBBY_BLENDER_2_LEADER, BerryBlender_Movement_BlendLeaderWalkInPlace
waitmovement 0
msgbox BerryBlender_Text_WantToBlendPokeblocksWithUs, MSGBOX_YESNO
goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryUseBerryBlender2
@@ -382,10 +374,10 @@ BerryBlender_EventScript_Blender2NoCase:
BerryBlender_EventScript_BerryBlender3::
lockall
- setvar VAR_0x8008, LOCALID_POKEFAN_F
+ setvar VAR_0x8008, LOCALID_CONTEST_LOBBY_BLENDER_3_LEADER
setvar NUM_OPPONENTS, 3
- applymovement LOCALID_BOY, Common_Movement_FaceOriginalDirection
- applymovement LOCALID_GIRL, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_CONTEST_LOBBY_BLENDER_3_PARTICIPANT_1, Common_Movement_FaceOriginalDirection
+ applymovement LOCALID_CONTEST_LOBBY_BLENDER_3_PARTICIPANT_2, Common_Movement_FaceOriginalDirection
applymovement VAR_0x8008, BerryBlender_Movement_BlendLeaderWalkInPlace
waitmovement 0
msgbox BerryBlender_Text_LookGoodAtBlendingJoinUs, MSGBOX_YESNO
diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc
index faf6e74b5d..ee581676a5 100644
--- a/data/scripts/cable_club.inc
+++ b/data/scripts/cable_club.inc
@@ -138,7 +138,7 @@ CableClub_EventScript_CloseLinkAndExitLinkRoom::
goto_if_eq VAR_0x8007, 0, CableClub_EventScript_PlayerExitLinkRoom
applymovement VAR_0x8007, Movement_AttendantFaceLeft
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerExitLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerExitLinkRoom
waitmovement 0
applymovement VAR_0x8007, Movement_AttendantFaceDown
waitmovement 0
@@ -158,7 +158,7 @@ CableClub_EventScript_PlayerExitTradeCenter::
special CloseLink
setvar VAR_CABLE_CLUB_STATE, 0
goto_if_eq VAR_0x8007, 0, CableClub_EventScript_PlayerExitLinkRoom
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerFaceAttendantRight
+ applymovement LOCALID_PLAYER, Movement_PlayerFaceAttendantRight
waitmovement 0
applymovement VAR_0x8007, Movement_AttendantFaceLeft
waitmovement 0
@@ -178,7 +178,7 @@ CableClub_EventScript_ExitRecordCorner::
CableClub_EventScript_PlayerExitRecordCorner::
special CloseLink
setvar VAR_CABLE_CLUB_STATE, 0
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerExitLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerExitLinkRoom
waitmovement 0
goto_if_eq VAR_0x8007, 0, CableClub_EventScript_ExitRecordCornerRet
applymovement VAR_0x8007, Movement_AttendantFaceDown
@@ -199,7 +199,7 @@ CableClub_EventScript_ExitUnionRoom::
CableClub_EventScript_PlayerExitUnionRoom::
setvar VAR_CABLE_CLUB_STATE, 0
goto_if_eq VAR_0x8007, 0, CableClub_EventScript_PlayerExitLinkRoom
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerFaceAttendantRight
+ applymovement LOCALID_PLAYER, Movement_PlayerFaceAttendantRight
waitmovement 0
applymovement VAR_0x8007, Movement_AttendantFaceLeft
waitmovement 0
@@ -213,24 +213,24 @@ CableClub_EventScript_TrainerCardDataOverwritten::
delay 60
message CableClub_Text_HopeToSeeYouAgain
waitmessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerExitLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerExitLinkRoom
waitmovement 0
applymovement VAR_0x8007, Movement_AttendantFaceDown
waitmovement 0
return
CableClub_EventScript_PlayerExitLinkRoom::
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerExitLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerExitLinkRoom
waitmovement 0
return
CableClub_EventScript_Tutorial::
lockall
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox CableClub_Text_FirstTimeRightThisWay, MSGBOX_DEFAULT
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, CableClub_Movement_PlayerApproachCounter
+ applymovement LOCALID_PLAYER, CableClub_Movement_PlayerApproachCounter
waitmovement 0
delay 30
msgbox CableClub_Text_ExplainWirelessClubFirstTime, MSGBOX_DEFAULT
@@ -350,13 +350,13 @@ CableClub_EventScript_EnterColosseum::
applymovement VAR_LAST_TALKED, Movement_AttendantFaceLeft
waitmovement 0
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerApproachLinkRoomLeft
+ applymovement LOCALID_PLAYER, Movement_PlayerApproachLinkRoomLeft
waitmovement 0
opendoor 9, 1
waitdooranim
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerEnterLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerEnterLinkRoom
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
+ hideobjectat LOCALID_PLAYER, 0
closedoor 9, 1
waitdooranim
release
@@ -369,7 +369,7 @@ CableClub_EventScript_EnterColosseum::
@ Unused
CableClub_EventScript_PlayerApproachLinkRoomRight::
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerApproachLinkRoomRight
+ applymovement LOCALID_PLAYER, Movement_PlayerApproachLinkRoomRight
waitmovement 0
return
@@ -444,13 +444,13 @@ CableClub_EventScript_EnterTradeCenter::
applymovement VAR_LAST_TALKED, Movement_AttendantFaceLeft
waitmovement 0
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerApproachLinkRoomLeft
+ applymovement LOCALID_PLAYER, Movement_PlayerApproachLinkRoomLeft
waitmovement 0
opendoor 9, 1
waitdooranim
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerEnterLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerEnterLinkRoom
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
+ hideobjectat LOCALID_PLAYER, 0
closedoor 9, 1
waitdooranim
release
@@ -509,13 +509,13 @@ CableClub_EventScript_EnterRecordCorner::
applymovement VAR_LAST_TALKED, Movement_AttendantFaceLeft
waitmovement 0
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerApproachLinkRoomLeft
+ applymovement LOCALID_PLAYER, Movement_PlayerApproachLinkRoomLeft
waitmovement 0
opendoor 9, 1
waitdooranim
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerEnterLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerEnterLinkRoom
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
+ hideobjectat LOCALID_PLAYER, 0
closedoor 9, 1
waitdooranim
release
@@ -896,13 +896,13 @@ CableClub_EventScript_EnterUnionRoom::
delay 60
applymovement VAR_LAST_TALKED, Movement_AttendantFaceLeft
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerApproachLinkRoomLeft
+ applymovement LOCALID_PLAYER, Movement_PlayerApproachLinkRoomLeft
waitmovement 0
opendoor 5, 1
waitdooranim
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerEnterLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerEnterLinkRoom
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
+ hideobjectat LOCALID_PLAYER, 0
closedoor 5, 1
waitdooranim
special Script_ResetUnionRoomTrade
@@ -1196,13 +1196,13 @@ CableClub_EventScript_EnterWirelessLinkRoom::
applymovement VAR_LAST_TALKED, Movement_AttendantFaceLeft
waitmovement 0
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerApproachLinkRoomLeft
+ applymovement LOCALID_PLAYER, Movement_PlayerApproachLinkRoomLeft
waitmovement 0
opendoor 9, 1
waitdooranim
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerEnterLinkRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerEnterLinkRoom
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
+ hideobjectat LOCALID_PLAYER, 0
closedoor 9, 1
waitdooranim
release
@@ -1378,9 +1378,9 @@ MossdeepCity_GameCorner_1F_EventScript_EnterMinigameRoom::
applymovement VAR_LAST_TALKED, Movement_AttendantFaceLeft
waitmovement 0
closemessage
- applymovement OBJ_EVENT_ID_PLAYER, Movement_PlayerEnterMinigameRoom
+ applymovement LOCALID_PLAYER, Movement_PlayerEnterMinigameRoom
waitmovement 0
- hideobjectat OBJ_EVENT_ID_PLAYER, 0
+ hideobjectat LOCALID_PLAYER, 0
release
waitstate
end
diff --git a/data/scripts/cave_hole.inc b/data/scripts/cave_hole.inc
index 0ec57372a3..33c9dda7b3 100644
--- a/data/scripts/cave_hole.inc
+++ b/data/scripts/cave_hole.inc
@@ -9,7 +9,7 @@ CaveHole_FixCrackedGround:
EventScript_FallDownHole::
lockall
delay 20
- applymovement OBJ_EVENT_ID_PLAYER, Movement_SetInvisible
+ applymovement LOCALID_PLAYER, Movement_SetInvisible
waitmovement 0
playse SE_FALL
delay 60
@@ -20,7 +20,7 @@ EventScript_FallDownHole::
EventScript_FallDownHoleMtPyre::
lockall
delay 20
- applymovement OBJ_EVENT_ID_PLAYER, Movement_SetInvisible
+ applymovement LOCALID_PLAYER, Movement_SetInvisible
waitmovement 0
playse SE_FALL
delay 60
diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc
index 04c62a6de3..61beb94a12 100644
--- a/data/scripts/contest_hall.inc
+++ b/data/scripts/contest_hall.inc
@@ -1,19 +1,3 @@
-.set LOCALID_MC, 1
-.set LOCALID_JUDGE, 2
-.set LOCALID_CONTESTANT_1, 3
-.set LOCALID_CONTESTANT_2, 4
-.set LOCALID_CONTESTANT_3, 5
-.set LOCALID_AUDIENCE_1, 6
-.set LOCALID_AUDIENCE_3, 7
-.set LOCALID_AUDIENCE_4, 8
-.set LOCALID_AUDIENCE_5, 9
-.set LOCALID_AUDIENCE_6, 10
-.set LOCALID_AUDIENCE_7, 11
-.set LOCALID_AUDIENCE_2, 12
-.set LOCALID_POKEBALL, 13
-.set LOCALID_CONTESTANT_4, 14
-.set LOCALID_ARTIST, 15
-
@ Either ends or returns to EventScript_ContestReceptionist after submitting a contest entry
LilycoveCity_ContestLobby_EventScript_SpeakToContestReceptionist::
lock
@@ -203,7 +187,7 @@ ContestHall_EventScript_DoContest::
lockall
applymovement LOCALID_CONTESTANT_4, ContestHall_Movement_Player4FaceUp
waitmovement 0
- applymovement LOCALID_MC, ContestHall_Movement_MCWalkDown
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_MCWalkDown
waitmovement 0
releaseall
call ContestHall_EventScript_TryWaitForLink
@@ -279,7 +263,7 @@ ContestHall_EventScript_ContestGettingStarted::
bufferstdstring STR_VAR_3, VAR_0x8009
call ContestHall_EventScript_GettingStarted
lockall
- applymovement LOCALID_MC, ContestHall_Movement_MCBackUp
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_MCBackUp
waitmovement 0
releaseall
return
@@ -384,7 +368,7 @@ ContestHall_EventScript_ShowContestMonPic::
releaseall
call ContestHall_EventScript_TryWaitForLink
call ContestHall_EventScript_CheckIfContestWithRSPlayer
- addobject LOCALID_POKEBALL
+ addobject LOCALID_CONTEST_POKEBALL
playse SE_LEDGE
lockall
applymovement VAR_0x800B, ContestHall_Movement_ContestantDelay32
@@ -413,13 +397,13 @@ ContestHall_EventScript_AudienceVote::
playse SE_M_ENCORE2
waitmessage
call ContestHall_EventScript_AudienceLookAround
- applymovement LOCALID_MC, ContestHall_Movement_MCFaceJudge2
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_MCFaceJudge2
waitmovement 0
- applymovement LOCALID_JUDGE, ContestHall_Movement_JudgeFaceMC
+ applymovement LOCALID_CONTEST_JUDGE, ContestHall_Movement_JudgeFaceMC
waitmovement 0
delay 20
- applymovement LOCALID_MC, ContestHall_Movement_FaceContestants
- applymovement LOCALID_JUDGE, ContestHall_Movement_FaceContestants
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_FaceContestants
+ applymovement LOCALID_CONTEST_JUDGE, ContestHall_Movement_FaceContestants
waitmovement 0
return
@@ -459,25 +443,25 @@ ContestHall_EventScript_VotingUnderWayLink::
ContestHall_EventScript_AudienceReactToContestant::
call ContestHall_EventScript_TryWaitForLink
- applymovement LOCALID_MC, ContestHall_Movement_AudienceMemberLookLeft
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_AudienceMemberLookLeft
waitmovement 0
playse SE_M_ENCORE2
call ContestHall_EventScript_VObjectAudienceLookAround
- applymovement LOCALID_AUDIENCE_5, ContestHall_Movement_AudienceMemberLookRight
- applymovement LOCALID_AUDIENCE_2, ContestHall_Movement_AudienceMemberLookDown
- applymovement LOCALID_AUDIENCE_3, ContestHall_Movement_AudienceMemberLookRight
+ applymovement LOCALID_CONTEST_AUDIENCE_5, ContestHall_Movement_AudienceMemberLookRight
+ applymovement LOCALID_CONTEST_AUDIENCE_2, ContestHall_Movement_AudienceMemberLookDown
+ applymovement LOCALID_CONTEST_AUDIENCE_3, ContestHall_Movement_AudienceMemberLookRight
waitmovement 0
- applymovement LOCALID_MC, ContestHall_Movement_AudienceMemberLookRight
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_AudienceMemberLookRight
waitmovement 0
- applymovement LOCALID_AUDIENCE_6, ContestHall_Movement_AudienceMemberLookLeft
- applymovement LOCALID_AUDIENCE_7, ContestHall_Movement_AudienceMemberLookDown
- applymovement LOCALID_AUDIENCE_1, ContestHall_Movement_AudienceMemberLookUp
- applymovement LOCALID_AUDIENCE_4, ContestHall_Movement_AudienceMemberLookLeft
+ applymovement LOCALID_CONTEST_AUDIENCE_6, ContestHall_Movement_AudienceMemberLookLeft
+ applymovement LOCALID_CONTEST_AUDIENCE_7, ContestHall_Movement_AudienceMemberLookDown
+ applymovement LOCALID_CONTEST_AUDIENCE_1, ContestHall_Movement_AudienceMemberLookUp
+ applymovement LOCALID_CONTEST_AUDIENCE_4, ContestHall_Movement_AudienceMemberLookLeft
waitmovement 0
- applymovement LOCALID_MC, ContestHall_Movement_MCLookAtJudge
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_MCLookAtJudge
waitmovement 0
- applymovement LOCALID_MC, ContestHall_Movement_MCWalkInPlaceDown
- applymovement LOCALID_JUDGE, ContestHall_Movement_JudgeLookAtMC
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_MCWalkInPlaceDown
+ applymovement LOCALID_CONTEST_JUDGE, ContestHall_Movement_JudgeLookAtMC
waitmovement 0
releaseall
call ContestHall_EventScript_TryWaitForLink
@@ -623,7 +607,7 @@ ContestHall_EventScript_Set8Hearts::
ContestHall_EventScript_TryDisplayHeartAudienceMember1::
goto_if_eq VAR_TEMP_1, 1, ContestHall_EventScript_AudienceMember1AlreadyEmoted
- applymovement LOCALID_AUDIENCE_1, ContestHall_Movement_Heart
+ applymovement LOCALID_CONTEST_AUDIENCE_1, ContestHall_Movement_Heart
playse SE_PIN
delay 14
setvar VAR_TEMP_1, 1
@@ -635,7 +619,7 @@ ContestHall_EventScript_AudienceMember1AlreadyEmoted::
ContestHall_EventScript_TryDisplayHeartAudienceMember2::
goto_if_eq VAR_TEMP_2, 1, ContestHall_EventScript_AudienceMember2AlreadyEmoted
- applymovement LOCALID_AUDIENCE_2, ContestHall_Movement_Heart
+ applymovement LOCALID_CONTEST_AUDIENCE_2, ContestHall_Movement_Heart
playse SE_PIN
delay 14
setvar VAR_TEMP_2, 1
@@ -647,7 +631,7 @@ ContestHall_EventScript_AudienceMember2AlreadyEmoted::
ContestHall_EventScript_TryDisplayHeartAudienceMember3::
goto_if_eq VAR_TEMP_3, 1, ContestHall_EventScript_AudienceMember3AlreadyEmoted
- applymovement LOCALID_AUDIENCE_3, ContestHall_Movement_Heart
+ applymovement LOCALID_CONTEST_AUDIENCE_3, ContestHall_Movement_Heart
playse SE_PIN
delay 14
setvar VAR_TEMP_3, 1
@@ -659,7 +643,7 @@ ContestHall_EventScript_AudienceMember3AlreadyEmoted::
ContestHall_EventScript_TryDisplayHeartAudienceMember4::
goto_if_eq VAR_TEMP_4, 1, ContestHall_EventScript_Audience4MemberAlreadyEmoted
- applymovement LOCALID_AUDIENCE_4, ContestHall_Movement_Heart
+ applymovement LOCALID_CONTEST_AUDIENCE_4, ContestHall_Movement_Heart
playse SE_PIN
delay 14
setvar VAR_TEMP_4, 1
@@ -671,7 +655,7 @@ ContestHall_EventScript_Audience4MemberAlreadyEmoted::
ContestHall_EventScript_TryDisplayHeartAudienceMember5::
goto_if_eq VAR_TEMP_5, 1, ContestHall_EventScript_AudienceMember5AlreadyEmoted
- applymovement LOCALID_AUDIENCE_5, ContestHall_Movement_Heart
+ applymovement LOCALID_CONTEST_AUDIENCE_5, ContestHall_Movement_Heart
playse SE_PIN
delay 14
setvar VAR_TEMP_5, 1
@@ -683,7 +667,7 @@ ContestHall_EventScript_AudienceMember5AlreadyEmoted::
ContestHall_EventScript_TryDisplayHeartAudienceMember6::
goto_if_eq VAR_TEMP_6, 1, ContestHall_EventScript_AudienceMember6AlreadyEmoted
- applymovement LOCALID_AUDIENCE_6, ContestHall_Movement_Heart
+ applymovement LOCALID_CONTEST_AUDIENCE_6, ContestHall_Movement_Heart
playse SE_PIN
delay 14
setvar VAR_TEMP_6, 1
@@ -695,7 +679,7 @@ ContestHall_EventScript_AudienceMember6AlreadyEmoted::
ContestHall_EventScript_TryDisplayHeartAudienceMember7::
goto_if_eq VAR_TEMP_7, 1, ContestHall_EventScript_AudienceMember7AlreadyEmoted
- applymovement LOCALID_AUDIENCE_7, ContestHall_Movement_Heart
+ applymovement LOCALID_CONTEST_AUDIENCE_7, ContestHall_Movement_Heart
playse SE_PIN
delay 14
setvar VAR_TEMP_7, 1
@@ -707,7 +691,7 @@ ContestHall_EventScript_AudienceMember7AlreadyEmoted::
ContestHall_EventScript_TryDisplayHeartAudienceMember8::
goto_if_eq VAR_TEMP_8, 1, ContestHall_EventScript_AudienceMember8AlreadyEmoted
- applymovement LOCALID_ARTIST, ContestHall_Movement_Heart
+ applymovement LOCALID_CONTEST_ARTIST, ContestHall_Movement_Heart
playse SE_PIN
delay 14
setvar VAR_TEMP_8, 1
@@ -720,7 +704,7 @@ ContestHall_EventScript_AudienceMember8AlreadyEmoted::
ContestHall_EventScript_ContestantReturn::
closemessage
release
- removeobject LOCALID_POKEBALL
+ removeobject LOCALID_CONTEST_POKEBALL
special HideContestEntryMonPic
call ContestHall_EventScript_TryWaitForLink
switch VAR_0x8006
@@ -764,13 +748,13 @@ ContestHall_EventScript_Player4WalkBack::
ContestHall_EventScript_DoContestAppeals::
lockall
- applymovement LOCALID_MC, ContestHall_Movement_FaceContestants2
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_FaceContestants2
waitmovement 0
call ContestHall_EventScript_TryWaitForLink
call ContestHall_EventScript_LetsAppeal
waitmessage
- applymovement LOCALID_MC, ContestHall_Movement_WalkStageLeft
- applymovement LOCALID_JUDGE, ContestHall_Movement_WalkStageRight
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_WalkStageLeft
+ applymovement LOCALID_CONTEST_JUDGE, ContestHall_Movement_WalkStageRight
waitmovement 0
releaseall
call ContestHall_EventScript_TryWaitForLink
@@ -780,8 +764,8 @@ ContestHall_EventScript_DoContestAppeals::
special LinkContestTryShowWirelessIndicator
setvar VAR_TEMP_9, 0
lockall
- applymovement LOCALID_MC, ContestHall_Movement_WalkStageRight
- applymovement LOCALID_JUDGE, ContestHall_Movement_WalkStageLeft
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_WalkStageRight
+ applymovement LOCALID_CONTEST_JUDGE, ContestHall_Movement_WalkStageLeft
waitmovement 0
releaseall
return
@@ -817,13 +801,13 @@ ContestHall_EventScript_ContestResults::
call ContestHall_EventScript_TryWaitForLink
call ContestHall_EventScript_ThankYouForAppeals
call ContestHall_EventScript_TryWaitForLink
- applymovement LOCALID_MC, ContestHall_Movement_MCFaceJudge
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_MCFaceJudge
waitmovement 0
call ContestHall_EventScript_JudgeLooksReady
call ContestHall_EventScript_TryWaitForLink
call ContestHall_EventScript_WeWillDeclareWinner
call ContestHall_EventScript_TryWaitForLink
- applymovement LOCALID_MC, ContestHall_Movement_FaceContestants
+ applymovement LOCALID_CONTEST_MC, ContestHall_Movement_FaceContestants
waitmovement 0
closemessage
releaseall
@@ -934,14 +918,14 @@ ContestHall_EventScript_AudienceLookAround::
addvar VAR_TEMP_1, 1
lockall
call_if_gt VAR_CONTEST_TYPE, CONTEST_TYPE_NPC_NORMAL, ContestHall_EventScript_VObjectAudienceLookAround
- applymovement LOCALID_AUDIENCE_5, ContestHall_Movement_AudienceMemberLookRight
- applymovement LOCALID_AUDIENCE_2, ContestHall_Movement_AudienceMemberLookDown
- applymovement LOCALID_AUDIENCE_3, ContestHall_Movement_AudienceMemberLookRight
+ applymovement LOCALID_CONTEST_AUDIENCE_5, ContestHall_Movement_AudienceMemberLookRight
+ applymovement LOCALID_CONTEST_AUDIENCE_2, ContestHall_Movement_AudienceMemberLookDown
+ applymovement LOCALID_CONTEST_AUDIENCE_3, ContestHall_Movement_AudienceMemberLookRight
delay 30
- applymovement LOCALID_AUDIENCE_6, ContestHall_Movement_AudienceMemberLookLeft
- applymovement LOCALID_AUDIENCE_7, ContestHall_Movement_AudienceMemberLookDown
- applymovement LOCALID_AUDIENCE_1, ContestHall_Movement_AudienceMemberLookUp
- applymovement LOCALID_AUDIENCE_4, ContestHall_Movement_AudienceMemberLookLeft
+ applymovement LOCALID_CONTEST_AUDIENCE_6, ContestHall_Movement_AudienceMemberLookLeft
+ applymovement LOCALID_CONTEST_AUDIENCE_7, ContestHall_Movement_AudienceMemberLookDown
+ applymovement LOCALID_CONTEST_AUDIENCE_1, ContestHall_Movement_AudienceMemberLookUp
+ applymovement LOCALID_CONTEST_AUDIENCE_4, ContestHall_Movement_AudienceMemberLookLeft
goto_if_ne VAR_TEMP_1, 4, ContestHall_EventScript_AudienceLookAround
delay 30
return
diff --git a/data/scripts/day_care.inc b/data/scripts/day_care.inc
index cb053f2c40..c9af7f5a3a 100644
--- a/data/scripts/day_care.inc
+++ b/data/scripts/day_care.inc
@@ -1,5 +1,3 @@
-.set LOCALID_DAYCARE_LADY, 1
-
Route117_EventScript_DaycareMan::
lock
faceplayer
diff --git a/data/scripts/elite_four.inc b/data/scripts/elite_four.inc
index 97d7f41314..1d1f7ab3eb 100644
--- a/data/scripts/elite_four.inc
+++ b/data/scripts/elite_four.inc
@@ -1,5 +1,5 @@
PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_Delay32
+ applymovement LOCALID_PLAYER, Common_Movement_Delay32
waitmovement 0
playse SE_DOOR
setmetatile 6, 1, METATILE_EliteFour_OpenDoor_Frame, FALSE
@@ -18,7 +18,7 @@ PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles::
return
PokemonLeague_EliteFour_EventScript_WalkInCloseDoor::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkUp6
+ applymovement LOCALID_PLAYER, Common_Movement_WalkUp6
waitmovement 0
playse SE_TRUCK_DOOR
setmetatile 5, 12, METATILE_EliteFour_EntryDoor_ClosedTop, TRUE
diff --git a/data/scripts/field_poison.inc b/data/scripts/field_poison.inc
index ddda34ebaa..1d89bcfdfd 100644
--- a/data/scripts/field_poison.inc
+++ b/data/scripts/field_poison.inc
@@ -29,9 +29,9 @@ EventScript_FrontierFieldWhiteOut::
waitbuttonpress
pike_inchallenge
goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePike_EventScript_Retire
- pyramid_inchallenge
- goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost @ On Pyramid floor
- goto_if_eq VAR_RESULT, 2, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost @ On Pyramid peak
+ pyramid_getlocation
+ goto_if_eq VAR_RESULT, PYRAMID_LOCATION_FLOOR, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
+ goto_if_eq VAR_RESULT, PYRAMID_LOCATION_TOP, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
trainerhill_inchallenge
goto_if_eq VAR_RESULT, TRUE, TrainerHill_1F_EventScript_Lost
special Script_FadeOutMapMusic
diff --git a/data/scripts/gabby_and_ty.inc b/data/scripts/gabby_and_ty.inc
index 260526c4b6..06e1010589 100644
--- a/data/scripts/gabby_and_ty.inc
+++ b/data/scripts/gabby_and_ty.inc
@@ -1,8 +1,15 @@
-@ Gabby and Ty always move to the same spots for the first 5 battles
-@ From the 6th battle onwards, they move randomly between locations 6-8
-@ Note: The local IDs of Gabby and Ty are hard-coded in GetGabbyAndTyLocalIds
+@ Gabby and Ty can appear in a fixed location on 3 different routes.
+@ Each time they are battled they will disappear from the route they're on
+@ and relocate to the next one, in the order Route 111 -> Route 118 -> Route 120.
+@ Gabby and Ty have 6 different parties which will get cycled on each appearance.
+@ After they're defeated 6 times they will stick to their 6th party but continue
+@ cycling between the 3 routes. To determine which trainer party gets used GF created
+@ multiple object events for Gabby and Ty on each of the 3 routes. The scripts below
+@ handle hiding and showing these objects so the correct party appears on the correct route.
+@ Route 111 and Route 118 have 3 object events each (parties 1,4,6 and 2,5,6 respectively)
+@ and Route 120 has 2 object events each (parties 3 and 6).
GabbyAndTy_EventScript_UpdateLocation::
- cleartrainerflag TRAINER_GABBY_AND_TY_6
+ cleartrainerflag TRAINER_GABBY_AND_TY_6 @ Clear flag for their final party to allow infinite rematches.
specialvar VAR_RESULT, GabbyAndTyGetBattleNum
switch VAR_RESULT
case 0, GabbyAndTy_EventScript_MoveForBattle1
@@ -31,13 +38,13 @@ GabbyAndTy_EventScript_MoveForBattle3::
return
GabbyAndTy_EventScript_MoveForBattle4::
- call GabbyAndTy_EventScript_ShowAtRoute111_3
+ call GabbyAndTy_EventScript_ShowAtRoute111_2
call GabbyAndTy_EventScript_HideAtRoute120_1
return
GabbyAndTy_EventScript_MoveForBattle5::
call GabbyAndTy_EventScript_ShowAtRoute118_2
- call GabbyAndTy_EventScript_HideAtRoute111_3
+ call GabbyAndTy_EventScript_HideAtRoute111_2
return
GabbyAndTy_EventScript_MoveForBattle6::
@@ -46,13 +53,13 @@ GabbyAndTy_EventScript_MoveForBattle6::
return
GabbyAndTy_EventScript_MoveForBattle7::
- call GabbyAndTy_EventScript_ShowAtRoute111_2
+ call GabbyAndTy_EventScript_ShowAtRoute111_3
call GabbyAndTy_EventScript_HideAtRoute120_2
return
GabbyAndTy_EventScript_MoveForBattle8::
call GabbyAndTy_EventScript_ShowAtRoute118_3
- call GabbyAndTy_EventScript_HideAtRoute111_2
+ call GabbyAndTy_EventScript_HideAtRoute111_3
return
GabbyAndTy_EventScript_MoveForBattle9::
@@ -84,12 +91,12 @@ GabbyAndTy_EventScript_ShowAtRoute120_1::
clearflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1
return
-GabbyAndTy_EventScript_HideAtRoute111_3::
- setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3
+GabbyAndTy_EventScript_HideAtRoute111_2::
+ setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2
return
-GabbyAndTy_EventScript_ShowAtRoute111_3::
- clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3
+GabbyAndTy_EventScript_ShowAtRoute111_2::
+ clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2
return
GabbyAndTy_EventScript_HideAtRoute118_2::
@@ -108,12 +115,12 @@ GabbyAndTy_EventScript_ShowAtRoute120_2::
clearflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2
return
-GabbyAndTy_EventScript_HideAtRoute111_2::
- setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2
+GabbyAndTy_EventScript_HideAtRoute111_3::
+ setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3
return
-GabbyAndTy_EventScript_ShowAtRoute111_2::
- clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2
+GabbyAndTy_EventScript_ShowAtRoute111_3::
+ clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3
return
GabbyAndTy_EventScript_HideAtRoute118_3::
diff --git a/data/scripts/lilycove_lady.inc b/data/scripts/lilycove_lady.inc
index 5519de9791..0eb8be19ba 100644
--- a/data/scripts/lilycove_lady.inc
+++ b/data/scripts/lilycove_lady.inc
@@ -1,6 +1,3 @@
-.set LOCALID_LILYCOVE_LADY, 4
-.set LOCALID_LADYS_MON, 5
-
LilycoveCity_PokemonCenter_1F_EventScript_LilycoveLady::
special Script_GetLilycoveLadyId
switch VAR_RESULT
@@ -390,7 +387,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock::
applymovement LOCALID_LILYCOVE_LADY, LilycoveCity_PokemonCenter_1F_Movement_LadyFaceMon
waitmovement 0
delay 60
- applymovement LOCALID_LADYS_MON, LilycoveCity_PokemonCenter_1F_Movement_MonFaceLady
+ applymovement LOCALID_LILYCOVE_LADYS_MON, LilycoveCity_PokemonCenter_1F_Movement_MonFaceLady
waitmovement 0
delay 60
waitse
@@ -403,7 +400,7 @@ LilycoveCity_PokemonCenter_1F_EventScript_FeedPokeblock::
@ VAR_0x8004 here is the return value from GivePokeblockToContestLady
LilycoveCity_PokemonCenter_1F_EventScript_MonEnjoyPokeblock::
- applymovement LOCALID_LADYS_MON, LilycoveCity_PokemonCenter_1F_Movement_MonJump
+ applymovement LOCALID_LILYCOVE_LADYS_MON, LilycoveCity_PokemonCenter_1F_Movement_MonJump
waitmovement 0
delay 60
LilycoveCity_PokemonCenter_1F_EventScript_FinishFeedPokeblock::
diff --git a/data/scripts/mauville_man.inc b/data/scripts/mauville_man.inc
index a336360436..7c16242ef9 100644
--- a/data/scripts/mauville_man.inc
+++ b/data/scripts/mauville_man.inc
@@ -18,7 +18,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_Bard::
end
MauvilleCity_PokemonCenter_1F_EventScript_PlaySong::
- setvar VAR_0x8004, 0
+ setvar VAR_0x8004, FALSE @ Play his current song
special PlayBardSong
delay 60
special HasBardSongBeenChanged
@@ -45,7 +45,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_WriteLyrics::
faceplayer
goto_if_eq VAR_RESULT, 0, MauvilleCity_PokemonCenter_1F_EventScript_DeclineWritingLyrics
msgbox MauvilleCity_PokemonCenter_1F_Text_LetMeSingItForYou, MSGBOX_DEFAULT
- setvar VAR_0x8004, 1
+ setvar VAR_0x8004, TRUE @ Play the new song
special PlayBardSong
delay 60
msgbox MauvilleCity_PokemonCenter_1F_Text_ThatHowYouWantedSongToGo, MSGBOX_YESNO
diff --git a/data/scripts/new_game.inc b/data/scripts/new_game.inc
index e9c8dd8d56..1803199e42 100644
--- a/data/scripts/new_game.inc
+++ b/data/scripts/new_game.inc
@@ -161,10 +161,10 @@ EventScript_ResetAllMapFlags::
setflag FLAG_HIDE_LILYCOVE_FAN_CLUB_INTERVIEWER
setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1
setflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1
- setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3
+ setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2
setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2
setflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2
- setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2
+ setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3
setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3
setflag FLAG_HIDE_SLATEPORT_CITY_CONTEST_REPORTER
setflag FLAG_HIDE_LILYCOVE_CONTEST_HALL_REPORTER
diff --git a/data/scripts/obtain_item.inc b/data/scripts/obtain_item.inc
index e982858e7b..6831a75b6e 100644
--- a/data/scripts/obtain_item.inc
+++ b/data/scripts/obtain_item.inc
@@ -118,8 +118,8 @@ EventScript_PickUpItem::
waitfanfare
waitmessage
bufferitemnameplural STR_VAR_2, VAR_0x8004, VAR_0x8005
- pyramid_inchallenge
- goto_if_eq VAR_RESULT, TRUE, EventScript_PutBattlePyramidItemInBag
+ pyramid_getlocation
+ goto_if_eq VAR_RESULT, PYRAMID_LOCATION_FLOOR, EventScript_PutBattlePyramidItemInBag
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
return
diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc
index caa4e69551..4bcb31aa24 100644
--- a/data/scripts/players_house.inc
+++ b/data/scripts/players_house.inc
@@ -1,8 +1,3 @@
-@ Local IDs are the same for both players houses
-.set LOCALID_MOM, 1
-.set LOCALID_DAD, 5
-.set LOCALID_MOM_2F, 14
-
PlayersHouse_2F_EventScript_BlockStairsUntilClockIsSet::
setvar VAR_LITTLEROOT_INTRO_STATE, 5
return
@@ -16,19 +11,19 @@ PlayersHouse_1F_EventScript_EnterHouseMovingIn::
msgbox PlayersHouse_1F_Text_MoversPokemonGoSetClock, MSGBOX_DEFAULT
closemessage
setvar VAR_LITTLEROOT_INTRO_STATE, 4
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerWalkIn
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerWalkIn
applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
releaseall
end
PlayersHouse_1F_EventScript_MomFacePlayerMovingInMale::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
PlayersHouse_1F_EventScript_MomFacePlayerMovingInFemale::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
@@ -40,7 +35,7 @@ PlayersHouse_1F_EventScript_MomGoSeeRoom::
msgbox PlayersHouse_1F_Text_ArentYouInterestedInRoom, MSGBOX_DEFAULT
closemessage
applymovement VAR_0x8004, Common_Movement_WalkInPlaceFasterUp
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_MovePlayerAwayFromDoor
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_MovePlayerAwayFromDoor
waitmovement 0
releaseall
end
@@ -75,11 +70,11 @@ PlayersHouse_2F_EventScript_WallClock::
end
PlayersHouse_2F_EventScript_MomComesUpstairsMale::
- setvar VAR_0x8008, LOCALID_MOM_2F
+ setvar VAR_0x8008, LOCALID_PLAYERS_HOUSE_2F_MOM
addobject VAR_0x8008
applymovement VAR_0x8008, PlayersHouse_2F_Movement_MomEntersMale
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox PlayersHouse_2F_Text_HowDoYouLikeYourRoom, MSGBOX_DEFAULT
closemessage
@@ -88,11 +83,11 @@ PlayersHouse_2F_EventScript_MomComesUpstairsMale::
return
PlayersHouse_2F_EventScript_MomComesUpstairsFemale::
- setvar VAR_0x8008, LOCALID_MOM_2F
+ setvar VAR_0x8008, LOCALID_PLAYERS_HOUSE_2F_MOM
addobject VAR_0x8008
applymovement VAR_0x8008, PlayersHouse_2F_Movement_MomEntersFemale
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox PlayersHouse_2F_Text_HowDoYouLikeYourRoom, MSGBOX_DEFAULT
closemessage
@@ -153,17 +148,17 @@ PlayersHouse_1F_EventScript_PetalburgGymReportMale::
applymovement VAR_0x8005, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
call PlayersHouse_1F_EventScript_MomNoticeGymBroadcast
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForGymMale
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForGymMale
waitmovement 0
playbgm MUS_ENCOUNTER_INTERVIEWER, FALSE
msgbox PlayersHouse_1F_Text_MaybeDadWillBeOn, MSGBOX_DEFAULT
closemessage
applymovement VAR_0x8005, PlayersHouse_1F_Movement_MomMakeRoomToSeeTVMale
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerMoveToTVMale
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerMoveToTVMale
waitmovement 0
call PlayersHouse_1F_EventScript_WatchGymBroadcast
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
msgbox PlayersHouse_1F_Text_ItsOverWeMissedHim, MSGBOX_DEFAULT
msgbox PlayersHouse_1F_Text_GoIntroduceYourselfNextDoor, MSGBOX_DEFAULT
@@ -178,17 +173,17 @@ PlayersHouse_1F_EventScript_PetalburgGymReportFemale::
applymovement VAR_0x8005, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
call PlayersHouse_1F_EventScript_MomNoticeGymBroadcast
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForGymFemale
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForGymFemale
waitmovement 0
playbgm MUS_ENCOUNTER_INTERVIEWER, FALSE
msgbox PlayersHouse_1F_Text_MaybeDadWillBeOn, MSGBOX_DEFAULT
closemessage
applymovement VAR_0x8005, PlayersHouse_1F_Movement_MomMakeRoomToSeeTVFemale
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerMoveToTVFemale
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerMoveToTVFemale
waitmovement 0
call PlayersHouse_1F_EventScript_WatchGymBroadcast
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
msgbox PlayersHouse_1F_Text_ItsOverWeMissedHim, MSGBOX_DEFAULT
msgbox PlayersHouse_1F_Text_GoIntroduceYourselfNextDoor, MSGBOX_DEFAULT
@@ -210,7 +205,7 @@ PlayersHouse_1F_EventScript_MomNoticeGymBroadcast::
return
PlayersHouse_1F_EventScript_WatchGymBroadcast::
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterUp
waitmovement 0
msgbox PlayersHouse_1F_Text_ReportFromPetalburgGym, MSGBOX_DEFAULT
fadedefaultbgm
@@ -492,14 +487,14 @@ PlayersHouse_1F_EventScript_AirLatiBroadcast::
PlayersHouse_1F_EventScript_SetUpObjectEventVarsMale::
setvar VAR_0x8008, MALE
- setvar VAR_0x8009, LOCALID_DAD
- setvar VAR_0x800A, LOCALID_MOM
+ setvar VAR_0x8009, LOCALID_PLAYERS_HOUSE_1F_DAD
+ setvar VAR_0x800A, LOCALID_PLAYERS_HOUSE_1F_MOM
return
PlayersHouse_1F_EventScript_SetUpObjectEventVarsFemale::
setvar VAR_0x8008, FEMALE
- setvar VAR_0x8009, LOCALID_DAD
- setvar VAR_0x800A, LOCALID_MOM
+ setvar VAR_0x8009, LOCALID_PLAYERS_HOUSE_1F_DAD
+ setvar VAR_0x800A, LOCALID_PLAYERS_HOUSE_1F_MOM
return
PlayersHouse_1F_EventScript_DadApproachPlayerMale::
@@ -527,38 +522,38 @@ PlayersHouse_1F_EventScript_MomApproachDadFemale::
return
PlayersHouse_1F_EventScript_DadExitsMale::
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit
applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit
applymovement VAR_0x8009, PlayersHouse_1F_Movement_DadExitsMale
waitmovement 0
return
PlayersHouse_1F_EventScript_DadExitsFemale::
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit
applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomAndPlayerWatchDadExit
applymovement VAR_0x8009, PlayersHouse_1F_Movement_DadExitsFemale
waitmovement 0
return
PlayersHouse_1F_EventScript_PlayerEnterRoomMale::
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerEnterRoomMale
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerEnterRoomMale
waitmovement 0
return
PlayersHouse_1F_EventScript_PlayerEnterRoomFemale::
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerEnterRoomFemale
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerEnterRoomFemale
waitmovement 0
return
PlayersHouse_1F_EventScript_PlayerApproachTVForLatiMale::
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForLatiMale
waitmovement 0
applymovement VAR_0x800A, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
PlayersHouse_1F_EventScript_PlayerApproachTVForLatiFemale::
- applymovement OBJ_EVENT_ID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale
+ applymovement LOCALID_PLAYER, PlayersHouse_1F_Movement_PlayerApproachTVForLatiFemale
waitmovement 0
applymovement VAR_0x800A, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
@@ -567,14 +562,14 @@ PlayersHouse_1F_EventScript_PlayerApproachTVForLatiFemale::
PlayersHouse_1F_EventScript_MomApproachPlayerMale::
applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerMale
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
PlayersHouse_1F_EventScript_MomApproachPlayerFemale::
applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerFemale
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
@@ -591,14 +586,14 @@ PlayersHouse_1F_EventScript_MomNoticesLatiBroadcastFemale::
PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVMale::
applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerAfterTVMale
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterRight
waitmovement 0
return
PlayersHouse_1F_EventScript_MomApproachPlayerAfterTVFemale::
applymovement VAR_0x800A, PlayersHouse_1F_Movement_MomApproachPlayerAfterTVFemale
waitmovement 0
- applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
+ applymovement LOCALID_PLAYER, Common_Movement_WalkInPlaceFasterLeft
waitmovement 0
return
diff --git a/data/scripts/safari_zone.inc b/data/scripts/safari_zone.inc
index eb6a90abdf..77e795a0eb 100644
--- a/data/scripts/safari_zone.inc
+++ b/data/scripts/safari_zone.inc
@@ -53,6 +53,9 @@ SafariZone_EventScript_ChoosePokeblock::
special OpenPokeblockCaseOnFeeder
waitstate
goto_if_ne VAR_RESULT, 0xFFFF, SafariZone_EventScript_PokeblockPlaced
+#ifdef BUGFIX
+ releaseall @ Only gets called from EventScript_PokeBlockFeeder which uses lockall.
+#endif
end
SafariZone_EventScript_PokeblockPlaced::
diff --git a/data/scripts/secret_base.inc b/data/scripts/secret_base.inc
index 918a9d6301..3387e380ef 100644
--- a/data/scripts/secret_base.inc
+++ b/data/scripts/secret_base.inc
@@ -144,7 +144,7 @@ SecretBase_EventScript_InitSecretBase::
end
SecretBase_EventScript_FirstEntrance::
- applymovement OBJ_EVENT_ID_PLAYER, SecretBase_Movement_EnterBase
+ applymovement LOCALID_PLAYER, SecretBase_Movement_EnterBase
waitmovement 0
setvar VAR_INIT_SECRET_BASE, 1
msgbox SecretBase_Text_WantToMakeYourSecretBaseHere, MSGBOX_YESNO
diff --git a/data/scripts/trainer_hill.inc b/data/scripts/trainer_hill.inc
index 1318f2e29b..e6fcef78a6 100644
--- a/data/scripts/trainer_hill.inc
+++ b/data/scripts/trainer_hill.inc
@@ -60,7 +60,7 @@ TrainerHill_1F_Movement_SetInvisible::
@ TRAINER_PHILLIP is an actual Trainer on the SS Tidal, but is used as a placeholder here
TrainerHill_EventScript_TrainerBattle::
- trainerbattle TRAINER_BATTLE_HILL, TRAINER_PHILLIP, 0, BattleFacility_TrainerBattle_PlaceholderText, BattleFacility_TrainerBattle_PlaceholderText
+ trainerbattle TRAINER_BATTLE_HILL, TRAINER_PHILLIP, LOCALID_NONE, BattleFacility_TrainerBattle_PlaceholderText, BattleFacility_TrainerBattle_PlaceholderText
trainerhill_postbattletext
waitmessage
waitbuttonpress
diff --git a/graphics/battle_terrain/building/anim_map.bin b/graphics/battle_environment/building/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/building/anim_map.bin
rename to graphics/battle_environment/building/anim_map.bin
diff --git a/graphics/battle_terrain/building/anim_tiles.png b/graphics/battle_environment/building/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/building/anim_tiles.png
rename to graphics/battle_environment/building/anim_tiles.png
diff --git a/graphics/battle_terrain/building/map.bin b/graphics/battle_environment/building/map.bin
similarity index 100%
rename from graphics/battle_terrain/building/map.bin
rename to graphics/battle_environment/building/map.bin
diff --git a/graphics/battle_terrain/building/palette.pal b/graphics/battle_environment/building/palette.pal
similarity index 100%
rename from graphics/battle_terrain/building/palette.pal
rename to graphics/battle_environment/building/palette.pal
diff --git a/graphics/battle_terrain/building/palette2.pal b/graphics/battle_environment/building/palette2.pal
similarity index 100%
rename from graphics/battle_terrain/building/palette2.pal
rename to graphics/battle_environment/building/palette2.pal
diff --git a/graphics/battle_terrain/building/palette3.pal b/graphics/battle_environment/building/palette3.pal
similarity index 100%
rename from graphics/battle_terrain/building/palette3.pal
rename to graphics/battle_environment/building/palette3.pal
diff --git a/graphics/battle_terrain/building/tiles.png b/graphics/battle_environment/building/tiles.png
similarity index 100%
rename from graphics/battle_terrain/building/tiles.png
rename to graphics/battle_environment/building/tiles.png
diff --git a/graphics/battle_terrain/cave/anim_map.bin b/graphics/battle_environment/cave/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/cave/anim_map.bin
rename to graphics/battle_environment/cave/anim_map.bin
diff --git a/graphics/battle_terrain/cave/anim_tiles.png b/graphics/battle_environment/cave/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/cave/anim_tiles.png
rename to graphics/battle_environment/cave/anim_tiles.png
diff --git a/graphics/battle_terrain/cave/groudon.pal b/graphics/battle_environment/cave/groudon.pal
similarity index 100%
rename from graphics/battle_terrain/cave/groudon.pal
rename to graphics/battle_environment/cave/groudon.pal
diff --git a/graphics/battle_terrain/cave/map.bin b/graphics/battle_environment/cave/map.bin
similarity index 100%
rename from graphics/battle_terrain/cave/map.bin
rename to graphics/battle_environment/cave/map.bin
diff --git a/graphics/battle_terrain/cave/palette.pal b/graphics/battle_environment/cave/palette.pal
similarity index 100%
rename from graphics/battle_terrain/cave/palette.pal
rename to graphics/battle_environment/cave/palette.pal
diff --git a/graphics/battle_terrain/cave/tiles.png b/graphics/battle_environment/cave/tiles.png
similarity index 100%
rename from graphics/battle_terrain/cave/tiles.png
rename to graphics/battle_environment/cave/tiles.png
diff --git a/graphics/battle_terrain/long_grass/anim_map.bin b/graphics/battle_environment/long_grass/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/long_grass/anim_map.bin
rename to graphics/battle_environment/long_grass/anim_map.bin
diff --git a/graphics/battle_terrain/long_grass/anim_tiles.png b/graphics/battle_environment/long_grass/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/long_grass/anim_tiles.png
rename to graphics/battle_environment/long_grass/anim_tiles.png
diff --git a/graphics/battle_terrain/long_grass/map.bin b/graphics/battle_environment/long_grass/map.bin
similarity index 100%
rename from graphics/battle_terrain/long_grass/map.bin
rename to graphics/battle_environment/long_grass/map.bin
diff --git a/graphics/battle_terrain/long_grass/palette.pal b/graphics/battle_environment/long_grass/palette.pal
similarity index 100%
rename from graphics/battle_terrain/long_grass/palette.pal
rename to graphics/battle_environment/long_grass/palette.pal
diff --git a/graphics/battle_terrain/long_grass/tiles.png b/graphics/battle_environment/long_grass/tiles.png
similarity index 100%
rename from graphics/battle_terrain/long_grass/tiles.png
rename to graphics/battle_environment/long_grass/tiles.png
diff --git a/graphics/battle_terrain/plain/palette.pal b/graphics/battle_environment/plain/palette.pal
similarity index 100%
rename from graphics/battle_terrain/plain/palette.pal
rename to graphics/battle_environment/plain/palette.pal
diff --git a/graphics/battle_terrain/pond_water/anim_map.bin b/graphics/battle_environment/pond_water/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/pond_water/anim_map.bin
rename to graphics/battle_environment/pond_water/anim_map.bin
diff --git a/graphics/battle_terrain/pond_water/anim_tiles.png b/graphics/battle_environment/pond_water/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/pond_water/anim_tiles.png
rename to graphics/battle_environment/pond_water/anim_tiles.png
diff --git a/graphics/battle_terrain/pond_water/map.bin b/graphics/battle_environment/pond_water/map.bin
similarity index 100%
rename from graphics/battle_terrain/pond_water/map.bin
rename to graphics/battle_environment/pond_water/map.bin
diff --git a/graphics/battle_terrain/pond_water/palette.pal b/graphics/battle_environment/pond_water/palette.pal
similarity index 100%
rename from graphics/battle_terrain/pond_water/palette.pal
rename to graphics/battle_environment/pond_water/palette.pal
diff --git a/graphics/battle_terrain/pond_water/tiles.png b/graphics/battle_environment/pond_water/tiles.png
similarity index 100%
rename from graphics/battle_terrain/pond_water/tiles.png
rename to graphics/battle_environment/pond_water/tiles.png
diff --git a/graphics/battle_terrain/rock/anim_map.bin b/graphics/battle_environment/rock/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/rock/anim_map.bin
rename to graphics/battle_environment/rock/anim_map.bin
diff --git a/graphics/battle_terrain/rock/anim_tiles.png b/graphics/battle_environment/rock/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/rock/anim_tiles.png
rename to graphics/battle_environment/rock/anim_tiles.png
diff --git a/graphics/battle_terrain/rock/map.bin b/graphics/battle_environment/rock/map.bin
similarity index 100%
rename from graphics/battle_terrain/rock/map.bin
rename to graphics/battle_environment/rock/map.bin
diff --git a/graphics/battle_terrain/rock/palette.pal b/graphics/battle_environment/rock/palette.pal
similarity index 100%
rename from graphics/battle_terrain/rock/palette.pal
rename to graphics/battle_environment/rock/palette.pal
diff --git a/graphics/battle_terrain/rock/tiles.png b/graphics/battle_environment/rock/tiles.png
similarity index 100%
rename from graphics/battle_terrain/rock/tiles.png
rename to graphics/battle_environment/rock/tiles.png
diff --git a/graphics/battle_terrain/sand/anim_map.bin b/graphics/battle_environment/sand/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/sand/anim_map.bin
rename to graphics/battle_environment/sand/anim_map.bin
diff --git a/graphics/battle_terrain/sand/anim_tiles.png b/graphics/battle_environment/sand/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/sand/anim_tiles.png
rename to graphics/battle_environment/sand/anim_tiles.png
diff --git a/graphics/battle_terrain/sand/map.bin b/graphics/battle_environment/sand/map.bin
similarity index 100%
rename from graphics/battle_terrain/sand/map.bin
rename to graphics/battle_environment/sand/map.bin
diff --git a/graphics/battle_terrain/sand/palette.pal b/graphics/battle_environment/sand/palette.pal
similarity index 100%
rename from graphics/battle_terrain/sand/palette.pal
rename to graphics/battle_environment/sand/palette.pal
diff --git a/graphics/battle_terrain/sand/tiles.png b/graphics/battle_environment/sand/tiles.png
similarity index 100%
rename from graphics/battle_terrain/sand/tiles.png
rename to graphics/battle_environment/sand/tiles.png
diff --git a/graphics/battle_terrain/sky/anim_map.bin b/graphics/battle_environment/sky/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/sky/anim_map.bin
rename to graphics/battle_environment/sky/anim_map.bin
diff --git a/graphics/battle_terrain/sky/anim_tiles.png b/graphics/battle_environment/sky/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/sky/anim_tiles.png
rename to graphics/battle_environment/sky/anim_tiles.png
diff --git a/graphics/battle_terrain/sky/map.bin b/graphics/battle_environment/sky/map.bin
similarity index 100%
rename from graphics/battle_terrain/sky/map.bin
rename to graphics/battle_environment/sky/map.bin
diff --git a/graphics/battle_terrain/sky/palette.pal b/graphics/battle_environment/sky/palette.pal
similarity index 100%
rename from graphics/battle_terrain/sky/palette.pal
rename to graphics/battle_environment/sky/palette.pal
diff --git a/graphics/battle_terrain/sky/tiles.png b/graphics/battle_environment/sky/tiles.png
similarity index 100%
rename from graphics/battle_terrain/sky/tiles.png
rename to graphics/battle_environment/sky/tiles.png
diff --git a/graphics/battle_terrain/stadium/battle_frontier.pal b/graphics/battle_environment/stadium/battle_frontier.pal
similarity index 100%
rename from graphics/battle_terrain/stadium/battle_frontier.pal
rename to graphics/battle_environment/stadium/battle_frontier.pal
diff --git a/graphics/battle_terrain/stadium/map.bin b/graphics/battle_environment/stadium/map.bin
similarity index 100%
rename from graphics/battle_terrain/stadium/map.bin
rename to graphics/battle_environment/stadium/map.bin
diff --git a/graphics/battle_terrain/stadium/palette1.pal b/graphics/battle_environment/stadium/palette1.pal
similarity index 100%
rename from graphics/battle_terrain/stadium/palette1.pal
rename to graphics/battle_environment/stadium/palette1.pal
diff --git a/graphics/battle_terrain/stadium/palette2.pal b/graphics/battle_environment/stadium/palette2.pal
similarity index 100%
rename from graphics/battle_terrain/stadium/palette2.pal
rename to graphics/battle_environment/stadium/palette2.pal
diff --git a/graphics/battle_terrain/stadium/palette3.pal b/graphics/battle_environment/stadium/palette3.pal
similarity index 100%
rename from graphics/battle_terrain/stadium/palette3.pal
rename to graphics/battle_environment/stadium/palette3.pal
diff --git a/graphics/battle_terrain/stadium/palette4.pal b/graphics/battle_environment/stadium/palette4.pal
similarity index 100%
rename from graphics/battle_terrain/stadium/palette4.pal
rename to graphics/battle_environment/stadium/palette4.pal
diff --git a/graphics/battle_terrain/stadium/palette5.pal b/graphics/battle_environment/stadium/palette5.pal
similarity index 100%
rename from graphics/battle_terrain/stadium/palette5.pal
rename to graphics/battle_environment/stadium/palette5.pal
diff --git a/graphics/battle_terrain/stadium/palette6.pal b/graphics/battle_environment/stadium/palette6.pal
similarity index 100%
rename from graphics/battle_terrain/stadium/palette6.pal
rename to graphics/battle_environment/stadium/palette6.pal
diff --git a/graphics/battle_terrain/stadium/palette7.pal b/graphics/battle_environment/stadium/palette7.pal
similarity index 100%
rename from graphics/battle_terrain/stadium/palette7.pal
rename to graphics/battle_environment/stadium/palette7.pal
diff --git a/graphics/battle_terrain/stadium/tiles.png b/graphics/battle_environment/stadium/tiles.png
similarity index 100%
rename from graphics/battle_terrain/stadium/tiles.png
rename to graphics/battle_environment/stadium/tiles.png
diff --git a/graphics/battle_terrain/tall_grass/anim_map.bin b/graphics/battle_environment/tall_grass/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/tall_grass/anim_map.bin
rename to graphics/battle_environment/tall_grass/anim_map.bin
diff --git a/graphics/battle_terrain/tall_grass/anim_tiles.png b/graphics/battle_environment/tall_grass/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/tall_grass/anim_tiles.png
rename to graphics/battle_environment/tall_grass/anim_tiles.png
diff --git a/graphics/battle_terrain/tall_grass/map.bin b/graphics/battle_environment/tall_grass/map.bin
similarity index 100%
rename from graphics/battle_terrain/tall_grass/map.bin
rename to graphics/battle_environment/tall_grass/map.bin
diff --git a/graphics/battle_terrain/tall_grass/palette.pal b/graphics/battle_environment/tall_grass/palette.pal
similarity index 100%
rename from graphics/battle_terrain/tall_grass/palette.pal
rename to graphics/battle_environment/tall_grass/palette.pal
diff --git a/graphics/battle_terrain/tall_grass/tiles.png b/graphics/battle_environment/tall_grass/tiles.png
similarity index 100%
rename from graphics/battle_terrain/tall_grass/tiles.png
rename to graphics/battle_environment/tall_grass/tiles.png
diff --git a/graphics/battle_terrain/underwater/anim_map.bin b/graphics/battle_environment/underwater/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/underwater/anim_map.bin
rename to graphics/battle_environment/underwater/anim_map.bin
diff --git a/graphics/battle_terrain/underwater/anim_tiles.png b/graphics/battle_environment/underwater/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/underwater/anim_tiles.png
rename to graphics/battle_environment/underwater/anim_tiles.png
diff --git a/graphics/battle_terrain/underwater/map.bin b/graphics/battle_environment/underwater/map.bin
similarity index 100%
rename from graphics/battle_terrain/underwater/map.bin
rename to graphics/battle_environment/underwater/map.bin
diff --git a/graphics/battle_terrain/underwater/palette.pal b/graphics/battle_environment/underwater/palette.pal
similarity index 100%
rename from graphics/battle_terrain/underwater/palette.pal
rename to graphics/battle_environment/underwater/palette.pal
diff --git a/graphics/battle_terrain/underwater/tiles.png b/graphics/battle_environment/underwater/tiles.png
similarity index 100%
rename from graphics/battle_terrain/underwater/tiles.png
rename to graphics/battle_environment/underwater/tiles.png
diff --git a/graphics/battle_terrain/water/anim_map.bin b/graphics/battle_environment/water/anim_map.bin
similarity index 100%
rename from graphics/battle_terrain/water/anim_map.bin
rename to graphics/battle_environment/water/anim_map.bin
diff --git a/graphics/battle_terrain/water/anim_tiles.png b/graphics/battle_environment/water/anim_tiles.png
similarity index 100%
rename from graphics/battle_terrain/water/anim_tiles.png
rename to graphics/battle_environment/water/anim_tiles.png
diff --git a/graphics/battle_terrain/water/kyogre.pal b/graphics/battle_environment/water/kyogre.pal
similarity index 100%
rename from graphics/battle_terrain/water/kyogre.pal
rename to graphics/battle_environment/water/kyogre.pal
diff --git a/graphics/battle_terrain/water/map.bin b/graphics/battle_environment/water/map.bin
similarity index 100%
rename from graphics/battle_terrain/water/map.bin
rename to graphics/battle_environment/water/map.bin
diff --git a/graphics/battle_terrain/water/palette.pal b/graphics/battle_environment/water/palette.pal
similarity index 100%
rename from graphics/battle_terrain/water/palette.pal
rename to graphics/battle_environment/water/palette.pal
diff --git a/graphics/battle_terrain/water/tiles.png b/graphics/battle_environment/water/tiles.png
similarity index 100%
rename from graphics/battle_terrain/water/tiles.png
rename to graphics/battle_environment/water/tiles.png
diff --git a/graphics/birch_speech/bg2.pal b/graphics/birch_speech/bg2.pal
index 3457f9b455..33f619ee44 100644
--- a/graphics/birch_speech/bg2.pal
+++ b/graphics/birch_speech/bg2.pal
@@ -1,6 +1,6 @@
JASC-PAL
0100
-8
+16
255 255 164
255 255 106
222 222 90
@@ -9,3 +9,11 @@ JASC-PAL
123 123 49
90 90 32
57 57 16
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
+0 0 0
diff --git a/graphics/cave_transition/enter.pal b/graphics/cave_transition/enter.pal
index fea15a1765..ec7a2b50e7 100644
--- a/graphics/cave_transition/enter.pal
+++ b/graphics/cave_transition/enter.pal
@@ -1,6 +1,6 @@
JASC-PAL
0100
-8
+16
148 197 172
16 16 16
32 32 32
@@ -9,3 +9,11 @@ JASC-PAL
82 82 82
98 98 98
115 115 115
+131 131 131
+148 148 148
+164 164 164
+180 180 180
+197 197 197
+213 213 213
+230 230 230
+255 255 255
diff --git a/graphics/cave_transition/exit.pal b/graphics/cave_transition/exit.pal
deleted file mode 100644
index 09eb37624a..0000000000
--- a/graphics/cave_transition/exit.pal
+++ /dev/null
@@ -1,11 +0,0 @@
-JASC-PAL
-0100
-8
-131 131 131
-148 148 148
-164 164 164
-180 180 180
-197 197 197
-213 213 213
-230 230 230
-255 255 255
diff --git a/graphics/fonts/japanese_frlg_female_font.png b/graphics/fonts/japanese_frlg_female.png
similarity index 100%
rename from graphics/fonts/japanese_frlg_female_font.png
rename to graphics/fonts/japanese_frlg_female.png
diff --git a/graphics/fonts/japanese_frlg_male_font.png b/graphics/fonts/japanese_frlg_male.png
similarity index 100%
rename from graphics/fonts/japanese_frlg_male_font.png
rename to graphics/fonts/japanese_frlg_male.png
diff --git a/graphics/misc/mirage_tower.png b/graphics/misc/mirage_tower.png
index c851953d21..36890686f1 100644
Binary files a/graphics/misc/mirage_tower.png and b/graphics/misc/mirage_tower.png differ
diff --git a/graphics/pokedex/bg_hoenn.pal b/graphics/pokedex/bg_hoenn.pal
index 569c7821a9..01bd8a3a3d 100644
--- a/graphics/pokedex/bg_hoenn.pal
+++ b/graphics/pokedex/bg_hoenn.pal
@@ -1,6 +1,6 @@
JASC-PAL
0100
-48
+96
123 131 0
255 255 255
222 222 222
@@ -49,3 +49,51 @@ JASC-PAL
49 139 255
189 156 90
0 0 0
+123 131 0
+255 255 255
+255 238 0
+255 189 0
+255 115 0
+98 98 115
+41 57 65
+41 57 106
+0 0 41
+255 255 255
+238 246 57
+255 0 189
+49 213 74
+24 131 32
+189 156 90
+0 0 0
+123 131 0
+255 255 255
+197 32 32
+189 189 189
+164 164 164
+98 98 115
+41 57 65
+41 57 106
+0 0 41
+255 255 255
+238 246 57
+189 0 0
+74 148 180
+8 90 131
+189 156 90
+0 0 0
+123 131 0
+255 255 255
+197 32 32
+189 189 189
+164 164 164
+98 98 115
+41 57 65
+41 57 106
+0 0 41
+255 255 255
+238 246 57
+255 0 189
+180 205 246
+49 139 255
+189 156 90
+0 0 0
diff --git a/graphics/pokedex/caught_screen.pal b/graphics/pokedex/caught_screen.pal
deleted file mode 100644
index 26da98a84c..0000000000
--- a/graphics/pokedex/caught_screen.pal
+++ /dev/null
@@ -1,51 +0,0 @@
-JASC-PAL
-0100
-48
-123 131 0
-255 255 255
-255 238 0
-255 189 0
-255 115 0
-98 98 115
-41 57 65
-41 57 106
-0 0 41
-255 255 255
-238 246 57
-255 0 189
-49 213 74
-24 131 32
-189 156 90
-0 0 0
-123 131 0
-255 255 255
-197 32 32
-189 189 189
-164 164 164
-98 98 115
-41 57 65
-41 57 106
-0 0 41
-255 255 255
-238 246 57
-189 0 0
-74 148 180
-8 90 131
-189 156 90
-0 0 0
-123 131 0
-255 255 255
-197 32 32
-189 189 189
-164 164 164
-98 98 115
-41 57 65
-41 57 106
-0 0 41
-255 255 255
-238 246 57
-255 0 189
-180 205 246
-49 139 255
-189 156 90
-0 0 0
diff --git a/graphics/spinda_spots/spot_0.png b/graphics/pokemon/spinda/spots/spot_0.png
similarity index 100%
rename from graphics/spinda_spots/spot_0.png
rename to graphics/pokemon/spinda/spots/spot_0.png
diff --git a/graphics/spinda_spots/spot_1.png b/graphics/pokemon/spinda/spots/spot_1.png
similarity index 100%
rename from graphics/spinda_spots/spot_1.png
rename to graphics/pokemon/spinda/spots/spot_1.png
diff --git a/graphics/spinda_spots/spot_2.png b/graphics/pokemon/spinda/spots/spot_2.png
similarity index 100%
rename from graphics/spinda_spots/spot_2.png
rename to graphics/pokemon/spinda/spots/spot_2.png
diff --git a/graphics/spinda_spots/spot_3.png b/graphics/pokemon/spinda/spots/spot_3.png
similarity index 100%
rename from graphics/spinda_spots/spot_3.png
rename to graphics/pokemon/spinda/spots/spot_3.png
diff --git a/graphics/title_screen/emerald_version.png b/graphics/title_screen/emerald_version.png
index 2e8b32da98..9ee2992607 100644
Binary files a/graphics/title_screen/emerald_version.png and b/graphics/title_screen/emerald_version.png differ
diff --git a/graphics/unused/.gitignore b/graphics/unused/.gitignore
new file mode 100644
index 0000000000..b929a6cae7
--- /dev/null
+++ b/graphics/unused/.gitignore
@@ -0,0 +1 @@
+redyellowgreen_frame.bin
\ No newline at end of file
diff --git a/graphics/unused/redyellowgreen_frame.bin b/graphics/unused/redyellowgreen_frame.bin
deleted file mode 100644
index 6852998fb8..0000000000
Binary files a/graphics/unused/redyellowgreen_frame.bin and /dev/null differ
diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk
index 090620ebe8..05dfe5a2d5 100644
--- a/graphics_file_rules.mk
+++ b/graphics_file_rules.mk
@@ -21,7 +21,8 @@ JPCONTESTGFXDIR := graphics/contest/japanese
POKEDEXGFXDIR := graphics/pokedex
STARTERGFXDIR := graphics/starter_choose
NAMINGGFXDIR := graphics/naming_screen
-SPINDAGFXDIR := graphics/spinda_spots
+SPINDAGFXDIR := graphics/pokemon/spinda/spots
+TITLESCREENGFXDIR := graphics/title_screen
types := normal fight flying poison ground rock bug ghost steel mystery fire water grass electric psychic ice dragon dark
contest_types := cool beauty cute smart tough
@@ -290,17 +291,21 @@ $(FONTGFXDIR)/short.fwjpnfont: $(FONTGFXDIR)/japanese_short.png
$(FONTGFXDIR)/braille.fwjpnfont: $(FONTGFXDIR)/braille.png
$(GFX) $< $@
-$(FONTGFXDIR)/frlg_male.fwjpnfont: $(FONTGFXDIR)/japanese_frlg_male_font.png
+$(FONTGFXDIR)/frlg_male.fwjpnfont: $(FONTGFXDIR)/japanese_frlg_male.png
$(GFX) $< $@
-$(FONTGFXDIR)/frlg_female.fwjpnfont: $(FONTGFXDIR)/japanese_frlg_female_font.png
+$(FONTGFXDIR)/frlg_female.fwjpnfont: $(FONTGFXDIR)/japanese_frlg_female.png
$(GFX) $< $@
### Miscellaneous ###
-graphics/title_screen/pokemon_logo.gbapal: %.gbapal: %.pal
+
+$(TITLESCREENGFXDIR)/pokemon_logo.gbapal: %.gbapal: %.pal
$(GFX) $< $@ -num_colors 224
+$(TITLESCREENGFXDIR)/emerald_version.8bpp: %.8bpp: %.png
+ $(GFX) $< $@ -mwidth 8 -mheight 4
+
graphics/pokemon_jump/bg.4bpp: %.4bpp: %.png
$(GFX) $< $@ -num_tiles 63 -Wnum_tiles
@@ -310,6 +315,9 @@ graphics/pokenav/region_map/map.8bpp: %.8bpp: %.png
$(MISCGFXDIR)/japanese_hof.4bpp: %.4bpp: %.png
$(GFX) $< $@ -num_tiles 29 -Wnum_tiles
+$(MISCGFXDIR)/mirage_tower.4bpp: %.4bpp: %.png
+ $(GFX) $< $@ -num_tiles 73 -Wnum_tiles
+
$(BATINTGFXDIR)/textbox.gbapal: $(BATINTGFXDIR)/textbox_0.gbapal \
$(BATINTGFXDIR)/textbox_1.gbapal
@cat $^ >$@
diff --git a/include/AgbRfu_LinkManager.h b/include/AgbRfu_LinkManager.h
index 3b38b85fc9..f8f3ca72ae 100644
--- a/include/AgbRfu_LinkManager.h
+++ b/include/AgbRfu_LinkManager.h
@@ -189,9 +189,9 @@ extern struct linkManagerTag lman;
u32 rfu_LMAN_REQBN_softReset_and_checkID(void);
void rfu_LMAN_requestChangeAgbClockMaster(void);
-void rfu_LMAN_initializeRFU(INIT_PARAM *init_params);
+void rfu_LMAN_initializeRFU(INIT_PARAM *init_parameters);
u8 rfu_LMAN_establishConnection(u8 parent_child, u16 connect_period, u16 name_accept_period, u16 *acceptable_serialNo_list);
-void rfu_LMAN_stopManager(bool8 forced_stop_and_RFU_reset_flag);
+void rfu_LMAN_stopManager(u8 forced_stop_and_RFU_reset_flag);
void rfu_LMAN_setMSCCallback(void (*MSC_callback_p)(u16));
void rfu_LMAN_REQ_sendData(bool8 clockChangeFlag);
void rfu_LMAN_powerDownRFU(void);
diff --git a/include/bard_music.h b/include/bard_music.h
index 2942fa8e47..6dcf966f67 100644
--- a/include/bard_music.h
+++ b/include/bard_music.h
@@ -1,39 +1,49 @@
#ifndef GUARD_BARD_MUSIC_H
#define GUARD_BARD_MUSIC_H
-struct BardSound
+// The maximum number of BardSoundTemplates/BardSounds there can be for each easy chat word.
+#define MAX_BARD_SOUNDS_PER_WORD 6
+
+// The number of pitch tables there are for each pitch table size (see sPitchTables).
+#define NUM_BARD_PITCH_TABLES_PER_SIZE 5
+
+// This struct describes which phoneme song to play for the sound, and whether to
+// make any adjustments to its length or volume. Very few sounds make any adjustments.
+struct BardSoundTemplate
{
- /*0x00*/ u8 songLengthId;
- /*0x01*/ s8 songLengthOffset;
- /*0x02*/ u16 unused;
- /*0x04*/ s16 volume;
- /*0x06*/ u16 unused2;
+ u8 songId;
+ s8 lengthAdjustment;
+ u16 unused; // Only set on EC_WORD_WAAAH, and never read.
+ s16 volume;
};
-struct BardPhoneme
+// This is the length and pitch to play the phoneme song at.
+// These will be calculated in 'CalcWordSounds'.
+struct BardSound
{
- /*0x00*/ u16 length;
- /*0x02*/ u16 pitch;
+ u16 length;
+ u16 pitch;
};
struct BardSong
{
- /*0x00*/ u8 currWord;
- /*0x01*/ u8 currPhoneme;
- /*0x02*/ u8 phonemeTimer;
- /*0x03*/ u8 state;
- /*0x04*/ s16 length;
- /*0x06*/ u16 volume;
- /*0x08*/ s16 pitch;
- /*0x0A*/ s16 voiceInflection;
- /*0x0C*/ u16 lyrics[6];
- /*0x18*/ struct BardPhoneme phonemes[6];
- /*0x30*/ const struct BardSound *sound;
+ u8 lyricsIndex;
+ u8 soundIndex;
+ u8 timer;
+ u8 state;
+ s16 length; // Length of the sound for the word currently being sung (i.e. the sum of 'length' in all the current word's phonemes).
+ u16 volume;
+ s16 pitch;
+ s16 voiceInflection;
+ u16 lyrics[NUM_BARD_SONG_WORDS];
+ struct BardSound sounds[MAX_BARD_SOUNDS_PER_WORD];
+ const struct BardSoundTemplate *soundTemplates;
};
extern const u16 gNumBardWords_Species;
extern const u16 gNumBardWords_Moves;
-const struct BardSound *GetWordSounds(u16 word);
-void GetWordPhonemes(struct BardSong *song, u16 word);
+
+const struct BardSoundTemplate *GetWordSoundTemplates(u16 easyChatWord);
+void CalcWordSounds(struct BardSong *song, u16 pitchTableIndex);
#endif //GUARD_BARD_MUSIC_H
diff --git a/include/battle.h b/include/battle.h
index 68beaf219f..855f085de0 100644
--- a/include/battle.h
+++ b/include/battle.h
@@ -218,11 +218,11 @@ struct StatsArray
struct BattleResources
{
- struct SecretBase* secretBase;
+ struct SecretBase *secretBase;
struct ResourceFlags *flags;
- struct BattleScriptsStack* battleScriptsStack;
- struct BattleCallbacksStack* battleCallbackStack;
- struct StatsArray* beforeLvlUp;
+ struct BattleScriptsStack *battleScriptsStack;
+ struct BattleCallbacksStack *battleCallbackStack;
+ struct StatsArray *beforeLvlUp;
struct AI_ThinkingStruct *ai;
struct BattleHistory *battleHistory;
struct BattleScriptsStack *AI_ScriptsStack;
@@ -420,7 +420,7 @@ struct BattleStruct
u8 arenaTurnCounter;
u8 turnSideTracker;
u8 unused_6[3];
- u8 givenExpMons; // Bits for enemy party's pokemon that gave exp to player's party.
+ u8 givenExpMons; // Bits for enemy party's Pokémon that gave exp to player's party.
u8 lastTakenMoveFrom[MAX_BATTLERS_COUNT * MAX_BATTLERS_COUNT * 2]; // a 3-D array [target][attacker][byte]
u16 castformPalette[NUM_CASTFORM_FORMS][16];
union {
@@ -440,7 +440,7 @@ struct BattleStruct
u16 arenaStartHp[2];
u8 arenaLostPlayerMons; // Bits for party member, lost as in referee's decision, not by fainting.
u8 arenaLostOpponentMons;
- u8 alreadyStatusedMoveAttempt; // As bits for battlers; For example when using Thunder Wave on an already paralyzed pokemon.
+ u8 alreadyStatusedMoveAttempt; // As bits for battlers; For example when using Thunder Wave on an already paralyzed Pokémon.
};
// The palaceFlags member of struct BattleStruct contains 1 flag per move to indicate which moves the AI should consider,
@@ -460,26 +460,26 @@ STATIC_ASSERT(sizeof(((struct BattleStruct *)0)->palaceFlags) * 8 >= MAX_BATTLER
typeArg = gBattleMoves[move].type; \
}
-#define IS_TYPE_PHYSICAL(moveType)(moveType < TYPE_MYSTERY)
-#define IS_TYPE_SPECIAL(moveType)(moveType > TYPE_MYSTERY)
+#define IS_TYPE_PHYSICAL(moveType) (moveType < TYPE_MYSTERY)
+#define IS_TYPE_SPECIAL(moveType) (moveType > TYPE_MYSTERY)
#define TARGET_TURN_DAMAGED ((gSpecialStatuses[gBattlerTarget].physicalDmg != 0 || gSpecialStatuses[gBattlerTarget].specialDmg != 0))
-#define IS_BATTLER_OF_TYPE(battlerId, type)((gBattleMons[battlerId].type1 == type || gBattleMons[battlerId].type2 == type))
-#define SET_BATTLER_TYPE(battlerId, type) \
+#define IS_BATTLER_OF_TYPE(battler, type) ((gBattleMons[battler].types[0] == type || gBattleMons[battler].types[1] == type))
+#define SET_BATTLER_TYPE(battler, type) \
{ \
- gBattleMons[battlerId].type1 = type; \
- gBattleMons[battlerId].type2 = type; \
+ gBattleMons[battler].types[0] = type; \
+ gBattleMons[battler].types[1] = type; \
}
-#define GET_STAT_BUFF_ID(n)((n & 0xF)) // first four bits 0x1, 0x2, 0x4, 0x8
-#define GET_STAT_BUFF_VALUE2(n)((n & 0xF0))
-#define GET_STAT_BUFF_VALUE(n)(((n >> 4) & 7)) // 0x10, 0x20, 0x40
+#define GET_STAT_BUFF_ID(n) ((n & 0xF)) // first four bits 0x1, 0x2, 0x4, 0x8
+#define GET_STAT_BUFF_VALUE2(n) ((n & 0xF0))
+#define GET_STAT_BUFF_VALUE(n) (((n >> 4) & 7)) // 0x10, 0x20, 0x40
#define STAT_BUFF_NEGATIVE 0x80 // 0x80, the sign bit
-#define SET_STAT_BUFF_VALUE(n)((((n) << 4) & 0xF0))
+#define SET_STAT_BUFF_VALUE(n) ((((n) << 4) & 0xF0))
-#define SET_STATCHANGER(statId, stage, goesDown)(gBattleScripting.statChanger = (statId) + (stage << 4) + (goesDown << 7))
+#define SET_STATCHANGER(statId, stage, goesDown) (gBattleScripting.statChanger = (statId) + (stage << 4) + (goesDown << 7))
// NOTE: The members of this struct have hard-coded offsets
// in include/constants/battle_script_commands.h
@@ -595,7 +595,7 @@ struct BattleSpriteData
struct MonSpritesGfx
{
- void *firstDecompressed; // ptr to the decompressed sprite of the first pokemon
+ void *firstDecompressed; // ptr to the decompressed sprite of the first Pokémon
union {
void *ptr[MAX_BATTLERS_COUNT];
u8 *byte[MAX_BATTLERS_COUNT];
@@ -626,7 +626,7 @@ extern u8 gBattleTextBuff1[TEXT_BUFF_ARRAY_COUNT];
extern u8 gBattleTextBuff2[TEXT_BUFF_ARRAY_COUNT];
extern u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT];
extern u32 gBattleTypeFlags;
-extern u8 gBattleTerrain;
+extern u8 gBattleEnvironment;
extern u32 gUnusedFirstBattleVar1;
extern u8 *gBattleAnimBgTileBuffer;
extern u8 *gBattleAnimBgTilemapBuffer;
diff --git a/include/battle_ai_script_commands.h b/include/battle_ai_script_commands.h
index d23ad048a5..6415b34995 100644
--- a/include/battle_ai_script_commands.h
+++ b/include/battle_ai_script_commands.h
@@ -9,10 +9,10 @@
void BattleAI_HandleItemUseBeforeAISetup(u8 defaultScoreMoves);
void BattleAI_SetupAIData(u8 defaultScoreMoves);
u8 BattleAI_ChooseMoveOrAction(void);
-void ClearBattlerMoveHistory(u8 battlerId);
-void RecordAbilityBattle(u8 battlerId, u8 abilityId);
-void ClearBattlerAbilityHistory(u8 battlerId);
-void RecordItemEffectBattle(u8 battlerId, u8 itemEffect);
-void ClearBattlerItemEffectHistory(u8 battlerId);
+void ClearBattlerMoveHistory(u8 battler);
+void RecordAbilityBattle(u8 battler, u8 abilityId);
+void ClearBattlerAbilityHistory(u8 battler);
+void RecordItemEffectBattle(u8 battler, u8 itemEffect);
+void ClearBattlerItemEffectHistory(u8 battler);
#endif // GUARD_BATTLE_AI_SCRIPT_COMMANDS_H
diff --git a/include/battle_anim.h b/include/battle_anim.h
index 455bf5f4cd..a9f27b0b38 100644
--- a/include/battle_anim.h
+++ b/include/battle_anim.h
@@ -57,20 +57,20 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo
void DestroyAnimSprite(struct Sprite *sprite);
void DestroyAnimVisualTask(u8 taskId);
void DestroyAnimSoundTask(u8 taskId);
-bool8 IsBattlerSpriteVisible(u8 battlerId);
-void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible);
+bool8 IsBattlerSpriteVisible(u8 battler);
+void MoveBattlerSpriteToBG(u8 battler, bool8 toBG_2, bool8 setSpriteInvisible);
bool8 IsContest(void);
s8 BattleAnimAdjustPanning(s8 pan);
s8 BattleAnimAdjustPanning2(s8 pan);
s16 KeepPanInRange(s16 panArg, int oldPan);
s16 CalculatePanIncrement(s16 sourcePan, s16 targetPan, s16 incrementPan);
void RelocateBattleBgPal(u16 paletteNum, u16 *dest, u32 offset, bool8 largeScreen);
-void ResetBattleAnimBg(bool8);
+void ResetBattleAnimBg(bool8 toBG2);
// battle_intro.c
void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value);
void DrawBattlerOnBg(int bgId, u8 x, u8 y, u8 battlerPosition, u8 paletteId, u8 *tiles, u16 *tilemap, u16 tilesOffset);
-void HandleIntroSlide(u8 terrainId);
+void HandleIntroSlide(u8 environment);
int GetAnimBgAttribute(u8 bgId, u8 attributeId);
// battle_anim_mons.c
@@ -80,7 +80,7 @@ void AnimTranslateLinearAndFlicker_Flipped(struct Sprite *sprite);
void AnimWeatherBallUp(struct Sprite *sprite);
void AnimWeatherBallDown(struct Sprite *sprite);
void AnimSpinningSparkle(struct Sprite *sprite);
-void SetAverageBattlerPositions(u8 battlerId, bool8 respectMonPicOffsets, s16 *x, s16 *y);
+void SetAverageBattlerPositions(u8 battler, bool8 respectMonPicOffsets, s16 *x, s16 *y);
void DestroySpriteAndMatrix(struct Sprite *sprite);
void TranslateSpriteLinearFixedPoint(struct Sprite *sprite);
void InitSpritePosToAnimAttacker(struct Sprite *sprite, bool8 respectMonPicOffsets);
@@ -89,7 +89,7 @@ void StartAnimLinearTranslation(struct Sprite *sprite);
void InitAnimArcTranslation(struct Sprite *sprite);
bool8 AnimTranslateLinear(struct Sprite *sprite);
void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite);
-u8 GetBattlerSpriteCoord2(u8 battlerId, u8 attributeId);
+u8 GetBattlerSpriteCoord2(u8 battler, u8 coordType);
void InitAnimLinearTranslationWithSpeed(struct Sprite *sprite);
u16 ArcTan2Neg(s16 x, s16 y);
void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 xScale, s16 yScale, u16 rotation);
@@ -98,19 +98,19 @@ void TranslateSpriteLinearAndFlicker(struct Sprite *sprite);
void SetSpriteCoordsToAnimAttackerCoords(struct Sprite *sprite);
void RunStoredCallbackWhenAnimEnds(struct Sprite *sprite);
void SetAnimSpriteInitialXOffset(struct Sprite *sprite, s16 xOffset);
-s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr);
-u8 GetBattlerYCoordWithElevation(u8 battlerId);
+s16 GetBattlerSpriteCoordAttr(u8 battler, u8 attr);
+u8 GetBattlerYCoordWithElevation(u8 battler);
void WaitAnimForDuration(struct Sprite *sprite);
void AnimTravelDiagonally(struct Sprite *sprite);
void InitAnimLinearTranslation(struct Sprite *sprite);
void AnimTranslateLinear_WithFollowup(struct Sprite *sprite);
-u8 GetBattlerSpriteBGPriority(u8 battlerId);
-void *LoadPointerFromVars(s16 bottom, s16 top);
-void StorePointerInVars(s16 *bottom, s16 *top, const void *ptr);
+u8 GetBattlerSpriteBGPriority(u8 battler);
+void *LoadPointerFromVars(s16 lo, s16 hi);
+void StorePointerInVars(s16 *lo, s16 *hi, const void *ptr);
void InitPrioritiesForVisibleBattlers(void);
-void GetBattleAnimBg1Data(struct BattleAnimBgData *);
-void GetBattleAnimBgData(struct BattleAnimBgData *, u32 bgId);
-u8 GetBattlerSpriteSubpriority(u8 battlerId);
+void GetBattleAnimBg1Data(struct BattleAnimBgData *out);
+void GetBattleAnimBgData(struct BattleAnimBgData *out, u32 bgId);
+u8 GetBattlerSpriteSubpriority(u8 battler);
bool8 TranslateAnimHorizontalArc(struct Sprite *sprite);
void TranslateSpriteLinearByIdFixedPoint(struct Sprite *sprite);
void ResetSpriteRotScale(u8 spriteId);
@@ -121,17 +121,17 @@ void SetBattlerSpriteYOffsetFromRotation(u8 spriteId);
u32 GetBattlePalettesMask(bool8 battleBackground, bool8 attacker, bool8 target, bool8 attackerPartner, bool8 targetPartner, bool8 anim1, bool8 anim2);
u32 GetBattleMonSpritePalettesMask(u8 playerLeft, u8 playerRight, u8 opponentLeft, u8 opponentRight);
u8 GetSpritePalIdxByBattler(u8 battler);
-s16 CloneBattlerSpriteWithBlend(u8);
-void DestroySpriteWithActiveSheet(struct Sprite *);
-u8 CreateInvisibleSpriteCopy(int, u8, int);
-void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData *, const void *, bool32);
-void AnimLoadCompressedBgGfx(u32, const u32 *, u32);
-void UpdateAnimBg3ScreenSize(bool8);
-void TranslateSpriteInGrowingCircle(struct Sprite *);
+s16 CloneBattlerSpriteWithBlend(u8 animBattler);
+void DestroySpriteWithActiveSheet(struct Sprite *sprite);
+u8 CreateInvisibleSpriteCopy(int battler, u8 spriteId, int species);
+void AnimLoadCompressedBgTilemapHandleContest(struct BattleAnimBgData *data, const void *src, bool32 largeScreen);
+void AnimLoadCompressedBgGfx(u32 bgId, const u32 *src, u32 tilesOffset);
+void UpdateAnimBg3ScreenSize(bool8 largeScreenSize);
+void TranslateSpriteInGrowingCircle(struct Sprite *sprite);
void SetBattlerSpriteYOffsetFromYScale(u8 spriteId);
void PrepareEruptAnimTaskData(struct Task *task, u8 spriteId, s16 xScaleStart, s16 yScaleStart, s16 xScaleEnd, s16 yScaleEnd, u16 duration);
u8 UpdateEruptAnimTask(struct Task *task);
-void DestroyAnimSpriteAndDisableBlend(struct Sprite *);
+void DestroyAnimSpriteAndDisableBlend(struct Sprite *sprite);
void AnimLoadCompressedBgTilemap(u32 bgId, const void *src);
void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite);
bool8 AnimFastTranslateLinear(struct Sprite *sprite);
@@ -141,12 +141,12 @@ void TranslateSpriteLinear(struct Sprite *sprite);
void AnimSpriteOnMonPos(struct Sprite *sprite);
void InitAnimLinearTranslationWithSpeedAndPos(struct Sprite *sprite);
void TranslateSpriteInCircle(struct Sprite *sprite);
-void SetGrayscaleOrOriginalPalette(u16 palNum, bool8 restoreOriginal);
+void SetGrayscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor);
void PrepareAffineAnimInTaskData(struct Task *task, u8 spriteId, const union AffineAnimCmd *affineAnimCmds);
bool8 RunAffineAnimFromTaskData(struct Task *task);
void AnimThrowProjectile(struct Sprite *sprite);
-void GetBgDataForTransform(struct BattleAnimBgData *dest, u8 battlerId);
-u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battlerId, bool32 ignoreDeoxysForm);
+void GetBgDataForTransform(struct BattleAnimBgData *out, u8 battler);
+u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battler, bool32 ignoreDeoxysForm);
void ResetSpriteRotScale_PreserveAffine(struct Sprite *sprite);
void Trade_MoveSelectedMonToTarget(struct Sprite *sprite);
void DestroyAnimVisualTaskAndDisableBlend(u8 taskId);
@@ -178,18 +178,18 @@ enum
BATTLER_COORD_ATTR_RAW_BOTTOM,
};
-u8 GetBattlerSpriteCoord(u8 battlerId, u8 attributeId);
+u8 GetBattlerSpriteCoord(u8 battler, u8 coordType);
-bool8 IsBattlerSpritePresent(u8 battlerId);
+bool8 IsBattlerSpritePresent(u8 battler);
void ClearBattleAnimBg(u32 bgId);
-u8 GetAnimBattlerSpriteId(u8 wantedBattler);
+u8 GetAnimBattlerSpriteId(u8 animBattler);
bool8 IsDoubleBattle(void);
u8 GetBattleBgPaletteNum(void);
-u8 GetBattlerSpriteBGPriorityRank(u8 battlerId);
-void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*spriteCallback)(struct Sprite *));
+u8 GetBattlerSpriteBGPriorityRank(u8 battler);
+void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*callback)(struct Sprite *));
void SetSpritePrimaryCoordsFromSecondaryCoords(struct Sprite *sprite);
-u8 GetBattlerSpriteDefault_Y(u8 battlerId);
-u8 GetSubstituteSpriteDefault_Y(u8 battlerId);
+u8 GetBattlerSpriteDefault_Y(u8 battler);
+u8 GetSubstituteSpriteDefault_Y(u8 battler);
// battle_anim_status_effects.c
#define STAT_ANIM_PLUS1 14
@@ -212,25 +212,25 @@ enum {
STAT_ANIM_PAL_MULTIPLE = 0xFF
};
-void LaunchStatusAnimation(u8 battlerId, u8 statusAnimId);
+void LaunchStatusAnimation(u8 battler, u8 statusAnimId);
// battle_anim_ground.c
void AnimTask_HorizontalShake(u8 taskId);
// battle_anim_throw.c
void TryShinyAnimation(u8 battler, struct Pokemon *mon);
-u8 ItemIdToBallId(u16 itemId);
+u8 ItemIdToBallId(u16 ballItem);
u8 AnimateBallOpenParticles(u8 x, u8 y, u8 priority, u8 subpriority, u8 ballId);
-u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 spritePalNum, u32 selectedPalettes, u8 ballId);
+u8 LaunchBallFadeMonTask(bool8 unfadeLater, u8 spritePalNum, u32 selectedPalettes, u8 ballId);
// battle_anim_utility_funcs.c
-void InitStatsChangeAnimation(u8);
-void StartMonScrollingBgMask(u8 taskId, int unused, u16 scrollSpeed, u8 battler, bool8 includePartner, u8 numFadeSteps, u8 fadeStepDelay, u8 duration, const u32 *gfx, const u32 *tilemap, const u32 *palette);
+void InitStatsChangeAnimation(u8 taskId);
+void StartMonScrollingBgMask(u8 taskId, int UNUSED unused, u16 scrollSpeed, u8 battler, bool8 includePartner, u8 numFadeSteps, u8 fadeStepDelay, u8 duration, const u32 *gfx, const u32 *tilemap, const u32 *palette);
// battle_anim_effects_1.c
void SetSpriteNextToMonHead(u8 battler, struct Sprite *sprite);
void AnimMoveTwisterParticle(struct Sprite *sprite);
-void AnimParticleBurst(struct Sprite *);
+void AnimParticleBurst(struct Sprite *sprite);
// battle_anim_water.c
void AnimWaterPulseRing(struct Sprite *sprite);
@@ -241,9 +241,9 @@ void DestroyAnimSpriteAfterTimer(struct Sprite *sprite);
// battle_anim_smokescreen.c
u8 SmokescreenImpact(s16 x, s16 y, bool8 persist);
-u32 UnpackSelectedBattlePalettes(s16);
+u32 UnpackSelectedBattlePalettes(s16 selector);
-u8 GetBattlerSpriteFinal_Y(u8, u16, u8);
+u8 GetBattlerSpriteFinal_Y(u8 battler, u16 species, bool8 a3);
extern const struct OamData gOamData_AffineOff_ObjNormal_8x16;
extern const struct OamData gOamData_AffineNormal_ObjBlend_16x16;
diff --git a/include/battle_controllers.h b/include/battle_controllers.h
index 064c080f61..e4b368b89e 100644
--- a/include/battle_controllers.h
+++ b/include/battle_controllers.h
@@ -64,11 +64,65 @@ enum {
REQUEST_TOUGH_RIBBON_BATTLE,
};
+// Accessors for gBattleControllerExecFlags.
+//
+// These are provided for documentation purposes, to make the battle
+// controller internals and the link communication internals more
+// legible. Several of these have functions that you should call
+// (e.g. MarkBattlerForControllerExec) instead of using these macros
+// directly.
+
+#define MARK_BATTLE_CONTROLLER_ACTIVE_ON_LOCAL(battler) \
+ gBattleControllerExecFlags |= gBitTable[battler]
+
+#define MARK_BATTLE_CONTROLLER_IDLE_ON_LOCAL(battler) \
+ gBattleControllerExecFlags &= ~gBitTable(battler)
+
+#define IS_BATTLE_CONTROLLER_ACTIVE_ON_LOCAL(battler) \
+ (gBattleControllerExecFlags & gBitTable[battler])
+
+#define MARK_BATTLE_CONTROLLER_MESSAGE_OUTBOUND_OVER_LINK(battler) \
+ gBattleControllerExecFlags |= gBitTable[battler] << (32 - MAX_BATTLERS_COUNT)
+
+#define MARK_BATTLE_CONTROLLER_MESSAGE_SYNCHRONIZED_OVER_LINK(battler) \
+ gBattleControllerExecFlags &= ~((1 << 28) << (battler))
+
+#define MARK_BATTLE_CONTROLLER_ACTIVE_FOR_PLAYER(battler, playerId) \
+ gBattleControllerExecFlags |= gBitTable[battler] << ((playerId) << 2)
+
+#define MARK_BATTLE_CONTROLLER_IDLE_FOR_PLAYER(battler, playerId) \
+ gBattleControllerExecFlags &= ~(gBitTable[battler] << ((playerId) * 4))
+
+#define IS_BATTLE_CONTROLLER_ACTIVE_FOR_PLAYER(battler, playerId) \
+ (gBattleControllerExecFlags & (gBitTable[battler] << ((playerId) * 4)))
+
+// This actually checks if a specific controller is active on any player or if
+// *any* controller is pending sync over link communications, but the macro name
+// can only be so specific before it just gets ridiculous.
+#define IS_BATTLE_CONTROLLER_ACTIVE_OR_PENDING_SYNC_ANYWHERE(battler) \
+ (gBattleControllerExecFlags & ( \
+ (gBitTable[battler]) \
+ | (0xF << 28) \
+ | (gBitTable[battler] << 4) \
+ | (gBitTable[battler] << 8) \
+ | (gBitTable[battler] << 12) \
+ ))
+
// Special arguments for Battle Controller functions.
-enum { // Values given to the emit functions to choose gBattleBufferA or gBattleBufferB
- BUFFER_A,
- BUFFER_B
+enum {
+ // For commands sent from the core battle engine to a controller.
+ B_COMM_TO_CONTROLLER, // gBattleBufferA
+
+ // For replies sent from a controller to the core battle engine.
+ B_COMM_TO_ENGINE, // gBattleBufferB
+
+ // During local play, a controller must directly mark itself as
+ // inactive when it's done processing, whether or not it sends
+ // a reply. During multiplayer, it must NOT directly mark itself
+ // as inactive, but instead send one of these, with the player's
+ // multiplayer ID as data.
+ B_COMM_CONTROLLER_IS_DONE
};
enum {
@@ -124,8 +178,7 @@ struct ChooseMoveStruct
u8 currentPp[MAX_MON_MOVES];
u8 maxPp[MAX_MON_MOVES];
u16 species;
- u8 monType1;
- u8 monType2;
+ u8 monTypes[2];
};
enum
@@ -233,9 +286,9 @@ void BtlController_EmitCantSwitch(u8 bufferId);
void BtlController_EmitPlaySE(u8 bufferId, u16 songId);
void BtlController_EmitPlayFanfareOrBGM(u8 bufferId, u16 songId, bool8 playBGM);
void BtlController_EmitFaintingCry(u8 bufferId);
-void BtlController_EmitIntroSlide(u8 bufferId, u8 terrainId);
+void BtlController_EmitIntroSlide(u8 bufferId, u8 environmentId);
void BtlController_EmitIntroTrainerBallThrow(u8 bufferId);
-void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* hpAndStatus, u8 flags);
+void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus *hpAndStatus, u8 flags);
void BtlController_EmitHidePartyStatusSummary(u8 bufferId);
void BtlController_EmitEndBounceEffect(u8 bufferId);
void BtlController_EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible);
@@ -253,8 +306,8 @@ void SpriteCB_FreePlayerSpriteLoadMonSprite(struct Sprite *sprite);
void CB2_SetUpReshowBattleScreenAfterMenu(void);
void CB2_SetUpReshowBattleScreenAfterMenu2(void);
void Task_PlayerController_RestoreBgmAfterCry(u8 taskId);
-void ActionSelectionCreateCursorAt(u8 cursorPos, u8 unused);
-void ActionSelectionDestroyCursorAt(u8 cursorPos);
+void ActionSelectionCreateCursorAt(u8 cursorPosition, u8 baseTileNum);
+void ActionSelectionDestroyCursorAt(u8 cursorPosition);
void InitMoveSelectionsVarsAndStrings(void);
// recorded player controller
diff --git a/include/battle_gfx_sfx_util.h b/include/battle_gfx_sfx_util.h
index 2a848e3d93..ba2afee1d9 100644
--- a/include/battle_gfx_sfx_util.h
+++ b/include/battle_gfx_sfx_util.h
@@ -7,39 +7,39 @@ u16 ChooseMoveAndTargetInBattlePalace(void);
void SpriteCB_WaitForBattlerBallReleaseAnim(struct Sprite *sprite);
void SpriteCB_TrainerSlideIn(struct Sprite *sprite);
void InitAndLaunchChosenStatusAnimation(bool8 isStatus2, u32 status);
-bool8 TryHandleLaunchBattleTableAnimation(u8 activeBattlerId, u8 attacker, u8 target, u8 tableId, u16 argument);
-void InitAndLaunchSpecialAnimation(u8 activeBattlerId, u8 attacker, u8 target, u8 tableId);
-bool8 IsMoveWithoutAnimation(u16 moveId, u8 animationTurn);
-bool8 IsBattleSEPlaying(u8 battlerId);
-void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId);
-void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId);
+bool8 TryHandleLaunchBattleTableAnimation(u8 activeBattler, u8 atkBattler, u8 defBattler, u8 tableId, u16 argument);
+void InitAndLaunchSpecialAnimation(u8 activeBattler, u8 atkBattler, u8 defBattler, u8 tableId);
+bool8 IsMoveWithoutAnimation(u16 move, u8 animationTurn);
+bool8 IsBattleSEPlaying(u8 battler);
+void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battler);
+void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battler);
void BattleGfxSfxDummy2(u16 species);
-void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId);
-void DecompressTrainerBackPic(u16 backPicId, u8 battlerId);
+void DecompressTrainerFrontPic(u16 frontPicId, u8 battler);
+void DecompressTrainerBackPic(u16 backPicId, u8 battler);
void BattleGfxSfxDummy3(u8 gender);
void FreeTrainerFrontPicPalette(u16 frontPicId);
bool8 BattleLoadAllHealthBoxesGfx(u8 state);
void LoadBattleBarGfx(u8 unused);
-bool8 BattleInitAllSprites(u8 *state1, u8 *battlerId);
+bool8 BattleInitAllSprites(u8 *state1, u8 *battler);
void ClearSpritesHealthboxAnimData(void);
void CopyAllBattleSpritesInvisibilities(void);
-void CopyBattleSpriteInvisibility(u8 battlerId);
-void HandleSpeciesGfxDataChange(u8 attacker, u8 target, bool8 notTransform);
-void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite);
-void LoadBattleMonGfxAndAnimate(u8 battlerId, bool8 loadMonSprite, u8 spriteId);
-void TrySetBehindSubstituteSpriteBit(u8 battlerId, u16 move);
-void ClearBehindSubstituteBit(u8 battlerId);
-void HandleLowHpMusicChange(struct Pokemon *mon, u8 battlerId);
+void CopyBattleSpriteInvisibility(u8 battler);
+void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 castform);
+void BattleLoadSubstituteOrMonSpriteGfx(u8 battler, bool8 loadMonSprite);
+void LoadBattleMonGfxAndAnimate(u8 battler, bool8 loadMonSprite, u8 spriteId);
+void TrySetBehindSubstituteSpriteBit(u8 battler, u16 move);
+void ClearBehindSubstituteBit(u8 battler);
+void HandleLowHpMusicChange(struct Pokemon *mon, u8 battler);
void BattleStopLowHpSound(void);
u8 GetMonHPBarLevel(struct Pokemon *mon);
void HandleBattleLowHpMusicChange(void);
void SetBattlerSpriteAffineMode(u8 affineMode);
void LoadAndCreateEnemyShadowSprites(void);
void SpriteCB_SetInvisible(struct Sprite *sprite);
-void SetBattlerShadowSpriteCallback(u8 battlerId, u16 species);
-void HideBattlerShadowSprite(u8 battlerId);
+void SetBattlerShadowSpriteCallback(u8 battler, u16 species);
+void HideBattlerShadowSprite(u8 battler);
void FillAroundBattleWindows(void);
-void ClearTemporarySpeciesSpriteData(u8 battlerId, bool8 dontClearSubstitute);
+void ClearTemporarySpeciesSpriteData(u8 battler, bool8 dontClearSubstitute);
void AllocateMonSpritesGfx(void);
void FreeMonSpritesGfx(void);
bool32 ShouldPlayNormalMonCry(struct Pokemon *mon);
diff --git a/include/battle_interface.h b/include/battle_interface.h
index ed71b88454..08e7812a4d 100644
--- a/include/battle_interface.h
+++ b/include/battle_interface.h
@@ -65,11 +65,11 @@ enum
u8 CreateBattlerHealthboxSprites(u8 battler);
u8 CreateSafariPlayerHealthboxSprites(void);
-void SetBattleBarStruct(u8 battler, u8 healthboxSpriteId, s32 maxVal, s32 currVal, s32 receivedValue);
+void SetBattleBarStruct(u8 battler, u8 healthboxSpriteId, s32 maxVal, s32 oldVal, s32 receivedValue);
void SetHealthboxSpriteInvisible(u8 healthboxSpriteId);
void SetHealthboxSpriteVisible(u8 healthboxSpriteId);
void DestoryHealthboxSprite(u8 healthboxSpriteId);
-void DummyBattleInterfaceFunc(u8 healthboxSpriteId, bool8 isDoubleBattleBankOnly);
+void DummyBattleInterfaceFunc(u8 healthboxSpriteId, bool8 isDoubleBattleBattlerOnly);
void UpdateOamPriorityInAllHealthboxes(u8 priority);
void InitBattlerHealthboxCoords(u8 battler);
void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent);
diff --git a/include/battle_main.h b/include/battle_main.h
index e3e0cb7ea4..ea6e5bed41 100644
--- a/include/battle_main.h
+++ b/include/battle_main.h
@@ -23,9 +23,9 @@ struct MultiPartnerMenuPokemon
};
// defines for the u8 array gTypeEffectiveness
-#define TYPE_EFFECT_ATK_TYPE(i)((gTypeEffectiveness[i + 0]))
-#define TYPE_EFFECT_DEF_TYPE(i)((gTypeEffectiveness[i + 1]))
-#define TYPE_EFFECT_MULTIPLIER(i)((gTypeEffectiveness[i + 2]))
+#define TYPE_EFFECT_ATK_TYPE(i) ((gTypeEffectiveness[i + 0]))
+#define TYPE_EFFECT_DEF_TYPE(i) ((gTypeEffectiveness[i + 1]))
+#define TYPE_EFFECT_MULTIPLIER(i) ((gTypeEffectiveness[i + 2]))
// defines for the gTypeEffectiveness multipliers
#define TYPE_MUL_NO_EFFECT 0
@@ -49,7 +49,7 @@ void SpriteCB_VsLetterDummy(struct Sprite *sprite);
void SpriteCB_VsLetterInit(struct Sprite *sprite);
void CB2_InitEndLinkBattle(void);
u32 GetBattleBgTemplateData(u8 arrayId, u8 caseId);
-u32 GetBattleWindowTemplatePixelWidth(u32 setId, u32 tableId);
+u32 GetBattleWindowTemplatePixelWidth(u32 windowsType, u32 tableId);
void SpriteCB_WildMon(struct Sprite *sprite);
void SpriteCallbackDummy_2(struct Sprite *sprite);
void SpriteCB_FaintOpponentMon(struct Sprite *sprite);
@@ -69,12 +69,12 @@ void SwitchInClearSetData(void);
void FaintClearSetData(void);
void BattleTurnPassed(void);
u8 IsRunningFromBattleImpossible(void);
-void SwitchPartyOrder(u8 battlerId);
+void SwitchPartyOrder(u8 battler);
void SwapTurnOrder(u8 id1, u8 id2);
-u8 GetWhoStrikesFirst(u8 battlerId1, u8 battlerId2, bool8 ignoreChosenMoves);
+u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves);
void RunBattleScriptCommands_PopCallbacksStack(void);
void RunBattleScriptCommands(void);
-bool8 TryRunFromBattle(u8 battlerId);
+bool8 TryRunFromBattle(u8 battler);
void SpecialStatusesClear(void);
extern struct MultiPartnerMenuPokemon gMultiPartnerParty[MULTI_PARTY_SIZE];
diff --git a/include/battle_pyramid.h b/include/battle_pyramid.h
index 62320358b6..d55d8d2e93 100644
--- a/include/battle_pyramid.h
+++ b/include/battle_pyramid.h
@@ -1,13 +1,15 @@
#ifndef GUARD_BATTLE_PYRAMID_H
#define GUARD_BATTLE_PYRAMID_H
+#include "constants/battle_pyramid.h"
+
void CallBattlePyramidFunction(void);
u16 LocalIdToPyramidTrainerId(u8 localId);
bool8 GetBattlePyramidTrainerFlag(u8 eventId);
void MarkApproachingPyramidTrainersAsBattled(void);
void GenerateBattlePyramidWildMon(void);
u8 GetPyramidRunMultiplier(void);
-u8 InBattlePyramid(void);
+u8 CurrentBattlePyramidLocation(void);
bool8 InBattlePyramid_(void);
void PausePyramidChallenge(void);
void SoftResetInBattlePyramid(void);
@@ -15,7 +17,7 @@ void CopyPyramidTrainerSpeechBefore(u16 trainerId);
void CopyPyramidTrainerWinSpeech(u16 trainerId);
void CopyPyramidTrainerLoseSpeech(u16 trainerId);
u8 GetTrainerEncounterMusicIdInBattlePyramid(u16 trainerId);
-void GenerateBattlePyramidFloorLayout(u16 *mapArg, bool8 setPlayerPosition);
+void GenerateBattlePyramidFloorLayout(u16 *backupMapData, bool8 setPlayerPosition);
void LoadBattlePyramidObjectEventTemplates(void);
void LoadBattlePyramidFloorObjectEventScripts(void);
u8 GetNumBattlePyramidObjectEvents(void);
diff --git a/include/battle_records.h b/include/battle_records.h
index 88ff6adc96..fe71570389 100644
--- a/include/battle_records.h
+++ b/include/battle_records.h
@@ -4,7 +4,7 @@
extern u8 gRecordsWindowId;
void ClearPlayerLinkBattleRecords(void);
-void UpdatePlayerLinkBattleRecords(s32 battlerId);
+void UpdatePlayerLinkBattleRecords(s32 battler);
void ShowLinkBattleRecords(void);
void RemoveRecordsWindow(void);
void ShowTrainerHillRecords(void);
diff --git a/include/battle_script_commands.h b/include/battle_script_commands.h
index 5cb18ab460..fe6e98d460 100644
--- a/include/battle_script_commands.h
+++ b/include/battle_script_commands.h
@@ -10,18 +10,18 @@
// Arguments for 'xStart, yStart, xEnd, yEnd' in HandleBattleWindow
#define YESNOBOX_X_Y 24, 8, 29, 13
-void AI_CalcDmg(u8 battlerIdAtk, u8 battlerIdDef);
-u8 TypeCalc(u16 move, u8 battlerIdAtk, u8 battlerIdDef);
+void AI_CalcDmg(u8 attacker, u8 defender);
+u8 TypeCalc(u16 move, u8 attacker, u8 defender);
u8 AI_TypeCalc(u16 move, u16 targetSpecies, u8 targetAbility);
-u8 GetBattlerTurnOrderNum(u8 battlerId);
+u8 GetBattlerTurnOrderNum(u8 battler);
void SetMoveEffect(bool8 primary, u8 certain);
void BattleDestroyYesNoCursorAt(u8 cursorPosition);
void BattleCreateYesNoCursorAt(u8 cursorPosition);
void BufferMoveToLearnIntoBattleTextBuff2(void);
void HandleBattleWindow(u8 xStart, u8 yStart, u8 xEnd, u8 yEnd, u8 flags);
-bool8 UproarWakeUpCheck(u8 battlerId);
+bool8 UproarWakeUpCheck(u8 battler);
-extern void (* const gBattleScriptingCommandsTable[])(void);
+extern void (*const gBattleScriptingCommandsTable[])(void);
extern const u8 gBattlePalaceNatureToMoveGroupLikelihood[NUM_NATURES][4];
#endif // GUARD_BATTLE_SCRIPT_COMMANDS_H
diff --git a/include/battle_setup.h b/include/battle_setup.h
index ee2837927b..41ab138115 100644
--- a/include/battle_setup.h
+++ b/include/battle_setup.h
@@ -27,7 +27,7 @@ void BattleSetup_StartLatiBattle(void);
void BattleSetup_StartLegendaryBattle(void);
void StartGroudonKyogreBattle(void);
void StartRegiBattle(void);
-u8 BattleSetup_GetTerrainId(void);
+u8 BattleSetup_GetEnvironmentId(void);
u8 GetSpecialBattleTransition(s32 id);
void ChooseStarter(void);
void ResetTrainerOpponentIds(void);
diff --git a/include/battle_tv.h b/include/battle_tv.h
index 72466d73b8..5766907637 100644
--- a/include/battle_tv.h
+++ b/include/battle_tv.h
@@ -6,6 +6,6 @@ void BattleTv_SetDataBasedOnMove(u16 move, u16 weatherFlags, struct DisableStruc
void BattleTv_SetDataBasedOnAnimation(u8 animationId);
void TryPutLinkBattleTvShowOnAir(void);
void BattleTv_ClearExplosionFaintCause(void);
-u8 GetBattlerMoveSlotId(u8 battlerId, u16 moveId);
+u8 GetBattlerMoveSlotId(u8 battler, u16 move);
#endif // GUARD_BATTLE_TV_H
diff --git a/include/battle_util.h b/include/battle_util.h
index c7de9aae86..3416451535 100644
--- a/include/battle_util.h
+++ b/include/battle_util.h
@@ -33,9 +33,9 @@
#define ABILITYEFFECT_WATER_SPORT 254
#define ABILITYEFFECT_SWITCH_IN_WEATHER 255
-#define ABILITY_ON_OPPOSING_FIELD(battlerId, abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, battlerId, abilityId, 0, 0))
-#define ABILITY_ON_FIELD(abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, abilityId, 0, 0))
-#define ABILITY_ON_FIELD2(abilityId)(AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, abilityId, 0, 0))
+#define ABILITY_ON_OPPOSING_FIELD(battler, abilityId) (AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, battler, abilityId, 0, 0))
+#define ABILITY_ON_FIELD(abilityId) (AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, abilityId, 0, 0))
+#define ABILITY_ON_FIELD2(abilityId) (AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, abilityId, 0, 0))
// For the first argument of ItemBattleEffects, to deteremine which block of item effects to try
#define ITEMEFFECT_ON_SWITCH_IN 0
@@ -64,34 +64,34 @@ u8 GetBattlerForBattleScript(u8 caseId);
void PressurePPLose(u8 target, u8 attacker, u16 move);
void PressurePPLoseOnUsingPerishSong(u8 attacker);
void PressurePPLoseOnUsingImprison(u8 attacker);
-void MarkBattlerForControllerExec(u8 battlerId);
-void MarkBattlerReceivedLinkData(u8 battlerId);
-void CancelMultiTurnMoves(u8 battlerId);
-bool8 WasUnableToUseMove(u8 battlerId);
-void PrepareStringBattle(u16 stringId, u8 battlerId);
+void MarkBattlerForControllerExec(u8 battler);
+void MarkBattlerReceivedLinkData(u8 battler);
+void CancelMultiTurnMoves(u8 battler);
+bool8 WasUnableToUseMove(u8 battler);
+void PrepareStringBattle(u16 stringId, u8 battler);
void ResetSentPokesToOpponentValue(void);
-void OpponentSwitchInResetSentPokesToOpponentValue(u8 battlerId);
-void UpdateSentPokesToOpponentValue(u8 battlerId);
+void OpponentSwitchInResetSentPokesToOpponentValue(u8 battler);
+void UpdateSentPokesToOpponentValue(u8 battler);
void BattleScriptPush(const u8 *bsPtr);
void BattleScriptPushCursor(void);
void BattleScriptPop(void);
u8 TrySetCantSelectMoveBattleScript(void);
-u8 CheckMoveLimitations(u8 battlerId, u8 unusableMoves, u8 check);
+u8 CheckMoveLimitations(u8 battler, u8 unusableMoves, u8 check);
bool8 AreAllMovesUnusable(void);
-u8 GetImprisonedMovesCount(u8 battlerId, u16 move);
+u8 GetImprisonedMovesCount(u8 battler, u16 move);
u8 DoFieldEndTurnEffects(void);
u8 DoBattlerEndTurnEffects(void);
bool8 HandleWishPerishSongOnTurnEnd(void);
bool8 HandleFaintedMonActions(void);
void TryClearRageStatuses(void);
u8 AtkCanceller_UnableToUseMove(void);
-bool8 HasNoMonsToSwitch(u8 battlerId, u8 r1, u8 r2);
-u8 CastformDataTypeChange(u8 battlerId);
-u8 AbilityBattleEffects(u8 caseID, u8 battlerId, u8 ability, u8 special, u16 moveArg);
+bool8 HasNoMonsToSwitch(u8 battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2);
+u8 CastformDataTypeChange(u8 battler);
+u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveArg);
void BattleScriptExecute(const u8 *BS_ptr);
void BattleScriptPushCursorAndCallback(const u8 *BS_ptr);
-u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn);
-void ClearFuryCutterDestinyBondGrudge(u8 battlerId);
+u8 ItemBattleEffects(u8 caseID, u8 battler, bool8 moveTurn);
+void ClearFuryCutterDestinyBondGrudge(u8 battler);
void HandleAction_RunBattleScript(void);
u8 GetMoveTarget(u16 move, u8 setTarget);
u8 IsMonDisobedient(void);
diff --git a/include/berry.h b/include/berry.h
index 22b9158ee2..1adbe1cdbc 100644
--- a/include/berry.h
+++ b/include/berry.h
@@ -11,13 +11,12 @@ bool8 IsPlayerFacingEmptyBerryTreePatch(void);
bool8 TryToWaterBerryTree(void);
void ClearBerryTrees(void);
void BerryTreeTimeUpdate(s32 minutes);
-void PlantBerryTree(u8 id, u8 berry, u8 stage, bool8 sparkle);
+void PlantBerryTree(u8 id, u8 berry, u8 stage, bool8 allowGrowth);
void RemoveBerryTree(u8 id);
u8 GetBerryTypeByBerryTreeId(u8 id);
-u8 GetStageByBerryTreeId(u8);
+u8 GetStageByBerryTreeId(u8 id);
u8 ItemIdToBerryType(u16 item);
void GetBerryNameByBerryType(u8 berry, u8 *string);
-void ResetBerryTreeSparkleFlag(u8 id);
void Bag_ChooseBerry(void);
void ObjectEventInteractionGetBerryTreeData(void);
void ObjectEventInteractionPlantBerryTree(void);
diff --git a/gflib/bg.h b/include/bg.h
similarity index 100%
rename from gflib/bg.h
rename to include/bg.h
diff --git a/gflib/blit.h b/include/blit.h
similarity index 100%
rename from gflib/blit.h
rename to include/blit.h
diff --git a/include/cable_club.h b/include/cable_club.h
index c493691c1c..5a68df621c 100644
--- a/include/cable_club.h
+++ b/include/cable_club.h
@@ -4,7 +4,7 @@
#include "task.h"
#include "constants/cable_club.h"
-void CreateTask_EnterCableClubSeat(TaskFunc taskFunc);
+void CreateTask_EnterCableClubSeat(TaskFunc followupFunc);
u8 CreateTask_ReestablishCableClubLink(void);
void CB2_ReturnFromCableClubBattle(void);
bool32 AreBattleTowerLinkSpeciesSame(u16 *speciesList1, u16 *speciesList2);
diff --git a/include/constants/.gitignore b/include/constants/.gitignore
new file mode 100644
index 0000000000..5923892b4f
--- /dev/null
+++ b/include/constants/.gitignore
@@ -0,0 +1,6 @@
+# Will be moved to build/ eventually
+map_groups.h
+layouts.h
+region_map_sections.h
+map_event_ids.h
+heal_locations.h
diff --git a/include/constants/battle.h b/include/constants/battle.h
index c4c1bc5e68..0bc9cc658e 100644
--- a/include/constants/battle.h
+++ b/include/constants/battle.h
@@ -23,12 +23,23 @@
* +---------------------------+
*/
-#define MAX_BATTLERS_COUNT 4
+enum BattlerPosition
+{
+ B_POSITION_PLAYER_LEFT,
+ B_POSITION_OPPONENT_LEFT,
+ B_POSITION_PLAYER_RIGHT,
+ B_POSITION_OPPONENT_RIGHT,
+ MAX_POSITION_COUNT,
+};
-#define B_POSITION_PLAYER_LEFT 0
-#define B_POSITION_OPPONENT_LEFT 1
-#define B_POSITION_PLAYER_RIGHT 2
-#define B_POSITION_OPPONENT_RIGHT 3
+enum BattlerId
+{
+ B_BATTLER_0,
+ B_BATTLER_1,
+ B_BATTLER_2,
+ B_BATTLER_3,
+ MAX_BATTLERS_COUNT,
+};
// These macros can be used with either battler ID or positions to get the partner or the opposite mon
#define BATTLE_OPPOSITE(id) ((id) ^ BIT_SIDE)
@@ -176,7 +187,7 @@
#define HITMARKER_ATTACKSTRING_PRINTED (1 << 10)
#define HITMARKER_NO_PPDEDUCT (1 << 11)
#define HITMARKER_SWAP_ATTACKER_TARGET (1 << 12)
-#define HITMARKER_IGNORE_SAFEGUARD (1 << 13)
+#define HITMARKER_STATUS_ABILITY_EFFECT (1 << 13)
#define HITMARKER_SYNCHRONISE_EFFECT (1 << 14)
#define HITMARKER_RUN (1 << 15)
#define HITMARKER_IGNORE_ON_AIR (1 << 16)
@@ -296,17 +307,17 @@
#define MOVE_EFFECT_AFFECTS_USER (1 << 6) // 64
#define MOVE_EFFECT_CERTAIN (1 << 7) // 128
-// Battle terrain defines for gBattleTerrain.
-#define BATTLE_TERRAIN_GRASS 0
-#define BATTLE_TERRAIN_LONG_GRASS 1
-#define BATTLE_TERRAIN_SAND 2
-#define BATTLE_TERRAIN_UNDERWATER 3
-#define BATTLE_TERRAIN_WATER 4
-#define BATTLE_TERRAIN_POND 5
-#define BATTLE_TERRAIN_MOUNTAIN 6
-#define BATTLE_TERRAIN_CAVE 7
-#define BATTLE_TERRAIN_BUILDING 8
-#define BATTLE_TERRAIN_PLAIN 9
+// Battle environment defines for gBattleEnvironment.
+#define BATTLE_ENVIRONMENT_GRASS 0
+#define BATTLE_ENVIRONMENT_LONG_GRASS 1
+#define BATTLE_ENVIRONMENT_SAND 2
+#define BATTLE_ENVIRONMENT_UNDERWATER 3
+#define BATTLE_ENVIRONMENT_WATER 4
+#define BATTLE_ENVIRONMENT_POND 5
+#define BATTLE_ENVIRONMENT_MOUNTAIN 6
+#define BATTLE_ENVIRONMENT_CAVE 7
+#define BATTLE_ENVIRONMENT_BUILDING 8
+#define BATTLE_ENVIRONMENT_PLAIN 9
#define B_WAIT_TIME_LONG 64
#define B_WAIT_TIME_MED 48
diff --git a/include/constants/battle_palace.h b/include/constants/battle_palace.h
index 8516550892..1d8c2f2dda 100644
--- a/include/constants/battle_palace.h
+++ b/include/constants/battle_palace.h
@@ -16,12 +16,12 @@
#define PALACE_DATA_WIN_STREAK 1
#define PALACE_DATA_WIN_STREAK_ACTIVE 2
-// Pokemon in Battle Palace have a move "group" type preference depending on nature
+// Pokémon in Battle Palace have a move "group" type preference depending on nature
#define PALACE_MOVE_GROUP_ATTACK 0
#define PALACE_MOVE_GROUP_DEFENSE 1
#define PALACE_MOVE_GROUP_SUPPORT 2
-// In palace doubles battles pokemon have a target preference depending on nature
+// In palace doubles battles Pokémon have a target preference depending on nature
#define PALACE_TARGET_STRONGER 0
#define PALACE_TARGET_WEAKER 1
#define PALACE_TARGET_RANDOM 2
diff --git a/include/constants/battle_pyramid.h b/include/constants/battle_pyramid.h
index ac80a2d7d3..08fa695cf2 100644
--- a/include/constants/battle_pyramid.h
+++ b/include/constants/battle_pyramid.h
@@ -43,7 +43,7 @@
#define BATTLE_PYRAMID_FUNC_SET_TRAINERS 9
#define BATTLE_PYRAMID_FUNC_SHOW_HINT_TEXT 10
#define BATTLE_PYRAMID_FUNC_UPDATE_STREAK 11 // unused
-#define BATTLE_PYRAMID_FUNC_IS_IN 12
+#define BATTLE_PYRAMID_FUNC_CURRENT_LOCATION 12
#define BATTLE_PYRAMID_FUNC_UPDATE_LIGHT 13
#define BATTLE_PYRAMID_FUNC_CLEAR_HELD_ITEMS 14
#define BATTLE_PYRAMID_FUNC_SET_FLOOR_PALETTE 15
@@ -62,4 +62,8 @@
#define PYRAMID_LIGHT_SET_RADIUS 0
#define PYRAMID_LIGHT_INCR_RADIUS 1
+#define PYRAMID_LOCATION_NONE 0 // Not in the Pyramid
+#define PYRAMID_LOCATION_FLOOR 1
+#define PYRAMID_LOCATION_TOP 2
+
#endif // GUARD_CONSTANTS_BATTLE_PYRAMID_H
diff --git a/gflib/characters.h b/include/constants/characters.h
similarity index 100%
rename from gflib/characters.h
rename to include/constants/characters.h
diff --git a/include/constants/contest.h b/include/constants/contest.h
index 905306203a..1ed0503550 100644
--- a/include/constants/contest.h
+++ b/include/constants/contest.h
@@ -155,6 +155,7 @@
#define CONTEST_EFFECT_TYPE_WORSEN 4
#define CONTEST_EFFECT_TYPE_SPECIAL_APPEAL 5
#define CONTEST_EFFECT_TYPE_TURN_ORDER 6
+#define CONTEST_EFFECT_TYPE_UNKNOWN 8
#define COMBO_STARTER_RAIN_DANCE 1
#define COMBO_STARTER_RAGE 2
diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h
index c8fa942655..60a23041fa 100644
--- a/include/constants/event_objects.h
+++ b/include/constants/event_objects.h
@@ -1,6 +1,9 @@
#ifndef GUARD_CONSTANTS_EVENT_OBJECTS_H
#define GUARD_CONSTANTS_EVENT_OBJECTS_H
+#include "constants/global.h"
+#include "constants/map_event_ids.h"
+
#define OBJ_EVENT_GFX_BRENDAN_NORMAL 0
#define OBJ_EVENT_GFX_BRENDAN_MACH_BIKE 1
#define OBJ_EVENT_GFX_BRENDAN_SURFING 2
@@ -291,38 +294,18 @@
#define OBJ_KIND_NORMAL 0
#define OBJ_KIND_CLONE 255 // Exclusive to FRLG
-// Special object event local ids
-#define OBJ_EVENT_ID_PLAYER 0xFF
-#define OBJ_EVENT_ID_CAMERA 0x7F
+// Each object event template gets an ID that can be used to refer to it in scripts and elsewhere.
+// This is referred to as the "local id" (and it's really just 1 + its index in the templates array).
+// There are a few special IDs reserved for objects that don't have templates in the map data -- one for the player
+// in regular offline play, five for linked players while playing Berry Blender, and one for an invisible object that
+// can be spawned for the camera to track instead of the player. Additionally, the value 0 is reserved as an "empty" indicator.
+#define LOCALID_NONE 0
+#define LOCALID_CAMERA 127
+#define LOCALID_BERRY_BLENDER_PLAYER_END 240 // This will use 5 (MAX_RFU_PLAYERS) IDs ending at 240, i.e. 236-240
+#define LOCALID_PLAYER 255
-// Object event local ids referenced in C files
-#define LOCALID_ROUTE111_PLAYER_FALLING 45
-#define LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK 1
-#define LOCALID_FARAWAY_ISLAND_MEW 1
-#define LOCALID_UNION_ROOM_PLAYER_4 2
-#define LOCALID_UNION_ROOM_PLAYER_8 3
-#define LOCALID_UNION_ROOM_PLAYER_7 4
-#define LOCALID_UNION_ROOM_PLAYER_6 5
-#define LOCALID_UNION_ROOM_PLAYER_5 6
-#define LOCALID_UNION_ROOM_PLAYER_3 7
-#define LOCALID_UNION_ROOM_PLAYER_2 8
-#define LOCALID_UNION_ROOM_PLAYER_1 9
-#define LOCALID_BATTLE_TOWER_LOBBY_REPORTER 5
-#define LOCALID_TRUCK_BOX_TOP 1
-#define LOCALID_TRUCK_BOX_BOTTOM_L 2
-#define LOCALID_TRUCK_BOX_BOTTOM_R 3
-#define LOCALID_OLDALE_MART_CLERK 1
-#define LOCALID_LAVARIDGE_MART_CLERK 1
-#define LOCALID_FALLARBOR_MART_CLERK 1
-#define LOCALID_VERDANTURF_MART_CLERK 1
-#define LOCALID_PETALBURG_MART_CLERK 1
-#define LOCALID_SLATEPORT_MART_CLERK 1
-#define LOCALID_MAUVILLE_MART_CLERK 1
-#define LOCALID_RUSTBORO_MART_CLERK 1
-#define LOCALID_FORTREE_MART_CLERK 1
-#define LOCALID_MOSSDEEP_MART_CLERK 1
-#define LOCALID_SOOTOPOLIS_MART_CLERK 1
-#define LOCALID_BATTLE_FRONTIER_MART_CLERK 1
-#define LOCALID_SLATEPORT_ENERGY_GURU 25
+// Aliases for old names. "object event id" normally refers to an index into gObjectEvents, which these are not.
+#define OBJ_EVENT_ID_CAMERA LOCALID_CAMERA
+#define OBJ_EVENT_ID_PLAYER LOCALID_PLAYER
#endif // GUARD_CONSTANTS_EVENT_OBJECTS_H
diff --git a/include/constants/field_specials.h b/include/constants/field_specials.h
index 6659403313..1e08a47f95 100644
--- a/include/constants/field_specials.h
+++ b/include/constants/field_specials.h
@@ -62,7 +62,7 @@
#define DEPT_STORE_FLOORNUM_11F 14
#define DEPT_STORE_FLOORNUM_ROOFTOP 15
-// Lilycove Pokemon Trainer Fan Club
+// Lilycove Pokémon Trainer Fan Club
#define NUM_TRAINER_FAN_CLUB_MEMBERS 8
#define FANCLUB_GOT_FIRST_FANS 7
diff --git a/include/constants/field_weather.h b/include/constants/field_weather.h
index e84dbc48c4..fe7eb6a1ae 100644
--- a/include/constants/field_weather.h
+++ b/include/constants/field_weather.h
@@ -8,6 +8,7 @@
#define NUM_FOG_DIAGONAL_SPRITES 20
#define NUM_SANDSTORM_SPRITES 20
#define NUM_SWIRL_SANDSTORM_SPRITES 5
+#define NUM_SNOWFLAKE_SPRITES 16
// Controls how the weather should be changing the screen palettes.
#define WEATHER_PAL_STATE_CHANGING_WEATHER 0
diff --git a/include/constants/flags.h b/include/constants/flags.h
index 8d98e3aa04..7b5c5edb45 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -2,6 +2,7 @@
#define GUARD_CONSTANTS_FLAGS_H
#include "constants/opponents.h"
+#include "constants/rematches.h"
// Temporary Flags
// These temporary flags are are cleared every time a map is loaded. They are used
@@ -375,86 +376,89 @@
#define FLAG_MET_FRONTIER_BEAUTY_MOVE_TUTOR 0x15A
#define FLAG_MET_FRONTIER_SWIMMER_MOVE_TUTOR 0x15B
-// Trainer Rematch Flags
-#define FLAG_MATCH_CALL_REGISTERED 0x15C
-#define FLAG_REMATCH_ROSE 0x15D
-#define FLAG_REMATCH_ANDRES 0x15E
-#define FLAG_REMATCH_DUSTY 0x15F
-#define FLAG_REMATCH_LOLA 0x160
-#define FLAG_REMATCH_RICKY 0x161
-#define FLAG_REMATCH_LILA_AND_ROY 0x162
-#define FLAG_REMATCH_CRISTIN 0x163
-#define FLAG_REMATCH_BROOKE 0x164
-#define FLAG_REMATCH_WILTON 0x165
-#define FLAG_REMATCH_VALERIE 0x166
-#define FLAG_REMATCH_CINDY 0x167
-#define FLAG_REMATCH_THALIA 0x168
-#define FLAG_REMATCH_JESSICA 0x169
-#define FLAG_REMATCH_WINSTON 0x16A
-#define FLAG_REMATCH_STEVE 0x16B
-#define FLAG_REMATCH_TONY 0x16C
-#define FLAG_REMATCH_NOB 0x16D
-#define FLAG_REMATCH_KOJI 0x16E
-#define FLAG_REMATCH_FERNANDO 0x16F
-#define FLAG_REMATCH_DALTON 0x170
-#define FLAG_REMATCH_BERNIE 0x171
-#define FLAG_REMATCH_ETHAN 0x172
-#define FLAG_REMATCH_JOHN_AND_JAY 0x173
-#define FLAG_REMATCH_JEFFREY 0x174
-#define FLAG_REMATCH_CAMERON 0x175
-#define FLAG_REMATCH_JACKI 0x176
-#define FLAG_REMATCH_WALTER 0x177
-#define FLAG_REMATCH_KAREN 0x178
-#define FLAG_REMATCH_JERRY 0x179
-#define FLAG_REMATCH_ANNA_AND_MEG 0x17A
-#define FLAG_REMATCH_ISABEL 0x17B
-#define FLAG_REMATCH_MIGUEL 0x17C
-#define FLAG_REMATCH_TIMOTHY 0x17D
-#define FLAG_REMATCH_SHELBY 0x17E
-#define FLAG_REMATCH_CALVIN 0x17F
-#define FLAG_REMATCH_ELLIOT 0x180
-#define FLAG_REMATCH_ISAIAH 0x181
-#define FLAG_REMATCH_MARIA 0x182
-#define FLAG_REMATCH_ABIGAIL 0x183
-#define FLAG_REMATCH_DYLAN 0x184
-#define FLAG_REMATCH_KATELYN 0x185
-#define FLAG_REMATCH_BENJAMIN 0x186
-#define FLAG_REMATCH_PABLO 0x187
-#define FLAG_REMATCH_NICOLAS 0x188
-#define FLAG_REMATCH_ROBERT 0x189
-#define FLAG_REMATCH_LAO 0x18A
-#define FLAG_REMATCH_CYNDY 0x18B
-#define FLAG_REMATCH_MADELINE 0x18C
-#define FLAG_REMATCH_JENNY 0x18D
-#define FLAG_REMATCH_DIANA 0x18E
-#define FLAG_REMATCH_AMY_AND_LIV 0x18F
-#define FLAG_REMATCH_ERNEST 0x190
-#define FLAG_REMATCH_CORY 0x191
-#define FLAG_REMATCH_EDWIN 0x192
-#define FLAG_REMATCH_LYDIA 0x193
-#define FLAG_REMATCH_ISAAC 0x194
-#define FLAG_REMATCH_GABRIELLE 0x195
-#define FLAG_REMATCH_CATHERINE 0x196
-#define FLAG_REMATCH_JACKSON 0x197
-#define FLAG_REMATCH_HALEY 0x198
-#define FLAG_REMATCH_JAMES 0x199
-#define FLAG_REMATCH_TRENT 0x19A
-#define FLAG_REMATCH_SAWYER 0x19B
-#define FLAG_REMATCH_KIRA_AND_DAN 0x19C
-#define FLAG_REMATCH_WALLY 0x19D
-#define FLAG_REMATCH_ROXANNE 0x19E
-#define FLAG_REMATCH_BRAWLY 0x19F
-#define FLAG_REMATCH_WATTSON 0x1A0
-#define FLAG_REMATCH_FLANNERY 0x1A1
-#define FLAG_REMATCH_NORMAN 0x1A2
-#define FLAG_REMATCH_WINONA 0x1A3
-#define FLAG_REMATCH_TATE_AND_LIZA 0x1A4
-// Note: FLAG_REMATCH_JUAN is handled by FLAG_ENABLE_JUAN_MATCH_CALL instead.
-#define FLAG_REMATCH_SIDNEY 0x1A5
-#define FLAG_REMATCH_PHOEBE 0x1A6
-#define FLAG_REMATCH_GLACIA 0x1A7
-#define FLAG_REMATCH_DRAKE 0x1A8
-#define FLAG_REMATCH_WALLACE 0x1A9
+// Flags for whether a rematchable trainer has been registered in the player's Match Call.
+// Most are used implicitly by adding their REMATCH_* id to TRAINER_REGISTERED_FLAGS_START.
+// Some Match Call entries (like those for gym leaders, Wally, and all non-trainer NPCs like Prof. Birch)
+// have their own separate flag that needs to be set to be enabled; see src/pokenav_match_call_data.c
+#define TRAINER_REGISTERED_FLAGS_START 0x15C
+#define FLAG_REGISTERED_ROSE (TRAINER_REGISTERED_FLAGS_START + REMATCH_ROSE)
+#define FLAG_REGISTERED_ANDRES (TRAINER_REGISTERED_FLAGS_START + REMATCH_ANDRES)
+#define FLAG_REGISTERED_DUSTY (TRAINER_REGISTERED_FLAGS_START + REMATCH_DUSTY)
+#define FLAG_REGISTERED_LOLA (TRAINER_REGISTERED_FLAGS_START + REMATCH_LOLA)
+#define FLAG_REGISTERED_RICKY (TRAINER_REGISTERED_FLAGS_START + REMATCH_RICKY)
+#define FLAG_REGISTERED_LILA_AND_ROY (TRAINER_REGISTERED_FLAGS_START + REMATCH_LILA_AND_ROY)
+#define FLAG_REGISTERED_CRISTIN (TRAINER_REGISTERED_FLAGS_START + REMATCH_CRISTIN)
+#define FLAG_REGISTERED_BROOKE (TRAINER_REGISTERED_FLAGS_START + REMATCH_BROOKE)
+#define FLAG_REGISTERED_WILTON (TRAINER_REGISTERED_FLAGS_START + REMATCH_WILTON)
+#define FLAG_REGISTERED_VALERIE (TRAINER_REGISTERED_FLAGS_START + REMATCH_VALERIE)
+#define FLAG_REGISTERED_CINDY (TRAINER_REGISTERED_FLAGS_START + REMATCH_CINDY)
+#define FLAG_REGISTERED_THALIA (TRAINER_REGISTERED_FLAGS_START + REMATCH_THALIA)
+#define FLAG_REGISTERED_JESSICA (TRAINER_REGISTERED_FLAGS_START + REMATCH_JESSICA)
+#define FLAG_REGISTERED_WINSTON (TRAINER_REGISTERED_FLAGS_START + REMATCH_WINSTON)
+#define FLAG_REGISTERED_STEVE (TRAINER_REGISTERED_FLAGS_START + REMATCH_STEVE)
+#define FLAG_REGISTERED_TONY (TRAINER_REGISTERED_FLAGS_START + REMATCH_TONY)
+#define FLAG_REGISTERED_NOB (TRAINER_REGISTERED_FLAGS_START + REMATCH_NOB)
+#define FLAG_REGISTERED_KOJI (TRAINER_REGISTERED_FLAGS_START + REMATCH_KOJI)
+#define FLAG_REGISTERED_FERNANDO (TRAINER_REGISTERED_FLAGS_START + REMATCH_FERNANDO)
+#define FLAG_REGISTERED_DALTON (TRAINER_REGISTERED_FLAGS_START + REMATCH_DALTON)
+#define FLAG_REGISTERED_BERNIE (TRAINER_REGISTERED_FLAGS_START + REMATCH_BERNIE)
+#define FLAG_REGISTERED_ETHAN (TRAINER_REGISTERED_FLAGS_START + REMATCH_ETHAN)
+#define FLAG_REGISTERED_JOHN_AND_JAY (TRAINER_REGISTERED_FLAGS_START + REMATCH_JOHN_AND_JAY)
+#define FLAG_REGISTERED_JEFFREY (TRAINER_REGISTERED_FLAGS_START + REMATCH_JEFFREY)
+#define FLAG_REGISTERED_CAMERON (TRAINER_REGISTERED_FLAGS_START + REMATCH_CAMERON)
+#define FLAG_REGISTERED_JACKI (TRAINER_REGISTERED_FLAGS_START + REMATCH_JACKI)
+#define FLAG_REGISTERED_WALTER (TRAINER_REGISTERED_FLAGS_START + REMATCH_WALTER)
+#define FLAG_REGISTERED_KAREN (TRAINER_REGISTERED_FLAGS_START + REMATCH_KAREN)
+#define FLAG_REGISTERED_JERRY (TRAINER_REGISTERED_FLAGS_START + REMATCH_JERRY)
+#define FLAG_REGISTERED_ANNA_AND_MEG (TRAINER_REGISTERED_FLAGS_START + REMATCH_ANNA_AND_MEG)
+#define FLAG_REGISTERED_ISABEL (TRAINER_REGISTERED_FLAGS_START + REMATCH_ISABEL)
+#define FLAG_REGISTERED_MIGUEL (TRAINER_REGISTERED_FLAGS_START + REMATCH_MIGUEL)
+#define FLAG_REGISTERED_TIMOTHY (TRAINER_REGISTERED_FLAGS_START + REMATCH_TIMOTHY)
+#define FLAG_REGISTERED_SHELBY (TRAINER_REGISTERED_FLAGS_START + REMATCH_SHELBY)
+#define FLAG_REGISTERED_CALVIN (TRAINER_REGISTERED_FLAGS_START + REMATCH_CALVIN)
+#define FLAG_REGISTERED_ELLIOT (TRAINER_REGISTERED_FLAGS_START + REMATCH_ELLIOT)
+#define FLAG_REGISTERED_ISAIAH (TRAINER_REGISTERED_FLAGS_START + REMATCH_ISAIAH)
+#define FLAG_REGISTERED_MARIA (TRAINER_REGISTERED_FLAGS_START + REMATCH_MARIA)
+#define FLAG_REGISTERED_ABIGAIL (TRAINER_REGISTERED_FLAGS_START + REMATCH_ABIGAIL)
+#define FLAG_REGISTERED_DYLAN (TRAINER_REGISTERED_FLAGS_START + REMATCH_DYLAN)
+#define FLAG_REGISTERED_KATELYN (TRAINER_REGISTERED_FLAGS_START + REMATCH_KATELYN)
+#define FLAG_REGISTERED_BENJAMIN (TRAINER_REGISTERED_FLAGS_START + REMATCH_BENJAMIN)
+#define FLAG_REGISTERED_PABLO (TRAINER_REGISTERED_FLAGS_START + REMATCH_PABLO)
+#define FLAG_REGISTERED_NICOLAS (TRAINER_REGISTERED_FLAGS_START + REMATCH_NICOLAS)
+#define FLAG_REGISTERED_ROBERT (TRAINER_REGISTERED_FLAGS_START + REMATCH_ROBERT)
+#define FLAG_REGISTERED_LAO (TRAINER_REGISTERED_FLAGS_START + REMATCH_LAO)
+#define FLAG_REGISTERED_CYNDY (TRAINER_REGISTERED_FLAGS_START + REMATCH_CYNDY)
+#define FLAG_REGISTERED_MADELINE (TRAINER_REGISTERED_FLAGS_START + REMATCH_MADELINE)
+#define FLAG_REGISTERED_JENNY (TRAINER_REGISTERED_FLAGS_START + REMATCH_JENNY)
+#define FLAG_REGISTERED_DIANA (TRAINER_REGISTERED_FLAGS_START + REMATCH_DIANA)
+#define FLAG_REGISTERED_AMY_AND_LIV (TRAINER_REGISTERED_FLAGS_START + REMATCH_AMY_AND_LIV)
+#define FLAG_REGISTERED_ERNEST (TRAINER_REGISTERED_FLAGS_START + REMATCH_ERNEST)
+#define FLAG_REGISTERED_CORY (TRAINER_REGISTERED_FLAGS_START + REMATCH_CORY)
+#define FLAG_REGISTERED_EDWIN (TRAINER_REGISTERED_FLAGS_START + REMATCH_EDWIN)
+#define FLAG_REGISTERED_LYDIA (TRAINER_REGISTERED_FLAGS_START + REMATCH_LYDIA)
+#define FLAG_REGISTERED_ISAAC (TRAINER_REGISTERED_FLAGS_START + REMATCH_ISAAC)
+#define FLAG_REGISTERED_GABRIELLE (TRAINER_REGISTERED_FLAGS_START + REMATCH_GABRIELLE)
+#define FLAG_REGISTERED_CATHERINE (TRAINER_REGISTERED_FLAGS_START + REMATCH_CATHERINE)
+#define FLAG_REGISTERED_JACKSON (TRAINER_REGISTERED_FLAGS_START + REMATCH_JACKSON)
+#define FLAG_REGISTERED_HALEY (TRAINER_REGISTERED_FLAGS_START + REMATCH_HALEY)
+#define FLAG_REGISTERED_JAMES (TRAINER_REGISTERED_FLAGS_START + REMATCH_JAMES)
+#define FLAG_REGISTERED_TRENT (TRAINER_REGISTERED_FLAGS_START + REMATCH_TRENT)
+#define FLAG_REGISTERED_SAWYER (TRAINER_REGISTERED_FLAGS_START + REMATCH_SAWYER)
+#define FLAG_REGISTERED_KIRA_AND_DAN (TRAINER_REGISTERED_FLAGS_START + REMATCH_KIRA_AND_DAN)
+#define FLAG_REGISTERED_WALLY (TRAINER_REGISTERED_FLAGS_START + REMATCH_WALLY)
+#define FLAG_REGISTERED_ROXANNE (TRAINER_REGISTERED_FLAGS_START + REMATCH_ROXANNE)
+#define FLAG_REGISTERED_BRAWLY (TRAINER_REGISTERED_FLAGS_START + REMATCH_BRAWLY)
+#define FLAG_REGISTERED_WATTSON (TRAINER_REGISTERED_FLAGS_START + REMATCH_WATTSON)
+#define FLAG_REGISTERED_FLANNERY (TRAINER_REGISTERED_FLAGS_START + REMATCH_FLANNERY)
+#define FLAG_REGISTERED_NORMAN (TRAINER_REGISTERED_FLAGS_START + REMATCH_NORMAN)
+#define FLAG_REGISTERED_WINONA (TRAINER_REGISTERED_FLAGS_START + REMATCH_WINONA)
+#define FLAG_REGISTERED_TATE_AND_LIZA (TRAINER_REGISTERED_FLAGS_START + REMATCH_TATE_AND_LIZA)
+#define FLAG_REGISTERED_JUAN (TRAINER_REGISTERED_FLAGS_START + REMATCH_JUAN)
+#define FLAG_REGISTERED_SIDNEY (TRAINER_REGISTERED_FLAGS_START + REMATCH_SIDNEY)
+#define FLAG_REGISTERED_PHOEBE (TRAINER_REGISTERED_FLAGS_START + REMATCH_PHOEBE)
+#define FLAG_REGISTERED_GLACIA (TRAINER_REGISTERED_FLAGS_START + REMATCH_GLACIA)
+#define FLAG_REGISTERED_DRAKE (TRAINER_REGISTERED_FLAGS_START + REMATCH_DRAKE)
+#define FLAG_REGISTERED_WALLACE (TRAINER_REGISTERED_FLAGS_START + REMATCH_WALLACE)
#define FLAG_UNUSED_0x1AA 0x1AA // Unused Flag
#define FLAG_UNUSED_0x1AB 0x1AB // Unused Flag
@@ -843,7 +847,7 @@
#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1 0x31C
#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1 0x31D
#define FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1 0x31E
-#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3 0x31F
+#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2 0x31F
#define FLAG_HIDE_LUGIA 0x320
#define FLAG_HIDE_HO_OH 0x321
#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_REPORTER 0x322
@@ -915,7 +919,7 @@
#define FLAG_HIDE_LITTLEROOT_TOWN_FAT_MAN 0x364
#define FLAG_HIDE_SLATEPORT_CITY_STERNS_SHIPYARD_MR_BRINEY 0x365
#define FLAG_HIDE_LANETTES_HOUSE_LANETTE 0x366
-#define FLAG_HIDE_FALLORBOR_POKEMON_CENTER_LANETTE 0x367
+#define FLAG_HIDE_FALLARBOR_POKEMON_CENTER_LANETTE 0x367
#define FLAG_HIDE_TRICK_HOUSE_ENTRANCE_MAN 0x368
#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_REPLACEMENT 0x369
#define FLAG_HIDE_DESERT_UNDERPASS_FOSSIL 0x36A
@@ -947,7 +951,7 @@
#define FLAG_HIDE_ROUTE_110_TEAM_AQUA 0x384
#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2 0x385
#define FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2 0x386
-#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2 0x387
+#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3 0x387
#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3 0x388
#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_PATRONS 0x389
#define FLAG_HIDE_ROUTE_104_WHITE_HERB_FLORIST 0x38A
diff --git a/include/constants/global.h b/include/constants/global.h
index 2b70378ff5..2dff51e1e9 100644
--- a/include/constants/global.h
+++ b/include/constants/global.h
@@ -2,9 +2,9 @@
#define GUARD_CONSTANTS_GLOBAL_H
// Invalid Versions show as "----------" in Gen 4 and Gen 5's summary screen.
// In Gens 6 and 7, invalid versions instead show "a distant land" in the summary screen.
-// In Gen 4 only, migrated Pokemon with Diamond, Pearl, or Platinum's ID show as "----------".
+// In Gen 4 only, migrated Pokémon with Diamond, Pearl, or Platinum's ID show as "----------".
// Gen 5 and up read Diamond, Pearl, or Platinum's ID as "Sinnoh".
-// In Gen 4 and up, migrated Pokemon with HeartGold or SoulSilver's ID show the otherwise unused "Johto" string.
+// In Gen 4 and up, migrated Pokémon with HeartGold or SoulSilver's ID show the otherwise unused "Johto" string.
#define VERSION_SAPPHIRE 1
#define VERSION_RUBY 2
#define VERSION_EMERALD 3
@@ -114,7 +114,7 @@
#define FEMALE 1
#define GENDER_COUNT 2
-#define BARD_SONG_LENGTH 6
+#define NUM_BARD_SONG_WORDS 6
#define NUM_STORYTELLER_TALES 4
#define NUM_TRADER_ITEMS 4
#define GIDDY_MAX_TALES 10
diff --git a/include/constants/heal_locations.h b/include/constants/heal_locations.h
deleted file mode 100644
index d3dd8f1f17..0000000000
--- a/include/constants/heal_locations.h
+++ /dev/null
@@ -1,28 +0,0 @@
-#ifndef GUARD_CONSTANTS_HEAL_LOCATIONS_H
-#define GUARD_CONSTANTS_HEAL_LOCATIONS_H
-
-#define HEAL_LOCATION_NONE 0
-#define HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F 1
-#define HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F 2
-#define HEAL_LOCATION_PETALBURG_CITY 3
-#define HEAL_LOCATION_SLATEPORT_CITY 4
-#define HEAL_LOCATION_MAUVILLE_CITY 5
-#define HEAL_LOCATION_RUSTBORO_CITY 6
-#define HEAL_LOCATION_FORTREE_CITY 7
-#define HEAL_LOCATION_LILYCOVE_CITY 8
-#define HEAL_LOCATION_MOSSDEEP_CITY 9
-#define HEAL_LOCATION_SOOTOPOLIS_CITY 10
-#define HEAL_LOCATION_EVER_GRANDE_CITY 11
-#define HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE 12
-#define HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE 13
-#define HEAL_LOCATION_OLDALE_TOWN 14
-#define HEAL_LOCATION_DEWFORD_TOWN 15
-#define HEAL_LOCATION_LAVARIDGE_TOWN 16
-#define HEAL_LOCATION_FALLARBOR_TOWN 17
-#define HEAL_LOCATION_VERDANTURF_TOWN 18
-#define HEAL_LOCATION_PACIFIDLOG_TOWN 19
-#define HEAL_LOCATION_EVER_GRANDE_CITY_POKEMON_LEAGUE 20
-#define HEAL_LOCATION_SOUTHERN_ISLAND_EXTERIOR 21
-#define HEAL_LOCATION_BATTLE_FRONTIER_OUTSIDE_EAST 22
-
-#endif // GUARD_CONSTANTS_HEAL_LOCATIONS_H
diff --git a/include/constants/items.h b/include/constants/items.h
index 63cbfe6b97..9e6fecf014 100644
--- a/include/constants/items.h
+++ b/include/constants/items.h
@@ -23,7 +23,7 @@
#define FIRST_BALL ITEM_MASTER_BALL
#define LAST_BALL ITEM_PREMIER_BALL
-// Pokemon Items
+// Pokémon Items
#define ITEM_POTION 13
#define ITEM_ANTIDOTE 14
#define ITEM_BURN_HEAL 15
@@ -441,8 +441,8 @@
#define NUM_ROUTE_114_MAN_BERRIES (LAST_ROUTE_114_MAN_BERRY - FIRST_ROUTE_114_MAN_BERRY + 1)
#define NUM_ROUTE_114_MAN_BERRIES_SKIPPED (FIRST_ROUTE_114_MAN_BERRY - FIRST_BERRY_INDEX)
-#define ITEM_TO_BERRY(itemId)(((itemId) - FIRST_BERRY_INDEX) + 1)
-#define ITEM_TO_MAIL(itemId)((itemId) - FIRST_MAIL_INDEX)
+#define ITEM_TO_BERRY(itemId) (((itemId) - FIRST_BERRY_INDEX) + 1)
+#define ITEM_TO_MAIL(itemId) ((itemId) - FIRST_MAIL_INDEX)
#define MAIL_NONE 0xFF
#define NUM_TECHNICAL_MACHINES 50
@@ -476,7 +476,7 @@
#define ITEM_B_USE_MEDICINE 1
#define ITEM_B_USE_OTHER 2
-// Check if the item is one that can be used on a Pokemon.
+// Check if the item is one that can be used on a Pokémon.
#define ITEM_HAS_EFFECT(item) ((item) >= ITEM_POTION && (item) <= MAX_BERRY_INDEX)
#endif // GUARD_CONSTANTS_ITEMS_H
diff --git a/include/constants/layouts.h b/include/constants/layouts.h
deleted file mode 100755
index db92c95942..0000000000
--- a/include/constants/layouts.h
+++ /dev/null
@@ -1,450 +0,0 @@
-#ifndef GUARD_CONSTANTS_LAYOUTS_H
-#define GUARD_CONSTANTS_LAYOUTS_H
-
-//
-// DO NOT MODIFY THIS FILE! It is auto-generated from data/layouts/layouts.json
-//
-
-#define LAYOUT_PETALBURG_CITY 1
-#define LAYOUT_SLATEPORT_CITY 2
-#define LAYOUT_MAUVILLE_CITY 3
-#define LAYOUT_RUSTBORO_CITY 4
-#define LAYOUT_FORTREE_CITY 5
-#define LAYOUT_LILYCOVE_CITY 6
-#define LAYOUT_MOSSDEEP_CITY 7
-#define LAYOUT_SOOTOPOLIS_CITY 8
-#define LAYOUT_EVER_GRANDE_CITY 9
-#define LAYOUT_LITTLEROOT_TOWN 10
-#define LAYOUT_OLDALE_TOWN 11
-#define LAYOUT_DEWFORD_TOWN 12
-#define LAYOUT_LAVARIDGE_TOWN 13
-#define LAYOUT_FALLARBOR_TOWN 14
-#define LAYOUT_VERDANTURF_TOWN 15
-#define LAYOUT_PACIFIDLOG_TOWN 16
-#define LAYOUT_ROUTE101 17
-#define LAYOUT_ROUTE102 18
-#define LAYOUT_ROUTE103 19
-#define LAYOUT_ROUTE104 20
-#define LAYOUT_ROUTE105 21
-#define LAYOUT_ROUTE106 22
-#define LAYOUT_ROUTE107 23
-#define LAYOUT_ROUTE108 24
-#define LAYOUT_ROUTE109 25
-#define LAYOUT_ROUTE110 26
-#define LAYOUT_ROUTE111 27
-#define LAYOUT_ROUTE112 28
-#define LAYOUT_ROUTE113 29
-#define LAYOUT_ROUTE114 30
-#define LAYOUT_ROUTE115 31
-#define LAYOUT_ROUTE116 32
-#define LAYOUT_ROUTE117 33
-#define LAYOUT_ROUTE118 34
-#define LAYOUT_ROUTE119 35
-#define LAYOUT_ROUTE120 36
-#define LAYOUT_ROUTE121 37
-#define LAYOUT_ROUTE122 38
-#define LAYOUT_ROUTE123 39
-#define LAYOUT_ROUTE124 40
-#define LAYOUT_ROUTE125 41
-#define LAYOUT_ROUTE126 42
-#define LAYOUT_ROUTE127 43
-#define LAYOUT_ROUTE128 44
-#define LAYOUT_ROUTE129 45
-#define LAYOUT_ROUTE130_MIRAGE_ISLAND 46
-#define LAYOUT_ROUTE131 47
-#define LAYOUT_ROUTE132 48
-#define LAYOUT_ROUTE133 49
-#define LAYOUT_ROUTE134 50
-#define LAYOUT_UNDERWATER_ROUTE126 51
-#define LAYOUT_UNDERWATER_ROUTE127 52
-#define LAYOUT_UNDERWATER_ROUTE128 53
-#define LAYOUT_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F 54
-#define LAYOUT_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F 55
-#define LAYOUT_LITTLEROOT_TOWN_MAYS_HOUSE_1F 56
-#define LAYOUT_LITTLEROOT_TOWN_MAYS_HOUSE_2F 57
-#define LAYOUT_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB 58
-#define LAYOUT_HOUSE1 59
-#define LAYOUT_HOUSE2 60
-#define LAYOUT_POKEMON_CENTER_1F 61
-#define LAYOUT_POKEMON_CENTER_2F 62
-#define LAYOUT_MART 63
-#define LAYOUT_HOUSE3 64
-#define LAYOUT_DEWFORD_TOWN_GYM 65
-#define LAYOUT_DEWFORD_TOWN_HALL 66
-#define LAYOUT_HOUSE4 67
-#define LAYOUT_LAVARIDGE_TOWN_HERB_SHOP 68
-#define LAYOUT_LAVARIDGE_TOWN_GYM_1F 69
-#define LAYOUT_LAVARIDGE_TOWN_GYM_B1F 70
-#define LAYOUT_LAVARIDGE_TOWN_POKEMON_CENTER_1F 71
-#define LAYOUT_FALLARBOR_TOWN_LEFTOVER_RSCONTEST_LOBBY 72
-#define LAYOUT_FALLARBOR_TOWN_LEFTOVER_RSCONTEST_HALL 73
-#define LAYOUT_LILYCOVE_CITY_HOUSE2 74
-#define LAYOUT_UNUSED_CONTEST_ROOM1 75
-#define LAYOUT_VERDANTURF_TOWN_WANDAS_HOUSE 76
-#define LAYOUT_PACIFIDLOG_TOWN_HOUSE1 77
-#define LAYOUT_PACIFIDLOG_TOWN_HOUSE2 78
-#define LAYOUT_PETALBURG_CITY_GYM 79
-#define LAYOUT_HOUSE_WITH_BED 80
-#define LAYOUT_SLATEPORT_CITY_STERNS_SHIPYARD_1F 81
-#define LAYOUT_SLATEPORT_CITY_STERNS_SHIPYARD_2F 82
-#define LAYOUT_UNUSED_CONTEST_ROOM2 83
-#define LAYOUT_UNUSED_CONTEST_ROOM3 84
-#define LAYOUT_SLATEPORT_CITY_POKEMON_FAN_CLUB 85
-#define LAYOUT_SLATEPORT_CITY_OCEANIC_MUSEUM_1F 86
-#define LAYOUT_SLATEPORT_CITY_OCEANIC_MUSEUM_2F 87
-#define LAYOUT_HARBOR 88
-#define LAYOUT_MAUVILLE_CITY_GYM 89
-#define LAYOUT_MAUVILLE_CITY_BIKE_SHOP 90
-#define LAYOUT_MAUVILLE_CITY_GAME_CORNER 91
-#define LAYOUT_RUSTBORO_CITY_DEVON_CORP_1F 92
-#define LAYOUT_RUSTBORO_CITY_DEVON_CORP_2F 93
-#define LAYOUT_RUSTBORO_CITY_GYM 94
-#define LAYOUT_RUSTBORO_CITY_POKEMON_SCHOOL 95
-#define LAYOUT_RUSTBORO_CITY_HOUSE 96
-#define LAYOUT_RUSTBORO_CITY_HOUSE1 97
-#define LAYOUT_RUSTBORO_CITY_CUTTERS_HOUSE 98
-#define LAYOUT_FORTREE_CITY_HOUSE1 99
-#define LAYOUT_FORTREE_CITY_GYM 100
-#define LAYOUT_FORTREE_CITY_HOUSE2 101
-#define LAYOUT_ROUTE104_MR_BRINEYS_HOUSE 102
-#define LAYOUT_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F 103
-#define LAYOUT_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F 104
-#define LAYOUT_LILYCOVE_CITY_CONTEST_LOBBY 105
-#define LAYOUT_LILYCOVE_CITY_CONTEST_HALL 106
-#define LAYOUT_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB 107
-#define LAYOUT_MOSSDEEP_CITY_GYM 108
-#define LAYOUT_SOOTOPOLIS_CITY_GYM_1F 109
-#define LAYOUT_SOOTOPOLIS_CITY_GYM_B1F 110
-#define LAYOUT_EVER_GRANDE_CITY_SIDNEYS_ROOM 111
-#define LAYOUT_EVER_GRANDE_CITY_PHOEBES_ROOM 112
-#define LAYOUT_EVER_GRANDE_CITY_GLACIAS_ROOM 113
-#define LAYOUT_EVER_GRANDE_CITY_DRAKES_ROOM 114
-#define LAYOUT_EVER_GRANDE_CITY_CHAMPIONS_ROOM 115
-#define LAYOUT_EVER_GRANDE_CITY_SHORT_HALL 116
-#define LAYOUT_ROUTE104_PRETTY_PETAL_FLOWER_SHOP 117
-#define LAYOUT_CABLE_CAR_STATION 118
-#define LAYOUT_ROUTE114_FOSSIL_MANIACS_HOUSE 119
-#define LAYOUT_ROUTE114_FOSSIL_MANIACS_TUNNEL 120
-#define LAYOUT_ROUTE114_LANETTES_HOUSE 121
-#define LAYOUT_ROUTE116_TUNNELERS_REST_HOUSE 122
-#define LAYOUT_ROUTE117_POKEMON_DAY_CARE 123
-#define LAYOUT_ROUTE121_SAFARI_ZONE_ENTRANCE 124
-#define LAYOUT_METEOR_FALLS_1F_1R 125
-#define LAYOUT_METEOR_FALLS_1F_2R 126
-#define LAYOUT_METEOR_FALLS_B1F_1R 127
-#define LAYOUT_METEOR_FALLS_B1F_2R 128
-#define LAYOUT_RUSTURF_TUNNEL 129
-#define LAYOUT_UNDERWATER_SOOTOPOLIS_CITY 130
-#define LAYOUT_DESERT_RUINS 131
-#define LAYOUT_GRANITE_CAVE_1F 132
-#define LAYOUT_GRANITE_CAVE_B1F 133
-#define LAYOUT_GRANITE_CAVE_B2F 134
-#define LAYOUT_PETALBURG_WOODS 135
-#define LAYOUT_MT_CHIMNEY 136
-#define LAYOUT_MT_PYRE_1F 137
-#define LAYOUT_MT_PYRE_2F 138
-#define LAYOUT_MT_PYRE_3F 139
-#define LAYOUT_MT_PYRE_4F 140
-#define LAYOUT_MT_PYRE_5F 141
-#define LAYOUT_MT_PYRE_6F 142
-#define LAYOUT_AQUA_HIDEOUT_1F 143
-#define LAYOUT_AQUA_HIDEOUT_B1F 144
-#define LAYOUT_AQUA_HIDEOUT_B2F 145
-#define LAYOUT_UNDERWATER_SEAFLOOR_CAVERN 146
-#define LAYOUT_SEAFLOOR_CAVERN_ENTRANCE 147
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM1 148
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM2 149
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM3 150
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM4 151
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM5 152
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM6 153
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM7 154
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM8 155
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM9 156
-#define LAYOUT_CAVE_OF_ORIGIN_ENTRANCE 157
-#define LAYOUT_CAVE_OF_ORIGIN_1F 158
-#define LAYOUT_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP1 159
-#define LAYOUT_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP2 160
-#define LAYOUT_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP3 161
-#define LAYOUT_CAVE_OF_ORIGIN_B1F 162
-#define LAYOUT_VICTORY_ROAD_1F 163
-#define LAYOUT_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM 164
-#define LAYOUT_SHOAL_CAVE_LOW_TIDE_INNER_ROOM 165
-#define LAYOUT_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM 166
-#define LAYOUT_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM 167
-#define LAYOUT_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM 168
-#define LAYOUT_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM 169
-#define LAYOUT_UNUSED_CAVE1 170
-#define LAYOUT_UNUSED_CAVE2 171
-#define LAYOUT_UNUSED_CAVE3 172
-#define LAYOUT_UNUSED_CAVE4 173
-#define LAYOUT_UNUSED_CAVE5 174
-#define LAYOUT_UNUSED_CAVE6 175
-#define LAYOUT_UNUSED_CAVE7 176
-#define LAYOUT_UNUSED_CAVE8 177
-#define LAYOUT_UNUSED_CAVE9 178
-#define LAYOUT_UNUSED_CAVE10 179
-#define LAYOUT_UNUSED_CAVE11 180
-#define LAYOUT_UNUSED_CAVE12 181
-#define LAYOUT_UNUSED_CAVE13 182
-#define LAYOUT_UNUSED_CAVE14 183
-#define LAYOUT_NEW_MAUVILLE_ENTRANCE 184
-#define LAYOUT_NEW_MAUVILLE_INSIDE 185
-#define LAYOUT_ABANDONED_SHIP_DECK 186
-#define LAYOUT_ABANDONED_SHIP_CORRIDORS_1F 187
-#define LAYOUT_ABANDONED_SHIP_ROOMS_1F 188
-#define LAYOUT_ABANDONED_SHIP_CORRIDORS_B1F 189
-#define LAYOUT_ABANDONED_SHIP_ROOMS_B1F 190
-#define LAYOUT_ABANDONED_SHIP_ROOMS2_B1F 191
-#define LAYOUT_ABANDONED_SHIP_UNDERWATER1 192
-#define LAYOUT_ABANDONED_SHIP_ROOM_B1F 193
-#define LAYOUT_ABANDONED_SHIP_ROOMS2_1F 194
-#define LAYOUT_ABANDONED_SHIP_CAPTAINS_OFFICE 195
-#define LAYOUT_ABANDONED_SHIP_UNDERWATER2 196
-#define LAYOUT_SECRET_BASE_RED_CAVE1 197
-#define LAYOUT_SECRET_BASE_BROWN_CAVE1 198
-#define LAYOUT_SECRET_BASE_BLUE_CAVE1 199
-#define LAYOUT_SECRET_BASE_YELLOW_CAVE1 200
-#define LAYOUT_SECRET_BASE_TREE1 201
-#define LAYOUT_SECRET_BASE_SHRUB1 202
-#define LAYOUT_SECRET_BASE_RED_CAVE2 203
-#define LAYOUT_SECRET_BASE_BROWN_CAVE2 204
-#define LAYOUT_SECRET_BASE_BLUE_CAVE2 205
-#define LAYOUT_SECRET_BASE_YELLOW_CAVE2 206
-#define LAYOUT_SECRET_BASE_TREE2 207
-#define LAYOUT_SECRET_BASE_SHRUB2 208
-#define LAYOUT_SECRET_BASE_RED_CAVE3 209
-#define LAYOUT_SECRET_BASE_BROWN_CAVE3 210
-#define LAYOUT_SECRET_BASE_BLUE_CAVE3 211
-#define LAYOUT_SECRET_BASE_YELLOW_CAVE3 212
-#define LAYOUT_SECRET_BASE_TREE3 213
-#define LAYOUT_SECRET_BASE_SHRUB3 214
-#define LAYOUT_SECRET_BASE_RED_CAVE4 215
-#define LAYOUT_SECRET_BASE_BROWN_CAVE4 216
-#define LAYOUT_SECRET_BASE_BLUE_CAVE4 217
-#define LAYOUT_SECRET_BASE_YELLOW_CAVE4 218
-#define LAYOUT_SECRET_BASE_TREE4 219
-#define LAYOUT_SECRET_BASE_SHRUB4 220
-#define LAYOUT_BATTLE_COLOSSEUM_2P 221
-#define LAYOUT_TRADE_CENTER 222
-#define LAYOUT_RECORD_CORNER 223
-#define LAYOUT_BATTLE_COLOSSEUM_4P 224
-#define LAYOUT_CONTEST_HALL 225
-#define LAYOUT_UNUSED_CONTEST_HALL1 226
-#define LAYOUT_UNUSED_CONTEST_HALL2 227
-#define LAYOUT_UNUSED_CONTEST_HALL3 228
-#define LAYOUT_UNUSED_CONTEST_HALL4 229
-#define LAYOUT_UNUSED_CONTEST_HALL5 230
-#define LAYOUT_UNUSED_CONTEST_HALL6 231
-#define LAYOUT_CONTEST_HALL_BEAUTY 232
-#define LAYOUT_CONTEST_HALL_TOUGH 233
-#define LAYOUT_CONTEST_HALL_COOL 234
-#define LAYOUT_CONTEST_HALL_SMART 235
-#define LAYOUT_CONTEST_HALL_CUTE 236
-#define LAYOUT_INSIDE_OF_TRUCK 237
-#define LAYOUT_SAFARI_ZONE_NORTHWEST 238
-#define LAYOUT_SAFARI_ZONE_NORTH 239
-#define LAYOUT_SAFARI_ZONE_SOUTHWEST 240
-#define LAYOUT_SAFARI_ZONE_SOUTH 241
-#define LAYOUT_UNUSED_OUTDOOR_AREA 242
-#define LAYOUT_ROUTE109_SEASHORE_HOUSE 243
-#define LAYOUT_ROUTE110_TRICK_HOUSE_ENTRANCE 244
-#define LAYOUT_ROUTE110_TRICK_HOUSE_END 245
-#define LAYOUT_ROUTE110_TRICK_HOUSE_CORRIDOR 246
-#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE1 247
-#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE2 248
-#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE3 249
-#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE4 250
-#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE5 251
-#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE6 252
-#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE7 253
-#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE8 254
-#define LAYOUT_FORTREE_CITY_DECORATION_SHOP 255
-#define LAYOUT_ROUTE110_SEASIDE_CYCLING_ROAD_ENTRANCE 256
-#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_1F 257
-#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_2F 258
-#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_3F 259
-#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_4F 260
-#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_5F 261
-#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP 262
-#define LAYOUT_ROUTE130 263
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY 264
-#define LAYOUT_BATTLE_FRONTIER_OUTSIDE_WEST 265
-#define LAYOUT_BATTLE_ELEVATOR 266
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR 267
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM 268
-#define LAYOUT_RUSTBORO_CITY_DEVON_CORP_3F 269
-#define LAYOUT_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F 270
-#define LAYOUT_ROUTE119_WEATHER_INSTITUTE_1F 271
-#define LAYOUT_ROUTE119_WEATHER_INSTITUTE_2F 272
-#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR 273
-#define LAYOUT_UNDERWATER_ROUTE124 274
-#define LAYOUT_MOSSDEEP_CITY_SPACE_CENTER_1F 275
-#define LAYOUT_MOSSDEEP_CITY_SPACE_CENTER_2F 276
-#define LAYOUT_SS_TIDAL_CORRIDOR 277
-#define LAYOUT_SS_TIDAL_LOWER_DECK 278
-#define LAYOUT_SS_TIDAL_ROOMS 279
-#define LAYOUT_ISLAND_CAVE 280
-#define LAYOUT_ANCIENT_TOMB 281
-#define LAYOUT_UNDERWATER_ROUTE134 282
-#define LAYOUT_UNDERWATER_SEALED_CHAMBER 283
-#define LAYOUT_SEALED_CHAMBER_OUTER_ROOM 284
-#define LAYOUT_VICTORY_ROAD_B1F 285
-#define LAYOUT_VICTORY_ROAD_B2F 286
-#define LAYOUT_ROUTE104_PROTOTYPE 287
-#define LAYOUT_GRANITE_CAVE_STEVENS_ROOM 288
-#define LAYOUT_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS 289
-#define LAYOUT_SOUTHERN_ISLAND_EXTERIOR 290
-#define LAYOUT_SOUTHERN_ISLAND_INTERIOR 291
-#define LAYOUT_JAGGED_PASS 292
-#define LAYOUT_FIERY_PATH 293
-#define LAYOUT_RUSTBORO_CITY_FLAT2_1F 294
-#define LAYOUT_RUSTBORO_CITY_FLAT2_2F 295
-#define LAYOUT_RUSTBORO_CITY_FLAT2_3F 296
-#define LAYOUT_SOOTOPOLIS_CITY_LOTAD_AND_SEEDOT_HOUSE 297
-#define LAYOUT_EVER_GRANDE_CITY_HALL_OF_FAME 298
-#define LAYOUT_LILYCOVE_CITY_COVE_LILY_MOTEL_1F 299
-#define LAYOUT_LILYCOVE_CITY_COVE_LILY_MOTEL_2F 300
-#define LAYOUT_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE 301
-#define LAYOUT_MT_PYRE_EXTERIOR 302
-#define LAYOUT_MT_PYRE_SUMMIT 303
-#define LAYOUT_SEALED_CHAMBER_INNER_ROOM 304
-#define LAYOUT_MOSSDEEP_CITY_GAME_CORNER_1F 305
-#define LAYOUT_MOSSDEEP_CITY_GAME_CORNER_B1F 306
-#define LAYOUT_SOOTOPOLIS_CITY_HOUSE1 307
-#define LAYOUT_SOOTOPOLIS_CITY_HOUSE2 308
-#define LAYOUT_SOOTOPOLIS_CITY_HOUSE3 309
-#define LAYOUT_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS 310
-#define LAYOUT_SCORCHED_SLAB 311
-#define LAYOUT_CAVE_OF_ORIGIN_UNUSED_B4F_LAVA 312
-#define LAYOUT_RUSTBORO_CITY_FLAT1_1F 313
-#define LAYOUT_RUSTBORO_CITY_FLAT1_2F 314
-#define LAYOUT_EVER_GRANDE_CITY_HALL4 315
-#define LAYOUT_AQUA_HIDEOUT_UNUSED_RUBY_MAP1 316
-#define LAYOUT_AQUA_HIDEOUT_UNUSED_RUBY_MAP2 317
-#define LAYOUT_AQUA_HIDEOUT_UNUSED_RUBY_MAP3 318
-#define LAYOUT_ROUTE131_SKY_PILLAR 319
-#define LAYOUT_SKY_PILLAR_ENTRANCE 320
-#define LAYOUT_SKY_PILLAR_OUTSIDE 321
-#define LAYOUT_SKY_PILLAR_1F 322
-#define LAYOUT_SKY_PILLAR_2F 323
-#define LAYOUT_SKY_PILLAR_3F 324
-#define LAYOUT_SKY_PILLAR_4F 325
-#define LAYOUT_SEAFLOOR_CAVERN_ROOM9_LAVA 326
-#define LAYOUT_MOSSDEEP_CITY_STEVENS_HOUSE 327
-#define LAYOUT_SHOAL_CAVE_LOW_TIDE_ICE_ROOM 328
-#define LAYOUT_SAFARI_ZONE_REST_HOUSE 329
-#define LAYOUT_SKY_PILLAR_5F 330
-#define LAYOUT_SKY_PILLAR_TOP 331
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_DOME_LOBBY 332
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR 333
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM 334
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM 335
-#define LAYOUT_MAGMA_HIDEOUT_1F 336
-#define LAYOUT_MAGMA_HIDEOUT_2F_1R 337
-#define LAYOUT_MAGMA_HIDEOUT_2F_2R 338
-#define LAYOUT_MAGMA_HIDEOUT_3F_1R 339
-#define LAYOUT_MAGMA_HIDEOUT_3F_2R 340
-#define LAYOUT_MAGMA_HIDEOUT_4F 341
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY 342
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR 343
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM 344
-#define LAYOUT_BATTLE_FRONTIER_OUTSIDE_EAST 345
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY 346
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM 347
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM 348
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY 349
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR 350
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM 351
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL 352
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL 353
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY 354
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR 355
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM 356
-#define LAYOUT_SOOTOPOLIS_CITY_LEGENDS_BATTLE 357
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS 358
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_UNUSED 359
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY 360
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR 361
-#define LAYOUT_BATTLE_PYRAMID_SQUARE01 362
-#define LAYOUT_BATTLE_PYRAMID_SQUARE02 363
-#define LAYOUT_BATTLE_PYRAMID_SQUARE03 364
-#define LAYOUT_BATTLE_PYRAMID_SQUARE04 365
-#define LAYOUT_BATTLE_PYRAMID_SQUARE05 366
-#define LAYOUT_BATTLE_PYRAMID_SQUARE06 367
-#define LAYOUT_BATTLE_PYRAMID_SQUARE07 368
-#define LAYOUT_BATTLE_PYRAMID_SQUARE08 369
-#define LAYOUT_BATTLE_PYRAMID_SQUARE09 370
-#define LAYOUT_BATTLE_PYRAMID_SQUARE10 371
-#define LAYOUT_BATTLE_PYRAMID_SQUARE11 372
-#define LAYOUT_BATTLE_PYRAMID_SQUARE12 373
-#define LAYOUT_BATTLE_PYRAMID_SQUARE13 374
-#define LAYOUT_BATTLE_PYRAMID_SQUARE14 375
-#define LAYOUT_BATTLE_PYRAMID_SQUARE15 376
-#define LAYOUT_BATTLE_PYRAMID_SQUARE16 377
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP 378
-#define LAYOUT_MAGMA_HIDEOUT_3F_3R 379
-#define LAYOUT_MAGMA_HIDEOUT_2F_3R 380
-#define LAYOUT_MIRAGE_TOWER_1F 381
-#define LAYOUT_MIRAGE_TOWER_2F 382
-#define LAYOUT_MIRAGE_TOWER_3F 383
-#define LAYOUT_BATTLE_TENT_LOBBY 384
-#define LAYOUT_BATTLE_TENT_CORRIDOR 385
-#define LAYOUT_BATTLE_TENT_BATTLE_ROOM 386
-#define LAYOUT_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM 387
-#define LAYOUT_MIRAGE_TOWER_4F 388
-#define LAYOUT_DESERT_UNDERPASS 389
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM 390
-#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR 391
-#define LAYOUT_ROUTE111_NO_MIRAGE_TOWER 392
-#define LAYOUT_UNION_ROOM 393
-#define LAYOUT_SAFARI_ZONE_NORTHEAST 394
-#define LAYOUT_SAFARI_ZONE_SOUTHEAST 395
-#define LAYOUT_BATTLE_FRONTIER_RANKING_HALL 396
-#define LAYOUT_BATTLE_FRONTIER_LOUNGE1 397
-#define LAYOUT_BATTLE_FRONTIER_EXCHANGE_SERVICE_CORNER 398
-#define LAYOUT_BATTLE_FRONTIER_RECEPTION_GATE 399
-#define LAYOUT_ARTISAN_CAVE_B1F 400
-#define LAYOUT_ARTISAN_CAVE_1F 401
-#define LAYOUT_FARAWAY_ISLAND_ENTRANCE 402
-#define LAYOUT_FARAWAY_ISLAND_INTERIOR 403
-#define LAYOUT_BIRTH_ISLAND_EXTERIOR 404
-#define LAYOUT_ISLAND_HARBOR 405
-#define LAYOUT_UNDERWATER_MARINE_CAVE 406
-#define LAYOUT_MARINE_CAVE_ENTRANCE 407
-#define LAYOUT_TERRA_CAVE_ENTRANCE 408
-#define LAYOUT_TERRA_CAVE_END 409
-#define LAYOUT_UNDERWATER_ROUTE105 410
-#define LAYOUT_UNDERWATER_ROUTE125 411
-#define LAYOUT_UNDERWATER_ROUTE129 412
-#define LAYOUT_MARINE_CAVE_END 413
-#define LAYOUT_TRAINER_HILL_ENTRANCE 414
-#define LAYOUT_TRAINER_HILL_1F 415
-#define LAYOUT_TRAINER_HILL_2F 416
-#define LAYOUT_TRAINER_HILL_3F 417
-#define LAYOUT_TRAINER_HILL_4F 418
-#define LAYOUT_TRAINER_HILL_ROOF 419
-#define LAYOUT_ALTERING_CAVE 420
-#define LAYOUT_NAVEL_ROCK_EXTERIOR 421
-#define LAYOUT_NAVEL_ROCK_ENTRANCE 422
-#define LAYOUT_NAVEL_ROCK_TOP 423
-#define LAYOUT_NAVEL_ROCK_BOTTOM 424
-#define LAYOUT_NAVEL_ROCK_LADDER_ROOM1 425
-#define LAYOUT_NAVEL_ROCK_LADDER_ROOM2 426
-#define LAYOUT_NAVEL_ROCK_B1F 427
-#define LAYOUT_NAVEL_ROCK_FORK 428
-#define LAYOUT_BATTLE_FRONTIER_LOUNGE2 429
-#define LAYOUT_BATTLE_FRONTIER_SCOTTS_HOUSE 430
-#define LAYOUT_METEOR_FALLS_STEVENS_CAVE 431
-#define LAYOUT_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB_WITH_TABLE 432
-#define LAYOUT_SKY_PILLAR_1F_CLEAN 433
-#define LAYOUT_SKY_PILLAR_2F_CLEAN 434
-#define LAYOUT_SKY_PILLAR_3F_CLEAN 435
-#define LAYOUT_SKY_PILLAR_4F_CLEAN 436
-#define LAYOUT_SKY_PILLAR_5F_CLEAN 437
-#define LAYOUT_SKY_PILLAR_TOP_CLEAN 438
-#define LAYOUT_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F 439
-#define LAYOUT_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F 440
-#define LAYOUT_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F_STAIRS_UNBLOCKED 441
-
-#endif // GUARD_CONSTANTS_LAYOUTS_H
diff --git a/include/constants/map_groups.h b/include/constants/map_groups.h
deleted file mode 100755
index eaf40a525d..0000000000
--- a/include/constants/map_groups.h
+++ /dev/null
@@ -1,596 +0,0 @@
-#ifndef GUARD_CONSTANTS_MAP_GROUPS_H
-#define GUARD_CONSTANTS_MAP_GROUPS_H
-
-//
-// DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/map_groups.json
-//
-
-// gMapGroup_TownsAndRoutes
-#define MAP_PETALBURG_CITY (0 | (0 << 8))
-#define MAP_SLATEPORT_CITY (1 | (0 << 8))
-#define MAP_MAUVILLE_CITY (2 | (0 << 8))
-#define MAP_RUSTBORO_CITY (3 | (0 << 8))
-#define MAP_FORTREE_CITY (4 | (0 << 8))
-#define MAP_LILYCOVE_CITY (5 | (0 << 8))
-#define MAP_MOSSDEEP_CITY (6 | (0 << 8))
-#define MAP_SOOTOPOLIS_CITY (7 | (0 << 8))
-#define MAP_EVER_GRANDE_CITY (8 | (0 << 8))
-#define MAP_LITTLEROOT_TOWN (9 | (0 << 8))
-#define MAP_OLDALE_TOWN (10 | (0 << 8))
-#define MAP_DEWFORD_TOWN (11 | (0 << 8))
-#define MAP_LAVARIDGE_TOWN (12 | (0 << 8))
-#define MAP_FALLARBOR_TOWN (13 | (0 << 8))
-#define MAP_VERDANTURF_TOWN (14 | (0 << 8))
-#define MAP_PACIFIDLOG_TOWN (15 | (0 << 8))
-#define MAP_ROUTE101 (16 | (0 << 8))
-#define MAP_ROUTE102 (17 | (0 << 8))
-#define MAP_ROUTE103 (18 | (0 << 8))
-#define MAP_ROUTE104 (19 | (0 << 8))
-#define MAP_ROUTE105 (20 | (0 << 8))
-#define MAP_ROUTE106 (21 | (0 << 8))
-#define MAP_ROUTE107 (22 | (0 << 8))
-#define MAP_ROUTE108 (23 | (0 << 8))
-#define MAP_ROUTE109 (24 | (0 << 8))
-#define MAP_ROUTE110 (25 | (0 << 8))
-#define MAP_ROUTE111 (26 | (0 << 8))
-#define MAP_ROUTE112 (27 | (0 << 8))
-#define MAP_ROUTE113 (28 | (0 << 8))
-#define MAP_ROUTE114 (29 | (0 << 8))
-#define MAP_ROUTE115 (30 | (0 << 8))
-#define MAP_ROUTE116 (31 | (0 << 8))
-#define MAP_ROUTE117 (32 | (0 << 8))
-#define MAP_ROUTE118 (33 | (0 << 8))
-#define MAP_ROUTE119 (34 | (0 << 8))
-#define MAP_ROUTE120 (35 | (0 << 8))
-#define MAP_ROUTE121 (36 | (0 << 8))
-#define MAP_ROUTE122 (37 | (0 << 8))
-#define MAP_ROUTE123 (38 | (0 << 8))
-#define MAP_ROUTE124 (39 | (0 << 8))
-#define MAP_ROUTE125 (40 | (0 << 8))
-#define MAP_ROUTE126 (41 | (0 << 8))
-#define MAP_ROUTE127 (42 | (0 << 8))
-#define MAP_ROUTE128 (43 | (0 << 8))
-#define MAP_ROUTE129 (44 | (0 << 8))
-#define MAP_ROUTE130 (45 | (0 << 8))
-#define MAP_ROUTE131 (46 | (0 << 8))
-#define MAP_ROUTE132 (47 | (0 << 8))
-#define MAP_ROUTE133 (48 | (0 << 8))
-#define MAP_ROUTE134 (49 | (0 << 8))
-#define MAP_UNDERWATER_ROUTE124 (50 | (0 << 8))
-#define MAP_UNDERWATER_ROUTE126 (51 | (0 << 8))
-#define MAP_UNDERWATER_ROUTE127 (52 | (0 << 8))
-#define MAP_UNDERWATER_ROUTE128 (53 | (0 << 8))
-#define MAP_UNDERWATER_ROUTE129 (54 | (0 << 8))
-#define MAP_UNDERWATER_ROUTE105 (55 | (0 << 8))
-#define MAP_UNDERWATER_ROUTE125 (56 | (0 << 8))
-
-// gMapGroup_IndoorLittleroot
-#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F (0 | (1 << 8))
-#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F (1 | (1 << 8))
-#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F (2 | (1 << 8))
-#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F (3 | (1 << 8))
-#define MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB (4 | (1 << 8))
-
-// gMapGroup_IndoorOldale
-#define MAP_OLDALE_TOWN_HOUSE1 (0 | (2 << 8))
-#define MAP_OLDALE_TOWN_HOUSE2 (1 | (2 << 8))
-#define MAP_OLDALE_TOWN_POKEMON_CENTER_1F (2 | (2 << 8))
-#define MAP_OLDALE_TOWN_POKEMON_CENTER_2F (3 | (2 << 8))
-#define MAP_OLDALE_TOWN_MART (4 | (2 << 8))
-
-// gMapGroup_IndoorDewford
-#define MAP_DEWFORD_TOWN_HOUSE1 (0 | (3 << 8))
-#define MAP_DEWFORD_TOWN_POKEMON_CENTER_1F (1 | (3 << 8))
-#define MAP_DEWFORD_TOWN_POKEMON_CENTER_2F (2 | (3 << 8))
-#define MAP_DEWFORD_TOWN_GYM (3 | (3 << 8))
-#define MAP_DEWFORD_TOWN_HALL (4 | (3 << 8))
-#define MAP_DEWFORD_TOWN_HOUSE2 (5 | (3 << 8))
-
-// gMapGroup_IndoorLavaridge
-#define MAP_LAVARIDGE_TOWN_HERB_SHOP (0 | (4 << 8))
-#define MAP_LAVARIDGE_TOWN_GYM_1F (1 | (4 << 8))
-#define MAP_LAVARIDGE_TOWN_GYM_B1F (2 | (4 << 8))
-#define MAP_LAVARIDGE_TOWN_HOUSE (3 | (4 << 8))
-#define MAP_LAVARIDGE_TOWN_MART (4 | (4 << 8))
-#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F (5 | (4 << 8))
-#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_2F (6 | (4 << 8))
-
-// gMapGroup_IndoorFallarbor
-#define MAP_FALLARBOR_TOWN_MART (0 | (5 << 8))
-#define MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY (1 | (5 << 8))
-#define MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR (2 | (5 << 8))
-#define MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM (3 | (5 << 8))
-#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F (4 | (5 << 8))
-#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_2F (5 | (5 << 8))
-#define MAP_FALLARBOR_TOWN_COZMOS_HOUSE (6 | (5 << 8))
-#define MAP_FALLARBOR_TOWN_MOVE_RELEARNERS_HOUSE (7 | (5 << 8))
-
-// gMapGroup_IndoorVerdanturf
-#define MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY (0 | (6 << 8))
-#define MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR (1 | (6 << 8))
-#define MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM (2 | (6 << 8))
-#define MAP_VERDANTURF_TOWN_MART (3 | (6 << 8))
-#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F (4 | (6 << 8))
-#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_2F (5 | (6 << 8))
-#define MAP_VERDANTURF_TOWN_WANDAS_HOUSE (6 | (6 << 8))
-#define MAP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE (7 | (6 << 8))
-#define MAP_VERDANTURF_TOWN_HOUSE (8 | (6 << 8))
-
-// gMapGroup_IndoorPacifidlog
-#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F (0 | (7 << 8))
-#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F (1 | (7 << 8))
-#define MAP_PACIFIDLOG_TOWN_HOUSE1 (2 | (7 << 8))
-#define MAP_PACIFIDLOG_TOWN_HOUSE2 (3 | (7 << 8))
-#define MAP_PACIFIDLOG_TOWN_HOUSE3 (4 | (7 << 8))
-#define MAP_PACIFIDLOG_TOWN_HOUSE4 (5 | (7 << 8))
-#define MAP_PACIFIDLOG_TOWN_HOUSE5 (6 | (7 << 8))
-
-// gMapGroup_IndoorPetalburg
-#define MAP_PETALBURG_CITY_WALLYS_HOUSE (0 | (8 << 8))
-#define MAP_PETALBURG_CITY_GYM (1 | (8 << 8))
-#define MAP_PETALBURG_CITY_HOUSE1 (2 | (8 << 8))
-#define MAP_PETALBURG_CITY_HOUSE2 (3 | (8 << 8))
-#define MAP_PETALBURG_CITY_POKEMON_CENTER_1F (4 | (8 << 8))
-#define MAP_PETALBURG_CITY_POKEMON_CENTER_2F (5 | (8 << 8))
-#define MAP_PETALBURG_CITY_MART (6 | (8 << 8))
-
-// gMapGroup_IndoorSlateport
-#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_1F (0 | (9 << 8))
-#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_2F (1 | (9 << 8))
-#define MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY (2 | (9 << 8))
-#define MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR (3 | (9 << 8))
-#define MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM (4 | (9 << 8))
-#define MAP_SLATEPORT_CITY_NAME_RATERS_HOUSE (5 | (9 << 8))
-#define MAP_SLATEPORT_CITY_POKEMON_FAN_CLUB (6 | (9 << 8))
-#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F (7 | (9 << 8))
-#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_2F (8 | (9 << 8))
-#define MAP_SLATEPORT_CITY_HARBOR (9 | (9 << 8))
-#define MAP_SLATEPORT_CITY_HOUSE (10 | (9 << 8))
-#define MAP_SLATEPORT_CITY_POKEMON_CENTER_1F (11 | (9 << 8))
-#define MAP_SLATEPORT_CITY_POKEMON_CENTER_2F (12 | (9 << 8))
-#define MAP_SLATEPORT_CITY_MART (13 | (9 << 8))
-
-// gMapGroup_IndoorMauville
-#define MAP_MAUVILLE_CITY_GYM (0 | (10 << 8))
-#define MAP_MAUVILLE_CITY_BIKE_SHOP (1 | (10 << 8))
-#define MAP_MAUVILLE_CITY_HOUSE1 (2 | (10 << 8))
-#define MAP_MAUVILLE_CITY_GAME_CORNER (3 | (10 << 8))
-#define MAP_MAUVILLE_CITY_HOUSE2 (4 | (10 << 8))
-#define MAP_MAUVILLE_CITY_POKEMON_CENTER_1F (5 | (10 << 8))
-#define MAP_MAUVILLE_CITY_POKEMON_CENTER_2F (6 | (10 << 8))
-#define MAP_MAUVILLE_CITY_MART (7 | (10 << 8))
-
-// gMapGroup_IndoorRustboro
-#define MAP_RUSTBORO_CITY_DEVON_CORP_1F (0 | (11 << 8))
-#define MAP_RUSTBORO_CITY_DEVON_CORP_2F (1 | (11 << 8))
-#define MAP_RUSTBORO_CITY_DEVON_CORP_3F (2 | (11 << 8))
-#define MAP_RUSTBORO_CITY_GYM (3 | (11 << 8))
-#define MAP_RUSTBORO_CITY_POKEMON_SCHOOL (4 | (11 << 8))
-#define MAP_RUSTBORO_CITY_POKEMON_CENTER_1F (5 | (11 << 8))
-#define MAP_RUSTBORO_CITY_POKEMON_CENTER_2F (6 | (11 << 8))
-#define MAP_RUSTBORO_CITY_MART (7 | (11 << 8))
-#define MAP_RUSTBORO_CITY_FLAT1_1F (8 | (11 << 8))
-#define MAP_RUSTBORO_CITY_FLAT1_2F (9 | (11 << 8))
-#define MAP_RUSTBORO_CITY_HOUSE1 (10 | (11 << 8))
-#define MAP_RUSTBORO_CITY_CUTTERS_HOUSE (11 | (11 << 8))
-#define MAP_RUSTBORO_CITY_HOUSE2 (12 | (11 << 8))
-#define MAP_RUSTBORO_CITY_FLAT2_1F (13 | (11 << 8))
-#define MAP_RUSTBORO_CITY_FLAT2_2F (14 | (11 << 8))
-#define MAP_RUSTBORO_CITY_FLAT2_3F (15 | (11 << 8))
-#define MAP_RUSTBORO_CITY_HOUSE3 (16 | (11 << 8))
-
-// gMapGroup_IndoorFortree
-#define MAP_FORTREE_CITY_HOUSE1 (0 | (12 << 8))
-#define MAP_FORTREE_CITY_GYM (1 | (12 << 8))
-#define MAP_FORTREE_CITY_POKEMON_CENTER_1F (2 | (12 << 8))
-#define MAP_FORTREE_CITY_POKEMON_CENTER_2F (3 | (12 << 8))
-#define MAP_FORTREE_CITY_MART (4 | (12 << 8))
-#define MAP_FORTREE_CITY_HOUSE2 (5 | (12 << 8))
-#define MAP_FORTREE_CITY_HOUSE3 (6 | (12 << 8))
-#define MAP_FORTREE_CITY_HOUSE4 (7 | (12 << 8))
-#define MAP_FORTREE_CITY_HOUSE5 (8 | (12 << 8))
-#define MAP_FORTREE_CITY_DECORATION_SHOP (9 | (12 << 8))
-
-// gMapGroup_IndoorLilycove
-#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F (0 | (13 << 8))
-#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_2F (1 | (13 << 8))
-#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F (2 | (13 << 8))
-#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F (3 | (13 << 8))
-#define MAP_LILYCOVE_CITY_CONTEST_LOBBY (4 | (13 << 8))
-#define MAP_LILYCOVE_CITY_CONTEST_HALL (5 | (13 << 8))
-#define MAP_LILYCOVE_CITY_POKEMON_CENTER_1F (6 | (13 << 8))
-#define MAP_LILYCOVE_CITY_POKEMON_CENTER_2F (7 | (13 << 8))
-#define MAP_LILYCOVE_CITY_UNUSED_MART (8 | (13 << 8))
-#define MAP_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB (9 | (13 << 8))
-#define MAP_LILYCOVE_CITY_HARBOR (10 | (13 << 8))
-#define MAP_LILYCOVE_CITY_MOVE_DELETERS_HOUSE (11 | (13 << 8))
-#define MAP_LILYCOVE_CITY_HOUSE1 (12 | (13 << 8))
-#define MAP_LILYCOVE_CITY_HOUSE2 (13 | (13 << 8))
-#define MAP_LILYCOVE_CITY_HOUSE3 (14 | (13 << 8))
-#define MAP_LILYCOVE_CITY_HOUSE4 (15 | (13 << 8))
-#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F (16 | (13 << 8))
-#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F (17 | (13 << 8))
-#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F (18 | (13 << 8))
-#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F (19 | (13 << 8))
-#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F (20 | (13 << 8))
-#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP (21 | (13 << 8))
-#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR (22 | (13 << 8))
-
-// gMapGroup_IndoorMossdeep
-#define MAP_MOSSDEEP_CITY_GYM (0 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_HOUSE1 (1 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_HOUSE2 (2 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F (3 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_2F (4 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_MART (5 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_HOUSE3 (6 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_STEVENS_HOUSE (7 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_HOUSE4 (8 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_SPACE_CENTER_1F (9 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_SPACE_CENTER_2F (10 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_GAME_CORNER_1F (11 | (14 << 8))
-#define MAP_MOSSDEEP_CITY_GAME_CORNER_B1F (12 | (14 << 8))
-
-// gMapGroup_IndoorSootopolis
-#define MAP_SOOTOPOLIS_CITY_GYM_1F (0 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_GYM_B1F (1 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F (2 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F (3 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_MART (4 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_HOUSE1 (5 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_HOUSE2 (6 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_HOUSE3 (7 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_HOUSE4 (8 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_HOUSE5 (9 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_HOUSE6 (10 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_HOUSE7 (11 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_LOTAD_AND_SEEDOT_HOUSE (12 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F (13 | (15 << 8))
-#define MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F (14 | (15 << 8))
-
-// gMapGroup_IndoorEverGrande
-#define MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM (0 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_PHOEBES_ROOM (1 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_GLACIAS_ROOM (2 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_DRAKES_ROOM (3 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_CHAMPIONS_ROOM (4 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_HALL1 (5 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_HALL2 (6 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_HALL3 (7 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_HALL4 (8 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_HALL5 (9 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F (10 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_HALL_OF_FAME (11 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F (12 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_2F (13 | (16 << 8))
-#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F (14 | (16 << 8))
-
-// gMapGroup_IndoorRoute104
-#define MAP_ROUTE104_MR_BRINEYS_HOUSE (0 | (17 << 8))
-#define MAP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP (1 | (17 << 8))
-
-// gMapGroup_IndoorRoute111
-#define MAP_ROUTE111_WINSTRATE_FAMILYS_HOUSE (0 | (18 << 8))
-#define MAP_ROUTE111_OLD_LADYS_REST_STOP (1 | (18 << 8))
-
-// gMapGroup_IndoorRoute112
-#define MAP_ROUTE112_CABLE_CAR_STATION (0 | (19 << 8))
-#define MAP_MT_CHIMNEY_CABLE_CAR_STATION (1 | (19 << 8))
-
-// gMapGroup_IndoorRoute114
-#define MAP_ROUTE114_FOSSIL_MANIACS_HOUSE (0 | (20 << 8))
-#define MAP_ROUTE114_FOSSIL_MANIACS_TUNNEL (1 | (20 << 8))
-#define MAP_ROUTE114_LANETTES_HOUSE (2 | (20 << 8))
-
-// gMapGroup_IndoorRoute116
-#define MAP_ROUTE116_TUNNELERS_REST_HOUSE (0 | (21 << 8))
-
-// gMapGroup_IndoorRoute117
-#define MAP_ROUTE117_POKEMON_DAY_CARE (0 | (22 << 8))
-
-// gMapGroup_IndoorRoute121
-#define MAP_ROUTE121_SAFARI_ZONE_ENTRANCE (0 | (23 << 8))
-
-// gMapGroup_Dungeons
-#define MAP_METEOR_FALLS_1F_1R (0 | (24 << 8))
-#define MAP_METEOR_FALLS_1F_2R (1 | (24 << 8))
-#define MAP_METEOR_FALLS_B1F_1R (2 | (24 << 8))
-#define MAP_METEOR_FALLS_B1F_2R (3 | (24 << 8))
-#define MAP_RUSTURF_TUNNEL (4 | (24 << 8))
-#define MAP_UNDERWATER_SOOTOPOLIS_CITY (5 | (24 << 8))
-#define MAP_DESERT_RUINS (6 | (24 << 8))
-#define MAP_GRANITE_CAVE_1F (7 | (24 << 8))
-#define MAP_GRANITE_CAVE_B1F (8 | (24 << 8))
-#define MAP_GRANITE_CAVE_B2F (9 | (24 << 8))
-#define MAP_GRANITE_CAVE_STEVENS_ROOM (10 | (24 << 8))
-#define MAP_PETALBURG_WOODS (11 | (24 << 8))
-#define MAP_MT_CHIMNEY (12 | (24 << 8))
-#define MAP_JAGGED_PASS (13 | (24 << 8))
-#define MAP_FIERY_PATH (14 | (24 << 8))
-#define MAP_MT_PYRE_1F (15 | (24 << 8))
-#define MAP_MT_PYRE_2F (16 | (24 << 8))
-#define MAP_MT_PYRE_3F (17 | (24 << 8))
-#define MAP_MT_PYRE_4F (18 | (24 << 8))
-#define MAP_MT_PYRE_5F (19 | (24 << 8))
-#define MAP_MT_PYRE_6F (20 | (24 << 8))
-#define MAP_MT_PYRE_EXTERIOR (21 | (24 << 8))
-#define MAP_MT_PYRE_SUMMIT (22 | (24 << 8))
-#define MAP_AQUA_HIDEOUT_1F (23 | (24 << 8))
-#define MAP_AQUA_HIDEOUT_B1F (24 | (24 << 8))
-#define MAP_AQUA_HIDEOUT_B2F (25 | (24 << 8))
-#define MAP_UNDERWATER_SEAFLOOR_CAVERN (26 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ENTRANCE (27 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM1 (28 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM2 (29 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM3 (30 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM4 (31 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM5 (32 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM6 (33 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM7 (34 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM8 (35 | (24 << 8))
-#define MAP_SEAFLOOR_CAVERN_ROOM9 (36 | (24 << 8))
-#define MAP_CAVE_OF_ORIGIN_ENTRANCE (37 | (24 << 8))
-#define MAP_CAVE_OF_ORIGIN_1F (38 | (24 << 8))
-#define MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP1 (39 | (24 << 8))
-#define MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP2 (40 | (24 << 8))
-#define MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP3 (41 | (24 << 8))
-#define MAP_CAVE_OF_ORIGIN_B1F (42 | (24 << 8))
-#define MAP_VICTORY_ROAD_1F (43 | (24 << 8))
-#define MAP_VICTORY_ROAD_B1F (44 | (24 << 8))
-#define MAP_VICTORY_ROAD_B2F (45 | (24 << 8))
-#define MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM (46 | (24 << 8))
-#define MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM (47 | (24 << 8))
-#define MAP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM (48 | (24 << 8))
-#define MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM (49 | (24 << 8))
-#define MAP_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM (50 | (24 << 8))
-#define MAP_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM (51 | (24 << 8))
-#define MAP_NEW_MAUVILLE_ENTRANCE (52 | (24 << 8))
-#define MAP_NEW_MAUVILLE_INSIDE (53 | (24 << 8))
-#define MAP_ABANDONED_SHIP_DECK (54 | (24 << 8))
-#define MAP_ABANDONED_SHIP_CORRIDORS_1F (55 | (24 << 8))
-#define MAP_ABANDONED_SHIP_ROOMS_1F (56 | (24 << 8))
-#define MAP_ABANDONED_SHIP_CORRIDORS_B1F (57 | (24 << 8))
-#define MAP_ABANDONED_SHIP_ROOMS_B1F (58 | (24 << 8))
-#define MAP_ABANDONED_SHIP_ROOMS2_B1F (59 | (24 << 8))
-#define MAP_ABANDONED_SHIP_UNDERWATER1 (60 | (24 << 8))
-#define MAP_ABANDONED_SHIP_ROOM_B1F (61 | (24 << 8))
-#define MAP_ABANDONED_SHIP_ROOMS2_1F (62 | (24 << 8))
-#define MAP_ABANDONED_SHIP_CAPTAINS_OFFICE (63 | (24 << 8))
-#define MAP_ABANDONED_SHIP_UNDERWATER2 (64 | (24 << 8))
-#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS (65 | (24 << 8))
-#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS (66 | (24 << 8))
-#define MAP_ISLAND_CAVE (67 | (24 << 8))
-#define MAP_ANCIENT_TOMB (68 | (24 << 8))
-#define MAP_UNDERWATER_ROUTE134 (69 | (24 << 8))
-#define MAP_UNDERWATER_SEALED_CHAMBER (70 | (24 << 8))
-#define MAP_SEALED_CHAMBER_OUTER_ROOM (71 | (24 << 8))
-#define MAP_SEALED_CHAMBER_INNER_ROOM (72 | (24 << 8))
-#define MAP_SCORCHED_SLAB (73 | (24 << 8))
-#define MAP_AQUA_HIDEOUT_UNUSED_RUBY_MAP1 (74 | (24 << 8))
-#define MAP_AQUA_HIDEOUT_UNUSED_RUBY_MAP2 (75 | (24 << 8))
-#define MAP_AQUA_HIDEOUT_UNUSED_RUBY_MAP3 (76 | (24 << 8))
-#define MAP_SKY_PILLAR_ENTRANCE (77 | (24 << 8))
-#define MAP_SKY_PILLAR_OUTSIDE (78 | (24 << 8))
-#define MAP_SKY_PILLAR_1F (79 | (24 << 8))
-#define MAP_SKY_PILLAR_2F (80 | (24 << 8))
-#define MAP_SKY_PILLAR_3F (81 | (24 << 8))
-#define MAP_SKY_PILLAR_4F (82 | (24 << 8))
-#define MAP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM (83 | (24 << 8))
-#define MAP_SKY_PILLAR_5F (84 | (24 << 8))
-#define MAP_SKY_PILLAR_TOP (85 | (24 << 8))
-#define MAP_MAGMA_HIDEOUT_1F (86 | (24 << 8))
-#define MAP_MAGMA_HIDEOUT_2F_1R (87 | (24 << 8))
-#define MAP_MAGMA_HIDEOUT_2F_2R (88 | (24 << 8))
-#define MAP_MAGMA_HIDEOUT_3F_1R (89 | (24 << 8))
-#define MAP_MAGMA_HIDEOUT_3F_2R (90 | (24 << 8))
-#define MAP_MAGMA_HIDEOUT_4F (91 | (24 << 8))
-#define MAP_MAGMA_HIDEOUT_3F_3R (92 | (24 << 8))
-#define MAP_MAGMA_HIDEOUT_2F_3R (93 | (24 << 8))
-#define MAP_MIRAGE_TOWER_1F (94 | (24 << 8))
-#define MAP_MIRAGE_TOWER_2F (95 | (24 << 8))
-#define MAP_MIRAGE_TOWER_3F (96 | (24 << 8))
-#define MAP_MIRAGE_TOWER_4F (97 | (24 << 8))
-#define MAP_DESERT_UNDERPASS (98 | (24 << 8))
-#define MAP_ARTISAN_CAVE_B1F (99 | (24 << 8))
-#define MAP_ARTISAN_CAVE_1F (100 | (24 << 8))
-#define MAP_UNDERWATER_MARINE_CAVE (101 | (24 << 8))
-#define MAP_MARINE_CAVE_ENTRANCE (102 | (24 << 8))
-#define MAP_MARINE_CAVE_END (103 | (24 << 8))
-#define MAP_TERRA_CAVE_ENTRANCE (104 | (24 << 8))
-#define MAP_TERRA_CAVE_END (105 | (24 << 8))
-#define MAP_ALTERING_CAVE (106 | (24 << 8))
-#define MAP_METEOR_FALLS_STEVENS_CAVE (107 | (24 << 8))
-
-// gMapGroup_IndoorDynamic
-#define MAP_SECRET_BASE_RED_CAVE1 (0 | (25 << 8))
-#define MAP_SECRET_BASE_BROWN_CAVE1 (1 | (25 << 8))
-#define MAP_SECRET_BASE_BLUE_CAVE1 (2 | (25 << 8))
-#define MAP_SECRET_BASE_YELLOW_CAVE1 (3 | (25 << 8))
-#define MAP_SECRET_BASE_TREE1 (4 | (25 << 8))
-#define MAP_SECRET_BASE_SHRUB1 (5 | (25 << 8))
-#define MAP_SECRET_BASE_RED_CAVE2 (6 | (25 << 8))
-#define MAP_SECRET_BASE_BROWN_CAVE2 (7 | (25 << 8))
-#define MAP_SECRET_BASE_BLUE_CAVE2 (8 | (25 << 8))
-#define MAP_SECRET_BASE_YELLOW_CAVE2 (9 | (25 << 8))
-#define MAP_SECRET_BASE_TREE2 (10 | (25 << 8))
-#define MAP_SECRET_BASE_SHRUB2 (11 | (25 << 8))
-#define MAP_SECRET_BASE_RED_CAVE3 (12 | (25 << 8))
-#define MAP_SECRET_BASE_BROWN_CAVE3 (13 | (25 << 8))
-#define MAP_SECRET_BASE_BLUE_CAVE3 (14 | (25 << 8))
-#define MAP_SECRET_BASE_YELLOW_CAVE3 (15 | (25 << 8))
-#define MAP_SECRET_BASE_TREE3 (16 | (25 << 8))
-#define MAP_SECRET_BASE_SHRUB3 (17 | (25 << 8))
-#define MAP_SECRET_BASE_RED_CAVE4 (18 | (25 << 8))
-#define MAP_SECRET_BASE_BROWN_CAVE4 (19 | (25 << 8))
-#define MAP_SECRET_BASE_BLUE_CAVE4 (20 | (25 << 8))
-#define MAP_SECRET_BASE_YELLOW_CAVE4 (21 | (25 << 8))
-#define MAP_SECRET_BASE_TREE4 (22 | (25 << 8))
-#define MAP_SECRET_BASE_SHRUB4 (23 | (25 << 8))
-#define MAP_BATTLE_COLOSSEUM_2P (24 | (25 << 8))
-#define MAP_TRADE_CENTER (25 | (25 << 8))
-#define MAP_RECORD_CORNER (26 | (25 << 8))
-#define MAP_BATTLE_COLOSSEUM_4P (27 | (25 << 8))
-#define MAP_CONTEST_HALL (28 | (25 << 8))
-#define MAP_UNUSED_CONTEST_HALL1 (29 | (25 << 8))
-#define MAP_UNUSED_CONTEST_HALL2 (30 | (25 << 8))
-#define MAP_UNUSED_CONTEST_HALL3 (31 | (25 << 8))
-#define MAP_UNUSED_CONTEST_HALL4 (32 | (25 << 8))
-#define MAP_UNUSED_CONTEST_HALL5 (33 | (25 << 8))
-#define MAP_UNUSED_CONTEST_HALL6 (34 | (25 << 8))
-#define MAP_CONTEST_HALL_BEAUTY (35 | (25 << 8))
-#define MAP_CONTEST_HALL_TOUGH (36 | (25 << 8))
-#define MAP_CONTEST_HALL_COOL (37 | (25 << 8))
-#define MAP_CONTEST_HALL_SMART (38 | (25 << 8))
-#define MAP_CONTEST_HALL_CUTE (39 | (25 << 8))
-#define MAP_INSIDE_OF_TRUCK (40 | (25 << 8))
-#define MAP_SS_TIDAL_CORRIDOR (41 | (25 << 8))
-#define MAP_SS_TIDAL_LOWER_DECK (42 | (25 << 8))
-#define MAP_SS_TIDAL_ROOMS (43 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE01 (44 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE02 (45 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE03 (46 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE04 (47 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE05 (48 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE06 (49 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE07 (50 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE08 (51 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE09 (52 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE10 (53 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE11 (54 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE12 (55 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE13 (56 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE14 (57 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE15 (58 | (25 << 8))
-#define MAP_BATTLE_PYRAMID_SQUARE16 (59 | (25 << 8))
-#define MAP_UNION_ROOM (60 | (25 << 8))
-
-// gMapGroup_SpecialArea
-#define MAP_SAFARI_ZONE_NORTHWEST (0 | (26 << 8))
-#define MAP_SAFARI_ZONE_NORTH (1 | (26 << 8))
-#define MAP_SAFARI_ZONE_SOUTHWEST (2 | (26 << 8))
-#define MAP_SAFARI_ZONE_SOUTH (3 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_OUTSIDE_WEST (4 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY (5 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR (6 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR (7 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM (8 | (26 << 8))
-#define MAP_SOUTHERN_ISLAND_EXTERIOR (9 | (26 << 8))
-#define MAP_SOUTHERN_ISLAND_INTERIOR (10 | (26 << 8))
-#define MAP_SAFARI_ZONE_REST_HOUSE (11 | (26 << 8))
-#define MAP_SAFARI_ZONE_NORTHEAST (12 | (26 << 8))
-#define MAP_SAFARI_ZONE_SOUTHEAST (13 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_OUTSIDE_EAST (14 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM (15 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR (16 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM (17 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY (18 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR (19 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM (20 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM (21 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY (22 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR (23 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM (24 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY (25 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR (26 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP (27 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY (28 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR (29 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM (30 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY (31 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM (32 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM (33 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY (34 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR (35 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM (36 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL (37 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL (38 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS (39 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_RANKING_HALL (40 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE1 (41 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_EXCHANGE_SERVICE_CORNER (42 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE2 (43 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE3 (44 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE4 (45 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_SCOTTS_HOUSE (46 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE5 (47 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE6 (48 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE7 (49 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_RECEPTION_GATE (50 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE8 (51 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_LOUNGE9 (52 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F (53 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_POKEMON_CENTER_2F (54 | (26 << 8))
-#define MAP_BATTLE_FRONTIER_MART (55 | (26 << 8))
-#define MAP_FARAWAY_ISLAND_ENTRANCE (56 | (26 << 8))
-#define MAP_FARAWAY_ISLAND_INTERIOR (57 | (26 << 8))
-#define MAP_BIRTH_ISLAND_EXTERIOR (58 | (26 << 8))
-#define MAP_BIRTH_ISLAND_HARBOR (59 | (26 << 8))
-#define MAP_TRAINER_HILL_ENTRANCE (60 | (26 << 8))
-#define MAP_TRAINER_HILL_1F (61 | (26 << 8))
-#define MAP_TRAINER_HILL_2F (62 | (26 << 8))
-#define MAP_TRAINER_HILL_3F (63 | (26 << 8))
-#define MAP_TRAINER_HILL_4F (64 | (26 << 8))
-#define MAP_TRAINER_HILL_ROOF (65 | (26 << 8))
-#define MAP_NAVEL_ROCK_EXTERIOR (66 | (26 << 8))
-#define MAP_NAVEL_ROCK_HARBOR (67 | (26 << 8))
-#define MAP_NAVEL_ROCK_ENTRANCE (68 | (26 << 8))
-#define MAP_NAVEL_ROCK_B1F (69 | (26 << 8))
-#define MAP_NAVEL_ROCK_FORK (70 | (26 << 8))
-#define MAP_NAVEL_ROCK_UP1 (71 | (26 << 8))
-#define MAP_NAVEL_ROCK_UP2 (72 | (26 << 8))
-#define MAP_NAVEL_ROCK_UP3 (73 | (26 << 8))
-#define MAP_NAVEL_ROCK_UP4 (74 | (26 << 8))
-#define MAP_NAVEL_ROCK_TOP (75 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN01 (76 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN02 (77 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN03 (78 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN04 (79 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN05 (80 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN06 (81 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN07 (82 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN08 (83 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN09 (84 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN10 (85 | (26 << 8))
-#define MAP_NAVEL_ROCK_DOWN11 (86 | (26 << 8))
-#define MAP_NAVEL_ROCK_BOTTOM (87 | (26 << 8))
-#define MAP_TRAINER_HILL_ELEVATOR (88 | (26 << 8))
-
-// gMapGroup_IndoorRoute104Prototype
-#define MAP_ROUTE104_PROTOTYPE (0 | (27 << 8))
-#define MAP_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP (1 | (27 << 8))
-
-// gMapGroup_IndoorRoute109
-#define MAP_ROUTE109_SEASHORE_HOUSE (0 | (28 << 8))
-
-// gMapGroup_IndoorRoute110
-#define MAP_ROUTE110_TRICK_HOUSE_ENTRANCE (0 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_END (1 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_CORRIDOR (2 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE1 (3 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE2 (4 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE3 (5 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE4 (6 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE5 (7 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE6 (8 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE7 (9 | (29 << 8))
-#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE8 (10 | (29 << 8))
-#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE (11 | (29 << 8))
-#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE (12 | (29 << 8))
-
-// gMapGroup_IndoorRoute113
-#define MAP_ROUTE113_GLASS_WORKSHOP (0 | (30 << 8))
-
-// gMapGroup_IndoorRoute123
-#define MAP_ROUTE123_BERRY_MASTERS_HOUSE (0 | (31 << 8))
-
-// gMapGroup_IndoorRoute119
-#define MAP_ROUTE119_WEATHER_INSTITUTE_1F (0 | (32 << 8))
-#define MAP_ROUTE119_WEATHER_INSTITUTE_2F (1 | (32 << 8))
-#define MAP_ROUTE119_HOUSE (2 | (32 << 8))
-
-// gMapGroup_IndoorRoute124
-#define MAP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE (0 | (33 << 8))
-
-#define MAP_GROUPS_COUNT 34
-
-#endif // GUARD_CONSTANTS_MAP_GROUPS_H
diff --git a/include/constants/maps.h b/include/constants/maps.h
index 1bf11fa5cc..d41f03c683 100644
--- a/include/constants/maps.h
+++ b/include/constants/maps.h
@@ -9,8 +9,8 @@
#define MAP_UNDEFINED (0xFF | (0xFF << 8))
-#define MAP_GROUP(map) (MAP_##map >> 8)
-#define MAP_NUM(map) (MAP_##map & 0xFF)
+#define MAP_GROUP(map) (map >> 8)
+#define MAP_NUM(map) (map & 0xFF)
// IDs for dynamic warps. Both are used in the dest_warp_id field for warp events, but they
// are never read in practice. A dest_map of MAP_DYNAMIC is used to indicate that a
diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h
index 1f6d4e87cb..4a11795ea9 100755
--- a/include/constants/metatile_behaviors.h
+++ b/include/constants/metatile_behaviors.h
@@ -1,249 +1,250 @@
#ifndef GUARD_METATILE_BEHAVIORS_H
#define GUARD_METATILE_BEHAVIORS_H
-#define MB_NORMAL 0x00
-#define MB_SECRET_BASE_WALL 0x01
-#define MB_TALL_GRASS 0x02
-#define MB_LONG_GRASS 0x03
-#define MB_UNUSED_04 0x04
-#define MB_UNUSED_05 0x05
-#define MB_DEEP_SAND 0x06
-#define MB_SHORT_GRASS 0x07
-#define MB_CAVE 0x08
-#define MB_LONG_GRASS_SOUTH_EDGE 0x09
-#define MB_NO_RUNNING 0x0A
-#define MB_INDOOR_ENCOUNTER 0x0B
-#define MB_MOUNTAIN_TOP 0x0C
-#define MB_BATTLE_PYRAMID_WARP 0x0D
-#define MB_MOSSDEEP_GYM_WARP 0x0E
-#define MB_MT_PYRE_HOLE 0x0F
-#define MB_POND_WATER 0x10
-#define MB_INTERIOR_DEEP_WATER 0x11 // Used by interior maps; functionally the same as MB_DEEP_WATER
-#define MB_DEEP_WATER 0x12
-#define MB_WATERFALL 0x13
-#define MB_SOOTOPOLIS_DEEP_WATER 0x14
-#define MB_OCEAN_WATER 0x15
-#define MB_PUDDLE 0x16
-#define MB_SHALLOW_WATER 0x17
-#define MB_UNUSED_SOOTOPOLIS_DEEP_WATER 0x18
-#define MB_NO_SURFACING 0x19
-#define MB_UNUSED_SOOTOPOLIS_DEEP_WATER_2 0x1A
-#define MB_STAIRS_OUTSIDE_ABANDONED_SHIP 0x1B
-#define MB_SHOAL_CAVE_ENTRANCE 0x1C
-#define MB_UNUSED_1D 0x1D
-#define MB_UNUSED_1E 0x1E
-#define MB_UNUSED_1F 0x1F
-#define MB_ICE 0x20
-#define MB_SAND 0x21
-#define MB_SEAWEED 0x22
-#define MB_UNUSED_23 0x23
-#define MB_ASHGRASS 0x24
-#define MB_FOOTPRINTS 0x25
-#define MB_THIN_ICE 0x26
-#define MB_CRACKED_ICE 0x27
-#define MB_HOT_SPRINGS 0x28
-#define MB_LAVARIDGE_GYM_B1F_WARP 0x29
-#define MB_SEAWEED_NO_SURFACING 0x2A
-#define MB_REFLECTION_UNDER_BRIDGE 0x2B
-#define MB_UNUSED_2C 0x2C
-#define MB_UNUSED_2D 0x2D
-#define MB_UNUSED_2E 0x2E
-#define MB_UNUSED_2F 0x2F
-#define MB_IMPASSABLE_EAST 0x30
-#define MB_IMPASSABLE_WEST 0x31
-#define MB_IMPASSABLE_NORTH 0x32
-#define MB_IMPASSABLE_SOUTH 0x33
-#define MB_IMPASSABLE_NORTHEAST 0x34
-#define MB_IMPASSABLE_NORTHWEST 0x35
-#define MB_IMPASSABLE_SOUTHEAST 0x36
-#define MB_IMPASSABLE_SOUTHWEST 0x37
-#define MB_JUMP_EAST 0x38
-#define MB_JUMP_WEST 0x39
-#define MB_JUMP_NORTH 0x3A
-#define MB_JUMP_SOUTH 0x3B
-#define MB_JUMP_NORTHEAST 0x3C
-#define MB_JUMP_NORTHWEST 0x3D
-#define MB_JUMP_SOUTHEAST 0x3E
-#define MB_JUMP_SOUTHWEST 0x3F
-#define MB_WALK_EAST 0x40
-#define MB_WALK_WEST 0x41
-#define MB_WALK_NORTH 0x42
-#define MB_WALK_SOUTH 0x43
-#define MB_SLIDE_EAST 0x44
-#define MB_SLIDE_WEST 0x45
-#define MB_SLIDE_NORTH 0x46
-#define MB_SLIDE_SOUTH 0x47
-#define MB_TRICK_HOUSE_PUZZLE_8_FLOOR 0x48
-#define MB_UNUSED_49 0x49
-#define MB_UNUSED_4A 0x4A
-#define MB_UNUSED_4B 0x4B
-#define MB_UNUSED_4C 0x4C
-#define MB_UNUSED_4D 0x4D
-#define MB_UNUSED_4E 0x4E
-#define MB_UNUSED_4F 0x4F
-#define MB_EASTWARD_CURRENT 0x50
-#define MB_WESTWARD_CURRENT 0x51
-#define MB_NORTHWARD_CURRENT 0x52
-#define MB_SOUTHWARD_CURRENT 0x53
-#define MB_UNUSED_54 0x54
-#define MB_UNUSED_55 0x55
-#define MB_UNUSED_56 0x56
-#define MB_UNUSED_57 0x57
-#define MB_UNUSED_58 0x58
-#define MB_UNUSED_59 0x59
-#define MB_UNUSED_5A 0x5A
-#define MB_UNUSED_5B 0x5B
-#define MB_UNUSED_5C 0x5C
-#define MB_UNUSED_5D 0x5D
-#define MB_UNUSED_5E 0x5E
-#define MB_UNUSED_5F 0x5F
-#define MB_NON_ANIMATED_DOOR 0x60
-#define MB_LADDER 0x61
-#define MB_EAST_ARROW_WARP 0x62
-#define MB_WEST_ARROW_WARP 0x63
-#define MB_NORTH_ARROW_WARP 0x64
-#define MB_SOUTH_ARROW_WARP 0x65
-#define MB_CRACKED_FLOOR_HOLE 0x66
-#define MB_AQUA_HIDEOUT_WARP 0x67
-#define MB_LAVARIDGE_GYM_1F_WARP 0x68
-#define MB_ANIMATED_DOOR 0x69
-#define MB_UP_ESCALATOR 0x6A
-#define MB_DOWN_ESCALATOR 0x6B
-#define MB_WATER_DOOR 0x6C
-#define MB_WATER_SOUTH_ARROW_WARP 0x6D
-#define MB_DEEP_SOUTH_WARP 0x6E
-#define MB_UNUSED_6F 0x6F
-#define MB_BRIDGE_OVER_OCEAN 0x70
-#define MB_BRIDGE_OVER_POND_LOW 0x71
-#define MB_BRIDGE_OVER_POND_MED 0x72
-#define MB_BRIDGE_OVER_POND_HIGH 0x73
-#define MB_PACIFIDLOG_VERTICAL_LOG_TOP 0x74
-#define MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM 0x75
-#define MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT 0x76
-#define MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT 0x77
-#define MB_FORTREE_BRIDGE 0x78
-#define MB_UNUSED_79 0x79
-#define MB_BRIDGE_OVER_POND_MED_EDGE_1 0x7A
-#define MB_BRIDGE_OVER_POND_MED_EDGE_2 0x7B
-#define MB_BRIDGE_OVER_POND_HIGH_EDGE_1 0x7C
-#define MB_BRIDGE_OVER_POND_HIGH_EDGE_2 0x7D
-#define MB_UNUSED_BRIDGE 0x7E
-#define MB_BIKE_BRIDGE_OVER_BARRIER 0x7F
-#define MB_COUNTER 0x80
-#define MB_UNUSED_81 0x81
-#define MB_UNUSED_82 0x82
-#define MB_PC 0x83
-#define MB_CABLE_BOX_RESULTS_1 0x84
-#define MB_REGION_MAP 0x85
-#define MB_TELEVISION 0x86
-#define MB_POKEBLOCK_FEEDER 0x87
-#define MB_UNUSED_88 0x88
-#define MB_SLOT_MACHINE 0x89
-#define MB_ROULETTE 0x8A
-#define MB_CLOSED_SOOTOPOLIS_DOOR 0x8B
-#define MB_TRICK_HOUSE_PUZZLE_DOOR 0x8C
-#define MB_PETALBURG_GYM_DOOR 0x8D
-#define MB_RUNNING_SHOES_INSTRUCTION 0x8E
-#define MB_QUESTIONNAIRE 0x8F
-#define MB_SECRET_BASE_SPOT_RED_CAVE 0x90
-#define MB_SECRET_BASE_SPOT_RED_CAVE_OPEN 0x91
-#define MB_SECRET_BASE_SPOT_BROWN_CAVE 0x92
-#define MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN 0x93
-#define MB_SECRET_BASE_SPOT_YELLOW_CAVE 0x94
-#define MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN 0x95
-#define MB_SECRET_BASE_SPOT_TREE_LEFT 0x96
-#define MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN 0x97
-#define MB_SECRET_BASE_SPOT_SHRUB 0x98
-#define MB_SECRET_BASE_SPOT_SHRUB_OPEN 0x99
-#define MB_SECRET_BASE_SPOT_BLUE_CAVE 0x9A
-#define MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN 0x9B
-#define MB_SECRET_BASE_SPOT_TREE_RIGHT 0x9C
-#define MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN 0x9D
-#define MB_UNUSED_9E 0x9E
-#define MB_UNUSED_9F 0x9F
-#define MB_BERRY_TREE_SOIL 0xA0
-#define MB_UNUSED_A1 0xA1
-#define MB_UNUSED_A2 0xA2
-#define MB_UNUSED_A3 0xA3
-#define MB_UNUSED_A4 0xA4
-#define MB_UNUSED_A5 0xA5
-#define MB_UNUSED_A6 0xA6
-#define MB_UNUSED_A7 0xA7
-#define MB_UNUSED_A8 0xA8
-#define MB_UNUSED_A9 0xA9
-#define MB_UNUSED_AA 0xAA
-#define MB_UNUSED_AB 0xAB
-#define MB_UNUSED_AC 0xAC
-#define MB_UNUSED_AD 0xAD
-#define MB_UNUSED_AE 0xAE
-#define MB_UNUSED_AF 0xAF
-#define MB_SECRET_BASE_PC 0xB0
-#define MB_SECRET_BASE_REGISTER_PC 0xB1
-#define MB_SECRET_BASE_SCENERY 0xB2
-#define MB_SECRET_BASE_TRAINER_SPOT 0xB3
-#define MB_SECRET_BASE_DECORATION 0xB4
-#define MB_HOLDS_SMALL_DECORATION 0xB5
-#define MB_UNUSED_B6 0xB6
-#define MB_SECRET_BASE_NORTH_WALL 0xB7
-#define MB_SECRET_BASE_BALLOON 0xB8
-#define MB_SECRET_BASE_IMPASSABLE 0xB9
-#define MB_SECRET_BASE_GLITTER_MAT 0xBA
-#define MB_SECRET_BASE_JUMP_MAT 0xBB
-#define MB_SECRET_BASE_SPIN_MAT 0xBC
-#define MB_SECRET_BASE_SOUND_MAT 0xBD
-#define MB_SECRET_BASE_BREAKABLE_DOOR 0xBE
-#define MB_SECRET_BASE_SAND_ORNAMENT 0xBF
-#define MB_IMPASSABLE_SOUTH_AND_NORTH 0xC0
-#define MB_IMPASSABLE_WEST_AND_EAST 0xC1
-#define MB_SECRET_BASE_HOLE 0xC2
-#define MB_HOLDS_LARGE_DECORATION 0xC3
-#define MB_SECRET_BASE_TV_SHIELD 0xC4
-#define MB_PLAYER_ROOM_PC_ON 0xC5
-#define MB_SECRET_BASE_DECORATION_BASE 0xC6
-#define MB_SECRET_BASE_POSTER 0xC7
-#define MB_UNUSED_C8 0xC8
-#define MB_UNUSED_C9 0xC9
-#define MB_UNUSED_CA 0xCA
-#define MB_UNUSED_CB 0xCB
-#define MB_UNUSED_CC 0xCC
-#define MB_UNUSED_CD 0xCD
-#define MB_UNUSED_CE 0xCE
-#define MB_UNUSED_CF 0xCF
-#define MB_MUDDY_SLOPE 0xD0
-#define MB_BUMPY_SLOPE 0xD1
-#define MB_CRACKED_FLOOR 0xD2
-#define MB_ISOLATED_VERTICAL_RAIL 0xD3
-#define MB_ISOLATED_HORIZONTAL_RAIL 0xD4
-#define MB_VERTICAL_RAIL 0xD5
-#define MB_HORIZONTAL_RAIL 0xD6
-#define MB_UNUSED_D7 0xD7
-#define MB_UNUSED_D8 0xD8
-#define MB_UNUSED_D9 0xD9
-#define MB_UNUSED_DA 0xDA
-#define MB_UNUSED_DB 0xDB
-#define MB_UNUSED_DC 0xDC
-#define MB_UNUSED_DD 0xDD
-#define MB_UNUSED_DE 0xDE
-#define MB_UNUSED_DF 0xDF
-#define MB_PICTURE_BOOK_SHELF 0xE0
-#define MB_BOOKSHELF 0xE1
-#define MB_POKEMON_CENTER_BOOKSHELF 0xE2
-#define MB_VASE 0xE3
-#define MB_TRASH_CAN 0xE4
-#define MB_SHOP_SHELF 0xE5
-#define MB_BLUEPRINT 0xE6
-#define MB_CABLE_BOX_RESULTS_2 0xE7
-#define MB_WIRELESS_BOX_RESULTS 0xE8
-#define MB_TRAINER_HILL_TIMER 0xE9
-#define MB_SKY_PILLAR_CLOSED_DOOR 0xEA
-#define MB_UNUSED_EB 0xEB
-#define MB_UNUSED_EC 0xEC
-#define MB_UNUSED_ED 0xED
-#define MB_UNUSED_EE 0xEE
-#define MB_UNUSED_EF 0xEF
+enum {
+ MB_NORMAL,
+ MB_SECRET_BASE_WALL,
+ MB_TALL_GRASS,
+ MB_LONG_GRASS,
+ MB_UNUSED_04,
+ MB_UNUSED_05,
+ MB_DEEP_SAND,
+ MB_SHORT_GRASS,
+ MB_CAVE,
+ MB_LONG_GRASS_SOUTH_EDGE,
+ MB_NO_RUNNING,
+ MB_INDOOR_ENCOUNTER,
+ MB_MOUNTAIN_TOP,
+ MB_BATTLE_PYRAMID_WARP,
+ MB_MOSSDEEP_GYM_WARP,
+ MB_MT_PYRE_HOLE,
+ MB_POND_WATER,
+ MB_INTERIOR_DEEP_WATER, // Used by interior maps; functionally the same as MB_DEEP_WATER
+ MB_DEEP_WATER,
+ MB_WATERFALL,
+ MB_SOOTOPOLIS_DEEP_WATER,
+ MB_OCEAN_WATER,
+ MB_PUDDLE,
+ MB_SHALLOW_WATER,
+ MB_UNUSED_SOOTOPOLIS_DEEP_WATER,
+ MB_NO_SURFACING,
+ MB_UNUSED_SOOTOPOLIS_DEEP_WATER_2,
+ MB_STAIRS_OUTSIDE_ABANDONED_SHIP,
+ MB_SHOAL_CAVE_ENTRANCE,
+ MB_UNUSED_1D,
+ MB_UNUSED_1E,
+ MB_UNUSED_1F,
+ MB_ICE,
+ MB_SAND,
+ MB_SEAWEED,
+ MB_UNUSED_23,
+ MB_ASHGRASS,
+ MB_FOOTPRINTS,
+ MB_THIN_ICE,
+ MB_CRACKED_ICE,
+ MB_HOT_SPRINGS,
+ MB_LAVARIDGE_GYM_B1F_WARP,
+ MB_SEAWEED_NO_SURFACING,
+ MB_REFLECTION_UNDER_BRIDGE,
+ MB_UNUSED_2C,
+ MB_UNUSED_2D,
+ MB_UNUSED_2E,
+ MB_UNUSED_2F,
+ MB_IMPASSABLE_EAST,
+ MB_IMPASSABLE_WEST,
+ MB_IMPASSABLE_NORTH,
+ MB_IMPASSABLE_SOUTH,
+ MB_IMPASSABLE_NORTHEAST,
+ MB_IMPASSABLE_NORTHWEST,
+ MB_IMPASSABLE_SOUTHEAST,
+ MB_IMPASSABLE_SOUTHWEST,
+ MB_JUMP_EAST,
+ MB_JUMP_WEST,
+ MB_JUMP_NORTH,
+ MB_JUMP_SOUTH,
+ MB_JUMP_NORTHEAST,
+ MB_JUMP_NORTHWEST,
+ MB_JUMP_SOUTHEAST,
+ MB_JUMP_SOUTHWEST,
+ MB_WALK_EAST,
+ MB_WALK_WEST,
+ MB_WALK_NORTH,
+ MB_WALK_SOUTH,
+ MB_SLIDE_EAST,
+ MB_SLIDE_WEST,
+ MB_SLIDE_NORTH,
+ MB_SLIDE_SOUTH,
+ MB_TRICK_HOUSE_PUZZLE_8_FLOOR,
+ MB_UNUSED_49,
+ MB_UNUSED_4A,
+ MB_UNUSED_4B,
+ MB_UNUSED_4C,
+ MB_UNUSED_4D,
+ MB_UNUSED_4E,
+ MB_UNUSED_4F,
+ MB_EASTWARD_CURRENT,
+ MB_WESTWARD_CURRENT,
+ MB_NORTHWARD_CURRENT,
+ MB_SOUTHWARD_CURRENT,
+ MB_UNUSED_54,
+ MB_UNUSED_55,
+ MB_UNUSED_56,
+ MB_UNUSED_57,
+ MB_UNUSED_58,
+ MB_UNUSED_59,
+ MB_UNUSED_5A,
+ MB_UNUSED_5B,
+ MB_UNUSED_5C,
+ MB_UNUSED_5D,
+ MB_UNUSED_5E,
+ MB_UNUSED_5F,
+ MB_NON_ANIMATED_DOOR,
+ MB_LADDER,
+ MB_EAST_ARROW_WARP,
+ MB_WEST_ARROW_WARP,
+ MB_NORTH_ARROW_WARP,
+ MB_SOUTH_ARROW_WARP,
+ MB_CRACKED_FLOOR_HOLE,
+ MB_AQUA_HIDEOUT_WARP,
+ MB_LAVARIDGE_GYM_1F_WARP,
+ MB_ANIMATED_DOOR,
+ MB_UP_ESCALATOR,
+ MB_DOWN_ESCALATOR,
+ MB_WATER_DOOR,
+ MB_WATER_SOUTH_ARROW_WARP,
+ MB_DEEP_SOUTH_WARP,
+ MB_UNUSED_6F,
+ MB_BRIDGE_OVER_OCEAN,
+ MB_BRIDGE_OVER_POND_LOW,
+ MB_BRIDGE_OVER_POND_MED,
+ MB_BRIDGE_OVER_POND_HIGH,
+ MB_PACIFIDLOG_VERTICAL_LOG_TOP,
+ MB_PACIFIDLOG_VERTICAL_LOG_BOTTOM,
+ MB_PACIFIDLOG_HORIZONTAL_LOG_LEFT,
+ MB_PACIFIDLOG_HORIZONTAL_LOG_RIGHT,
+ MB_FORTREE_BRIDGE,
+ MB_UNUSED_79,
+ MB_BRIDGE_OVER_POND_MED_EDGE_1,
+ MB_BRIDGE_OVER_POND_MED_EDGE_2,
+ MB_BRIDGE_OVER_POND_HIGH_EDGE_1,
+ MB_BRIDGE_OVER_POND_HIGH_EDGE_2,
+ MB_UNUSED_BRIDGE,
+ MB_BIKE_BRIDGE_OVER_BARRIER,
+ MB_COUNTER,
+ MB_UNUSED_81,
+ MB_UNUSED_82,
+ MB_PC,
+ MB_CABLE_BOX_RESULTS_1,
+ MB_REGION_MAP,
+ MB_TELEVISION,
+ MB_POKEBLOCK_FEEDER,
+ MB_UNUSED_88,
+ MB_SLOT_MACHINE,
+ MB_ROULETTE,
+ MB_CLOSED_SOOTOPOLIS_DOOR,
+ MB_TRICK_HOUSE_PUZZLE_DOOR,
+ MB_PETALBURG_GYM_DOOR,
+ MB_RUNNING_SHOES_INSTRUCTION,
+ MB_QUESTIONNAIRE,
+ MB_SECRET_BASE_SPOT_RED_CAVE,
+ MB_SECRET_BASE_SPOT_RED_CAVE_OPEN,
+ MB_SECRET_BASE_SPOT_BROWN_CAVE,
+ MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN,
+ MB_SECRET_BASE_SPOT_YELLOW_CAVE,
+ MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN,
+ MB_SECRET_BASE_SPOT_TREE_LEFT,
+ MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN,
+ MB_SECRET_BASE_SPOT_SHRUB,
+ MB_SECRET_BASE_SPOT_SHRUB_OPEN,
+ MB_SECRET_BASE_SPOT_BLUE_CAVE,
+ MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN,
+ MB_SECRET_BASE_SPOT_TREE_RIGHT,
+ MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN,
+ MB_UNUSED_9E,
+ MB_UNUSED_9F,
+ MB_BERRY_TREE_SOIL,
+ MB_UNUSED_A1,
+ MB_UNUSED_A2,
+ MB_UNUSED_A3,
+ MB_UNUSED_A4,
+ MB_UNUSED_A5,
+ MB_UNUSED_A6,
+ MB_UNUSED_A7,
+ MB_UNUSED_A8,
+ MB_UNUSED_A9,
+ MB_UNUSED_AA,
+ MB_UNUSED_AB,
+ MB_UNUSED_AC,
+ MB_UNUSED_AD,
+ MB_UNUSED_AE,
+ MB_UNUSED_AF,
+ MB_SECRET_BASE_PC,
+ MB_SECRET_BASE_REGISTER_PC,
+ MB_SECRET_BASE_SCENERY,
+ MB_SECRET_BASE_TRAINER_SPOT,
+ MB_SECRET_BASE_DECORATION,
+ MB_HOLDS_SMALL_DECORATION,
+ MB_UNUSED_B6,
+ MB_SECRET_BASE_NORTH_WALL,
+ MB_SECRET_BASE_BALLOON,
+ MB_SECRET_BASE_IMPASSABLE,
+ MB_SECRET_BASE_GLITTER_MAT,
+ MB_SECRET_BASE_JUMP_MAT,
+ MB_SECRET_BASE_SPIN_MAT,
+ MB_SECRET_BASE_SOUND_MAT,
+ MB_SECRET_BASE_BREAKABLE_DOOR,
+ MB_SECRET_BASE_SAND_ORNAMENT,
+ MB_IMPASSABLE_SOUTH_AND_NORTH,
+ MB_IMPASSABLE_WEST_AND_EAST,
+ MB_SECRET_BASE_HOLE,
+ MB_HOLDS_LARGE_DECORATION,
+ MB_SECRET_BASE_TV_SHIELD,
+ MB_PLAYER_ROOM_PC_ON,
+ MB_SECRET_BASE_DECORATION_BASE,
+ MB_SECRET_BASE_POSTER,
+ MB_UNUSED_C8,
+ MB_UNUSED_C9,
+ MB_UNUSED_CA,
+ MB_UNUSED_CB,
+ MB_UNUSED_CC,
+ MB_UNUSED_CD,
+ MB_UNUSED_CE,
+ MB_UNUSED_CF,
+ MB_MUDDY_SLOPE,
+ MB_BUMPY_SLOPE,
+ MB_CRACKED_FLOOR,
+ MB_ISOLATED_VERTICAL_RAIL,
+ MB_ISOLATED_HORIZONTAL_RAIL,
+ MB_VERTICAL_RAIL,
+ MB_HORIZONTAL_RAIL,
+ MB_UNUSED_D7,
+ MB_UNUSED_D8,
+ MB_UNUSED_D9,
+ MB_UNUSED_DA,
+ MB_UNUSED_DB,
+ MB_UNUSED_DC,
+ MB_UNUSED_DD,
+ MB_UNUSED_DE,
+ MB_UNUSED_DF,
+ MB_PICTURE_BOOK_SHELF,
+ MB_BOOKSHELF,
+ MB_POKEMON_CENTER_BOOKSHELF,
+ MB_VASE,
+ MB_TRASH_CAN,
+ MB_SHOP_SHELF,
+ MB_BLUEPRINT,
+ MB_CABLE_BOX_RESULTS_2,
+ MB_WIRELESS_BOX_RESULTS,
+ MB_TRAINER_HILL_TIMER,
+ MB_SKY_PILLAR_CLOSED_DOOR,
+ MB_UNUSED_EB,
+ MB_UNUSED_EC,
+ MB_UNUSED_ED,
+ MB_UNUSED_EE,
+ MB_UNUSED_EF,
+ NUM_METATILE_BEHAVIORS
+};
-#define NUM_METATILE_BEHAVIORS 0xF0
-
-#define MB_INVALID 0xFF
+#define MB_INVALID UCHAR_MAX
#endif // GUARD_METATILE_BEHAVIORS_H
diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h
index c2c018761a..3b63d80f84 100644
--- a/include/constants/metatile_labels.h
+++ b/include/constants/metatile_labels.h
@@ -9,18 +9,6 @@
#define METATILE_BattleDome_Door_Lobby 0x209
#define METATILE_BattleDome_Door_PreBattleRoom 0x20A
-// gTileset_BattleFrontierOutsideEast
-#define METATILE_BattleFrontierOutsideEast_Door 0x3FC
-#define METATILE_BattleFrontierOutsideEast_Door_BattleArena 0x291
-#define METATILE_BattleFrontierOutsideEast_Door_BattleTower 0x329
-#define METATILE_BattleFrontierOutsideEast_Door_Sliding 0x396
-
-// gTileset_BattleFrontierOutsideWest
-#define METATILE_BattleFrontierOutsideWest_Door 0x3FC
-#define METATILE_BattleFrontierOutsideWest_Door_BattleDome 0x28A
-#define METATILE_BattleFrontierOutsideWest_Door_BattleFactory 0x263
-#define METATILE_BattleFrontierOutsideWest_Door_Sliding 0x396
-
// gTileset_BattleFrontier
#define METATILE_BattleFrontier_CorridorOpenDoor_Bottom 0x20F
#define METATILE_BattleFrontier_CorridorOpenDoor_Top 0x207
@@ -36,6 +24,18 @@
#define METATILE_BattleFrontier_Elevator_Top1 0x32A
#define METATILE_BattleFrontier_Elevator_Top2 0x32B
+// gTileset_BattleFrontierOutsideEast
+#define METATILE_BattleFrontierOutsideEast_Door 0x3FC
+#define METATILE_BattleFrontierOutsideEast_Door_BattleArena 0x291
+#define METATILE_BattleFrontierOutsideEast_Door_BattleTower 0x329
+#define METATILE_BattleFrontierOutsideEast_Door_Sliding 0x396
+
+// gTileset_BattleFrontierOutsideWest
+#define METATILE_BattleFrontierOutsideWest_Door 0x3FC
+#define METATILE_BattleFrontierOutsideWest_Door_BattleDome 0x28A
+#define METATILE_BattleFrontierOutsideWest_Door_BattleFactory 0x263
+#define METATILE_BattleFrontierOutsideWest_Door_Sliding 0x396
+
// gTileset_BattlePalace
#define METATILE_BattlePalace_Door 0x219
@@ -272,6 +272,18 @@
#define METATILE_Lavaridge_NormalGrass 0x206
#define METATILE_Lavaridge_RockWall 0x274
+// gTileset_Lilycove
+#define METATILE_Lilycove_Door 0x246
+#define METATILE_Lilycove_Door_DeptStore 0x30C
+#define METATILE_Lilycove_Door_SafariZone 0x32D
+#define METATILE_Lilycove_Door_Wooden 0x28E
+#define METATILE_Lilycove_Wailmer0 0x290
+#define METATILE_Lilycove_Wailmer0_Alt 0x298
+#define METATILE_Lilycove_Wailmer1 0x291
+#define METATILE_Lilycove_Wailmer1_Alt 0x299
+#define METATILE_Lilycove_Wailmer2 0x2A0
+#define METATILE_Lilycove_Wailmer3 0x2A1
+
// gTileset_LilycoveMuseum
#define METATILE_LilycoveMuseum_Painting0_Left 0x25A
#define METATILE_LilycoveMuseum_Painting0_Right 0x25B
@@ -284,17 +296,31 @@
#define METATILE_LilycoveMuseum_Painting4_Left 0x262
#define METATILE_LilycoveMuseum_Painting4_Right 0x263
-// gTileset_Lilycove
-#define METATILE_Lilycove_Door 0x246
-#define METATILE_Lilycove_Door_DeptStore 0x30C
-#define METATILE_Lilycove_Door_SafariZone 0x32D
-#define METATILE_Lilycove_Door_Wooden 0x28E
-#define METATILE_Lilycove_Wailmer0 0x290
-#define METATILE_Lilycove_Wailmer0_Alt 0x298
-#define METATILE_Lilycove_Wailmer1 0x291
-#define METATILE_Lilycove_Wailmer1_Alt 0x299
-#define METATILE_Lilycove_Wailmer2 0x2A0
-#define METATILE_Lilycove_Wailmer3 0x2A1
+// gTileset_Mauville
+#define METATILE_Mauville_DeepSand_BottomMid 0x259
+#define METATILE_Mauville_DeepSand_Center 0x251
+#define METATILE_Mauville_Door 0x2AC
+#define METATILE_Mauville_Door_BattleTent 0x3D4
+#define METATILE_Mauville_Door_CyclingRoad 0x289
+#define METATILE_Mauville_Door_Verdanturf 0x3A1
+#define METATILE_Mauville_MirageTower_Tile0 0x3D8
+#define METATILE_Mauville_MirageTower_Tile1 0x3D9
+#define METATILE_Mauville_MirageTower_Tile10 0x3E4
+#define METATILE_Mauville_MirageTower_Tile11 0x3E5
+#define METATILE_Mauville_MirageTower_Tile2 0x3DA
+#define METATILE_Mauville_MirageTower_Tile3 0x3E0
+#define METATILE_Mauville_MirageTower_Tile4 0x3E1
+#define METATILE_Mauville_MirageTower_Tile5 0x3E2
+#define METATILE_Mauville_MirageTower_Tile6 0x3E8
+#define METATILE_Mauville_MirageTower_Tile7 0x3E9
+#define METATILE_Mauville_MirageTower_Tile8 0x3EA
+#define METATILE_Mauville_MirageTower_Tile9 0x3F0
+#define METATILE_Mauville_MirageTower_TileA 0x3F1
+#define METATILE_Mauville_MirageTower_TileB 0x3F2
+#define METATILE_Mauville_MirageTower_TileC 0x3DB
+#define METATILE_Mauville_MirageTower_TileD 0x3DC
+#define METATILE_Mauville_MirageTower_TileE 0x3DD
+#define METATILE_Mauville_MirageTower_TileF 0x3E3
// gTileset_MauvilleGym
#define METATILE_MauvilleGym_FloorTile 0x21A
@@ -325,38 +351,16 @@
#define METATILE_MauvilleGym_RedBeamV1_On 0x241
#define METATILE_MauvilleGym_RedBeamV2_On 0x249
-// gTileset_Mauville
-#define METATILE_Mauville_DeepSand_BottomMid 0x259
-#define METATILE_Mauville_DeepSand_Center 0x251
-#define METATILE_Mauville_Door 0x2AC
-#define METATILE_Mauville_Door_BattleTent 0x3D4
-#define METATILE_Mauville_Door_CyclingRoad 0x289
-#define METATILE_Mauville_Door_Verdanturf 0x3A1
-#define METATILE_Mauville_MirageTower_Tile0 0x3D8
-#define METATILE_Mauville_MirageTower_Tile1 0x3D9
-#define METATILE_Mauville_MirageTower_Tile10 0x3E4
-#define METATILE_Mauville_MirageTower_Tile11 0x3E5
-#define METATILE_Mauville_MirageTower_Tile2 0x3DA
-#define METATILE_Mauville_MirageTower_Tile3 0x3E0
-#define METATILE_Mauville_MirageTower_Tile4 0x3E1
-#define METATILE_Mauville_MirageTower_Tile5 0x3E2
-#define METATILE_Mauville_MirageTower_Tile6 0x3E8
-#define METATILE_Mauville_MirageTower_Tile7 0x3E9
-#define METATILE_Mauville_MirageTower_Tile8 0x3EA
-#define METATILE_Mauville_MirageTower_Tile9 0x3F0
-#define METATILE_Mauville_MirageTower_TileA 0x3F1
-#define METATILE_Mauville_MirageTower_TileB 0x3F2
-#define METATILE_Mauville_MirageTower_TileC 0x3DB
-#define METATILE_Mauville_MirageTower_TileD 0x3DC
-#define METATILE_Mauville_MirageTower_TileE 0x3DD
-#define METATILE_Mauville_MirageTower_TileF 0x3E3
-
// gTileset_MeteorFalls
#define METATILE_MeteorFalls_CaveEntrance_Bottom 0x24E
#define METATILE_MeteorFalls_CaveEntrance_Left 0x24D
#define METATILE_MeteorFalls_CaveEntrance_Right 0x24F
#define METATILE_MeteorFalls_CaveEntrance_Top 0x246
+// gTileset_Mossdeep
+#define METATILE_Mossdeep_Door 0x2A1
+#define METATILE_Mossdeep_Door_SpaceCenter 0x2ED
+
// gTileset_MossdeepGameCorner
#define METATILE_MossdeepGameCorner_CounterClosed_Bottom 0x232
#define METATILE_MossdeepGameCorner_CounterClosed_Top 0x22A
@@ -366,10 +370,6 @@
// gTileset_MossdeepGym
#define METATILE_MossdeepGym_YellowArrow_Right 0x250
-// gTileset_Mossdeep
-#define METATILE_Mossdeep_Door 0x2A1
-#define METATILE_Mossdeep_Door_SpaceCenter 0x2ED
-
// gTileset_Pacifidlog
#define METATILE_Pacifidlog_Door 0x21A
#define METATILE_Pacifidlog_FloatingLogs_HorizontalLeft 0x250
@@ -388,6 +388,11 @@
#define METATILE_Pacifidlog_SubmergedLogs_VerticalBottom 0x262
#define METATILE_Pacifidlog_SubmergedLogs_VerticalTop 0x25A
+// gTileset_Petalburg
+#define METATILE_Petalburg_Door_BirchsLab 0x249
+#define METATILE_Petalburg_Door_Littleroot 0x248
+#define METATILE_Petalburg_Door_Oldale 0x287
+
// gTileset_PetalburgGym
#define METATILE_PetalburgGym_Door 0x224
#define METATILE_PetalburgGym_RoomEntrance_Left 0x210
@@ -398,11 +403,6 @@
#define METATILE_PetalburgGym_SlidingDoor_Frame3 0x21B
#define METATILE_PetalburgGym_SlidingDoor_Frame4 0x21C
-// gTileset_Petalburg
-#define METATILE_Petalburg_Door_BirchsLab 0x249
-#define METATILE_Petalburg_Door_Littleroot 0x248
-#define METATILE_Petalburg_Door_Oldale 0x287
-
// gTileset_PokemonCenter
#define METATILE_PokemonCenter_CounterBarrier 0x25D
#define METATILE_PokemonCenter_Door_CableClub 0x264
@@ -431,14 +431,6 @@
#define METATILE_PokemonCenter_Floor_ShadowTop 0x21E
#define METATILE_PokemonCenter_Floor_ShadowTop_Alt 0x2DC
-// gTileset_RSMossdeepGym
-#define METATILE_RSMossdeepGym_RedArrow_Down 0x205
-#define METATILE_RSMossdeepGym_RedArrow_Left 0x20C
-#define METATILE_RSMossdeepGym_RedArrow_Right 0x204
-#define METATILE_RSMossdeepGym_RedArrow_Up 0x20D
-#define METATILE_RSMossdeepGym_Switch_Down 0x239
-#define METATILE_RSMossdeepGym_Switch_Up 0x238
-
// gTileset_Rustboro
#define METATILE_Rustboro_Door_Gray 0x21F
#define METATILE_Rustboro_Door_Tan 0x22F
@@ -726,11 +718,6 @@
#define METATILE_Slateport_Door 0x2DC
#define METATILE_Slateport_Door_BattleTent 0x393
-// gTileset_SootopolisGym
-#define METATILE_SootopolisGym_Ice_Broken 0x206
-#define METATILE_SootopolisGym_Ice_Cracked 0x20E
-#define METATILE_SootopolisGym_Stairs 0x207
-
// gTileset_Sootopolis
#define METATILE_Sootopolis_Door 0x21E
#define METATILE_Sootopolis_Door_Closed 0x248
@@ -738,6 +725,11 @@
#define METATILE_Sootopolis_GymDoor_Closed 0x250
#define METATILE_Sootopolis_RoughWater 0x290
+// gTileset_SootopolisGym
+#define METATILE_SootopolisGym_Ice_Broken 0x206
+#define METATILE_SootopolisGym_Ice_Cracked 0x20E
+#define METATILE_SootopolisGym_Stairs 0x207
+
// gTileset_TrainerHill
#define METATILE_TrainerHill_CounterDoor 0x334
#define METATILE_TrainerHill_Door_Elevator_Lobby 0x32C
@@ -787,4 +779,12 @@
#define METATILE_Underwater_FloorShadow 0x228
#define METATILE_Underwater_RockWall 0x21E
+// Other
+#define METATILE_RSMossdeepGym_RedArrow_Down 0x205
+#define METATILE_RSMossdeepGym_RedArrow_Left 0x20C
+#define METATILE_RSMossdeepGym_RedArrow_Right 0x204
+#define METATILE_RSMossdeepGym_RedArrow_Up 0x20D
+#define METATILE_RSMossdeepGym_Switch_Down 0x239
+#define METATILE_RSMossdeepGym_Switch_Up 0x238
+
#endif // GUARD_METATILE_LABELS_H
diff --git a/include/constants/pokedex.h b/include/constants/pokedex.h
index 7ee1b3760e..c9c51623e5 100644
--- a/include/constants/pokedex.h
+++ b/include/constants/pokedex.h
@@ -1,7 +1,7 @@
#ifndef GUARD_CONSTANTS_POKEDEX_H
#define GUARD_CONSTANTS_POKEDEX_H
-// National Pokedex order
+// National Pokédex order
enum {
NATIONAL_DEX_NONE,
// Kanto
@@ -425,7 +425,7 @@ enum {
#define JOHTO_DEX_COUNT NATIONAL_DEX_CELEBI
#define NATIONAL_DEX_COUNT NATIONAL_DEX_DEOXYS
-// Hoenn Pokedex order
+// Hoenn Pokédex order
enum {
HOENN_DEX_NONE,
HOENN_DEX_TREECKO,
@@ -631,7 +631,7 @@ enum {
HOENN_DEX_JIRACHI,
HOENN_DEX_DEOXYS,
// End of Hoenn Dex (see HOENN_DEX_COUNT)
- // Here below have values but are excluded from the Pokedex
+ // Here below have values but are excluded from the Pokédex
HOENN_DEX_BULBASAUR,
HOENN_DEX_IVYSAUR,
HOENN_DEX_VENUSAUR,
diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h
index 6265c027aa..0d6a20e2b9 100644
--- a/include/constants/pokemon.h
+++ b/include/constants/pokemon.h
@@ -1,7 +1,7 @@
#ifndef GUARD_CONSTANTS_POKEMON_H
#define GUARD_CONSTANTS_POKEMON_H
-// Pokemon types
+// Pokémon types
#define TYPE_NONE 255
#define TYPE_NORMAL 0
#define TYPE_FIGHTING 1
@@ -23,7 +23,7 @@
#define TYPE_DARK 17
#define NUMBER_OF_MON_TYPES 18
-// Pokemon egg groups
+// Pokémon egg groups
#define EGG_GROUP_NONE 0
#define EGG_GROUP_MONSTER 1
#define EGG_GROUP_WATER_1 2
@@ -43,7 +43,7 @@
#define EGG_GROUPS_PER_MON 2
-// Pokemon natures
+// Pokémon natures
#define NATURE_HARDY 0
#define NATURE_LONELY 1
#define NATURE_BRAVE 2
@@ -71,7 +71,7 @@
#define NATURE_QUIRKY 24
#define NUM_NATURES 25
-// Pokemon Stats
+// Pokémon Stats
#define STAT_HP 0
#define STAT_ATK 1
#define STAT_DEF 2
@@ -220,7 +220,7 @@
#define GROWTH_FAST 4
#define GROWTH_SLOW 5
-// Body colors for pokedex search
+// Body colors for Pokédex search
#define BODY_COLOR_RED 0
#define BODY_COLOR_BLUE 1
#define BODY_COLOR_YELLOW 2
@@ -263,7 +263,7 @@
#define MON_PIC_HEIGHT 64
#define MON_PIC_SIZE (MON_PIC_WIDTH * MON_PIC_HEIGHT / 2)
-// Most pokemon have 2 frames (a default and an alternate for their animation).
+// Most Pokémon have 2 frames (a default and an alternate for their animation).
// There are 4 exceptions:
// - Castform has 4 frames, 1 for each form
// - Deoxys has 2 frames, 1 for each form
diff --git a/include/constants/pokemon_icon.h b/include/constants/pokemon_icon.h
new file mode 100644
index 0000000000..d57d5111a9
--- /dev/null
+++ b/include/constants/pokemon_icon.h
@@ -0,0 +1,6 @@
+#ifndef GUARD_CONSTANTS_POKEMON_ICON_H
+#define GUARD_CONSTANTS_POKEMON_ICON_H
+
+#define POKE_ICON_BASE_PAL_TAG 56000
+
+#endif // GUARD_CONSTANTS_POKEMON_ICON_H
diff --git a/include/constants/region_map_sections.h b/include/constants/region_map_sections.h
deleted file mode 100644
index 5b8029acf5..0000000000
--- a/include/constants/region_map_sections.h
+++ /dev/null
@@ -1,227 +0,0 @@
-#ifndef GUARD_REGIONMAPSEC_H
-#define GUARD_REGIONMAPSEC_H
-
-#define MAPSEC_LITTLEROOT_TOWN 0x00
-#define MAPSEC_OLDALE_TOWN 0x01
-#define MAPSEC_DEWFORD_TOWN 0x02
-#define MAPSEC_LAVARIDGE_TOWN 0x03
-#define MAPSEC_FALLARBOR_TOWN 0x04
-#define MAPSEC_VERDANTURF_TOWN 0x05
-#define MAPSEC_PACIFIDLOG_TOWN 0x06
-#define MAPSEC_PETALBURG_CITY 0x07
-#define MAPSEC_SLATEPORT_CITY 0x08
-#define MAPSEC_MAUVILLE_CITY 0x09
-#define MAPSEC_RUSTBORO_CITY 0x0A
-#define MAPSEC_FORTREE_CITY 0x0B
-#define MAPSEC_LILYCOVE_CITY 0x0C
-#define MAPSEC_MOSSDEEP_CITY 0x0D
-#define MAPSEC_SOOTOPOLIS_CITY 0x0E
-#define MAPSEC_EVER_GRANDE_CITY 0x0F
-#define MAPSEC_ROUTE_101 0x10
-#define MAPSEC_ROUTE_102 0x11
-#define MAPSEC_ROUTE_103 0x12
-#define MAPSEC_ROUTE_104 0x13
-#define MAPSEC_ROUTE_105 0x14
-#define MAPSEC_ROUTE_106 0x15
-#define MAPSEC_ROUTE_107 0x16
-#define MAPSEC_ROUTE_108 0x17
-#define MAPSEC_ROUTE_109 0x18
-#define MAPSEC_ROUTE_110 0x19
-#define MAPSEC_ROUTE_111 0x1A
-#define MAPSEC_ROUTE_112 0x1B
-#define MAPSEC_ROUTE_113 0x1C
-#define MAPSEC_ROUTE_114 0x1D
-#define MAPSEC_ROUTE_115 0x1E
-#define MAPSEC_ROUTE_116 0x1F
-#define MAPSEC_ROUTE_117 0x20
-#define MAPSEC_ROUTE_118 0x21
-#define MAPSEC_ROUTE_119 0x22
-#define MAPSEC_ROUTE_120 0x23
-#define MAPSEC_ROUTE_121 0x24
-#define MAPSEC_ROUTE_122 0x25
-#define MAPSEC_ROUTE_123 0x26
-#define MAPSEC_ROUTE_124 0x27
-#define MAPSEC_ROUTE_125 0x28
-#define MAPSEC_ROUTE_126 0x29
-#define MAPSEC_ROUTE_127 0x2A
-#define MAPSEC_ROUTE_128 0x2B
-#define MAPSEC_ROUTE_129 0x2C
-#define MAPSEC_ROUTE_130 0x2D
-#define MAPSEC_ROUTE_131 0x2E
-#define MAPSEC_ROUTE_132 0x2F
-#define MAPSEC_ROUTE_133 0x30
-#define MAPSEC_ROUTE_134 0x31
-#define MAPSEC_UNDERWATER_124 0x32
-#define MAPSEC_UNDERWATER_126 0x33
-#define MAPSEC_UNDERWATER_127 0x34
-#define MAPSEC_UNDERWATER_128 0x35
-#define MAPSEC_UNDERWATER_SOOTOPOLIS 0x36
-#define MAPSEC_GRANITE_CAVE 0x37
-#define MAPSEC_MT_CHIMNEY 0x38
-#define MAPSEC_SAFARI_ZONE 0x39
-#define MAPSEC_BATTLE_FRONTIER 0x3A
-#define MAPSEC_PETALBURG_WOODS 0x3B
-#define MAPSEC_RUSTURF_TUNNEL 0x3C
-#define MAPSEC_ABANDONED_SHIP 0x3D
-#define MAPSEC_NEW_MAUVILLE 0x3E
-#define MAPSEC_METEOR_FALLS 0x3F
-#define MAPSEC_METEOR_FALLS2 0x40
-#define MAPSEC_MT_PYRE 0x41
-#define MAPSEC_AQUA_HIDEOUT_OLD 0x42
-#define MAPSEC_SHOAL_CAVE 0x43
-#define MAPSEC_SEAFLOOR_CAVERN 0x44
-#define MAPSEC_UNDERWATER_SEAFLOOR_CAVERN 0x45
-#define MAPSEC_VICTORY_ROAD 0x46
-#define MAPSEC_MIRAGE_ISLAND 0x47
-#define MAPSEC_CAVE_OF_ORIGIN 0x48
-#define MAPSEC_SOUTHERN_ISLAND 0x49
-#define MAPSEC_FIERY_PATH 0x4A
-#define MAPSEC_FIERY_PATH2 0x4B
-#define MAPSEC_JAGGED_PASS 0x4C
-#define MAPSEC_JAGGED_PASS2 0x4D
-#define MAPSEC_SEALED_CHAMBER 0x4E
-#define MAPSEC_UNDERWATER_SEALED_CHAMBER 0x4F
-#define MAPSEC_SCORCHED_SLAB 0x50
-#define MAPSEC_ISLAND_CAVE 0x51
-#define MAPSEC_DESERT_RUINS 0x52
-#define MAPSEC_ANCIENT_TOMB 0x53
-#define MAPSEC_INSIDE_OF_TRUCK 0x54
-#define MAPSEC_SKY_PILLAR 0x55
-#define MAPSEC_SECRET_BASE 0x56
-#define MAPSEC_DYNAMIC 0x57
-#define MAPSEC_PALLET_TOWN 0x58
-#define MAPSEC_VIRIDIAN_CITY 0x59
-#define MAPSEC_PEWTER_CITY 0x5A
-#define MAPSEC_CERULEAN_CITY 0x5B
-#define MAPSEC_LAVENDER_TOWN 0x5C
-#define MAPSEC_VERMILION_CITY 0x5D
-#define MAPSEC_CELADON_CITY 0x5E
-#define MAPSEC_FUCHSIA_CITY 0x5F
-#define MAPSEC_CINNABAR_ISLAND 0x60
-#define MAPSEC_INDIGO_PLATEAU 0x61
-#define MAPSEC_SAFFRON_CITY 0x62
-#define MAPSEC_ROUTE_4_POKECENTER 0x63
-#define MAPSEC_ROUTE_10_POKECENTER 0x64
-#define MAPSEC_ROUTE_1 0x65
-#define MAPSEC_ROUTE_2 0x66
-#define MAPSEC_ROUTE_3 0x67
-#define MAPSEC_ROUTE_4 0x68
-#define MAPSEC_ROUTE_5 0x69
-#define MAPSEC_ROUTE_6 0x6A
-#define MAPSEC_ROUTE_7 0x6B
-#define MAPSEC_ROUTE_8 0x6C
-#define MAPSEC_ROUTE_9 0x6D
-#define MAPSEC_ROUTE_10 0x6E
-#define MAPSEC_ROUTE_11 0x6F
-#define MAPSEC_ROUTE_12 0x70
-#define MAPSEC_ROUTE_13 0x71
-#define MAPSEC_ROUTE_14 0x72
-#define MAPSEC_ROUTE_15 0x73
-#define MAPSEC_ROUTE_16 0x74
-#define MAPSEC_ROUTE_17 0x75
-#define MAPSEC_ROUTE_18 0x76
-#define MAPSEC_ROUTE_19 0x77
-#define MAPSEC_ROUTE_20 0x78
-#define MAPSEC_ROUTE_21 0x79
-#define MAPSEC_ROUTE_22 0x7A
-#define MAPSEC_ROUTE_23 0x7B
-#define MAPSEC_ROUTE_24 0x7C
-#define MAPSEC_ROUTE_25 0x7D
-#define MAPSEC_VIRIDIAN_FOREST 0x7E
-#define MAPSEC_MT_MOON 0x7F
-#define MAPSEC_S_S_ANNE 0x80
-#define MAPSEC_UNDERGROUND_PATH 0x81
-#define MAPSEC_UNDERGROUND_PATH_2 0x82
-#define MAPSEC_DIGLETTS_CAVE 0x83
-#define MAPSEC_KANTO_VICTORY_ROAD 0x84
-#define MAPSEC_ROCKET_HIDEOUT 0x85
-#define MAPSEC_SILPH_CO 0x86
-#define MAPSEC_POKEMON_MANSION 0x87
-#define MAPSEC_KANTO_SAFARI_ZONE 0x88
-#define MAPSEC_POKEMON_LEAGUE 0x89
-#define MAPSEC_ROCK_TUNNEL 0x8A
-#define MAPSEC_SEAFOAM_ISLANDS 0x8B
-#define MAPSEC_POKEMON_TOWER 0x8C
-#define MAPSEC_CERULEAN_CAVE 0x8D
-#define MAPSEC_POWER_PLANT 0x8E
-#define MAPSEC_ONE_ISLAND 0x8F
-#define MAPSEC_TWO_ISLAND 0x90
-#define MAPSEC_THREE_ISLAND 0x91
-#define MAPSEC_FOUR_ISLAND 0x92
-#define MAPSEC_FIVE_ISLAND 0x93
-#define MAPSEC_SEVEN_ISLAND 0x94
-#define MAPSEC_SIX_ISLAND 0x95
-#define MAPSEC_KINDLE_ROAD 0x96
-#define MAPSEC_TREASURE_BEACH 0x97
-#define MAPSEC_CAPE_BRINK 0x98
-#define MAPSEC_BOND_BRIDGE 0x99
-#define MAPSEC_THREE_ISLE_PORT 0x9A
-#define MAPSEC_SEVII_ISLE_6 0x9B
-#define MAPSEC_SEVII_ISLE_7 0x9C
-#define MAPSEC_SEVII_ISLE_8 0x9D
-#define MAPSEC_SEVII_ISLE_9 0x9E
-#define MAPSEC_RESORT_GORGEOUS 0x9F
-#define MAPSEC_WATER_LABYRINTH 0xA0
-#define MAPSEC_FIVE_ISLE_MEADOW 0xA1
-#define MAPSEC_MEMORIAL_PILLAR 0xA2
-#define MAPSEC_OUTCAST_ISLAND 0xA3
-#define MAPSEC_GREEN_PATH 0xA4
-#define MAPSEC_WATER_PATH 0xA5
-#define MAPSEC_RUIN_VALLEY 0xA6
-#define MAPSEC_TRAINER_TOWER 0xA7
-#define MAPSEC_CANYON_ENTRANCE 0xA8
-#define MAPSEC_SEVAULT_CANYON 0xA9
-#define MAPSEC_TANOBY_RUINS 0xAA
-#define MAPSEC_SEVII_ISLE_22 0xAB
-#define MAPSEC_SEVII_ISLE_23 0xAC
-#define MAPSEC_SEVII_ISLE_24 0xAD
-#define MAPSEC_NAVEL_ROCK_FRLG 0xAE
-#define MAPSEC_MT_EMBER 0xAF
-#define MAPSEC_BERRY_FOREST 0xB0
-#define MAPSEC_ICEFALL_CAVE 0xB1
-#define MAPSEC_ROCKET_WAREHOUSE 0xB2
-#define MAPSEC_TRAINER_TOWER_2 0xB3
-#define MAPSEC_DOTTED_HOLE 0xB4
-#define MAPSEC_LOST_CAVE 0xB5
-#define MAPSEC_PATTERN_BUSH 0xB6
-#define MAPSEC_ALTERING_CAVE_FRLG 0xB7
-#define MAPSEC_TANOBY_CHAMBERS 0xB8
-#define MAPSEC_THREE_ISLE_PATH 0xB9
-#define MAPSEC_TANOBY_KEY 0xBA
-#define MAPSEC_BIRTH_ISLAND_FRLG 0xBB
-#define MAPSEC_MONEAN_CHAMBER 0xBC
-#define MAPSEC_LIPTOO_CHAMBER 0xBD
-#define MAPSEC_WEEPTH_CHAMBER 0xBE
-#define MAPSEC_DILFORD_CHAMBER 0xBF
-#define MAPSEC_SCUFIB_CHAMBER 0xC0
-#define MAPSEC_RIXY_CHAMBER 0xC1
-#define MAPSEC_VIAPOIS_CHAMBER 0xC2
-#define MAPSEC_EMBER_SPA 0xC3
-#define MAPSEC_SPECIAL_AREA 0xC4
-#define MAPSEC_AQUA_HIDEOUT 0xC5
-#define MAPSEC_MAGMA_HIDEOUT 0xC6
-#define MAPSEC_MIRAGE_TOWER 0xC7
-#define MAPSEC_BIRTH_ISLAND 0xC8
-#define MAPSEC_FARAWAY_ISLAND 0xC9
-#define MAPSEC_ARTISAN_CAVE 0xCA
-#define MAPSEC_MARINE_CAVE 0xCB
-#define MAPSEC_UNDERWATER_MARINE_CAVE 0xCC
-#define MAPSEC_TERRA_CAVE 0xCD
-#define MAPSEC_UNDERWATER_105 0xCE
-#define MAPSEC_UNDERWATER_125 0xCF
-#define MAPSEC_UNDERWATER_129 0xD0
-#define MAPSEC_DESERT_UNDERPASS 0xD1
-#define MAPSEC_ALTERING_CAVE 0xD2
-#define MAPSEC_NAVEL_ROCK 0xD3
-#define MAPSEC_TRAINER_HILL 0xD4
-#define MAPSEC_NONE 0xD5
-
-#define METLOC_SPECIAL_EGG 0xFD
-#define METLOC_IN_GAME_TRADE 0xFE
-#define METLOC_FATEFUL_ENCOUNTER 0xFF
-
-#define KANTO_MAPSEC_START MAPSEC_PALLET_TOWN
-#define KANTO_MAPSEC_END MAPSEC_SPECIAL_AREA
-#define KANTO_MAPSEC_COUNT (KANTO_MAPSEC_END - KANTO_MAPSEC_START + 1)
-
-#endif //GUARD_REGIONMAPSEC_H
diff --git a/include/constants/rematches.h b/include/constants/rematches.h
new file mode 100644
index 0000000000..2ddefcc578
--- /dev/null
+++ b/include/constants/rematches.h
@@ -0,0 +1,89 @@
+#ifndef GUARD_REMATCHES_H
+#define GUARD_REMATCHES_H
+
+enum {
+ REMATCH_ROSE,
+ REMATCH_ANDRES,
+ REMATCH_DUSTY,
+ REMATCH_LOLA,
+ REMATCH_RICKY,
+ REMATCH_LILA_AND_ROY,
+ REMATCH_CRISTIN,
+ REMATCH_BROOKE,
+ REMATCH_WILTON,
+ REMATCH_VALERIE,
+ REMATCH_CINDY,
+ REMATCH_THALIA,
+ REMATCH_JESSICA,
+ REMATCH_WINSTON,
+ REMATCH_STEVE,
+ REMATCH_TONY,
+ REMATCH_NOB,
+ REMATCH_KOJI,
+ REMATCH_FERNANDO,
+ REMATCH_DALTON,
+ REMATCH_BERNIE,
+ REMATCH_ETHAN,
+ REMATCH_JOHN_AND_JAY,
+ REMATCH_JEFFREY,
+ REMATCH_CAMERON,
+ REMATCH_JACKI,
+ REMATCH_WALTER,
+ REMATCH_KAREN,
+ REMATCH_JERRY,
+ REMATCH_ANNA_AND_MEG,
+ REMATCH_ISABEL,
+ REMATCH_MIGUEL,
+ REMATCH_TIMOTHY,
+ REMATCH_SHELBY,
+ REMATCH_CALVIN,
+ REMATCH_ELLIOT,
+ REMATCH_ISAIAH,
+ REMATCH_MARIA,
+ REMATCH_ABIGAIL,
+ REMATCH_DYLAN,
+ REMATCH_KATELYN,
+ REMATCH_BENJAMIN,
+ REMATCH_PABLO,
+ REMATCH_NICOLAS,
+ REMATCH_ROBERT,
+ REMATCH_LAO,
+ REMATCH_CYNDY,
+ REMATCH_MADELINE,
+ REMATCH_JENNY,
+ REMATCH_DIANA,
+ REMATCH_AMY_AND_LIV,
+ REMATCH_ERNEST,
+ REMATCH_CORY,
+ REMATCH_EDWIN,
+ REMATCH_LYDIA,
+ REMATCH_ISAAC,
+ REMATCH_GABRIELLE,
+ REMATCH_CATHERINE,
+ REMATCH_JACKSON,
+ REMATCH_HALEY,
+ REMATCH_JAMES,
+ REMATCH_TRENT,
+ REMATCH_SAWYER,
+ REMATCH_KIRA_AND_DAN,
+ REMATCH_WALLY_VR, // Entries above WALLY are considered normal trainers, from Wally below are special trainers
+ REMATCH_ROXANNE,
+ REMATCH_BRAWLY,
+ REMATCH_WATTSON,
+ REMATCH_FLANNERY,
+ REMATCH_NORMAN,
+ REMATCH_WINONA,
+ REMATCH_TATE_AND_LIZA,
+ REMATCH_JUAN,
+ REMATCH_SIDNEY, // Entries from SIDNEY below are considered part of REMATCH_ELITE_FOUR_ENTRIES.
+ REMATCH_PHOEBE,
+ REMATCH_GLACIA,
+ REMATCH_DRAKE,
+ REMATCH_WALLACE,
+ REMATCH_TABLE_ENTRIES // The total number of rematch entries. Must be last in enum
+};
+
+#define REMATCH_SPECIAL_TRAINER_START REMATCH_WALLY_VR
+#define REMATCH_ELITE_FOUR_ENTRIES REMATCH_SIDNEY
+
+#endif // GUARD_REMATCHES_H
diff --git a/include/constants/songs.h b/include/constants/songs.h
index ab6ddd62bc..9ebcc5d873 100644
--- a/include/constants/songs.h
+++ b/include/constants/songs.h
@@ -489,6 +489,8 @@
#define MUS_RG_SLOW_PALLET 557 // MUS_RG_SLOWMASARA
#define MUS_RG_TEACHY_TV_MENU 558 // MUS_RG_TVNOIZE
+// These PH_* constants are phoneme sounds used by the "bard" NPC (see src/bard_music.c and src/mauville_old_man.c).
+// Each comes in a triplet of PH_*_BLEND, PH_*_HELD, and PH_*_SOLO, and the name of each triplet incorporates the English phonetic sound it represents.
#define PH_TRAP_BLEND 559
#define PH_TRAP_HELD 560
#define PH_TRAP_SOLO 561
@@ -545,4 +547,10 @@
#define MUS_NONE 0xFFFF
+#define FIRST_PHONEME_SONG PH_TRAP_BLEND
+#define LAST_PHONEME_SONG PH_NURSE_SOLO
+#define NUM_PHONEME_SONGS (LAST_PHONEME_SONG - FIRST_PHONEME_SONG + 1)
+#define PHONEME_ID(song) ((song) - FIRST_PHONEME_SONG)
+#define PHONEME_ID_NONE 0xFF
+
#endif // GUARD_CONSTANTS_SONGS_H
diff --git a/include/constants/tv.h b/include/constants/tv.h
index 13ec88ecdc..1b629fb039 100644
--- a/include/constants/tv.h
+++ b/include/constants/tv.h
@@ -170,7 +170,7 @@
#define NUM_SECRET_BASE_FLAGS 32 // by definition, bitfield of 2 u16s
-// TV Show states for Pokemon Contest Live Updates
+// TV Show states for Pokémon Contest Live Updates
#define CONTESTLIVE_STATE_INTRO 0
#define CONTESTLIVE_STATE_WON_BOTH_ROUNDS 1
#define CONTESTLIVE_STATE_BETTER_ROUND2 2
diff --git a/include/constants/vars.h b/include/constants/vars.h
index e79919c329..1b71134593 100644
--- a/include/constants/vars.h
+++ b/include/constants/vars.h
@@ -4,7 +4,7 @@
#define VARS_START 0x4000
// temporary vars
-// The first 0x10 vars are are temporary--they are cleared every time a map is loaded.
+// The first 0x10 vars are temporary--they are cleared every time a map is loaded.
#define TEMP_VARS_START 0x4000
#define VAR_TEMP_0 (TEMP_VARS_START + 0x0)
#define VAR_TEMP_1 (TEMP_VARS_START + 0x1)
diff --git a/include/contest.h b/include/contest.h
index d0630a8011..69b07eacc8 100644
--- a/include/contest.h
+++ b/include/contest.h
@@ -209,7 +209,7 @@ struct ContestantStatus
u8 comboAppealBonus;
u8 repeatJam;
u8 nextTurnOrder; // turn position
- u8 attentionLevel; // How much the Pokemon "stood out"
+ u8 attentionLevel; // How much the Pokémon "stood out"
u8 contestantAnimTarget;
};
@@ -290,11 +290,11 @@ struct ContestResources
struct ContestGraphicsState *gfxState;
struct ContestMoveAnimData *moveAnim;
struct ContestTV *tv;
- struct ContestUnused * unused;
- u8 * contestBgTilemaps[CONTESTANT_COUNT];
- void * boxBlinkTiles1;
- void * boxBlinkTiles2;
- void * animBgTileBuffer;
+ struct ContestUnused *unused;
+ u8 *contestBgTilemaps[CONTESTANT_COUNT];
+ void *boxBlinkTiles1;
+ void *boxBlinkTiles2;
+ void *animBgTileBuffer;
};
#define eContest (*gContestResources->contest)
diff --git a/include/contest_ai.h b/include/contest_ai.h
index 20b9eec10d..4ba2c9ca2e 100644
--- a/include/contest_ai.h
+++ b/include/contest_ai.h
@@ -10,7 +10,7 @@ enum
CONTESTAI_DO_NOT_PROCESS
};
-void ContestAI_ResetAI(u8);
+void ContestAI_ResetAI(u8 contestantAI);
u8 ContestAI_GetActionToUse(void);
#endif // GUARD_CONTESTAI_H
diff --git a/include/contest_link.h b/include/contest_link.h
index cd26825246..091d344609 100644
--- a/include/contest_link.h
+++ b/include/contest_link.h
@@ -1,23 +1,23 @@
#ifndef GUARD_CONTEST_LINK_H
#define GUARD_CONTEST_LINK_H
-void Task_LinkContest_CommunicateAppealsState(u8);
-void Task_LinkContest_CommunicateFinalStandings(u8);
-void Task_LinkContest_Init(u8);
-void Task_LinkContest_CommunicateMonsRS(u8);
-void Task_LinkContest_CommunicateRngRS(u8);
-void Task_LinkContest_CommunicateLeaderIdsRS(u8);
-void Task_LinkContest_CommunicateCategoryRS(u8);
-void Task_LinkContest_CommunicateMonIdxs(u8);
-void Task_LinkContest_StartCommunicationEm(u8);
-void Task_LinkContest_CommunicateRound1Points(u8);
-void Task_LinkContest_CommunicateTurnOrder(u8);
-void Task_LinkContest_FinalizeConnection(u8);
-void Task_LinkContest_CommunicateMoveSelections(u8);
-bool32 LinkContest_TryLinkStandby(s16 *);
-bool32 LinkContest_SendBlock(void *, u16);
+void Task_LinkContest_CommunicateAppealsState(u8 taskId);
+void Task_LinkContest_CommunicateFinalStandings(u8 taskId);
+void Task_LinkContest_Init(u8 taskId);
+void Task_LinkContest_CommunicateMonsRS(u8 taskId);
+void Task_LinkContest_CommunicateRngRS(u8 taskId);
+void Task_LinkContest_CommunicateLeaderIdsRS(u8 taskId);
+void Task_LinkContest_CommunicateCategoryRS(u8 taskId);
+void Task_LinkContest_CommunicateMonIdxs(u8 taskId);
+void Task_LinkContest_StartCommunicationEm(u8 taskId);
+void Task_LinkContest_CommunicateRound1Points(u8 taskId);
+void Task_LinkContest_CommunicateTurnOrder(u8 taskId);
+void Task_LinkContest_FinalizeConnection(u8 taskId);
+void Task_LinkContest_CommunicateMoveSelections(u8 taskId);
+bool32 LinkContest_TryLinkStandby(s16 *state);
+bool32 LinkContest_SendBlock(void *src, u16 size);
bool8 LinkContest_GetBlockReceivedFromAllPlayers(void);
-bool8 LinkContest_GetBlockReceived(u8);
-u8 LinkContest_GetLeaderIndex(u8 *);
+bool8 LinkContest_GetBlockReceived(u8 flag);
+u8 LinkContest_GetLeaderIndex(u8 *ids);
#endif //GUARD_CONTEST_LINK_H
diff --git a/include/contest_painting.h b/include/contest_painting.h
index f16a0d2f32..06277dec1f 100644
--- a/include/contest_painting.h
+++ b/include/contest_painting.h
@@ -1,7 +1,7 @@
#ifndef GUARD_CONTESTPAINTING_H
#define GUARD_CONTESTPAINTING_H
-void SetContestWinnerForPainting(int);
+void SetContestWinnerForPainting(int contestWinnerId);
void CB2_ContestPainting(void);
#endif
diff --git a/include/contest_util.h b/include/contest_util.h
index 1e97d91d35..fcf742012f 100644
--- a/include/contest_util.h
+++ b/include/contest_util.h
@@ -6,7 +6,7 @@ void BufferContestantMonNickname(void);
void StartContest(void);
void BufferContestantMonSpecies(void);
void ShowContestResults(void);
-void ContestLinkTransfer(u8);
+void ContestLinkTransfer(u8 category);
void ShowContestPainting(void);
u16 GetContestRand(void);
u8 CountPlayerMuseumPaintings(void);
diff --git a/include/coord_event_weather.h b/include/coord_event_weather.h
index 86fb487932..92cceae68f 100644
--- a/include/coord_event_weather.h
+++ b/include/coord_event_weather.h
@@ -1,6 +1,6 @@
#ifndef GUARD_COORD_EVENT_WEATHER_H
#define GUARD_COORD_EVENT_WEATHER_H
-void DoCoordEventWeather(u8);
+void DoCoordEventWeather(u8 coordEventWeather);
#endif // GUARD_COORD_EVENT_WEATHER_H
diff --git a/include/data.h b/include/data.h
index 41b34d73e2..558b1dfff3 100644
--- a/include/data.h
+++ b/include/data.h
@@ -28,9 +28,9 @@ struct MonCoords
u8 y_offset;
};
-#define MON_COORDS_SIZE(width, height)(DIV_ROUND_UP(width, 8) << 4 | DIV_ROUND_UP(height, 8))
-#define GET_MON_COORDS_WIDTH(size)((size >> 4) * 8)
-#define GET_MON_COORDS_HEIGHT(size)((size & 0xF) * 8)
+#define MON_COORDS_SIZE(width, height) (DIV_ROUND_UP(width, 8) << 4 | DIV_ROUND_UP(height, 8))
+#define GET_MON_COORDS_WIDTH(size) ((size >> 4) * 8)
+#define GET_MON_COORDS_HEIGHT(size) ((size & 0xF) * 8)
struct TrainerMonNoItemDefaultMoves
{
@@ -91,7 +91,7 @@ struct Trainer
/*0x24*/ union TrainerMonPtr party;
};
-#define TRAINER_ENCOUNTER_MUSIC(trainer)((gTrainers[trainer].encounterMusic_gender & 0x7F))
+#define TRAINER_ENCOUNTER_MUSIC(trainer) ((gTrainers[trainer].encounterMusic_gender & 0x7F))
extern const u16 gMinigameDigits_Pal[];
extern const u32 gMinigameDigits_Gfx[];
diff --git a/include/decoration.h b/include/decoration.h
index db0f337f4d..415ffb85ae 100644
--- a/include/decoration.h
+++ b/include/decoration.h
@@ -58,10 +58,10 @@ extern u8 gCurDecorationIndex;
void InitDecorationContextItems(void);
void DoSecretBaseDecorationMenu(u8 taskId);
-void ShowDecorationOnMap(u16 mapX, u16 mapY, u16 decor);
+void ShowDecorationOnMap(u16 mapX, u16 mapY, u16 decoration);
void DoPlayerRoomDecorationMenu(u8 taskId);
void ShowDecorationCategoriesWindow(u8 taskId);
-void CopyDecorationCategoryName(u8 *dest, u8 decorCat);
+void CopyDecorationCategoryName(u8 *dest, u8 category);
bool8 IsSelectedDecorInThePC(void);
u8 AddDecorationIconObject(u8 decor, s16 x, s16 y, u8 priority, u16 tilesTag, u16 paletteTag);
diff --git a/include/decoration_inventory.h b/include/decoration_inventory.h
index f43b91d7a1..6bb9910ba4 100644
--- a/include/decoration_inventory.h
+++ b/include/decoration_inventory.h
@@ -12,9 +12,9 @@ extern struct DecorationInventory gDecorationInventories[];
void SetDecorationInventoriesPointers(void);
void ClearDecorationInventories(void);
s8 GetFirstEmptyDecorSlot(u8 category);
-u8 CheckHasDecoration(u8 decor);
-u8 DecorationAdd(u8 decor);
-u8 DecorationCheckSpace(u8 decor);
+bool8 CheckHasDecoration(u8 decor);
+bool8 DecorationAdd(u8 decor);
+bool8 DecorationCheckSpace(u8 decor);
s8 DecorationRemove(u8 decor);
void CondenseDecorationsInCategory(u8 category);
u8 GetNumOwnedDecorationsInCategory(u8 category);
diff --git a/gflib/dma3.h b/include/dma3.h
similarity index 100%
rename from gflib/dma3.h
rename to include/dma3.h
diff --git a/include/easy_chat.h b/include/easy_chat.h
index 4bcc7389cd..0434bb0100 100644
--- a/include/easy_chat.h
+++ b/include/easy_chat.h
@@ -122,16 +122,16 @@ struct EasyChatWordsByLetter
void InitEasyChatPhrases(void);
void ShowEasyChatScreen(void);
-u8 * CopyEasyChatWord(u8 *dest, u16 word);
-bool32 IsEasyChatAnswerUnlocked(int word);
+u8 *CopyEasyChatWord(u8 *dest, u16 easyChatWord);
+bool32 IsEasyChatAnswerUnlocked(int easyChatWord);
void InitializeEasyChatWordArray(u16 *words, u16 length);
u8 *ConvertEasyChatWordsToString(u8 *dest, const u16 *src, u16 columns, u16 rows);
-bool8 IsBardWordInvalid(u16 word);
-u16 GetRandomEasyChatWordFromGroup(u16 group);
+bool8 IsBardWordInvalid(u16 easyChatWord);
+u16 GetRandomEasyChatWordFromGroup(u16 groupId);
u16 UnlockRandomTrendySaying(void);
-u16 EasyChat_GetNumWordsInGroup(u8);
-u16 GetRandomEasyChatWordFromUnlockedGroup(u16);
-void DoEasyChatScreen(u8 type, u16 *words, MainCallback callback, u8 displayedPersonType);
+u16 EasyChat_GetNumWordsInGroup(u8 groupId);
+u16 GetRandomEasyChatWordFromUnlockedGroup(u16 groupId);
+void DoEasyChatScreen(u8 type, u16 *words, MainCallback exitCallback, u8 displayedPersonType);
void InitQuestionnaireWords(void);
void UnlockTrendySaying(u8 wordIndex);
diff --git a/include/ereader_helpers.h b/include/ereader_helpers.h
index 29386bcb22..0e3d122b58 100755
--- a/include/ereader_helpers.h
+++ b/include/ereader_helpers.h
@@ -49,10 +49,10 @@ struct EReaderTrainerHillSet
u8 unk_ec0[40];
}; // size = 0xf00
-bool8 ValidateTrainerHillData(struct EReaderTrainerHillSet *);
-bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet *);
+bool8 ValidateTrainerHillData(struct EReaderTrainerHillSet *hillSet);
+bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet *hillSet);
bool32 ReadTrainerHillAndValidate(void);
-int EReaderHandleTransfer(u8, size_t, const void *, void *);
+int EReaderHandleTransfer(u8 mode, size_t size, const void *data, void *recvBuffer);
void EReaderHelper_Timer3Callback(void);
void EReaderHelper_SerialCallback(void);
void EReaderHelper_SaveRegsState(void);
diff --git a/include/event_object_movement.h b/include/event_object_movement.h
index 01269cdb5e..ebc6a6d0e2 100644
--- a/include/event_object_movement.h
+++ b/include/event_object_movement.h
@@ -71,6 +71,12 @@ enum ReflectionTypes
#define GROUND_EFFECT_FLAG_HOT_SPRINGS (1 << 18)
#define GROUND_EFFECT_FLAG_SEAWEED (1 << 19)
+// Sprite data for the CameraObject functions
+#define sCamera_FollowSpriteId data[0]
+#define sCamera_State data[1]
+#define sCamera_MoveX data[2]
+#define sCamera_MoveY data[3]
+
struct StepAnimTable
{
const union AnimCmd *const *anims;
@@ -111,21 +117,21 @@ void LoadSpecialObjectReflectionPalette(u16 tag, u8 slot);
void TryMoveObjectEventToMapCoords(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y);
void PatchObjectPalette(u16 paletteTag, u8 paletteSlot);
void SpawnObjectEventsOnReturnToField(s16 x, s16 y);
-void OverrideSecretBaseDecorationSpriteScript(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat);
+void OverrideSecretBaseDecorationSpriteScript(u8 localId, u8 mapNum, u8 mapGroup, u8 decorationCategory);
void GetMapCoordsFromSpritePos(s16 x, s16 y, s16 *destX, s16 *destY);
u8 GetFaceDirectionAnimNum(u8 direction);
void SetSpritePosToOffsetMapCoords(s16 *x, s16 *y, s16 dx, s16 dy);
-void ObjectEventClearHeldMovement(struct ObjectEvent *);
-void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *);
+void ObjectEventClearHeldMovement(struct ObjectEvent *objectEvent);
+void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *objectEvent);
void TrySpawnObjectEvents(s16 cameraX, s16 cameraY);
-u8 CreateObjectGraphicsSprite(u16, void (*)(struct Sprite *), s16 x, s16 y, u8 subpriority);
+u8 CreateObjectGraphicsSprite(u16 graphicsId, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority);
u8 TrySpawnObjectEvent(u8 localId, u8 mapNum, u8 mapGroup);
u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 localId, s16 x, s16 y, u8 elevation);
-u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *);
+u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *objectEventTemplate);
void SetSpritePosToMapCoords(s16 mapX, s16 mapY, s16 *destX, s16 *destY);
-void CameraObjectReset1(void);
-void ObjectEventSetGraphicsId(struct ObjectEvent *, u8 graphicsId);
-void ObjectEventTurn(struct ObjectEvent *, u8 direction);
+void CameraObjectReset(void);
+void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId);
+void ObjectEventTurn(struct ObjectEvent *objectEvent, u8 direction);
void ObjectEventTurnByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 direction);
const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8 graphicsId);
void SetObjectInvisibility(u8 localId, u8 mapNum, u8 mapGroup, bool8 invisible);
@@ -135,21 +141,21 @@ void ResetObjectSubpriority(u8 localId, u8 mapNum, u8 mapGroup);
void SetObjectSubpriority(u8 localId, u8 mapNum, u8 mapGroup, u8 subpriority);
void AllowObjectAtPosTriggerGroundEffects(s16 x, s16 y);
void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup);
-void ShiftObjectEventCoords(struct ObjectEvent *, s16 x, s16 y);
-void MoveObjectEventToMapCoords(struct ObjectEvent *, s16 x, s16 y);
+void ShiftObjectEventCoords(struct ObjectEvent *objectEvent, s16 x, s16 y);
+void MoveObjectEventToMapCoords(struct ObjectEvent *objectEvent, s16 x, s16 y);
void TryOverrideObjectEventTemplateCoords(u8 localId, u8 mapNum, u8 mapGroup);
-void InitObjectEventPalettes(u8 palSlot);
-void UpdateObjectEventCurrentMovement(struct ObjectEvent *, struct Sprite *, bool8(struct ObjectEvent *, struct Sprite *));
-u8 ObjectEventFaceOppositeDirection(struct ObjectEvent *, u8 direction);
+void InitObjectEventPalettes(u8 reflectionType);
+void UpdateObjectEventCurrentMovement(struct ObjectEvent *objectEvent, struct Sprite *sprite, bool8 (*callback)(struct ObjectEvent *, struct Sprite *));
+bool8 ObjectEventFaceOppositeDirection(struct ObjectEvent *objectEvent, u8 direction);
u8 GetOppositeDirection(u8 direction);
u8 GetWalkInPlaceFasterMovementAction(u32);
u8 GetWalkInPlaceFastMovementAction(u32);
u8 GetWalkInPlaceNormalMovementAction(u32);
u8 GetWalkInPlaceSlowMovementAction(u32);
-u8 GetCollisionAtCoords(struct ObjectEvent *, s16 x, s16 y, u32 dir);
+u8 GetCollisionAtCoords(struct ObjectEvent *objectEvent, s16 x, s16 y, u32 dir);
void MoveCoords(u8 direction, s16 *x, s16 *y);
-bool8 ObjectEventIsHeldMovementActive(struct ObjectEvent *);
-u8 ObjectEventClearHeldMovementIfFinished(struct ObjectEvent *);
+bool8 ObjectEventIsHeldMovementActive(struct ObjectEvent *objectEvent);
+u8 ObjectEventClearHeldMovementIfFinished(struct ObjectEvent *objectEvent);
u8 GetObjectEventIdByPosition(u16 x, u16 y, u8 elevation);
void SetTrainerMovementType(struct ObjectEvent *objectEvent, u8 movementType);
u8 GetTrainerFacingDirectionMovementType(u8 direction);
@@ -192,11 +198,11 @@ u8 GetWalkSlowMovementAction(u32);
u8 GetJumpMovementAction(u32);
u8 ElevationToPriority(u8 elevation);
void ObjectEventUpdateElevation(struct ObjectEvent *objEvent);
-void SetObjectSubpriorityByElevation(u8 elevation, struct Sprite *, u8 subpriority);
-void UnfreezeObjectEvent(struct ObjectEvent *);
-u8 FindLockedObjectEventIndex(struct ObjectEvent *);
-void SetAndStartSpriteAnim(struct Sprite *, u8 animNum, u8 animCmdIndex);
-bool8 SpriteAnimEnded(struct Sprite *);
+void SetObjectSubpriorityByElevation(u8 elevation, struct Sprite *sprite, u8 subpriority);
+void UnfreezeObjectEvent(struct ObjectEvent *objectEvent);
+u8 FindLockedObjectEventIndex(struct ObjectEvent *objectEvent);
+void SetAndStartSpriteAnim(struct Sprite *sprite, u8 animNum, u8 animCmdIndex);
+bool8 SpriteAnimEnded(struct Sprite *sprite);
void UnfreezeObjectEvents(void);
void FreezeObjectEventsExceptOne(u8 objectEventId);
void FreezeObjectEventsExceptTwo(u8 objectEventId1, u8 objectEventId2);
@@ -211,78 +217,78 @@ u16 GetObjectPaletteTag(u8 palSlot);
void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible);
s16 GetFigure8XOffset(s16 idx);
s16 GetFigure8YOffset(s16 idx);
-void CameraObjectReset2(void);
+void CameraObjectFreeze(void);
u8 GetObjectEventBerryTreeId(u8 objectEventId);
void SetBerryTreeJustPicked(u8 mapId, u8 mapNumber, u8 mapGroup);
bool8 IsBerryTreeSparkling(u8 localId, u8 mapNum, u8 mapGroup);
-void MovementType_None(struct Sprite *);
-void MovementType_LookAround(struct Sprite *);
-void MovementType_WanderAround(struct Sprite *);
-void MovementType_WanderUpAndDown(struct Sprite *);
-void MovementType_WanderLeftAndRight(struct Sprite *);
-void MovementType_FaceDirection(struct Sprite *);
-void MovementType_Player(struct Sprite *);
-void MovementType_BerryTreeGrowth(struct Sprite *);
-void MovementType_FaceDownAndUp(struct Sprite *);
-void MovementType_FaceLeftAndRight(struct Sprite *);
-void MovementType_FaceUpAndLeft(struct Sprite *);
-void MovementType_FaceUpAndRight(struct Sprite *);
-void MovementType_FaceDownAndLeft(struct Sprite *);
-void MovementType_FaceDownAndRight(struct Sprite *);
-void MovementType_FaceDownUpAndLeft(struct Sprite *);
-void MovementType_FaceDownUpAndRight(struct Sprite *);
-void MovementType_FaceUpRightAndLeft(struct Sprite *);
-void MovementType_FaceDownRightAndLeft(struct Sprite *);
-void MovementType_RotateCounterclockwise(struct Sprite *);
-void MovementType_RotateClockwise(struct Sprite *);
-void MovementType_WalkBackAndForth(struct Sprite *);
-void MovementType_WalkSequenceUpRightLeftDown(struct Sprite *);
-void MovementType_WalkSequenceRightLeftDownUp(struct Sprite *);
-void MovementType_WalkSequenceDownUpRightLeft(struct Sprite *);
-void MovementType_WalkSequenceLeftDownUpRight(struct Sprite *);
-void MovementType_WalkSequenceUpLeftRightDown(struct Sprite *);
-void MovementType_WalkSequenceLeftRightDownUp(struct Sprite *);
-void MovementType_WalkSequenceDownUpLeftRight(struct Sprite *);
-void MovementType_WalkSequenceRightDownUpLeft(struct Sprite *);
-void MovementType_WalkSequenceLeftUpDownRight(struct Sprite *);
-void MovementType_WalkSequenceUpDownRightLeft(struct Sprite *);
-void MovementType_WalkSequenceRightLeftUpDown(struct Sprite *);
-void MovementType_WalkSequenceDownRightLeftUp(struct Sprite *);
-void MovementType_WalkSequenceRightUpDownLeft(struct Sprite *);
-void MovementType_WalkSequenceUpDownLeftRight(struct Sprite *);
-void MovementType_WalkSequenceLeftRightUpDown(struct Sprite *);
-void MovementType_WalkSequenceDownLeftRightUp(struct Sprite *);
-void MovementType_WalkSequenceUpLeftDownRight(struct Sprite *);
-void MovementType_WalkSequenceDownRightUpLeft(struct Sprite *);
-void MovementType_WalkSequenceLeftDownRightUp(struct Sprite *);
-void MovementType_WalkSequenceRightUpLeftDown(struct Sprite *);
-void MovementType_WalkSequenceUpRightDownLeft(struct Sprite *);
-void MovementType_WalkSequenceDownLeftUpRight(struct Sprite *);
-void MovementType_WalkSequenceLeftUpRightDown(struct Sprite *);
-void MovementType_WalkSequenceRightDownLeftUp(struct Sprite *);
-void MovementType_CopyPlayer(struct Sprite *);
-void MovementType_TreeDisguise(struct Sprite *);
-void MovementType_MountainDisguise(struct Sprite *);
-void MovementType_CopyPlayerInGrass(struct Sprite *);
-void MovementType_Buried(struct Sprite *);
-void MovementType_WalkInPlace(struct Sprite *);
-void MovementType_JogInPlace(struct Sprite *);
-void MovementType_RunInPlace(struct Sprite *);
-void MovementType_Invisible(struct Sprite *);
-void MovementType_WalkSlowlyInPlace(struct Sprite *);
+void MovementType_None(struct Sprite *sprite);
+void MovementType_LookAround(struct Sprite *sprite);
+void MovementType_WanderAround(struct Sprite *sprite);
+void MovementType_WanderUpAndDown(struct Sprite *sprite);
+void MovementType_WanderLeftAndRight(struct Sprite *sprite);
+void MovementType_FaceDirection(struct Sprite *sprite);
+void MovementType_Player(struct Sprite *sprite);
+void MovementType_BerryTreeGrowth(struct Sprite *sprite);
+void MovementType_FaceDownAndUp(struct Sprite *sprite);
+void MovementType_FaceLeftAndRight(struct Sprite *sprite);
+void MovementType_FaceUpAndLeft(struct Sprite *sprite);
+void MovementType_FaceUpAndRight(struct Sprite *sprite);
+void MovementType_FaceDownAndLeft(struct Sprite *sprite);
+void MovementType_FaceDownAndRight(struct Sprite *sprite);
+void MovementType_FaceDownUpAndLeft(struct Sprite *sprite);
+void MovementType_FaceDownUpAndRight(struct Sprite *sprite);
+void MovementType_FaceUpRightAndLeft(struct Sprite *sprite);
+void MovementType_FaceDownRightAndLeft(struct Sprite *sprite);
+void MovementType_RotateCounterclockwise(struct Sprite *sprite);
+void MovementType_RotateClockwise(struct Sprite *sprite);
+void MovementType_WalkBackAndForth(struct Sprite *sprite);
+void MovementType_WalkSequenceUpRightLeftDown(struct Sprite *sprite);
+void MovementType_WalkSequenceRightLeftDownUp(struct Sprite *sprite);
+void MovementType_WalkSequenceDownUpRightLeft(struct Sprite *sprite);
+void MovementType_WalkSequenceLeftDownUpRight(struct Sprite *sprite);
+void MovementType_WalkSequenceUpLeftRightDown(struct Sprite *sprite);
+void MovementType_WalkSequenceLeftRightDownUp(struct Sprite *sprite);
+void MovementType_WalkSequenceDownUpLeftRight(struct Sprite *sprite);
+void MovementType_WalkSequenceRightDownUpLeft(struct Sprite *sprite);
+void MovementType_WalkSequenceLeftUpDownRight(struct Sprite *sprite);
+void MovementType_WalkSequenceUpDownRightLeft(struct Sprite *sprite);
+void MovementType_WalkSequenceRightLeftUpDown(struct Sprite *sprite);
+void MovementType_WalkSequenceDownRightLeftUp(struct Sprite *sprite);
+void MovementType_WalkSequenceRightUpDownLeft(struct Sprite *sprite);
+void MovementType_WalkSequenceUpDownLeftRight(struct Sprite *sprite);
+void MovementType_WalkSequenceLeftRightUpDown(struct Sprite *sprite);
+void MovementType_WalkSequenceDownLeftRightUp(struct Sprite *sprite);
+void MovementType_WalkSequenceUpLeftDownRight(struct Sprite *sprite);
+void MovementType_WalkSequenceDownRightUpLeft(struct Sprite *sprite);
+void MovementType_WalkSequenceLeftDownRightUp(struct Sprite *sprite);
+void MovementType_WalkSequenceRightUpLeftDown(struct Sprite *sprite);
+void MovementType_WalkSequenceUpRightDownLeft(struct Sprite *sprite);
+void MovementType_WalkSequenceDownLeftUpRight(struct Sprite *sprite);
+void MovementType_WalkSequenceLeftUpRightDown(struct Sprite *sprite);
+void MovementType_WalkSequenceRightDownLeftUp(struct Sprite *sprite);
+void MovementType_CopyPlayer(struct Sprite *sprite);
+void MovementType_TreeDisguise(struct Sprite *sprite);
+void MovementType_MountainDisguise(struct Sprite *sprite);
+void MovementType_CopyPlayerInGrass(struct Sprite *sprite);
+void MovementType_Buried(struct Sprite *sprite);
+void MovementType_WalkInPlace(struct Sprite *sprite);
+void MovementType_JogInPlace(struct Sprite *sprite);
+void MovementType_RunInPlace(struct Sprite *sprite);
+void MovementType_Invisible(struct Sprite *sprite);
+void MovementType_WalkSlowlyInPlace(struct Sprite *sprite);
u8 GetSlideMovementAction(u32);
u8 GetJumpMovementAction(u32);
u8 GetJump2MovementAction(u32);
u8 CreateCopySpriteAt(struct Sprite *sprite, s16 x, s16 y, u8 subpriority);
-u8 MovementType_WanderAround_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderAround_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderAround_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderAround_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderAround_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderAround_Step5(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderAround_Step6(struct ObjectEvent *, struct Sprite *);
+bool8 MovementType_WanderAround_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderAround_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderAround_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderAround_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderAround_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderAround_Step5(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderAround_Step6(struct ObjectEvent *objectEvent, struct Sprite *sprite);
u8 GetVectorDirection(s16 dx, s16 dy, s16 absdx, s16 absdy);
u8 GetLimitedVectorDirection_SouthNorth(s16 dx, s16 dy, s16 absdx, s16 absdy);
u8 GetLimitedVectorDirection_WestEast(s16 dx, s16 dy, s16 absdx, s16 absdy);
@@ -294,143 +300,143 @@ u8 GetLimitedVectorDirection_SouthNorthWest(s16 dx, s16 dy, s16 absdx, s16 absdy
u8 GetLimitedVectorDirection_SouthNorthEast(s16 dx, s16 dy, s16 absdx, s16 absdy);
u8 GetLimitedVectorDirection_NorthWestEast(s16 dx, s16 dy, s16 absdx, s16 absdy);
u8 GetLimitedVectorDirection_SouthWestEast(s16 dx, s16 dy, s16 absdx, s16 absdy);
-u8 MovementType_LookAround_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_LookAround_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_LookAround_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_LookAround_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_LookAround_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderUpAndDown_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderUpAndDown_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderUpAndDown_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderUpAndDown_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderUpAndDown_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderUpAndDown_Step5(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderUpAndDown_Step6(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderLeftAndRight_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderLeftAndRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderLeftAndRight_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderLeftAndRight_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderLeftAndRight_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderLeftAndRight_Step5(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WanderLeftAndRight_Step6(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDirection_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDirection_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDirection_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_BerryTreeGrowth_Normal(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_BerryTreeGrowth_Move(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_BerryTreeGrowth_SparkleStart(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_BerryTreeGrowth_Sparkle(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_BerryTreeGrowth_SparkleEnd(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndUp_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndUp_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndUp_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndUp_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndUp_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceLeftAndRight_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceLeftAndRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceLeftAndRight_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceLeftAndRight_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceLeftAndRight_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndLeft_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndLeft_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndLeft_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndLeft_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndRight_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndRight_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndRight_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpAndRight_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndLeft_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndLeft_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndLeft_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndLeft_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndRight_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndRight_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndRight_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownAndRight_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndLeft_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndLeft_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndLeft_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndLeft_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndRight_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndRight_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndRight_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownUpAndRight_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpLeftAndRight_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpLeftAndRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpLeftAndRight_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpLeftAndRight_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceUpLeftAndRight_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownLeftAndRight_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownLeftAndRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownLeftAndRight_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownLeftAndRight_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_FaceDownLeftAndRight_Step4(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RotateCounterclockwise_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RotateCounterclockwise_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RotateCounterclockwise_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RotateCounterclockwise_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RotateClockwise_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RotateClockwise_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RotateClockwise_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RotateClockwise_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkBackAndForth_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkBackAndForth_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkBackAndForth_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkBackAndForth_Step3(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequence_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequence_Step2(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceUpRightLeftDown_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceRightLeftDownUp_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceDownUpRightLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceLeftDownUpRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceUpLeftRightDown_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceLeftRightDownUp_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceDownUpLeftRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceRightDownUpLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceLeftUpDownRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceUpDownRightLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceRightLeftUpDown_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceDownRightLeftUp_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceRightUpDownLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceUpDownLeftRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceLeftRightUpDown_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceDownLeftRightUp_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceUpLeftDownRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceDownRightUpLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceLeftDownRightUp_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceRightUpLeftDown_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceUpRightDownLeft_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceDownLeftUpRight_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceLeftUpRightDown_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSequenceRightDownLeftUp_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_CopyPlayer_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_CopyPlayer_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_CopyPlayer_Step2(struct ObjectEvent *, struct Sprite *);
-bool8 CopyablePlayerMovement_None(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-bool8 CopyablePlayerMovement_FaceDirection(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-bool8 CopyablePlayerMovement_WalkNormal(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-bool8 CopyablePlayerMovement_WalkFast(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-bool8 CopyablePlayerMovement_WalkFaster(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-bool8 CopyablePlayerMovement_Slide(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-bool8 CopyablePlayerMovement_JumpInPlace(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-bool8 CopyablePlayerMovement_Jump(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-bool8 CopyablePlayerMovement_Jump2(struct ObjectEvent *, struct Sprite *, u8, bool8(u8));
-u8 MovementType_CopyPlayerInGrass_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_Buried_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkInPlace_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_MoveInPlace_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_WalkSlowlyInPlace_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_JogInPlace_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_RunInPlace_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_Invisible_Step0(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_Invisible_Step1(struct ObjectEvent *, struct Sprite *);
-u8 MovementType_Invisible_Step2(struct ObjectEvent *, struct Sprite *);
+bool8 MovementType_LookAround_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_LookAround_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_LookAround_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_LookAround_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_LookAround_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderUpAndDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderUpAndDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderUpAndDown_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderUpAndDown_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderUpAndDown_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderUpAndDown_Step5(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderUpAndDown_Step6(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderLeftAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderLeftAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderLeftAndRight_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderLeftAndRight_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderLeftAndRight_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderLeftAndRight_Step5(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WanderLeftAndRight_Step6(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDirection_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDirection_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDirection_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_BerryTreeGrowth_Normal(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_BerryTreeGrowth_Move(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_BerryTreeGrowth_SparkleStart(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_BerryTreeGrowth_Sparkle(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_BerryTreeGrowth_SparkleEnd(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndUp_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndUp_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndUp_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceLeftAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceLeftAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceLeftAndRight_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceLeftAndRight_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceLeftAndRight_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndLeft_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndLeft_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndLeft_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndRight_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndRight_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpAndRight_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndLeft_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndLeft_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndLeft_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndRight_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndRight_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownAndRight_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndLeft_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndLeft_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndLeft_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndLeft_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndRight_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndRight_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownUpAndRight_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpLeftAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpLeftAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpLeftAndRight_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpLeftAndRight_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceUpLeftAndRight_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownLeftAndRight_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownLeftAndRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownLeftAndRight_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownLeftAndRight_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_FaceDownLeftAndRight_Step4(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RotateCounterclockwise_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RotateCounterclockwise_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RotateCounterclockwise_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RotateCounterclockwise_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RotateClockwise_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RotateClockwise_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RotateClockwise_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RotateClockwise_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WalkBackAndForth_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WalkBackAndForth_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WalkBackAndForth_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WalkBackAndForth_Step3(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WalkSequence_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WalkSequence_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceUpRightLeftDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceRightLeftDownUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceDownUpRightLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceLeftDownUpRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceUpLeftRightDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceLeftRightDownUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceDownUpLeftRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceRightDownUpLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceLeftUpDownRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceUpDownRightLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceRightLeftUpDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceDownRightLeftUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceRightUpDownLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceUpDownLeftRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceLeftRightUpDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceDownLeftRightUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceUpLeftDownRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceDownRightUpLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceLeftDownRightUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceRightUpLeftDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceUpRightDownLeft_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceDownLeftUpRight_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceLeftUpRightDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+u8 MovementType_WalkSequenceRightDownLeftUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_CopyPlayer_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_CopyPlayer_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_CopyPlayer_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 CopyablePlayerMovement_None(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 CopyablePlayerMovement_FaceDirection(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 CopyablePlayerMovement_WalkNormal(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 CopyablePlayerMovement_WalkFast(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 CopyablePlayerMovement_WalkFaster(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 CopyablePlayerMovement_Slide(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 CopyablePlayerMovement_JumpInPlace(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 CopyablePlayerMovement_Jump(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 CopyablePlayerMovement_Jump2(struct ObjectEvent *objectEvent, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8));
+bool8 MovementType_CopyPlayerInGrass_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_Buried_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WalkInPlace_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_MoveInPlace_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_WalkSlowlyInPlace_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_JogInPlace_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_RunInPlace_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_Invisible_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_Invisible_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite);
+bool8 MovementType_Invisible_Step2(struct ObjectEvent *objectEvent, struct Sprite *sprite);
u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 elevation, u8 direction);
void TurnVirtualObject(u8 virtualObjId, u8 direction);
diff --git a/include/evolution_graphics.h b/include/evolution_graphics.h
index eab5c6eb70..52586fc4f5 100644
--- a/include/evolution_graphics.h
+++ b/include/evolution_graphics.h
@@ -8,6 +8,6 @@ u8 EvolutionSparkles_ArcDown(void);
u8 EvolutionSparkles_CircleInward(void);
u8 EvolutionSparkles_SprayAndFlash(u16 species);
u8 EvolutionSparkles_SprayAndFlash_Trade(u16 species);
-u8 CycleEvolutionMonSprite(u8 preEvoSpriteID, u8 postEvoSpriteID);
+u8 CycleEvolutionMonSprite(u8 preEvoSpriteId, u8 postEvoSpriteId);
#endif // GUARD_EVOLUTION_GRAPHICS_H
diff --git a/include/evolution_scene.h b/include/evolution_scene.h
index 25d34eddfb..1b8999c775 100644
--- a/include/evolution_scene.h
+++ b/include/evolution_scene.h
@@ -1,9 +1,9 @@
#ifndef GUARD_EVOLUTION_SCENE_H
#define GUARD_EVOLUTION_SCENE_H
-void BeginEvolutionScene(struct Pokemon *mon, u16 speciesToEvolve, bool8 canStopEvo, u8 partyID);
-void EvolutionScene(struct Pokemon *mon, u16 speciesToEvolve, bool8 canStopEvo, u8 partyID);
-void TradeEvolutionScene(struct Pokemon *mon, u16 speciesToEvolve, u8 preEvoSpriteID, u8 partyID);
+void BeginEvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u8 partyId);
+void EvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u8 partyId);
+void TradeEvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, u8 preEvoSpriteId, u8 partyId);
extern void (*gCB2_AfterEvolution)(void);
diff --git a/include/faraway_island.h b/include/faraway_island.h
index 9fd2a69fc4..f7cef9b8c3 100755
--- a/include/faraway_island.h
+++ b/include/faraway_island.h
@@ -2,9 +2,9 @@
#define GUARD_FARAWAY_ISLAND_H
u32 GetMewMoveDirection(void);
-bool8 ShouldMewShakeGrass(struct ObjectEvent *);
+bool8 ShouldMewShakeGrass(struct ObjectEvent *objectEvent);
void UpdateFarawayIslandStepCounter(void);
-bool8 ObjectEventIsFarawayIslandMew(struct ObjectEvent *);
+bool8 ObjectEventIsFarawayIslandMew(struct ObjectEvent *objectEvent);
bool8 IsMewPlayingHideAndSeek(void);
#endif // GUARD_FARAWAY_ISLAND_H
diff --git a/include/field_camera.h b/include/field_camera.h
index 6e8af1a539..edbd2c09fa 100644
--- a/include/field_camera.h
+++ b/include/field_camera.h
@@ -18,7 +18,7 @@ extern u16 gTotalCameraPixelOffsetY;
void DrawWholeMapView(void);
void CurrentMapDrawMetatileAt(int x, int y);
void GetCameraOffsetWithPan(s16 *x, s16 *y);
-void DrawDoorMetatileAt(int x, int y, u16 *arr);
+void DrawDoorMetatileAt(int x, int y, u16 *tiles);
void ResetFieldCamera(void);
void ResetCameraUpdateInfo(void);
u32 InitCameraUpdateCallback(u8 trackedSpriteId);
diff --git a/include/field_control_avatar.h b/include/field_control_avatar.h
index b259eb53c1..c3e4a01e10 100644
--- a/include/field_control_avatar.h
+++ b/include/field_control_avatar.h
@@ -22,13 +22,12 @@ struct FieldInput
u8 dpadDirection;
};
-void FieldClearPlayerInput(struct FieldInput *pStruct);
-void FieldGetPlayerInput(struct FieldInput *pStruct, u16 keys, u16 heldKeys);
-int ProcessPlayerFieldInput(struct FieldInput *pStruct);
-void overworld_poison_timer_set(void);
+void FieldClearPlayerInput(struct FieldInput *input);
+void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys);
+int ProcessPlayerFieldInput(struct FieldInput *input);
void RestartWildEncounterImmunitySteps(void);
const u8 *GetObjectEventScriptPointerPlayerFacing(void);
-bool8 TryDoDiveWarp(struct MapPosition *position, u16 b);
+bool8 TryDoDiveWarp(struct MapPosition *position, u16 metatileBehavior);
int SetCableClubWarp(void);
u8 TrySetDiveWarp(void);
const u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatileBehavior, u8 direction);
diff --git a/include/field_door.h b/include/field_door.h
index 2e32005c6c..1d8a30ca14 100644
--- a/include/field_door.h
+++ b/include/field_door.h
@@ -1,10 +1,10 @@
#ifndef GUARD_FIELD_DOOR_H
#define GUARD_FIELD_DOOR_H
-void FieldSetDoorOpened(u32, u32);
-void FieldSetDoorClosed(u32, u32);
-s8 FieldAnimateDoorClose(u32, u32);
-s8 FieldAnimateDoorOpen(u32, u32);
+void FieldSetDoorOpened(u32 x, u32 y);
+void FieldSetDoorClosed(u32 x, u32 y);
+s8 FieldAnimateDoorClose(u32 x, u32 y);
+s8 FieldAnimateDoorOpen(u32 x, u32 y);
bool8 FieldIsDoorAnimationRunning(void);
u32 GetDoorSoundEffect(u32 x, u32 y);
diff --git a/include/field_effect.h b/include/field_effect.h
index 4cde29e8a3..699a784cf5 100644
--- a/include/field_effect.h
+++ b/include/field_effect.h
@@ -9,11 +9,11 @@ extern s32 gFieldEffectArguments[8];
extern void (*gPostMenuFieldCallback)(void);
extern bool8 (*gFieldCallback2)(void);
-u32 FieldEffectStart(u8);
+u32 FieldEffectStart(u8 id);
bool8 FieldEffectActiveListContains(u8 id);
void FieldEffectActiveListClear(void);
void ReturnToFieldFromFlyMapSelect(void);
-u8 AddNewGameBirchObject(s16, s16, u8);
+u8 AddNewGameBirchObject(s16 x, s16 y, u8 subpriority);
void FieldEffectStop(struct Sprite *sprite, u8 id);
u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer);
void FldEff_TeleportWarpOut(void);
@@ -39,8 +39,8 @@ void StartEscalatorWarp(u8 metatileBehavior, u8 priority);
void StartLavaridgeGymB1FWarp(u8 priority);
void StartLavaridgeGym1FWarp(u8 priority);
-void SpriteCB_AshPuff(struct Sprite *);
-void SpriteCB_AshLaunch(struct Sprite *);
+void SpriteCB_AshPuff(struct Sprite *sprite);
+void SpriteCB_AshLaunch(struct Sprite *sprite);
void MultiplyPaletteRGBComponents(u16 i, u8 r, u8 g, u8 b);
void FreeResourcesAndDestroySprite(struct Sprite *sprite, u8 spriteId);
diff --git a/include/field_effect_helpers.h b/include/field_effect_helpers.h
index 2ae5d79f75..dfa6d155f6 100644
--- a/include/field_effect_helpers.h
+++ b/include/field_effect_helpers.h
@@ -13,32 +13,32 @@ enum {
};
u8 CreateWarpArrowSprite(void);
-u8 StartUnderwaterSurfBlobBobbing(u8 oldSpriteId);
+u8 StartUnderwaterSurfBlobBobbing(u8 blobSpriteId);
void SetSurfBlob_BobState(u8 spriteId, u8 state);
void SetSurfBlob_DontSyncAnim(u8 spriteId, bool8 dontSync);
void SetSurfBlob_PlayerOffset(u8 spriteId, bool8 hasOffset, s16 offset);
-bool8 UpdateRevealDisguise(struct ObjectEvent *);
-void StartRevealDisguise(struct ObjectEvent *);
-void StartAshFieldEffect(s16, s16, u16, s16);
-void SetUpReflection(struct ObjectEvent *, struct Sprite *, u8);
-u32 StartFieldEffectForObjectEvent(u8, struct ObjectEvent *);
+bool8 UpdateRevealDisguise(struct ObjectEvent *objectEvent);
+void StartRevealDisguise(struct ObjectEvent *objectEvent);
+void StartAshFieldEffect(s16 x, s16 y, u16 metatileId, s16 delay);
+void SetUpReflection(struct ObjectEvent *objectEvent, struct Sprite *sprite, bool8 stillReflection);
+u32 StartFieldEffectForObjectEvent(u8 fieldEffectId, struct ObjectEvent *objectEvent);
u8 FindTallGrassFieldEffectSpriteId(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y);
-void UpdateRayquazaSpotlightEffect(struct Sprite *);
-void UpdateShadowFieldEffect(struct Sprite *);
-void UpdateTallGrassFieldEffect(struct Sprite *);
-void WaitFieldEffectSpriteAnim(struct Sprite *);
-void UpdateAshFieldEffect(struct Sprite *);
-void UpdateSurfBlobFieldEffect(struct Sprite *);
-void UpdateJumpImpactEffect(struct Sprite *);
-void UpdateFootprintsTireTracksFieldEffect(struct Sprite *);
-void UpdateSplashFieldEffect(struct Sprite *);
-void UpdateLongGrassFieldEffect(struct Sprite *);
-void UpdateSandPileFieldEffect(struct Sprite *);
-void UpdateDisguiseFieldEffect(struct Sprite *);
-void UpdateShortGrassFieldEffect(struct Sprite *);
-void UpdateHotSpringsWaterFieldEffect(struct Sprite *);
-void UpdateBubblesFieldEffect(struct Sprite *);
-void UpdateSparkleFieldEffect(struct Sprite *);
+void UpdateRayquazaSpotlightEffect(struct Sprite *sprite);
+void UpdateShadowFieldEffect(struct Sprite *sprite);
+void UpdateTallGrassFieldEffect(struct Sprite *sprite);
+void WaitFieldEffectSpriteAnim(struct Sprite *sprite);
+void UpdateAshFieldEffect(struct Sprite *sprite);
+void UpdateSurfBlobFieldEffect(struct Sprite *sprite);
+void UpdateJumpImpactEffect(struct Sprite *sprite);
+void UpdateFootprintsTireTracksFieldEffect(struct Sprite *sprite);
+void UpdateSplashFieldEffect(struct Sprite *sprite);
+void UpdateLongGrassFieldEffect(struct Sprite *sprite);
+void UpdateSandPileFieldEffect(struct Sprite *sprite);
+void UpdateDisguiseFieldEffect(struct Sprite *sprite);
+void UpdateShortGrassFieldEffect(struct Sprite *sprite);
+void UpdateHotSpringsWaterFieldEffect(struct Sprite *sprite);
+void UpdateBubblesFieldEffect(struct Sprite *sprite);
+void UpdateSparkleFieldEffect(struct Sprite *sprite);
void SetSpriteInvisible(u8 spriteId);
void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y);
diff --git a/include/field_message_box.h b/include/field_message_box.h
index 34b3324e72..3a4c4f93c4 100644
--- a/include/field_message_box.h
+++ b/include/field_message_box.h
@@ -9,10 +9,10 @@ enum
FIELD_MESSAGE_BOX_AUTO_SCROLL,
};
-bool8 ShowFieldMessage(const u8 *message);
-bool8 ShowPokenavFieldMessage(const u8 *message);
+bool8 ShowFieldMessage(const u8 *str);
+bool8 ShowPokenavFieldMessage(const u8 *str);
bool8 ShowFieldMessageFromBuffer(void);
-bool8 ShowFieldAutoScrollMessage(const u8 *message);
+bool8 ShowFieldAutoScrollMessage(const u8 *str);
void HideFieldMessageBox(void);
bool8 IsFieldMessageBoxHidden(void);
u8 GetFieldMessageBoxMode(void);
diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h
index 39fc886af8..005a48f2d5 100644
--- a/include/field_player_avatar.h
+++ b/include/field_player_avatar.h
@@ -3,11 +3,11 @@
void PlayerStep(u8 direction, u16 newKeys, u16 heldKeys);
void ClearPlayerAvatarInfo(void);
-void SetPlayerAvatarExtraStateTransition(u8, u8);
-u8 GetPlayerAvatarGenderByGraphicsId(u8);
-bool8 TestPlayerAvatarFlags(u8);
+void SetPlayerAvatarExtraStateTransition(u8 graphicsId, u8 transitionFlag);
+u8 GetPlayerAvatarGenderByGraphicsId(u8 gfxId);
+u8 TestPlayerAvatarFlags(u8 flag);
u8 GetPlayerAvatarSpriteId(void);
-void PlayerGetDestCoords(s16 *, s16 *);
+void PlayerGetDestCoords(s16 *x, s16 *y);
u8 GetPlayerFacingDirection(void);
u8 GetPlayerMovementDirection(void);
u8 PlayerGetCopyableMovement(void);
@@ -36,8 +36,8 @@ void CancelPlayerForcedMovement(void);
void InitPlayerAvatar(s16 x, s16 y, u8 direction, u8 gender);
void PlayerFreeze(void);
void StopPlayerAvatar(void);
-void SetSpinStartFacingDir(u8);
-void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr);
+void SetSpinStartFacingDir(u8 direction);
+void GetXYCoordsOneStepInFrontOfPlayer(s16 *x, s16 *y);
u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8 state, u8 gender);
void SetPlayerAvatarFieldMove(void);
u8 GetPlayerAvatarGraphicsIdByCurrentState(void);
@@ -50,8 +50,8 @@ bool8 IsPlayerSurfingNorth(void);
void SetPlayerAvatarWatering(u8 direction);
u8 GetPlayerAvatarFlags(void);
void UpdatePlayerAvatarTransitionState(void);
-u8 GetFRLGAvatarGraphicsIdByGender(u8);
-u8 GetRSAvatarGraphicsIdByGender(u8);
+u8 GetFRLGAvatarGraphicsIdByGender(u8 gender);
+u8 GetRSAvatarGraphicsIdByGender(u8 gender);
void PlayerWheelieInPlace(u8 direction);
void PlayerWheelieMove(u8 direction);
void PlayerPopWheelieWhileMoving(u8 direction);
diff --git a/include/field_specials.h b/include/field_specials.h
index faf71e9c08..e0ec16f666 100644
--- a/include/field_specials.h
+++ b/include/field_specials.h
@@ -5,7 +5,7 @@ extern bool8 gBikeCyclingChallenge;
extern u8 gBikeCollisions;
u8 GetLeadMonIndex(void);
-u8 IsDestinationBoxFull(void);
+bool8 IsDestinationBoxFull(void);
u16 GetPCBoxToSendMon(void);
bool8 InMultiPartnerRoom(void);
void UpdateTrainerFansAfterLinkBattle(void);
diff --git a/include/fieldmap.h b/include/fieldmap.h
index 47072bd1be..212dfb65a6 100644
--- a/include/fieldmap.h
+++ b/include/fieldmap.h
@@ -23,19 +23,19 @@
extern struct BackupMapLayout gBackupMapLayout;
-u32 MapGridGetMetatileIdAt(int, int);
-u32 MapGridGetMetatileBehaviorAt(int, int);
-void MapGridSetMetatileIdAt(int, int, u16);
-void MapGridSetMetatileEntryAt(int, int, u16);
-void GetCameraCoords(u16 *, u16 *);
-u8 MapGridGetCollisionAt(int, int);
+u32 MapGridGetMetatileIdAt(int x, int y);
+u32 MapGridGetMetatileBehaviorAt(int x, int y);
+void MapGridSetMetatileIdAt(int x, int y, u16 metatile);
+void MapGridSetMetatileEntryAt(int x, int y, u16 metatile);
+void GetCameraCoords(u16 *x, u16 *y);
+u8 MapGridGetCollisionAt(int x, int y);
int GetMapBorderIdAt(int x, int y);
bool32 CanCameraMoveInDirection(int direction);
-u16 GetMetatileAttributesById(u16 metatileId);
+u16 GetMetatileAttributesById(u16 metatile);
void GetCameraFocusCoords(u16 *x, u16 *y);
u8 MapGridGetMetatileLayerTypeAt(int x, int y);
u8 MapGridGetElevationAt(int x, int y);
-bool8 CameraMove(int deltaX, int deltaY);
+bool8 CameraMove(int x, int y);
void SaveMapView(void);
void SetCameraFocusCoords(u16 x, u16 y);
void InitMap(void);
@@ -46,8 +46,8 @@ void CopyMapTilesetsToVram(struct MapLayout const *mapLayout);
void LoadMapTilesetPalettes(struct MapLayout const *mapLayout);
void LoadSecondaryTilesetPalette(struct MapLayout const *mapLayout);
void CopySecondaryTilesetToVramUsingHeap(struct MapLayout const *mapLayout);
-void CopyPrimaryTilesetToVram(const struct MapLayout *);
-void CopySecondaryTilesetToVram(const struct MapLayout *);
+void CopyPrimaryTilesetToVram(struct MapLayout const *mapLayout);
+void CopySecondaryTilesetToVram(struct MapLayout const *mapLayout);
const struct MapHeader *const GetMapHeaderFromConnection(const struct MapConnection *connection);
const struct MapConnection *GetMapConnectionAtPos(s16 x, s16 y);
void MapGridSetMetatileImpassabilityAt(int x, int y, bool32 impassable);
diff --git a/include/fldeff.h b/include/fldeff.h
index 0ad0e3d606..e4c128c20f 100644
--- a/include/fldeff.h
+++ b/include/fldeff.h
@@ -13,7 +13,7 @@ extern const struct SpritePalette gSpritePalette_CutGrass;
extern struct MapPosition gPlayerFacingPosition;
// escalator
-void StartEscalator(bool8 var);
+void StartEscalator(bool8 goingUp);
void StopEscalator(void);
bool8 IsEscalatorMoving(void);
diff --git a/include/gba/defines.h b/include/gba/defines.h
index fa3a30fd6e..a549bab7e2 100644
--- a/include/gba/defines.h
+++ b/include/gba/defines.h
@@ -8,6 +8,7 @@
#define IWRAM_DATA __attribute__((section("iwram_data")))
#define EWRAM_DATA __attribute__((section("ewram_data")))
+#define COMMON_DATA __attribute__((section("common_data")))
#define UNUSED __attribute__((unused))
#if MODERN
@@ -75,7 +76,7 @@
#define DISPLAY_TILE_HEIGHT (DISPLAY_HEIGHT / TILE_HEIGHT)
// Size of different tile formats in bytes
-#define TILE_SIZE(bpp)((bpp) * TILE_WIDTH * TILE_HEIGHT / 8)
+#define TILE_SIZE(bpp) ((bpp) * TILE_WIDTH * TILE_HEIGHT / 8)
#define TILE_SIZE_1BPP TILE_SIZE(1) // 8
#define TILE_SIZE_4BPP TILE_SIZE(4) // 32
#define TILE_SIZE_8BPP TILE_SIZE(8) // 64
diff --git a/include/gba/m4a_internal.h b/include/gba/m4a_internal.h
index fc8205efd9..a90771048d 100644
--- a/include/gba/m4a_internal.h
+++ b/include/gba/m4a_internal.h
@@ -170,7 +170,11 @@ struct SoundChannel
struct MusicPlayerInfo;
+#if __STDC_VERSION__ < 202311L
typedef void (*MPlayFunc)();
+#else
+typedef void (*MPlayFunc)(...);
+#endif
typedef void (*PlyNoteFunc)(u32, struct MusicPlayerInfo *, struct MusicPlayerTrack *);
typedef void (*CgbSoundFunc)(void);
typedef void (*CgbOscOffFunc)(u8);
diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h
index 7461929c3a..d3e260e192 100644
--- a/include/global.fieldmap.h
+++ b/include/global.fieldmap.h
@@ -131,7 +131,7 @@ struct MapEvents
struct MapConnection
{
u8 direction;
- u32 offset;
+ s32 offset;
u8 mapGroup;
u8 mapNum;
};
@@ -210,8 +210,11 @@ struct ObjectEvent
/*0x14*/ struct Coords16 previousCoords;
/*0x18*/ u16 facingDirection:4; // current direction?
u16 movementDirection:4;
- u16 rangeX:4;
- u16 rangeY:4;
+ struct __attribute__((packed))
+ {
+ u16 rangeX:4;
+ u16 rangeY:4;
+ } range;
/*0x1A*/ u8 fieldEffectSpriteId;
/*0x1B*/ u8 warpArrowSpriteId;
/*0x1C*/ u8 movementActionId;
diff --git a/include/global.h b/include/global.h
index e6d58f36e0..ad29e4897b 100644
--- a/include/global.h
+++ b/include/global.h
@@ -23,6 +23,10 @@
#define asm_unified(x) asm(".syntax unified\n" x "\n.syntax divided")
#define NAKED __attribute__((naked))
+#if MODERN
+#define asm __asm__
+#endif
+
/// IDE support
#if defined(__APPLE__) || defined(__CYGWIN__) || defined(__INTELLISENSE__)
// We define these when using certain IDEs to fool preproc
@@ -80,7 +84,7 @@
// Used in cases where division by 0 can occur in the retail version.
// Avoids invalid opcodes on some emulators, and the otherwise UB.
#ifdef UBFIX
-#define SAFE_DIV(a, b) ((b) ? (a) / (b) : 0)
+#define SAFE_DIV(a, b) (((b) != 0) ? (a) / (b) : 0)
#else
#define SAFE_DIV(a, b) ((a) / (b))
#endif
@@ -89,7 +93,7 @@
// There are cases where GF does a&(n-1) where we would really like to have a%n, because
// if n is changed to a value that isn't a power of 2 then a&(n-1) is unlikely to work as
// intended, and a%n for powers of 2 isn't always optimized to use &.
-#define MOD(a, n)(((n) & ((n)-1)) ? ((a) % (n)) : ((a) & ((n)-1)))
+#define MOD(a, n) (((n) & ((n)-1)) ? ((a) % (n)) : ((a) & ((n)-1)))
// Extracts the upper 16 bits of a 32-bit number
#define HIHALF(n) (((n) & 0xFFFF0000) >> 16)
@@ -130,12 +134,12 @@
f; \
})
-#define DIV_ROUND_UP(val, roundBy)(((val) / (roundBy)) + (((val) % (roundBy)) ? 1 : 0))
+#define DIV_ROUND_UP(val, roundBy) (((val) / (roundBy)) + (((val) % (roundBy)) ? 1 : 0))
#define ROUND_BITS_TO_BYTES(numBits) DIV_ROUND_UP(numBits, 8)
// NUM_DEX_FLAG_BYTES allocates more flags than it needs to, as NUM_SPECIES includes the "old unown"
-// values that don't appear in the Pokedex. NATIONAL_DEX_COUNT does not include these values.
+// values that don't appear in the Pokédex. NATIONAL_DEX_COUNT does not include these values.
#define NUM_DEX_FLAG_BYTES ROUND_BITS_TO_BYTES(NUM_SPECIES)
#define NUM_FLAG_BYTES ROUND_BITS_TO_BYTES(FLAGS_COUNT)
#define NUM_TRENDY_SAYING_BYTES ROUND_BITS_TO_BYTES(NUM_TRENDY_SAYINGS)
@@ -371,7 +375,7 @@ struct BattleFrontier
{
/*0x64C*/ struct EmeraldBattleTowerRecord towerPlayer;
/*0x738*/ struct EmeraldBattleTowerRecord towerRecords[BATTLE_TOWER_RECORD_COUNT]; // From record mixing.
- /*0xBEB*/ struct BattleTowerInterview towerInterview;
+ /*0xBD4*/ struct BattleTowerInterview towerInterview;
/*0xBEC*/ struct BattleTowerEReaderTrainer ereaderTrainer;
/*0xCA8*/ u8 challengeStatus;
/*0xCA9*/ u8 lvlMode:2;
@@ -459,7 +463,7 @@ struct ApprenticeQuestion
u8 moveSlot:2;
u8 suggestedChange:2; // TRUE if told to use held item or second move, FALSE if told to use no item or first move
//u8 padding;
- u16 data; // used both as an itemId and a moveId
+ u16 data; // used both as an itemId and a move
};
struct PlayersApprentice
@@ -520,7 +524,7 @@ struct SaveBlock2
/*0x90*/ u8 filler_90[0x8];
/*0x98*/ struct Time localTimeOffset;
/*0xA0*/ struct Time lastBerryTreeUpdate;
- /*0xA8*/ u32 gcnLinkFlags; // Read by Pokemon Colosseum/XD
+ /*0xA8*/ u32 gcnLinkFlags; // Read by Pokémon Colosseum/XD
/*0xAC*/ u32 encryptionKey;
/*0xB0*/ struct PlayersApprentice playerApprentice;
/*0xDC*/ struct Apprentice apprentices[APPRENTICE_COUNT];
@@ -618,7 +622,7 @@ struct RamScriptData
u8 magic;
u8 mapGroup;
u8 mapNum;
- u8 objectId;
+ u8 localId;
u8 script[995];
//u8 padding;
};
@@ -649,8 +653,8 @@ struct MauvilleManBard
{
/*0x00*/ u8 id;
/*0x01*/ //u8 padding1;
- /*0x02*/ u16 songLyrics[BARD_SONG_LENGTH];
- /*0x0E*/ u16 temporaryLyrics[BARD_SONG_LENGTH];
+ /*0x02*/ u16 songLyrics[NUM_BARD_SONG_WORDS];
+ /*0x0E*/ u16 newSongLyrics[NUM_BARD_SONG_WORDS];
/*0x1A*/ u8 playerName[PLAYER_NAME_LENGTH + 1];
/*0x22*/ u8 filler_2DB6[0x3];
/*0x25*/ u8 playerTrainerId[TRAINER_ID_LENGTH];
@@ -1070,7 +1074,7 @@ struct SaveBlock1
// sizeof: 0x3D88
};
-extern struct SaveBlock1* gSaveBlock1Ptr;
+extern struct SaveBlock1 *gSaveBlock1Ptr;
struct MapPosition
{
diff --git a/gflib/gpu_regs.h b/include/gpu_regs.h
similarity index 100%
rename from gflib/gpu_regs.h
rename to include/gpu_regs.h
diff --git a/include/graphics.h b/include/graphics.h
index 5b13ab562f..14f2f5e744 100644
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -2,7 +2,7 @@
#define GUARD_GRAPHICS_H
// overworld
-extern const u32 gMessageBox_Gfx[];
+extern const u8 gMessageBox_Gfx[];
extern const u16 gMessageBox_Pal[];
// pokeballs
@@ -32,7 +32,7 @@ extern const u32 gBallGfx_Premier[];
extern const u32 gBallPal_Premier[];
extern const u32 gOpenPokeballGfx[];
-// pokemon gfx
+// Pokémon gfx
extern const u32 gMonFrontPic_Bulbasaur[];
extern const u32 gMonPalette_Bulbasaur[];
extern const u32 gMonBackPic_Bulbasaur[];
@@ -3215,88 +3215,88 @@ extern const u32 gBattleVSFrame_Tilemap[];
extern const u32 gMultiBattleIntroBg_Opponent_Tilemap[];
extern const u32 gMultiBattleIntroBg_Player_Tilemap[];
-// battle terrains
-extern const u32 gBattleTerrainTiles_TallGrass[];
-extern const u32 gBattleTerrainTilemap_TallGrass[];
-extern const u32 gBattleTerrainAnimTiles_TallGrass[];
-extern const u32 gBattleTerrainAnimTilemap_TallGrass[];
-extern const u32 gBattleTerrainPalette_TallGrass[];
-extern const u32 gBattleTerrainTiles_LongGrass[];
-extern const u32 gBattleTerrainTilemap_LongGrass[];
-extern const u32 gBattleTerrainAnimTiles_LongGrass[];
-extern const u32 gBattleTerrainAnimTilemap_LongGrass[];
-extern const u32 gBattleTerrainPalette_LongGrass[];
-extern const u32 gBattleTerrainTiles_Sand[];
-extern const u32 gBattleTerrainTilemap_Sand[];
-extern const u32 gBattleTerrainAnimTiles_Sand[];
-extern const u32 gBattleTerrainAnimTilemap_Sand[];
-extern const u32 gBattleTerrainPalette_Sand[];
-extern const u32 gBattleTerrainTiles_Underwater[];
-extern const u32 gBattleTerrainTilemap_Underwater[];
-extern const u32 gBattleTerrainAnimTiles_Underwater[];
-extern const u32 gBattleTerrainAnimTilemap_Underwater[];
-extern const u32 gBattleTerrainPalette_Underwater[];
-extern const u32 gBattleTerrainTiles_Water[];
-extern const u32 gBattleTerrainTilemap_Water[];
-extern const u32 gBattleTerrainAnimTiles_Water[];
-extern const u32 gBattleTerrainAnimTilemap_Water[];
-extern const u32 gBattleTerrainPalette_Water[];
-extern const u32 gBattleTerrainTiles_PondWater[];
-extern const u32 gBattleTerrainTilemap_PondWater[];
-extern const u32 gBattleTerrainAnimTiles_PondWater[];
-extern const u32 gBattleTerrainAnimTilemap_PondWater[];
-extern const u32 gBattleTerrainPalette_PondWater[];
-extern const u32 gBattleTerrainTiles_Rock[];
-extern const u32 gBattleTerrainTilemap_Rock[];
-extern const u32 gBattleTerrainAnimTiles_Rock[];
-extern const u32 gBattleTerrainAnimTilemap_Rock[];
-extern const u32 gBattleTerrainPalette_Rock[];
-extern const u32 gBattleTerrainTiles_Cave[];
-extern const u32 gBattleTerrainTilemap_Cave[];
-extern const u32 gBattleTerrainAnimTiles_Cave[];
-extern const u32 gBattleTerrainAnimTilemap_Cave[];
-extern const u32 gBattleTerrainPalette_Cave[];
-extern const u32 gBattleTerrainTiles_Building[];
-extern const u32 gBattleTerrainTilemap_Building[];
-extern const u32 gBattleTerrainAnimTiles_Building[];
-extern const u32 gBattleTerrainAnimTilemap_Building[];
-extern const u32 gBattleTerrainPalette_Building[];
-extern const u32 gBattleTerrainPalette_Plain[];
-extern const u32 gBattleTerrainPalette_Frontier[];
-extern const u32 gBattleTerrainTiles_Stadium[];
-extern const u32 gBattleTerrainTilemap_Stadium[];
-extern const u32 gBattleTerrainTiles_Rayquaza[];
-extern const u32 gBattleTerrainTilemap_Rayquaza[];
-extern const u32 gBattleTerrainAnimTiles_Rayquaza[];
-extern const u32 gBattleTerrainAnimTilemap_Rayquaza[];
-extern const u32 gBattleTerrainPalette_Rayquaza[];
-extern const u32 gBattleTerrainPalette_Kyogre[];
-extern const u32 gBattleTerrainPalette_Groudon[];
-extern const u32 gBattleTerrainPalette_BuildingGym[];
-extern const u32 gBattleTerrainPalette_BuildingLeader[];
-extern const u32 gBattleTerrainPalette_StadiumAqua[];
-extern const u32 gBattleTerrainPalette_StadiumMagma[];
-extern const u32 gBattleTerrainPalette_StadiumSidney[];
-extern const u32 gBattleTerrainPalette_StadiumPhoebe[];
-extern const u32 gBattleTerrainPalette_StadiumGlacia[];
-extern const u32 gBattleTerrainPalette_StadiumDrake[];
-extern const u32 gBattleTerrainPalette_StadiumWallace[];
+// battle environments
+extern const u32 gBattleEnvironmentTiles_TallGrass[];
+extern const u32 gBattleEnvironmentTilemap_TallGrass[];
+extern const u32 gBattleEnvironmentAnimTiles_TallGrass[];
+extern const u32 gBattleEnvironmentAnimTilemap_TallGrass[];
+extern const u32 gBattleEnvironmentPalette_TallGrass[];
+extern const u32 gBattleEnvironmentTiles_LongGrass[];
+extern const u32 gBattleEnvironmentTilemap_LongGrass[];
+extern const u32 gBattleEnvironmentAnimTiles_LongGrass[];
+extern const u32 gBattleEnvironmentAnimTilemap_LongGrass[];
+extern const u32 gBattleEnvironmentPalette_LongGrass[];
+extern const u32 gBattleEnvironmentTiles_Sand[];
+extern const u32 gBattleEnvironmentTilemap_Sand[];
+extern const u32 gBattleEnvironmentAnimTiles_Sand[];
+extern const u32 gBattleEnvironmentAnimTilemap_Sand[];
+extern const u32 gBattleEnvironmentPalette_Sand[];
+extern const u32 gBattleEnvironmentTiles_Underwater[];
+extern const u32 gBattleEnvironmentTilemap_Underwater[];
+extern const u32 gBattleEnvironmentAnimTiles_Underwater[];
+extern const u32 gBattleEnvironmentAnimTilemap_Underwater[];
+extern const u32 gBattleEnvironmentPalette_Underwater[];
+extern const u32 gBattleEnvironmentTiles_Water[];
+extern const u32 gBattleEnvironmentTilemap_Water[];
+extern const u32 gBattleEnvironmentAnimTiles_Water[];
+extern const u32 gBattleEnvironmentAnimTilemap_Water[];
+extern const u32 gBattleEnvironmentPalette_Water[];
+extern const u32 gBattleEnvironmentTiles_PondWater[];
+extern const u32 gBattleEnvironmentTilemap_PondWater[];
+extern const u32 gBattleEnvironmentAnimTiles_PondWater[];
+extern const u32 gBattleEnvironmentAnimTilemap_PondWater[];
+extern const u32 gBattleEnvironmentPalette_PondWater[];
+extern const u32 gBattleEnvironmentTiles_Rock[];
+extern const u32 gBattleEnvironmentTilemap_Rock[];
+extern const u32 gBattleEnvironmentAnimTiles_Rock[];
+extern const u32 gBattleEnvironmentAnimTilemap_Rock[];
+extern const u32 gBattleEnvironmentPalette_Rock[];
+extern const u32 gBattleEnvironmentTiles_Cave[];
+extern const u32 gBattleEnvironmentTilemap_Cave[];
+extern const u32 gBattleEnvironmentAnimTiles_Cave[];
+extern const u32 gBattleEnvironmentAnimTilemap_Cave[];
+extern const u32 gBattleEnvironmentPalette_Cave[];
+extern const u32 gBattleEnvironmentTiles_Building[];
+extern const u32 gBattleEnvironmentTilemap_Building[];
+extern const u32 gBattleEnvironmentAnimTiles_Building[];
+extern const u32 gBattleEnvironmentAnimTilemap_Building[];
+extern const u32 gBattleEnvironmentPalette_Building[];
+extern const u32 gBattleEnvironmentPalette_Plain[];
+extern const u32 gBattleEnvironmentPalette_Frontier[];
+extern const u32 gBattleEnvironmentTiles_Stadium[];
+extern const u32 gBattleEnvironmentTilemap_Stadium[];
+extern const u32 gBattleEnvironmentTiles_Rayquaza[];
+extern const u32 gBattleEnvironmentTilemap_Rayquaza[];
+extern const u32 gBattleEnvironmentAnimTiles_Rayquaza[];
+extern const u32 gBattleEnvironmentAnimTilemap_Rayquaza[];
+extern const u32 gBattleEnvironmentPalette_Rayquaza[];
+extern const u32 gBattleEnvironmentPalette_Kyogre[];
+extern const u32 gBattleEnvironmentPalette_Groudon[];
+extern const u32 gBattleEnvironmentPalette_BuildingGym[];
+extern const u32 gBattleEnvironmentPalette_BuildingLeader[];
+extern const u32 gBattleEnvironmentPalette_StadiumAqua[];
+extern const u32 gBattleEnvironmentPalette_StadiumMagma[];
+extern const u32 gBattleEnvironmentPalette_StadiumSidney[];
+extern const u32 gBattleEnvironmentPalette_StadiumPhoebe[];
+extern const u32 gBattleEnvironmentPalette_StadiumGlacia[];
+extern const u32 gBattleEnvironmentPalette_StadiumDrake[];
+extern const u32 gBattleEnvironmentPalette_StadiumWallace[];
-// pokedex
+// Pokédex
extern const u32 gPokedexInterface_Gfx[];
extern const u16 gPokedexBgHoenn_Pal[];
extern const u32 gPokedexMenu_Gfx[];
-extern const u8 gPokedexList_Tilemap[];
-extern const u8 gPokedexListUnderlay_Tilemap[];
-extern const u8 gPokedexStartMenuMain_Tilemap[];
-extern const u8 gPokedexStartMenuSearchResults_Tilemap[];
+extern const u32 gPokedexList_Tilemap[];
+extern const u32 gPokedexListUnderlay_Tilemap[];
+extern const u32 gPokedexStartMenuMain_Tilemap[];
+extern const u32 gPokedexStartMenuSearchResults_Tilemap[];
extern const u16 gPokedexSearchResults_Pal[];
extern const u16 gPokedexBgNational_Pal[];
-extern const u8 gPokedexInfoScreen_Tilemap[];
-extern const u8 gPokedexCryScreen_Tilemap[];
-extern const u8 gPokedexSizeScreen_Tilemap[];
-extern const u8 gPokedexScreenSelectBarMain_Tilemap[];
-extern const u8 gPokedexScreenSelectBarSubmenu_Tilemap[];
+extern const u32 gPokedexInfoScreen_Tilemap[];
+extern const u32 gPokedexCryScreen_Tilemap[];
+extern const u32 gPokedexSizeScreen_Tilemap[];
+extern const u32 gPokedexScreenSelectBarMain_Tilemap[];
+extern const u32 gPokedexScreenSelectBarSubmenu_Tilemap[];
extern const u16 gPokedexCaughtScreen_Pal[];
extern const u32 gPokedexSearchMenu_Gfx[];
extern const u32 gPokedexSearchMenuHoenn_Tilemap[];
@@ -3307,7 +3307,7 @@ extern const u16 gPokedexSearchMenu_Pal[];
extern const u32 gBerryCheck_Gfx[];
extern const u32 gBerryCheck_Pal[];
extern const u32 gBerryTag_Gfx[];
-extern const u32 gBerryTag_Pal[];
+extern const u32 gBerryTag_Tilemap[];
// rayquaza scene gfx
extern const u32 gRaySceneDuoFight_Groudon_Gfx[];
@@ -3893,7 +3893,7 @@ extern const u32 gIntroGroudon_Gfx[];
extern const u32 gIntroGroudon_Tilemap[];
extern const u32 gIntroLegendBg_Gfx[];
extern const u32 gIntroGroudonBg_Tilemap[];
-extern const u8 ALIGNED(2) gIntro3Bg_Pal[0x200];
+extern const u16 gIntro3Bg_Pal[16][16];
extern const u32 gIntroKyogre_Gfx[];
extern const u32 gIntroKyogre_Tilemap[];
extern const u32 gIntroKyogreBg_Tilemap[];
@@ -4005,7 +4005,7 @@ extern const u32 gBerryPalette_Starf[];
extern const u32 gBerryPic_Enigma[];
extern const u32 gBerryPalette_Enigma[];
-//pokenav
+//PokéNav
extern const u16 gPokenavCondition_Pal[];
extern const u32 gPokenavCondition_Gfx[];
extern const u32 gPokenavCondition_Tilemap[];
@@ -4066,9 +4066,9 @@ extern const u8 gHealthboxElementsGfxTable[][32];
extern const u16 gNamingScreenMenu_Pal[6][16];
extern const u32 gNamingScreenMenu_Gfx[];
extern const u32 gNamingScreenBackground_Tilemap[];
-extern const u8 gNamingScreenKeyboardUpper_Tilemap[];
-extern const u8 gNamingScreenKeyboardLower_Tilemap[];
-extern const u8 gNamingScreenKeyboardSymbols_Tilemap[];
+extern const u32 gNamingScreenKeyboardUpper_Tilemap[];
+extern const u32 gNamingScreenKeyboardLower_Tilemap[];
+extern const u32 gNamingScreenKeyboardSymbols_Tilemap[];
extern const u32 gNamingScreenPageSwapFrame_Gfx[];
extern const u32 gNamingScreenBackButton_Gfx[];
extern const u32 gNamingScreenOKButton_Gfx[];
@@ -4791,7 +4791,7 @@ extern const u32 gContestAudienceTilemap[];
extern const u32 gContestInterfaceAudiencePalette[];
extern const u32 gContestInterfaceTilemap[];
extern const u32 gContestCurtainTilemap[];
-extern const u32 gContestSliderHeart_Gfx[];
+extern const u8 gContestSliderHeart_Gfx[];
extern const u32 gContestNextTurnGfx[];
extern const u16 gContestPal[];
extern const u32 gContestFaces_Gfx[];
@@ -4817,11 +4817,11 @@ extern const u16 gUsePokeblockGraph_Pal[];
extern const u16 gUsePokeblockNatureWin_Pal[];
// Berry blender
-extern const u32 gBerryBlenderPlayerArrow_Gfx[];
-extern const u32 gBerryBlenderStart_Gfx[];
-extern const u32 gBerryBlenderScoreSymbols_Gfx[];
-extern const u32 gBerryBlenderParticles_Gfx[];
-extern const u32 gBerryBlenderCountdownNumbers_Gfx[];
+extern const u8 gBerryBlenderPlayerArrow_Gfx[];
+extern const u8 gBerryBlenderStart_Gfx[];
+extern const u8 gBerryBlenderScoreSymbols_Gfx[];
+extern const u8 gBerryBlenderParticles_Gfx[];
+extern const u8 gBerryBlenderCountdownNumbers_Gfx[];
extern const u16 gBerryBlenderMiscPalette[];
extern const u16 gBerryBlenderArrowPalette[];
extern const u32 gBerryBlenderCenter_Gfx[];
@@ -4879,11 +4879,11 @@ extern const u16 gSlotMachineReelTimePikachu_Pal[];
extern const u32 gBattleAnimBgTilemap_Sandstorm[];
extern const u32 gBattleAnimBgImage_Sandstorm[];
-// Pokedex Area Screen
+// Pokédex Area Screen
extern const u32 gPokedexAreaScreenAreaUnknown_Gfx[];
extern const u16 gPokedexAreaScreenAreaUnknown_Pal[];
-// Pokemon Storage System
+// Pokémon Storage System
extern const u32 gStorageSystemMenu_Gfx[];
extern const u16 gStorageSystemPartyMenu_Pal[];
extern const u32 gStorageSystemPartyMenu_Tilemap[];
@@ -5011,7 +5011,7 @@ extern const u32 gBerryCrush_Crusher_Gfx[];
extern const u16 gBerryCrush_Crusher_Pal[];
extern const u32 gBerryCrush_TextWindows_Tilemap[];
-// Pokenav
+// PokéNav
extern const u32 gPokenavMessageBox_Gfx[];
extern const u32 gPokenavMessageBox_Tilemap[];
extern const u16 gPokenavMessageBox_Pal[];
@@ -5042,30 +5042,30 @@ extern const u16 gMailPalette_Tropic[];
extern const u16 gMailPalette_Dream[];
extern const u16 gMailPalette_Fab[];
extern const u16 gMailPalette_Retro[];
-extern const u8 gMailTiles_Orange[];
-extern const u8 gMailTilemap_Orange[];
-extern const u8 gMailTiles_Harbor[];
-extern const u8 gMailTilemap_Harbor[];
-extern const u8 gMailTiles_Glitter[];
-extern const u8 gMailTilemap_Glitter[];
-extern const u8 gMailTiles_Mech[];
-extern const u8 gMailTilemap_Mech[];
-extern const u8 gMailTiles_Wood[];
-extern const u8 gMailTilemap_Wood[];
-extern const u8 gMailTiles_Wave[];
-extern const u8 gMailTilemap_Wave[];
-extern const u8 gMailTiles_Bead[];
-extern const u8 gMailTilemap_Bead[];
-extern const u8 gMailTiles_Shadow[];
-extern const u8 gMailTilemap_Shadow[];
-extern const u8 gMailTiles_Tropic[];
-extern const u8 gMailTilemap_Tropic[];
-extern const u8 gMailTiles_Dream[];
-extern const u8 gMailTilemap_Dream[];
-extern const u8 gMailTiles_Fab[];
-extern const u8 gMailTilemap_Fab[];
-extern const u8 gMailTiles_Retro[];
-extern const u8 gMailTilemap_Retro[];
+extern const u32 gMailTiles_Orange[];
+extern const u32 gMailTilemap_Orange[];
+extern const u32 gMailTiles_Harbor[];
+extern const u32 gMailTilemap_Harbor[];
+extern const u32 gMailTiles_Glitter[];
+extern const u32 gMailTilemap_Glitter[];
+extern const u32 gMailTiles_Mech[];
+extern const u32 gMailTilemap_Mech[];
+extern const u32 gMailTiles_Wood[];
+extern const u32 gMailTilemap_Wood[];
+extern const u32 gMailTiles_Wave[];
+extern const u32 gMailTilemap_Wave[];
+extern const u32 gMailTiles_Bead[];
+extern const u32 gMailTilemap_Bead[];
+extern const u32 gMailTiles_Shadow[];
+extern const u32 gMailTilemap_Shadow[];
+extern const u32 gMailTiles_Tropic[];
+extern const u32 gMailTilemap_Tropic[];
+extern const u32 gMailTiles_Dream[];
+extern const u32 gMailTilemap_Dream[];
+extern const u32 gMailTiles_Fab[];
+extern const u32 gMailTilemap_Fab[];
+extern const u32 gMailTiles_Retro[];
+extern const u32 gMailTilemap_Retro[];
extern const u8 gMonMarkingsMenu_Gfx[];
extern const u16 gMonMarkingsMenu_Pal[];
diff --git a/include/gym_leader_rematch.h b/include/gym_leader_rematch.h
index b31fb5e228..622d2db1bc 100644
--- a/include/gym_leader_rematch.h
+++ b/include/gym_leader_rematch.h
@@ -1,90 +1,7 @@
#ifndef GUARD_TRAINER_REMATCH_H
#define GUARD_TRAINER_REMATCH_H
-enum {
- REMATCH_ROSE,
- REMATCH_ANDRES,
- REMATCH_DUSTY,
- REMATCH_LOLA,
- REMATCH_RICKY,
- REMATCH_LILA_AND_ROY,
- REMATCH_CRISTIN,
- REMATCH_BROOKE,
- REMATCH_WILTON,
- REMATCH_VALERIE,
- REMATCH_CINDY,
- REMATCH_THALIA,
- REMATCH_JESSICA,
- REMATCH_WINSTON,
- REMATCH_STEVE,
- REMATCH_TONY,
- REMATCH_NOB,
- REMATCH_KOJI,
- REMATCH_FERNANDO,
- REMATCH_DALTON,
- REMATCH_BERNIE,
- REMATCH_ETHAN,
- REMATCH_JOHN_AND_JAY,
- REMATCH_JEFFREY,
- REMATCH_CAMERON,
- REMATCH_JACKI,
- REMATCH_WALTER,
- REMATCH_KAREN,
- REMATCH_JERRY,
- REMATCH_ANNA_AND_MEG,
- REMATCH_ISABEL,
- REMATCH_MIGUEL,
- REMATCH_TIMOTHY,
- REMATCH_SHELBY,
- REMATCH_CALVIN,
- REMATCH_ELLIOT,
- REMATCH_ISAIAH,
- REMATCH_MARIA,
- REMATCH_ABIGAIL,
- REMATCH_DYLAN,
- REMATCH_KATELYN,
- REMATCH_BENJAMIN,
- REMATCH_PABLO,
- REMATCH_NICOLAS,
- REMATCH_ROBERT,
- REMATCH_LAO,
- REMATCH_CYNDY,
- REMATCH_MADELINE,
- REMATCH_JENNY,
- REMATCH_DIANA,
- REMATCH_AMY_AND_LIV,
- REMATCH_ERNEST,
- REMATCH_CORY,
- REMATCH_EDWIN,
- REMATCH_LYDIA,
- REMATCH_ISAAC,
- REMATCH_GABRIELLE,
- REMATCH_CATHERINE,
- REMATCH_JACKSON,
- REMATCH_HALEY,
- REMATCH_JAMES,
- REMATCH_TRENT,
- REMATCH_SAWYER,
- REMATCH_KIRA_AND_DAN,
- REMATCH_WALLY_VR, // Entries above WALLY are considered normal trainers, from Wally below are special trainers
- REMATCH_ROXANNE,
- REMATCH_BRAWLY,
- REMATCH_WATTSON,
- REMATCH_FLANNERY,
- REMATCH_NORMAN,
- REMATCH_WINONA,
- REMATCH_TATE_AND_LIZA,
- REMATCH_JUAN,
- REMATCH_SIDNEY, // Entries from SIDNEY below are considered part of REMATCH_ELITE_FOUR_ENTRIES.
- REMATCH_PHOEBE,
- REMATCH_GLACIA,
- REMATCH_DRAKE,
- REMATCH_WALLACE,
- REMATCH_TABLE_ENTRIES // The total number of rematch entries. Must be last in enum
-};
-
-#define REMATCH_SPECIAL_TRAINER_START REMATCH_WALLY_VR
-#define REMATCH_ELITE_FOUR_ENTRIES REMATCH_SIDNEY
+#include "constants/rematches.h"
void UpdateGymLeaderRematch(void);
diff --git a/include/heal_location.h b/include/heal_location.h
index 46f0d785ab..c087cfb3cd 100644
--- a/include/heal_location.h
+++ b/include/heal_location.h
@@ -3,8 +3,8 @@
struct HealLocation
{
- s8 group;
- s8 map;
+ s8 mapGroup;
+ s8 mapNum;
u16 x;
u16 y;
};
diff --git a/include/image_processing_effects.h b/include/image_processing_effects.h
index 7f726707cd..20ee822e46 100755
--- a/include/image_processing_effects.h
+++ b/include/image_processing_effects.h
@@ -46,8 +46,8 @@ struct ImageProcessingContext
u8 personality;
};
-void ApplyImageProcessingEffects(struct ImageProcessingContext *);
-void ApplyImageProcessingQuantization(struct ImageProcessingContext *);
-void ConvertImageProcessingToGBA(struct ImageProcessingContext *);
+void ApplyImageProcessingEffects(struct ImageProcessingContext *context);
+void ApplyImageProcessingQuantization(struct ImageProcessingContext *context);
+void ConvertImageProcessingToGBA(struct ImageProcessingContext *context);
#endif
diff --git a/include/international_string_util.h b/include/international_string_util.h
index b0ac8afb6b..454c92be74 100644
--- a/include/international_string_util.h
+++ b/include/international_string_util.h
@@ -4,7 +4,7 @@
#include "menu.h"
#include "list_menu.h"
-void ConvertInternationalPlayerName(u8 *src);
+void ConvertInternationalPlayerName(u8 *str);
void TVShowConvertInternationalString(u8 *dest, const u8 *src, int language);
int GetStringCenterAlignXOffset(int fontId, const u8 *str, int totalWidth);
int GetStringRightAlignXOffset(int fontId, const u8 *str, int totalWidth);
@@ -16,9 +16,9 @@ int Intl_GetListMenuWidth(const struct ListMenuTemplate *listMenu);
void CopyMonCategoryText(int dexNum, u8 *dest);
u8 *GetStringClearToWidth(u8 *dest, int fontId, const u8 *str, int totalStringWidth);
void PadNameString(u8 *dest, u8 padChar);
-void ConvertInternationalPlayerNameStripChar(u8 *, u8);
-void ConvertInternationalContestantName(u8 *);
-int GetNicknameLanguage(u8 *);
+void ConvertInternationalPlayerNameStripChar(u8 *str, u8 removeChar);
+void ConvertInternationalContestantName(u8 *str);
+int GetNicknameLanguage(u8 *str);
void FillWindowTilesByRow(int windowId, int columnStart, int rowStart, int numFillTiles, int numRows);
#endif // GUARD_INTERNATIONAL_STRING_UTIL_H
diff --git a/include/intro.h b/include/intro.h
index 8ba030a287..a279809011 100644
--- a/include/intro.h
+++ b/include/intro.h
@@ -8,6 +8,6 @@
// Exported ROM declarations
void CB2_InitCopyrightScreenAfterBootup(void);
void CB2_InitCopyrightScreenAfterTitleScreen(void);
-void PanFadeAndZoomScreen(u16, u16, u16, u16);
+void PanFadeAndZoomScreen(u16 screenX, u16 screenY, u16 zoom, u16 alpha);
#endif // GUARD_INTRO_H
diff --git a/include/intro_credits_graphics.h b/include/intro_credits_graphics.h
index c6f4a73c55..b37846f345 100644
--- a/include/intro_credits_graphics.h
+++ b/include/intro_credits_graphics.h
@@ -35,10 +35,10 @@ extern const struct SpritePalette gSpritePalettes_Credits[];
void LoadIntroPart2Graphics(u8 scenery);
void SetIntroPart2BgCnt(u8 scenery);
-void LoadCreditsSceneGraphics(u8);
-void SetCreditsSceneBgCnt(u8);
+void LoadCreditsSceneGraphics(u8 scene);
+void SetCreditsSceneBgCnt(u8 scene);
u8 CreateBicycleBgAnimationTask(u8 mode, u16 bg1Speed, u16 bg2Speed, u16 bg3Speed);
-void CycleSceneryPalette(u8);
+void CycleSceneryPalette(u8 mode);
u8 CreateIntroBrendanSprite(s16 x, s16 y);
u8 CreateIntroMaySprite(s16 x, s16 y);
u8 CreateIntroFlygonSprite(s16 x, s16 y);
diff --git a/gflib/io_reg.h b/include/io_reg.h
similarity index 100%
rename from gflib/io_reg.h
rename to include/io_reg.h
diff --git a/include/item.h b/include/item.h
index af8ff8b9d0..cf84848ae4 100644
--- a/include/item.h
+++ b/include/item.h
@@ -58,23 +58,23 @@ u16 BagGetItemIdByPocketPosition(u8 pocketId, u16 pocketPos);
u16 BagGetQuantityByPocketPosition(u8 pocketId, u16 pocketPos);
void CompactItemsInBagPocket(struct BagPocket *bagPocket);
void SortBerriesOrTMHMs(struct BagPocket *bagPocket);
-void MoveItemSlotInList(struct ItemSlot* itemSlots_, u32 from, u32 to_);
+void MoveItemSlotInList(struct ItemSlot *itemSlots_, u32 from, u32 to_);
void ClearBag(void);
u16 CountTotalItemQuantityInBag(u16 itemId);
bool8 AddPyramidBagItem(u16 itemId, u16 count);
bool8 RemovePyramidBagItem(u16 itemId, u16 count);
-const u8 *ItemId_GetName(u16 itemId);
-u16 ItemId_GetPrice(u16 itemId);
-u8 ItemId_GetHoldEffect(u16 itemId);
-u8 ItemId_GetHoldEffectParam(u16 itemId);
-const u8 *ItemId_GetDescription(u16 itemId);
-u8 ItemId_GetImportance(u16 itemId);
-u8 ItemId_GetPocket(u16 itemId);
-u8 ItemId_GetType(u16 itemId);
-ItemUseFunc ItemId_GetFieldFunc(u16 itemId);
-u8 ItemId_GetBattleUsage(u16 itemId);
-ItemUseFunc ItemId_GetBattleFunc(u16 itemId);
-u8 ItemId_GetSecondaryId(u16 itemId);
+const u8 *GetItemName(u16 itemId);
+u16 GetItemPrice(u16 itemId);
+u8 GetItemHoldEffect(u16 itemId);
+u8 GetItemHoldEffectParam(u16 itemId);
+const u8 *GetItemDescription(u16 itemId);
+u8 GetItemImportance(u16 itemId);
+u8 GetItemPocket(u16 itemId);
+u8 GetItemType(u16 itemId);
+ItemUseFunc GetItemFieldFunc(u16 itemId);
+u8 GetItemBattleUsage(u16 itemId);
+ItemUseFunc GetItemBattleFunc(u16 itemId);
+u8 GetItemSecondaryId(u16 itemId);
/* Expands to:
* enum
diff --git a/include/item_menu.h b/include/item_menu.h
index 09ddd729c4..dc7b44a0d6 100644
--- a/include/item_menu.h
+++ b/include/item_menu.h
@@ -96,16 +96,16 @@ void CB2_BagMenuFromStartMenu(void);
u8 GetItemListPosition(u8 pocketId);
bool8 UseRegisteredKeyItemOnField(void);
void CB2_GoToSellMenu(void);
-void GoToBagMenu(u8 bagMenuType, u8 pocketId, void ( *exitCallback)());
+void GoToBagMenu(u8 location, u8 pocket, void ( *exitCallback)());
void DoWallyTutorialBagMenu(void);
void ResetBagScrollPositions(void);
void ChooseBerryForMachine(void (*exitCallback)(void));
void CB2_ChooseBerry(void);
void Task_FadeAndCloseBagMenu(u8 taskId);
-void BagMenu_YesNo(u8 taskId, u8 windowType, const struct YesNoFuncTable* funcTable);
+void BagMenu_YesNo(u8 taskId, u8 windowType, const struct YesNoFuncTable *funcTable);
void UpdatePocketItemList(u8 pocketId);
-void DisplayItemMessage(u8 taskId, u8 fontId, const u8 *str, void ( *callback)(u8 taskId));
-void DisplayItemMessageOnField(u8 taskId, const u8 *src, TaskFunc callback);
+void DisplayItemMessage(u8 taskId, u8 fontId, const u8 *str, void (*callback)(u8 taskId));
+void DisplayItemMessageOnField(u8 taskId, const u8 *string, TaskFunc callback);
void CloseItemMessage(u8 taskId);
#endif //GUARD_ITEM_MENU_H
diff --git a/include/item_use.h b/include/item_use.h
index f577f8d464..8e28a4229c 100644
--- a/include/item_use.h
+++ b/include/item_use.h
@@ -1,37 +1,36 @@
#ifndef GUARD_ITEM_USE_H
#define GUARD_ITEM_USE_H
-void ItemUseOutOfBattle_Mail(u8);
-void ItemUseOutOfBattle_Bike(u8);
-void ItemUseOutOfBattle_Rod(u8);
-void ItemUseOutOfBattle_Itemfinder(u8);
-void ItemUseOutOfBattle_PokeblockCase(u8);
-void ItemUseOutOfBattle_CoinCase(u8);
-void ItemUseOutOfBattle_PowderJar(u8);
-void ItemUseOutOfBattle_SSTicket(u8);
-void ItemUseOutOfBattle_WailmerPail(u8);
-void ItemUseOutOfBattle_Medicine(u8);
-void ItemUseOutOfBattle_ReduceEV(u8);
-void ItemUseOutOfBattle_SacredAsh(u8);
-void ItemUseOutOfBattle_PPRecovery(u8);
-void ItemUseOutOfBattle_PPUp(u8);
-void ItemUseOutOfBattle_RareCandy(u8);
-void ItemUseOutOfBattle_TMHM(u8);
-void ItemUseOutOfBattle_Repel(u8);
-void ItemUseOutOfBattle_EscapeRope(u8);
-void ItemUseOutOfBattle_BlackWhiteFlute(u8);
-void ItemUseOutOfBattle_EvolutionStone(u8);
-void ItemUseOutOfBattle_Berry(u8);
-void ItemUseOutOfBattle_EnigmaBerry(u8);
-void ItemUseOutOfBattle_CannotUse(u8);
-void ItemUseInBattle_PokeBall(u8);
-void ItemUseInBattle_StatIncrease(u8);
-void ItemUseInBattle_Medicine(u8);
-void ItemUseInBattle_PPRecovery(u8);
-void ItemUseInBattle_Escape(u8);
-void ItemUseInBattle_EnigmaBerry(u8);
+void ItemUseOutOfBattle_Mail(u8 taskId);
+void ItemUseOutOfBattle_Bike(u8 taskId);
+void ItemUseOutOfBattle_Rod(u8 taskId);
+void ItemUseOutOfBattle_Itemfinder(u8 var);
+void ItemUseOutOfBattle_PokeblockCase(u8 taskId);
+void ItemUseOutOfBattle_CoinCase(u8 taskId);
+void ItemUseOutOfBattle_PowderJar(u8 taskId);
+void ItemUseOutOfBattle_WailmerPail(u8 taskId);
+void ItemUseOutOfBattle_Medicine(u8 taskId);
+void ItemUseOutOfBattle_ReduceEV(u8 taskId);
+void ItemUseOutOfBattle_SacredAsh(u8 taskId);
+void ItemUseOutOfBattle_PPRecovery(u8 taskId);
+void ItemUseOutOfBattle_PPUp(u8 taskId);
+void ItemUseOutOfBattle_RareCandy(u8 taskId);
+void ItemUseOutOfBattle_TMHM(u8 taskId);
+void ItemUseOutOfBattle_Repel(u8 taskId);
+void ItemUseOutOfBattle_EscapeRope(u8 taskId);
+void ItemUseOutOfBattle_BlackWhiteFlute(u8 taskId);
+void ItemUseOutOfBattle_EvolutionStone(u8 taskId);
+void ItemUseOutOfBattle_Berry(u8 taskId);
+void ItemUseOutOfBattle_EnigmaBerry(u8 taskId);
+void ItemUseOutOfBattle_CannotUse(u8 taskId);
+void ItemUseInBattle_PokeBall(u8 taskId);
+void ItemUseInBattle_StatIncrease(u8 taskId);
+void ItemUseInBattle_Medicine(u8 taskId);
+void ItemUseInBattle_PPRecovery(u8 taskId);
+void ItemUseInBattle_Escape(u8 taskId);
+void ItemUseInBattle_EnigmaBerry(u8 taskId);
void Task_UseDigEscapeRopeOnField(u8 taskId);
-u8 CanUseDigOrEscapeRopeOnCurMap(void);
+bool8 CanUseDigOrEscapeRopeOnCurMap(void);
u8 CheckIfItemIsTMHMOrEvolutionStone(u16 itemId);
#endif // GUARD_ITEM_USE_H
diff --git a/include/librfu.h b/include/librfu.h
index 6b0bd97c71..8125d64043 100644
--- a/include/librfu.h
+++ b/include/librfu.h
@@ -316,7 +316,11 @@ struct STWIStatus
u8 recoveryCount;
u8 unk_16;
u8 unk_17;
+#if __STDC_VERSION__ < 202311L
void (*callbackM)();
+#else
+ void (*callbackM)(...);
+#endif
void (*callbackS)(u16);
void (*callbackID)(void);
union RfuPacket *txPacket;
@@ -515,7 +519,7 @@ void rfu_REQ_endSearchParent(void);
void rfu_REQ_startConnectParent(u16 pid);
void rfu_REQ_pollConnectParent(void);
void rfu_REQ_endConnectParent(void);
-u16 rfu_getConnectParentStatus(u8 *status,u8 *connectSlotNo);
+u16 rfu_getConnectParentStatus(u8 *status, u8 *connectSlotNo);
// Restore link from child device
void rfu_REQ_CHILD_startConnectRecovery(u8 bmRecoverySlot);
void rfu_REQ_CHILD_pollConnectRecovery(void);
@@ -607,7 +611,7 @@ void STWI_send_DataRxREQ(void);
void STWI_send_MS_ChangeREQ(void);
void STWI_send_StopModeREQ(void);
void STWI_send_SystemStatusREQ(void);
-void STWI_send_GameConfigREQ(const u8 *serial_uname, const u8 *gname);
+void STWI_send_GameConfigREQ(const u8 *serial_gname, const u8 *uname);
void STWI_send_ResetREQ(void);
void STWI_send_LinkStatusREQ(void);
void STWI_send_VersionStatusREQ(void);
diff --git a/include/lilycove_lady.h b/include/lilycove_lady.h
index d3cce4ca83..0f2b4f19dd 100644
--- a/include/lilycove_lady.h
+++ b/include/lilycove_lady.h
@@ -8,7 +8,7 @@ void FieldCallback_FavorLadyEnableScriptContexts(void);
void FieldCallback_QuizLadyEnableScriptContexts(void);
void QuizLadyClearQuestionForRecordMix(const LilycoveLady *lilycoveLady);
bool8 GivePokeblockToContestLady(struct Pokeblock *pokeblock);
-void BufferContestLadyMonName(u8 *dest1, u8 *dest2);
+void BufferContestLadyMonName(u8 *category, u8 *nickname);
void BufferContestLadyPlayerName(u8 *dest);
void BufferContestLadyLanguage(u8 *dest);
void BufferContestName(u8 *dest, u8 category);
diff --git a/include/link.h b/include/link.h
index 66dd5fecd2..1fc9c43a08 100644
--- a/include/link.h
+++ b/include/link.h
@@ -233,7 +233,7 @@ struct Link
struct BlockRequest
{
- void * address;
+ void *address;
u32 size;
};
@@ -255,21 +255,21 @@ bool8 IsWirelessAdapterConnected(void);
void Task_DestroySelf(u8 taskId);
void OpenLink(void);
void CloseLink(void);
-u16 LinkMain2(const u16 *);
+u16 LinkMain2(const u16 *heldKeys);
void ClearLinkCallback(void);
void ClearLinkCallback_2(void);
u8 GetLinkPlayerCount(void);
void OpenLinkTimed(void);
-u8 GetLinkPlayerDataExchangeStatusTimed(int lower, int upper);
+u8 GetLinkPlayerDataExchangeStatusTimed(int minPlayers, int maxPlayers);
bool8 IsLinkPlayerDataExchangeComplete(void);
-u32 GetLinkPlayerTrainerId(u8);
+u32 GetLinkPlayerTrainerId(u8 who);
void ResetLinkPlayers(void);
u8 GetMultiplayerId(void);
u8 BitmaskAllOtherLinkPlayers(void);
-bool8 SendBlock(u8, const void *, u16);
+bool8 SendBlock(u8 unused, const void *src, u16 size);
u8 GetBlockReceivedStatus(void);
void ResetBlockReceivedFlags(void);
-void ResetBlockReceivedFlag(u8);
+void ResetBlockReceivedFlag(u8 who);
u8 GetLinkPlayerCount_2(void);
bool8 IsLinkMaster(void);
void CB2_LinkError(void);
@@ -293,7 +293,7 @@ bool8 HandleLinkConnection(void);
void SetLinkDebugValues(u32 seed, u32 flags);
void SetBerryBlenderLinkCallback(void);
void SetSuppressLinkErrorMessage(bool8 flag);
-void ConvertLinkPlayerName(struct LinkPlayer *linkPlayer);
+void ConvertLinkPlayerName(struct LinkPlayer *player);
void ClearSavedLinkPlayers(void);
void SetLinkErrorBuffer(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, bool8 disconnected);
void LocalLinkPlayerToBlock(void);
@@ -331,10 +331,10 @@ extern u16 gLinkSavedIme;
extern struct LinkPlayer gLocalLinkPlayer;
bool32 Link_AnyPartnersPlayingRubyOrSapphire(void);
-bool32 LinkDummy_Return2(void);
-void SetLocalLinkPlayerId(u8);
+u32 LinkDummy_Return2(void);
+void SetLocalLinkPlayerId(u8 playerId);
u8 GetSavedPlayerCount(void);
-bool8 SendBlockRequest(u8 type);
+bool8 SendBlockRequest(u8 blockReqType);
u8 GetLinkPlayerCountAsBitFlags(void);
u8 GetSavedLinkPlayerCountAsBitFlags(void);
void SetCloseLinkCallbackHandleJP(void);
diff --git a/include/link_rfu.h b/include/link_rfu.h
index 1575255f3d..a42f959c13 100644
--- a/include/link_rfu.h
+++ b/include/link_rfu.h
@@ -268,7 +268,7 @@ void RfuVSync(void);
void RfuSetIgnoreError(bool32 enable);
u8 RfuGetStatus(void);
struct RfuGameData *GetHostRfuGameData(void);
-void UpdateGameData_GroupLockedIn(u8 startedActivity);
+void UpdateGameData_GroupLockedIn(bool8 startedActivity);
void RfuSetErrorParams(u32 errorInfo);
void RfuSetStatus(u8 status, u16 errorInfo);
u8 Rfu_SetLinkRecovery(bool32 enable);
@@ -320,8 +320,8 @@ void RfuRecvQueue_Reset(struct RfuRecvQueue *queue);
void RfuSendQueue_Reset(struct RfuSendQueue *queue);
void RfuRecvQueue_Enqueue(struct RfuRecvQueue *queue, u8 *data);
void RfuSendQueue_Enqueue(struct RfuSendQueue *queue, u8 *data);
-bool8 RfuRecvQueue_Dequeue(struct RfuRecvQueue *queue, u8 *dest);
-bool8 RfuSendQueue_Dequeue(struct RfuSendQueue *queue, u8 *dest);
+bool8 RfuRecvQueue_Dequeue(struct RfuRecvQueue *queue, u8 *src);
+bool8 RfuSendQueue_Dequeue(struct RfuSendQueue *queue, u8 *src);
void RfuBackupQueue_Enqueue(struct RfuBackupQueue *queue, const u8 *data);
bool8 RfuBackupQueue_Dequeue(struct RfuBackupQueue *queue, u8 *src);
void InitHostRfuGameData(struct RfuGameData *data, u8 activity, bool32 startedActivity, s32 partnerInfo);
diff --git a/include/list_menu.h b/include/list_menu.h
index 9299ede6c8..ba04ac1cd9 100644
--- a/include/list_menu.h
+++ b/include/list_menu.h
@@ -27,6 +27,28 @@ enum {
SCROLL_ARROW_DOWN
};
+// For ListMenuGet/SetTemplateField
+enum ListMenuFields
+{
+ LISTFIELD_MOVECURSORFUNC = 0,
+ LISTFIELD_MOVECURSORFUNC2,
+ LISTFIELD_TOTALITEMS,
+ LISTFIELD_MAXSHOWED,
+ LISTFIELD_WINDOWID,
+ LISTFIELD_HEADERX,
+ LISTFIELD_ITEMX,
+ LISTFIELD_CURSORX,
+ LISTFIELD_UPTEXTY,
+ LISTFIELD_CURSORPAL,
+ LISTFIELD_FILLVALUE,
+ LISTFIELD_CURSORSHADOWPAL,
+ LISTFIELD_LETTERSPACING,
+ LISTFIELD_ITEMVERTICALPADDING,
+ LISTFIELD_SCROLLMULTIPLE,
+ LISTFIELD_FONTID,
+ LISTFIELD_CURSORKIND,
+};
+
struct ListMenu;
struct ListMenuItem
@@ -38,8 +60,8 @@ struct ListMenuItem
struct ListMenuTemplate
{
const struct ListMenuItem *items;
- void (* moveCursorFunc)(s32 itemIndex, bool8 onInit, struct ListMenu *list);
- void (* itemPrintFunc)(u8 windowId, u32 itemId, u8 y);
+ void (*moveCursorFunc)(s32 itemIndex, bool8 onInit, struct ListMenu *list);
+ void (*itemPrintFunc)(u8 windowId, u32 itemId, u8 y);
u16 totalItems;
u16 maxShowed;
u8 windowId;
@@ -106,7 +128,7 @@ struct CursorStruct
extern struct ScrollArrowsTemplate gTempScrollArrowTemplate;
extern struct ListMenuTemplate gMultiuseListMenuTemplate;
-s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 drawMode, u16 tileNum, u16 palNum);
+s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 drawMode, u16 tileNum, u16 palOffset);
u8 ListMenuInit(struct ListMenuTemplate *listMenuTemplate, u16 scrollOffset, u16 selectedRow);
u8 ListMenuInitInRect(struct ListMenuTemplate *listMenuTemplate, struct ListMenuWindowRect *rect, u16 scrollOffset, u16 selectedRow);
s32 ListMenu_ProcessInput(u8 listTaskId);
@@ -119,11 +141,11 @@ void ListMenuGetCurrentItemArrayId(u8 listTaskId, u16 *arrayId);
void ListMenuGetScrollAndRow(u8 listTaskId, u16 *scrollOffset, u16 *selectedRow);
u16 ListMenuGetYCoordForPrintingArrowCursor(u8 listTaskId);
void ListMenuOverrideSetColors(u8 cursorPal, u8 fillValue, u8 cursorShadowPal);
-void ListMenuDefaultCursorMoveFunc(s32 itemIndex, u8 onInit, struct ListMenu *list);
-s32 ListMenuGetUnkIndicatorsStructFields(u8 taskId, u8 field);
-void ListMenuSetUnkIndicatorsStructField(u8 taskId, u8 field, s32 value);
+void ListMenuDefaultCursorMoveFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list);
+s32 ListMenuGetTemplateField(u8 taskId, u8 field);
+void ListMenuSetTemplateField(u8 taskId, u8 field, s32 value);
u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16 *scrollOffset);
-u8 AddScrollIndicatorArrowPairParameterized(u32 arrowType, s32 commonPos, s32 firstPos, s32 secondPos, s32 fullyDownThreshold, s32 tileTag, s32 palTag, u16 *currItemPtr);
+u8 AddScrollIndicatorArrowPairParameterized(u32 arrowType, s32 commonPos, s32 firstPos, s32 secondPos, s32 fullyDownThreshold, s32 tileTag, s32 palTag, u16 *scrollOffset);
void RemoveScrollIndicatorArrowPair(u8 taskId);
void Task_ScrollIndicatorArrowPairOnMainMenu(u8 taskId);
diff --git a/include/mail.h b/include/mail.h
index f4590a70ec..403078f097 100644
--- a/include/mail.h
+++ b/include/mail.h
@@ -1,7 +1,7 @@
#ifndef GUARD_MAIL_H
#define GUARD_MAIL_H
-#define IS_ITEM_MAIL(itemId)((itemId == ITEM_ORANGE_MAIL \
+#define IS_ITEM_MAIL(itemId) ((itemId == ITEM_ORANGE_MAIL \
|| itemId == ITEM_HARBOR_MAIL \
|| itemId == ITEM_GLITTER_MAIL \
|| itemId == ITEM_MECH_MAIL \
diff --git a/include/main.h b/include/main.h
index 5ccb20df88..db3a83f9cc 100644
--- a/include/main.h
+++ b/include/main.h
@@ -64,7 +64,7 @@ void SetHBlankCallback(IntrCallback callback);
void SetVCountCallback(IntrCallback callback);
void SetSerialCallback(IntrCallback callback);
void InitFlashTimer(void);
-void SetTrainerHillVBlankCounter(u32 *var);
+void SetTrainerHillVBlankCounter(u32 *counter);
void ClearTrainerHillVBlankCounter(void);
void DoSoftReset(void);
void ClearPokemonCrySongs(void);
diff --git a/gflib/malloc.h b/include/malloc.h
similarity index 85%
rename from gflib/malloc.h
rename to include/malloc.h
index 851db83a62..69029ccdfe 100644
--- a/gflib/malloc.h
+++ b/include/malloc.h
@@ -1,7 +1,6 @@
#ifndef GUARD_ALLOC_H
#define GUARD_ALLOC_H
-#define HEAP_SIZE 0x1C000
#define FREE_AND_SET_NULL(ptr) \
{ \
@@ -11,11 +10,12 @@
#define TRY_FREE_AND_SET_NULL(ptr) if (ptr != NULL) FREE_AND_SET_NULL(ptr)
-extern u8 gHeap[];
+#define HEAP_SIZE 0x1C000
+extern u8 gHeap[HEAP_SIZE];
void *Alloc(u32 size);
void *AllocZeroed(u32 size);
void Free(void *pointer);
-void InitHeap(void *pointer, u32 size);
+void InitHeap(void *heapStart, u32 heapSize);
#endif // GUARD_ALLOC_H
diff --git a/include/match_call.h b/include/match_call.h
index 8aebb3bc77..ed2cf506c5 100644
--- a/include/match_call.h
+++ b/include/match_call.h
@@ -16,7 +16,7 @@ bool32 TryStartMatchCall(void);
bool32 IsMatchCallTaskActive(void);
void StartMatchCallFromScript(const u8 *message);
void BufferPokedexRatingForMatchCall(u8 *destStr);
-bool32 SelectMatchCallMessage(int, u8 *);
+bool32 SelectMatchCallMessage(int trainerId, u8 *str);
void LoadMatchCallWindowGfx(u32 windowId, u32 destOffset, u32 paletteId);
void DrawMatchCallTextBoxBorder(u32 windowId, u32 tileOffset, u32 paletteId);
diff --git a/include/mauville_old_man.h b/include/mauville_old_man.h
index 9e5986ee81..dc7d16b743 100644
--- a/include/mauville_old_man.h
+++ b/include/mauville_old_man.h
@@ -6,9 +6,9 @@ extern struct BardSong gBardSong;
void SetMauvilleOldMan(void);
u8 GetCurrentMauvilleOldMan(void);
void SetMauvilleOldManObjEventGfx(void);
-void SanitizeMauvilleOldManForRuby(OldMan *dest);
-void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 version, u32 language);
-void SanitizeReceivedEmeraldOldMan(union OldMan * oldMan, u32 version, u32 language);
+void SanitizeMauvilleOldManForRuby(union OldMan *oldMan);
+void SanitizeReceivedRubyOldMan(union OldMan *oldMan, u32 version, u32 language);
+void SanitizeReceivedEmeraldOldMan(union OldMan *oldMan, u32 version, u32 language);
void ResetMauvilleOldManFlag(void);
#endif // GUARD_MAUVILLE_OLD_MAN_H
diff --git a/include/menu.h b/include/menu.h
index 0b0a42423d..f83ae6852c 100644
--- a/include/menu.h
+++ b/include/menu.h
@@ -50,7 +50,7 @@ void LoadMessageBoxAndBorderGfx(void);
void DrawDialogueFrame(u8 windowId, bool8 copyToVram);
void ClearStdWindowAndFrame(u8 windowId, bool8 copyToVram);
u16 AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *str, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16), u8 fgColor, u8 bgColor, u8 shadowColor);
-void PrintPlayerNameOnWindow(u8, const u8 *, u16, u16);
+void PrintPlayerNameOnWindow(u8 windowId, const u8 *src, u16 x, u16 y);
void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram);
void SetStandardWindowBorderStyle(u8 windowId, bool8 copyToVram);
void DisplayYesNoMenuDefaultYes(void);
@@ -61,11 +61,11 @@ void AddTextPrinterWithCallbackForMessage(bool8 canSpeedUp, void (*callback)(str
void BgDmaFill(u32 bg, u8 value, int offset, int size);
void AddTextPrinterParameterized3(u8 windowId, u8 fontId, u8 left, u8 top, const u8 *color, s8 speed, const u8 *str);
void ClearStdWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram);
-void SetWindowTemplateFields(struct WindowTemplate *template, u8 priority, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 palNum, u16 baseBlock);
-void DrawStdFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 tileStart, u8 palette);
-void ScheduleBgCopyTilemapToVram(u8 bgNum);
-void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *strs);
-u8 InitMenuInUpperLeftCornerNormal(u8 windowId, u8 numItems, u8 initialCursorPos);
+void SetWindowTemplateFields(struct WindowTemplate *template, u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock);
+void DrawStdFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 baseTileNum, u8 paletteNum);
+void ScheduleBgCopyTilemapToVram(u8 bgId);
+void PrintMenuTable(u8 windowId, u8 itemCount, const struct MenuAction *menuActions);
+u8 InitMenuInUpperLeftCornerNormal(u8 windowId, u8 itemCount, u8 initialCursorPos);
u8 Menu_GetCursorPos(void);
s8 Menu_ProcessInput(void);
s8 Menu_ProcessInputNoWrap(void);
@@ -74,17 +74,17 @@ void ResetTempTileDataBuffers(void);
void *DecompressAndCopyTileDataToVram(u8 bgId, const void *src, u32 size, u16 offset, u8 mode);
bool8 FreeTempTileDataBuffersIfPossible(void);
struct WindowTemplate CreateWindowTemplate(u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock);
-void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirstTileNum, u8 borderPalette, u8 initialCursorPos);
+void CreateYesNoMenu(const struct WindowTemplate *window, u16 baseTileNum, u8 paletteNum, u8 initialCursorPos);
void DecompressAndLoadBgGfxUsingHeap(u8 bgId, const void *src, u32 size, u16 offset, u8 mode);
s8 Menu_ProcessInputNoWrapClearOnChoose(void);
s8 ProcessMenuInput_other(void);
void DoScheduledBgTilemapCopiesToVram(void);
void ClearScheduledBgCopiesToVram(void);
-void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const u8 *color, s8 speed, const u8 *str);
+void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineSpacing, const u8 *color, s8 speed, const u8 *str);
void DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 tileNum, u8 paletteNum);
-void PrintMenuActionTextsInUpperLeftCorner(u8 windowId, u8 optionsNo, const struct MenuAction *actions, const u8 *actionIds);
+void PrintMenuActionTextsInUpperLeftCorner(u8 windowId, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds);
void ClearDialogWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram);
-void *malloc_and_decompress(const void *src, u32 *sizeOut);
+void *malloc_and_decompress(const void *src, u32 *size);
u16 copy_decompressed_tile_data_to_vram(u8 bgId, const void *src, u16 size, u16 offset, u8 mode);
void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress);
void PrintMenuActionTexts(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions, const u8 *actionIds);
@@ -95,7 +95,7 @@ u8 GetStartMenuWindowId(void);
void ListMenuLoadStdPalAt(u8 palOffset, u8 palId);
u8 Menu_MoveCursor(s8 cursorDelta);
u8 Menu_MoveCursorNoWrapAround(s8 cursorDelta);
-void DrawStdWindowFrame(u8 windowId, bool8 CopyToVram);
+void DrawStdWindowFrame(u8 windowId, bool8 copyToVram);
u8 AddStartMenuWindow(u8 numActions);
u8 InitMenuNormal(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos);
void LoadMessageBoxAndFrameGfx(u8 windowId, bool8 copyToVram);
@@ -108,9 +108,9 @@ u8 GetMapNamePopUpWindowId(void);
u8 AddMapNamePopUpWindow(void);
void AddTextPrinterParameterized5(u8 windowId, u8 fontId, const u8 *str, u8 left, u8 top, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16), u8 letterSpacing, u8 lineSpacing);
void SetBgTilemapPalette(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette);
-void AddValToTilemapBuffer(void *ptr, int delta, int width, int height, bool32 is8BPP);
+void AddValToTilemapBuffer(void *ptr, int delta, int width, int height, bool32 isAffine);
void EraseFieldMessageBox(bool8 copyToVram);
-void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const struct MenuAction *strs);
+void PrintMenuGridTable(u8 windowId, u8 optionWidth, u8 columns, u8 rows, const struct MenuAction *menuActions);
s8 Menu_ProcessGridInput(void);
u8 InitMenuInUpperLeftCorner(u8 windowId, u8 itemCount, u8 initialCursorPos, bool8 APressMuted);
s8 Menu_ProcessInputNoWrapAround_other(void);
@@ -122,7 +122,7 @@ void HofPCTopBar_PrintPair(const u8 *string, const u8 *string2, bool8 noBg, u8 l
void ResetBgPositions(void);
void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed);
void EraseYesNoWindow(void);
-void PrintMenuActionTextsAtPos(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *strs);
+void PrintMenuActionTextsAtPos(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *menuActions);
void Menu_LoadStdPal(void);
#endif // GUARD_MENU_H
diff --git a/include/menu_specialized.h b/include/menu_specialized.h
index 06a188b8a0..fccd989ffb 100644
--- a/include/menu_specialized.h
+++ b/include/menu_specialized.h
@@ -44,7 +44,7 @@ enum {
// The number of extra sparkles shown on a Pokémon's condition screen.
// All Pokémon start with 1, so the max here is MAX_CONDITION_SPARKLES - 1
-#define GET_NUM_CONDITION_SPARKLES(sheen)((sheen) != MAX_SHEEN) ? (sheen) / ((u32)MAX_SHEEN / (MAX_CONDITION_SPARKLES - 1) + 1) : MAX_CONDITION_SPARKLES - 1;
+#define GET_NUM_CONDITION_SPARKLES(sheen) ((sheen) != MAX_SHEEN) ? (sheen) / ((u32)MAX_SHEEN / (MAX_CONDITION_SPARKLES - 1) + 1) : MAX_CONDITION_SPARKLES - 1;
#define CONDITION_GRAPH_TOP_Y 56
#define CONDITION_GRAPH_BOTTOM_Y 121
@@ -112,16 +112,16 @@ bool8 ConditionMenu_UpdateMonExit(struct ConditionGraph *graph, s16 *x);
bool8 MoveConditionMonOnscreen(s16 *x);
bool8 MoveConditionMonOffscreen(s16 *x);
void GetConditionMenuMonNameAndLocString(u8 *locationDst, u8 *nameDst, u16 boxId, u16 monId, u16 partyId, u16 numMons, bool8 excludesCancel);
-void GetConditionMenuMonConditions(struct ConditionGraph *graph, u8 *sheen, u16 boxId, u16 monId, u16 partyId, u16 id, u16 numMons, bool8 excludesCancel);
+void GetConditionMenuMonConditions(struct ConditionGraph *graph, u8 *numSparkles, u16 boxId, u16 monId, u16 partyId, u16 id, u16 numMons, bool8 excludesCancel);
void GetConditionMenuMonGfx(void *tilesDst, void *palDst, u16 boxId, u16 monId, u16 partyId, u16 numMons, bool8 excludesCancel);
void LoadConditionMonPicTemplate(struct SpriteSheet *sheet, struct SpriteTemplate *template, struct SpritePalette *pal);
-void LoadConditionSelectionIcons(struct SpriteSheet *sheets, struct SpriteTemplate * template, struct SpritePalette *pals);
+void LoadConditionSelectionIcons(struct SpriteSheet *sheets, struct SpriteTemplate *template, struct SpritePalette *pals);
s32 GetBoxOrPartyMonData(u16 boxId, u16 monId, s32 request, u8 *dst);
// Condition sparkles
void LoadConditionSparkle(struct SpriteSheet *sheet, struct SpritePalette *pal);
void ResetConditionSparkleSprites(struct Sprite **sprites);
-void CreateConditionSparkleSprites(struct Sprite **sprites, u8 monSpriteId, u8 count);
+void CreateConditionSparkleSprites(struct Sprite **sprites, u8 monSpriteId, u8 _count);
void DestroyConditionSparkleSprites(struct Sprite **sprites);
void FreeConditionSparkles(struct Sprite **sprites);
diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h
index c2d0d23ee3..1afd600837 100644
--- a/include/metatile_behavior.h
+++ b/include/metatile_behavior.h
@@ -9,144 +9,143 @@ enum {
BRIDGE_TYPE_POND_HIGH,
};
-bool8 MetatileBehavior_IsATile(u8);
-bool8 MetatileBehavior_IsEncounterTile(u8);
-bool8 MetatileBehavior_IsJumpEast(u8);
-bool8 MetatileBehavior_IsJumpWest(u8);
-bool8 MetatileBehavior_IsJumpNorth(u8);
-bool8 MetatileBehavior_IsJumpSouth(u8);
-bool8 MetatileBehavior_IsPokeGrass(u8);
-bool8 MetatileBehavior_IsSandOrDeepSand(u8);
-bool8 MetatileBehavior_IsDeepSand(u8);
-bool8 MetatileBehavior_IsReflective(u8);
-bool8 MetatileBehavior_IsIce(u8);
-bool8 MetatileBehavior_IsWarpDoor(u8);
-bool8 MetatileBehavior_IsDoor(u8);
-bool8 MetatileBehavior_IsEscalator(u8);
-bool8 MetatileBehavior_IsLadder(u8);
-bool8 MetatileBehavior_IsNonAnimDoor(u8);
-bool8 MetatileBehavior_IsDeepSouthWarp(u8);
-bool8 MetatileBehavior_IsSurfableWaterOrUnderwater(u8);
-bool8 MetatileBehavior_IsEastArrowWarp(u8);
-bool8 MetatileBehavior_IsWestArrowWarp(u8);
-bool8 MetatileBehavior_IsNorthArrowWarp(u8);
-bool8 MetatileBehavior_IsSouthArrowWarp(u8);
-bool8 MetatileBehavior_IsArrowWarp(u8);
-bool8 MetatileBehavior_IsForcedMovementTile(u8);
-bool8 MetatileBehavior_IsIce_2(u8);
-bool8 MetatileBehavior_IsTrickHouseSlipperyFloor(u8);
-bool8 MetatileBehavior_IsWalkNorth(u8);
-bool8 MetatileBehavior_IsWalkSouth(u8);
-bool8 MetatileBehavior_IsWalkWest(u8);
-bool8 MetatileBehavior_IsWalkEast(u8);
-bool8 MetatileBehavior_IsNorthwardCurrent(u8);
-bool8 MetatileBehavior_IsSouthwardCurrent(u8);
-bool8 MetatileBehavior_IsWestwardCurrent(u8);
-bool8 MetatileBehavior_IsEastwardCurrent(u8);
-bool8 MetatileBehavior_IsSlideNorth(u8);
-bool8 MetatileBehavior_IsSlideSouth(u8);
-bool8 MetatileBehavior_IsSlideWest(u8);
-bool8 MetatileBehavior_IsSlideEast(u8);
-bool8 MetatileBehavior_IsCounter(u8);
-bool8 MetatileBehavior_IsPlayerFacingTVScreen(u8 tile, u8 playerDir);
-bool8 MetatileBehavior_IsPC(u8);
-bool8 MetatileBehavior_IsCableBoxResults1(u8);
-bool8 MetatileBehavior_IsOpenSecretBaseDoor(u8);
-bool8 MetatileBehavior_IsSecretBaseCave(u8);
-bool8 MetatileBehavior_IsSecretBaseTree(u8);
-bool8 MetatileBehavior_IsSecretBaseShrub(u8);
-bool8 MetatileBehavior_IsSecretBasePC(u8);
-bool8 MetatileBehavior_IsRecordMixingSecretBasePC(u8);
-bool8 MetatileBehavior_IsSecretBaseTrainerSpot(u8);
-bool8 MetatileBehavior_IsSecretBaseImpassable(u8);
-bool8 MetatileBehavior_IsSecretBaseDecorationBase(u8);
-bool8 MetatileBehavior_IsSecretBasePoster(u8);
-bool8 MetatileBehavior_IsNormal(u8);
-bool8 MetatileBehavior_IsSecretBaseNorthWall(u8);
-bool8 MetatileBehavior_HoldsSmallDecoration(u8);
-bool8 MetatileBehavior_HoldsLargeDecoration(u8);
-bool8 MetatileBehavior_IsSecretBaseHole(u8);
-bool8 MetatileBehavior_IsSecretBaseBalloon(u8);
-bool8 MetatileBehavior_IsSecretBaseBreakableDoor(u8);
-bool8 MetatileBehavior_IsSecretBaseSoundMat(u8);
-bool8 MetatileBehavior_IsSecretBaseGlitterMat(u8);
-bool8 MetatileBehavior_IsSecretBaseSandOrnament(u8);
-bool8 MetatileBehavior_IsSecretBaseShieldOrToyTV(u8);
-bool8 MetatileBehavior_IsPlayerRoomPCOn(u8);
-bool8 MetatileBehavior_HasRipples(u8);
-bool8 MetatileBehavior_IsPuddle(u8);
-bool8 MetatileBehavior_IsTallGrass(u8);
-bool8 MetatileBehavior_IsLongGrass(u8);
-bool8 MetatileBehavior_IsBerryTreeSoil(u8);
-bool8 MetatileBehavior_IsAshGrass(u8);
-bool8 MetatileBehavior_IsFootprints(u8);
-bool8 MetatileBehavior_IsBridgeOverWater(u8);
-u8 MetatileBehavior_GetBridgeType(u8);
-bool8 MetatileBehavior_IsBridgeOverWaterNoEdge(u8);
-bool8 MetatileBehavior_IsLandWildEncounter(u8);
-bool8 MetatileBehavior_IsWaterWildEncounter(u8);
-bool8 MetatileBehavior_IsIndoorEncounter(u8);
-bool8 MetatileBehavior_IsMountain(u8);
-bool8 MetatileBehavior_IsDiveable(u8);
-bool8 MetatileBehavior_IsUnableToEmerge(u8);
-bool8 MetatileBehavior_IsShallowFlowingWater(u8);
-bool8 MetatileBehavior_IsThinIce(u8);
-bool8 MetatileBehavior_IsCrackedIce(u8);
-bool8 MetatileBehavior_IsDeepOrOceanWater(u8);
-bool8 MetatileBehavior_IsSurfableAndNotWaterfall(u8);
-bool8 MetatileBehavior_IsEastBlocked(u8);
-bool8 MetatileBehavior_IsWestBlocked(u8);
-bool8 MetatileBehavior_IsNorthBlocked(u8);
-bool8 MetatileBehavior_IsSouthBlocked(u8);
-bool8 MetatileBehavior_IsShortGrass(u8);
-bool8 MetatileBehavior_IsHotSprings(u8);
-bool8 MetatileBehavior_IsWaterfall(u8);
-bool8 MetatileBehavior_IsFortreeBridge(u8);
-bool8 MetatileBehavior_IsPacifidlogVerticalLogTop(u8);
-bool8 MetatileBehavior_IsPacifidlogVerticalLogBottom(u8);
-bool8 MetatileBehavior_IsPacifidlogHorizontalLogLeft(u8);
-bool8 MetatileBehavior_IsPacifidlogHorizontalLogRight(u8);
-bool8 MetatileBehavior_IsPacifidlogLog(u8);
-bool8 MetatileBehavior_IsTrickHousePuzzleDoor(u8);
-bool8 MetatileBehavior_IsRegionMap(u8);
-bool8 MetatileBehavior_IsClosedSootopolisDoor(u8);
-bool8 MetatileBehavior_IsSkyPillarClosedDoor(u8);
-bool8 MetatileBehavior_IsRoulette(u8);
-bool8 MetatileBehavior_IsPokeblockFeeder(u8);
-bool8 MetatileBehavior_IsSecretBaseJumpMat(u8);
-bool8 MetatileBehavior_IsSecretBaseSpinMat(u8);
-bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8);
-bool8 MetatileBehavior_IsLavaridge1FWarp(u8);
-bool8 MetatileBehavior_IsAquaHideoutWarp(u8);
-bool8 MetatileBehavior_IsUnionRoomWarp(u8);
-bool8 MetatileBehavior_IsMossdeepGymWarp(u8);
-bool8 MetatileBehavior_IsSurfableFishableWater(u8);
-bool8 MetatileBehavior_IsMtPyreHole(u8);
-bool8 MetatileBehavior_IsCrackedFloorHole(u8);
-bool8 MetatileBehavior_IsCrackedFloor(u8);
-bool8 MetatileBehavior_IsMuddySlope(u8);
-bool8 MetatileBehavior_IsBumpySlope(u8);
-bool8 MetatileBehavior_IsIsolatedVerticalRail(u8);
-bool8 MetatileBehavior_IsIsolatedHorizontalRail(u8);
-bool8 MetatileBehavior_IsVerticalRail(u8);
-bool8 MetatileBehavior_IsHorizontalRail(u8);
-bool8 MetatileBehavior_IsSeaweed(u8);
-bool8 MetatileBehavior_IsRunningDisallowed(u8);
-bool8 MetatileBehavior_IsCuttableGrass(u8);
-bool8 MetatileBehavior_IsRunningShoesManual(u8);
-bool8 MetatileBehavior_IsPictureBookShelf(u8);
-bool8 MetatileBehavior_IsBookShelf(u8);
-bool8 MetatileBehavior_IsPokeCenterBookShelf(u8);
-bool8 MetatileBehavior_IsVase(u8);
-bool8 MetatileBehavior_IsTrashCan(u8);
-bool8 MetatileBehavior_IsShopShelf(u8);
-bool8 MetatileBehavior_IsBlueprint(u8);
-bool8 MetatileBehavior_IsBattlePyramidWarp(u8);
+bool8 MetatileBehavior_IsATile(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEncounterTile(u8 metatileBehavior);
+bool8 MetatileBehavior_IsJumpEast(u8 metatileBehavior);
+bool8 MetatileBehavior_IsJumpWest(u8 metatileBehavior);
+bool8 MetatileBehavior_IsJumpNorth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsJumpSouth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPokeGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSandOrDeepSand(u8 metatileBehavior);
+bool8 MetatileBehavior_IsDeepSand(u8 metatileBehavior);
+bool8 MetatileBehavior_IsReflective(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIce(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWarpDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEscalator(u8 metatileBehavior);
+bool8 MetatileBehavior_IsLadder(u8 metatileBehavior);
+bool8 MetatileBehavior_IsNonAnimDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsDeepSouthWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSurfableWaterOrUnderwater(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEastArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWestArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsNorthArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSouthArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsForcedMovementTile(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIce_2(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTrickHouseSlipperyFloor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWalkNorth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWalkSouth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWalkWest(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWalkEast(u8 metatileBehavior);
+bool8 MetatileBehavior_IsNorthwardCurrent(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSouthwardCurrent(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWestwardCurrent(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEastwardCurrent(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSlideNorth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSlideSouth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSlideWest(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSlideEast(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCounter(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPlayerFacingTVScreen(u8 metatileBehavior, u8 playerDir);
+bool8 MetatileBehavior_IsPC(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCableBoxResults1(u8 metatileBehavior);
+bool8 MetatileBehavior_IsOpenSecretBaseDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseCave(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseTree(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseShrub(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBasePC(u8 metatileBehavior);
+bool8 MetatileBehavior_IsRecordMixingSecretBasePC(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseTrainerSpot(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseImpassable(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseDecorationBase(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBasePoster(u8 metatileBehavior);
+bool8 MetatileBehavior_IsNormal(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseNorthWall(u8 metatileBehavior);
+bool8 MetatileBehavior_HoldsSmallDecoration(u8 metatileBehavior);
+bool8 MetatileBehavior_HoldsLargeDecoration(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseHole(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseBalloon(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseBreakableDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseSoundMat(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseGlitterMat(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseSandOrnament(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseShieldOrToyTV(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPlayerRoomPCOn(u8 metatileBehavior);
+bool8 MetatileBehavior_HasRipples(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPuddle(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTallGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_IsLongGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBerryTreeSoil(u8 metatileBehavior);
+bool8 MetatileBehavior_IsAshGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_IsFootprints(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBridgeOverWater(u8 metatileBehavior);
+u8 MetatileBehavior_GetBridgeType(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBridgeOverWaterNoEdge(u8 metatileBehavior);
+bool8 MetatileBehavior_IsLandWildEncounter(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWaterWildEncounter(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIndoorEncounter(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMountain(u8 metatileBehavior);
+bool8 MetatileBehavior_IsDiveable(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnableToEmerge(u8 metatileBehavior);
+bool8 MetatileBehavior_IsShallowFlowingWater(u8 metatileBehavior);
+bool8 MetatileBehavior_IsThinIce(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCrackedIce(u8 metatileBehavior);
+bool8 MetatileBehavior_IsDeepOrOceanWater(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSurfableAndNotWaterfall(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEastBlocked(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWestBlocked(u8 metatileBehavior);
+bool8 MetatileBehavior_IsNorthBlocked(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSouthBlocked(u8 metatileBehavior);
+bool8 MetatileBehavior_IsShortGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_IsHotSprings(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWaterfall(u8 metatileBehavior);
+bool8 MetatileBehavior_IsFortreeBridge(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPacifidlogVerticalLogTop(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPacifidlogVerticalLogBottom(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPacifidlogHorizontalLogLeft(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPacifidlogHorizontalLogRight(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPacifidlogLog(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTrickHousePuzzleDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsRegionMap(u8 metatileBehavior);
+bool8 MetatileBehavior_IsClosedSootopolisDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSkyPillarClosedDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsRoulette(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPokeblockFeeder(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseJumpMat(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSecretBaseSpinMat(u8 metatileBehavior);
+bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsLavaridge1FWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsAquaHideoutWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnionRoomWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMossdeepGymWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSurfableFishableWater(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMtPyreHole(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCrackedFloorHole(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCrackedFloor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMuddySlope(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBumpySlope(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIsolatedVerticalRail(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIsolatedHorizontalRail(u8 metatileBehavior);
+bool8 MetatileBehavior_IsVerticalRail(u8 metatileBehavior);
+bool8 MetatileBehavior_IsHorizontalRail(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSeaweed(u8 metatileBehavior);
+bool8 MetatileBehavior_IsRunningDisallowed(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCuttableGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_IsRunningShoesManual(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPictureBookShelf(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBookShelf(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPokeCenterBookShelf(u8 metatileBehavior);
+bool8 MetatileBehavior_IsVase(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTrashCan(u8 metatileBehavior);
+bool8 MetatileBehavior_IsShopShelf(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBlueprint(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBattlePyramidWarp(u8 metatileBehavior);
bool8 MetatileBehavior_IsPlayerFacingWirelessBoxResults(u8 tile, u8 playerDir);
bool8 MetatileBehavior_IsCableBoxResults2(u8 tile, u8 playerDir);
-bool8 MetatileBehavior_IsQuestionnaire(u8);
-bool8 MetatileBehavior_IsLongGrass_Duplicate(u8);
-bool8 MetatileBehavior_IsLongGrassSouthEdge(u8);
-bool8 MetatileBehavior_IsTrainerHillTimer(u8);
+bool8 MetatileBehavior_IsQuestionnaire(u8 metatileBehavior);
+bool8 MetatileBehavior_IsLongGrass_Duplicate(u8 metatileBehavior);
+bool8 MetatileBehavior_IsLongGrassSouthEdge(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTrainerHillTimer(u8 metatileBehavior);
#endif // GUARD_METATILE_BEHAVIOR_H
diff --git a/include/mini_printf.h b/include/mini_printf.h
index a891327cc4..ae5c226628 100644
--- a/include/mini_printf.h
+++ b/include/mini_printf.h
@@ -45,8 +45,8 @@
#else
-s32 mini_vsnprintf(char* buffer, u32 buffer_len, const char *fmt, va_list va);
-s32 mini_vpprintf(void* buf, const char *fmt, va_list va);
+s32 mini_vsnprintf(char *buffer, u32 buffer_len, const char *fmt, va_list va);
+s32 mini_vpprintf(void *buf, const char *fmt, va_list va);
#endif
#endif
diff --git a/include/move_relearner.h b/include/move_relearner.h
index 51b476d25f..76d35b62ec 100644
--- a/include/move_relearner.h
+++ b/include/move_relearner.h
@@ -2,6 +2,6 @@
#define GUARD_MOVE_RELEARNER_H
void TeachMoveRelearnerMove(void);
-void MoveRelearnerShowHideHearts(s32);
+void MoveRelearnerShowHideHearts(s32 move);
#endif //GUARD_MOVE_RELEARNER_H
diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h
index 198a07e857..09032b4395 100644
--- a/include/mystery_event_script.h
+++ b/include/mystery_event_script.h
@@ -12,7 +12,7 @@ enum {
void InitMysteryEventScriptContext(u8 *script);
bool32 RunMysteryEventScriptContextCommand(u32 *status);
u32 RunMysteryEventScript(u8 *script);
-void SetMysteryEventScriptStatus(u32 val);
+void SetMysteryEventScriptStatus(u32 status);
u16 GetRecordMixingGift(void);
#endif // GUARD_MYSTERY_EVENT_SCRIPT_H
diff --git a/include/mystery_gift_client.h b/include/mystery_gift_client.h
index 8214d69eff..4434fab5f7 100644
--- a/include/mystery_gift_client.h
+++ b/include/mystery_gift_client.h
@@ -75,18 +75,18 @@ struct MysteryGiftClient
u32 funcId;
u32 funcState;
u32 cmdidx;
- void * sendBuffer;
- void * recvBuffer;
- struct MysteryGiftClientCmd * script;
- void * msg;
+ void *sendBuffer;
+ void *recvBuffer;
+ struct MysteryGiftClientCmd *script;
+ void *msg;
struct MysteryGiftLink link;
bool32 isWonderNews;
};
void MysteryGiftClient_Create(bool32 isWonderNews);
-u32 MysteryGiftClient_Run(u16 * endVal);
+u32 MysteryGiftClient_Run(u16 *endVal);
void MysteryGiftClient_AdvanceState(void);
void * MysteryGiftClient_GetMsg(void);
-void MysteryGiftClient_SetParam(u32 value);
+void MysteryGiftClient_SetParam(u32 val);
#endif //GUARD_MYSTERY_GIFT_CLIENT_H
diff --git a/include/mystery_gift_link.h b/include/mystery_gift_link.h
index 32100db5f1..5f6b655270 100644
--- a/include/mystery_gift_link.h
+++ b/include/mystery_gift_link.h
@@ -34,16 +34,16 @@ struct MysteryGiftLink
u16 sendCounter;
u16 sendCRC;
u16 sendSize;
- void * recvBuffer;
- const void * sendBuffer;
+ void *recvBuffer;
+ const void *sendBuffer;
u32 (*recvFunc)(struct MysteryGiftLink *);
u32 (*sendFunc)(struct MysteryGiftLink *);
};
-void MysteryGiftLink_Init(struct MysteryGiftLink * link, u32 sendPlayerId, u32 recvPlayerId);
-void MysteryGiftLink_InitSend(struct MysteryGiftLink * link, u32 ident, const void * src, u32 size);
-bool32 MysteryGiftLink_Recv(struct MysteryGiftLink * link);
-bool32 MysteryGiftLink_Send(struct MysteryGiftLink * link);
-void MysteryGiftLink_InitRecv(struct MysteryGiftLink * link, u32 ident, void * dest);
+void MysteryGiftLink_Init(struct MysteryGiftLink *link, u32 sendPlayerId, u32 recvPlayerId);
+void MysteryGiftLink_InitSend(struct MysteryGiftLink *link, u32 ident, const void *src, u32 size);
+u32 MysteryGiftLink_Recv(struct MysteryGiftLink *link);
+u32 MysteryGiftLink_Send(struct MysteryGiftLink *link);
+void MysteryGiftLink_InitRecv(struct MysteryGiftLink *link, u32 ident, void *dest);
#endif //GUARD_MYSTERY_GIFT_LINK_H
diff --git a/include/mystery_gift_menu.h b/include/mystery_gift_menu.h
index 665c4596e7..6d694bc3e1 100644
--- a/include/mystery_gift_menu.h
+++ b/include/mystery_gift_menu.h
@@ -5,11 +5,11 @@ extern bool8 gGiftIsFromEReader;
u16 GetMysteryGiftBaseBlock(void);
void CB2_MysteryGiftEReader(void);
-void PrintMysteryGiftOrEReaderHeader(bool8 isJapanese, bool32 usePickOkCancel);
+void PrintMysteryGiftOrEReaderHeader(bool8 isEReader, bool32 useCancel);
void MG_DrawCheckerboardPattern(u32 bg);
void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void);
bool32 PrintMysteryGiftMenuMessage(u8 *textState, const u8 *str);
-void MG_AddMessageTextPrinter(const u8 *src);
+void MG_AddMessageTextPrinter(const u8 *str);
void CB2_InitEReader(void);
void CB2_InitMysteryGift(void);
void MG_DrawTextBorder(u8 windowId);
diff --git a/include/mystery_gift_server.h b/include/mystery_gift_server.h
index 8e3842f73c..e16ebc76d0 100644
--- a/include/mystery_gift_server.h
+++ b/include/mystery_gift_server.h
@@ -71,7 +71,7 @@ struct MysteryGiftServerCmd
{
u32 instr;
u32 parameter;
- const void * ptr;
+ const void *ptr;
};
struct MysteryGiftServer
@@ -80,21 +80,21 @@ struct MysteryGiftServer
u32 param;
u32 funcId;
u32 cmdidx;
- const struct MysteryGiftServerCmd * script;
- void * recvBuffer;
- struct WonderCard * card;
- struct WonderNews * news;
- struct MysteryGiftLinkGameData * linkGameData;
- const void * ramScript;
+ const struct MysteryGiftServerCmd *script;
+ void *recvBuffer;
+ struct WonderCard *card;
+ struct WonderNews *news;
+ struct MysteryGiftLinkGameData *linkGameData;
+ const void *ramScript;
u32 ramScriptSize;
- const void * clientScript;
+ const void *clientScript;
u32 clientScriptSize;
u32 stamp;
struct MysteryGiftLink link;
};
-void MysterGiftServer_CreateForCard();
-void MysterGiftServer_CreateForNews();
-u32 MysterGiftServer_Run(u16 * endVal);
+void MysterGiftServer_CreateForCard(void);
+void MysterGiftServer_CreateForNews(void);
+u32 MysterGiftServer_Run(u16 *endVal);
#endif //GUARD_MYSTERY_GIFT_SERVER_H
diff --git a/include/mystery_gift_view.h b/include/mystery_gift_view.h
index 038093c7a1..4abe7db920 100644
--- a/include/mystery_gift_view.h
+++ b/include/mystery_gift_view.h
@@ -9,12 +9,12 @@ enum {
NEWS_INPUT_NONE = 0xFF
};
-bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * metadata);
-bool32 WonderNews_Init(const struct WonderNews * news);
+bool32 WonderCard_Init(struct WonderCard *card, struct WonderCardMetadata *metadata);
+bool32 WonderNews_Init(const struct WonderNews *news);
s32 WonderCard_Enter(void);
s32 WonderNews_Enter(void);
-s32 WonderCard_Exit(bool32 flag);
-s32 WonderNews_Exit(bool32 flag);
+s32 WonderCard_Exit(bool32 useCancel);
+s32 WonderNews_Exit(bool32 useCancel);
void WonderCard_Destroy(void);
void WonderNews_Destroy(void);
u32 WonderNews_GetInput(u16 input);
diff --git a/include/overworld.h b/include/overworld.h
index adaa6aad04..bde6896569 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -76,7 +76,7 @@ void SetWarpDestination(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void SetWarpDestinationToMapWarp(s8 mapGroup, s8 mapNum, s8 warpId);
void SetDynamicWarp(s32 unused, s8 mapGroup, s8 mapNum, s8 warpId);
void SetDynamicWarpWithCoords(s32 unused, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
-void SetWarpDestinationToDynamicWarp(u8 unused);
+void SetWarpDestinationToDynamicWarp(u8 unusedWarpId);
void SetWarpDestinationToHealLocation(u8 healLocationId);
void SetWarpDestinationToLastHealLocation(void);
void SetLastHealLocationWarp(u8 healLocationId);
@@ -99,7 +99,7 @@ void SetDefaultFlashLevel(void);
void SetFlashLevel(s32 flashLevel);
u8 GetFlashLevel(void);
void SetCurrentMapLayout(u16 mapLayoutId);
-void SetObjectEventLoadFlag(u8 var);
+void SetObjectEventLoadFlag(u8 flag);
u16 GetLocationMusic(struct WarpData *warp);
u16 GetCurrLocationDefaultMusic(void);
u16 GetWarpDestinationMusic(void);
diff --git a/include/palette_util.h b/include/palette_util.h
index 12ffc145e4..a81078f498 100644
--- a/include/palette_util.h
+++ b/include/palette_util.h
@@ -66,18 +66,18 @@ struct RouletteFlashUtil
struct RouletteFlashPalette palettes[16];
};
-int InitPulseBlendPaletteSettings(struct PulseBlend *, const struct PulseBlendSettings *);
-void InitPulseBlend(struct PulseBlend *);
-void MarkUsedPulseBlendPalettes(struct PulseBlend *, u16, u8);
-void UnloadUsedPulseBlendPalettes(struct PulseBlend *, u16, u8);
-void UnmarkUsedPulseBlendPalettes(struct PulseBlend *, u16, u8);
-void UpdatePulseBlend(struct PulseBlend *);
-void FillTilemapRect(u16 *dest, u16 src, u8 left, u8 top, u8 width, u8 height);
+int InitPulseBlendPaletteSettings(struct PulseBlend *pulseBlend, const struct PulseBlendSettings *settings);
+void InitPulseBlend(struct PulseBlend *pulseBlend);
+void MarkUsedPulseBlendPalettes(struct PulseBlend *pulseBlend, u16 pulseBlendPaletteSelector, u8 multiSelection);
+void UnloadUsedPulseBlendPalettes(struct PulseBlend *pulseBlend, u16 pulseBlendPaletteSelector, u8 multiSelection);
+void UnmarkUsedPulseBlendPalettes(struct PulseBlend *pulseBlend, u16 pulseBlendPaletteSelector, u8 multiSelection);
+void UpdatePulseBlend(struct PulseBlend *pulseBlend);
+void FillTilemapRect(u16 *dest, u16 value, u8 left, u8 top, u8 width, u8 height);
void SetTilemapRect(u16 *dest, u16 *src, u8 left, u8 top, u8 width, u8 height);
-void RouletteFlash_Run(struct RouletteFlashUtil *r0);
-void RouletteFlash_Reset(struct RouletteFlashUtil *r0);
-u8 RouletteFlash_Add(struct RouletteFlashUtil *r0, u8 r1, const struct RouletteFlashSettings *r2);
-void RouletteFlash_Stop(struct RouletteFlashUtil *r0, u16 r1);
-void RouletteFlash_Enable(struct RouletteFlashUtil *r0, u16 r1);
+void RouletteFlash_Run(struct RouletteFlashUtil *flash);
+void RouletteFlash_Reset(struct RouletteFlashUtil *flash);
+u8 RouletteFlash_Add(struct RouletteFlashUtil *flash, u8 id, const struct RouletteFlashSettings *settings);
+void RouletteFlash_Stop(struct RouletteFlashUtil *flash, u16 flags);
+void RouletteFlash_Enable(struct RouletteFlashUtil *flash, u16 flags);
#endif // GUARD_PALETTE_UTIL_H
diff --git a/include/party_menu.h b/include/party_menu.h
index 40029f77b0..386437c121 100644
--- a/include/party_menu.h
+++ b/include/party_menu.h
@@ -16,7 +16,7 @@ struct PartyMenu
s8 slotId2;
u8 action;
u16 bagItem;
- s16 data1; // used variously as a moveId, counter, moveSlotId, or cursorPos
+ s16 data1; // used variously as a move, counter, moveSlotId, or cursorPos
s16 learnMoveState; // data2, used only as a learn move state
};
@@ -39,7 +39,7 @@ void Task_HandleChooseMonInput(u8 taskId);
u8 *GetMonNickname(struct Pokemon *mon, u8 *dest);
u8 DisplayPartyMenuMessage(const u8 *str, bool8 keepOpen);
bool8 IsPartyMenuTextPrinterActive(void);
-void PartyMenuModifyHP(u8 taskId, u8 slot, s8 hpIncrement, s16 HPDifference, TaskFunc task);
+void PartyMenuModifyHP(u8 taskId, u8 slot, s8 hpIncrement, s16 hpDifference, TaskFunc task);
u8 GetAilmentFromStatus(u32 status);
u8 GetMonAilment(struct Pokemon *mon);
void DisplayPartyMenuStdMessage(u32 stringId);
@@ -71,10 +71,10 @@ void ChooseMonForWirelessMinigame(void);
void OpenPartyMenuInBattle(u8 partyAction);
void ChooseMonForInBattleItem(void);
void BufferBattlePartyCurrentOrder(void);
-void BufferBattlePartyCurrentOrderBySide(u8 battlerId, u8 flankId);
-void SwitchPartyOrderLinkMulti(u8 battlerId, u8 slot, u8 arrayIndex);
+void BufferBattlePartyCurrentOrderBySide(u8 battler, u8 flankId);
+void SwitchPartyOrderLinkMulti(u8 battler, u8 slot, u8 slot2);
void SwitchPartyMonSlots(u8 slot, u8 slot2);
-u8 GetPartyIdFromBattlePartyId(u8 slot);
+u8 GetPartyIdFromBattlePartyId(u8 battlePartyId);
void ShowPartyMenuToShowcaseMultiBattleParty(void);
void ChooseMonForDaycare(void);
bool8 CB2_FadeFromPartyMenu(void);
diff --git a/include/player_pc.h b/include/player_pc.h
index 2521eac131..f2296dde2a 100644
--- a/include/player_pc.h
+++ b/include/player_pc.h
@@ -17,7 +17,7 @@ extern struct PlayerPCItemPageStruct gPlayerPCItemPageInfo;
extern const struct MenuAction gMailboxMailOptions[];
-void ReshowPlayerPC(u8 taskId);
+void ReshowPlayerPC(u8 var);
void CB2_PlayerPCExitBagMenu(void);
void Mailbox_ReturnToMailListAfterDeposit(void);
void NewGameInitPCItems(void);
diff --git a/include/pokedex.h b/include/pokedex.h
index 36a48da1e5..3eb2835d61 100644
--- a/include/pokedex.h
+++ b/include/pokedex.h
@@ -33,11 +33,11 @@ struct PokedexEntry
void ResetPokedex(void);
u16 GetPokedexHeightWeight(u16 dexNum, u8 data);
-u16 GetNationalPokedexCount(u8);
-u16 GetHoennPokedexCount(u8);
+u16 GetNationalPokedexCount(u8 caseID);
+u16 GetHoennPokedexCount(u8 caseID);
u8 DisplayCaughtMonDexPage(u16 dexNum, u32 otId, u32 personality);
-s8 GetSetPokedexFlag(u16 nationalNum, u8 caseId);
-u16 CreateMonSpriteFromNationalDexNumber(u16, s16, s16, u16);
+s8 GetSetPokedexFlag(u16 nationalDexNo, u8 caseID);
+u16 CreateMonSpriteFromNationalDexNumber(u16 nationalNum, s16 x, s16 y, u16 paletteSlot);
bool16 HasAllHoennMons(void);
void ResetPokedexScrollPositions(void);
bool16 HasAllMons(void);
diff --git a/include/pokedex_area_region_map.h b/include/pokedex_area_region_map.h
index 6526d7b458..0a5fc72fc8 100755
--- a/include/pokedex_area_region_map.h
+++ b/include/pokedex_area_region_map.h
@@ -9,9 +9,9 @@ struct PokedexAreaMapTemplate
u32 unk:20; // never read
};
-void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *);
+void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template);
bool32 TryShowPokedexAreaMap(void);
-void PokedexAreaMapChangeBgY(u32);
+void PokedexAreaMapChangeBgY(u32 move);
void FreePokedexAreaMapBgNum(void);
#endif // GUARD_POKEDEX_AREA_REGION_MAP_H
diff --git a/include/pokedex_area_screen.h b/include/pokedex_area_screen.h
index 86dfaa6c5b..1aa42b3a26 100755
--- a/include/pokedex_area_screen.h
+++ b/include/pokedex_area_screen.h
@@ -1,6 +1,6 @@
#ifndef GUARD_POKEDEX_AREA_SCREEN_H
#define GUARD_POKEDEX_AREA_SCREEN_H
-void ShowPokedexAreaScreen(u16, u8 *);
+void ShowPokedexAreaScreen(u16 species, u8 *screenSwitchState);
#endif // GUARD_POKEDEX_AREA_SCREEN_H
diff --git a/include/pokedex_cry_screen.h b/include/pokedex_cry_screen.h
index 3401db22da..c44035605f 100755
--- a/include/pokedex_cry_screen.h
+++ b/include/pokedex_cry_screen.h
@@ -12,10 +12,10 @@ struct CryScreenWindow
extern u8 gDexCryScreenState;
-bool8 LoadCryWaveformWindow(struct CryScreenWindow *, u8);
-void UpdateCryWaveformWindow(u8);
-void CryScreenPlayButton(u16);
-bool8 LoadCryMeter(struct CryScreenWindow *, u8);
+bool8 LoadCryWaveformWindow(struct CryScreenWindow *window, u8 windowId);
+void UpdateCryWaveformWindow(u8 windowId);
+void CryScreenPlayButton(u16 species);
+bool8 LoadCryMeter(struct CryScreenWindow *window, u8 windowId);
void FreeCryScreen(void);
#endif
diff --git a/include/pokemon.h b/include/pokemon.h
index 6d08f48746..53f7f02fd0 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -276,8 +276,7 @@ struct BattlePokemon
/*0x17*/ u32 abilityNum:1;
/*0x18*/ s8 statStages[NUM_BATTLE_STATS];
/*0x20*/ u8 ability;
- /*0x21*/ u8 type1;
- /*0x22*/ u8 type2;
+ /*0x21*/ u8 types[2];
/*0x23*/ u8 unknown;
/*0x24*/ u8 pp[MAX_MON_MOVES];
/*0x28*/ u16 hp;
@@ -409,7 +408,7 @@ void CreateBattleTowerMon_HandleLevel(struct Pokemon *mon, struct BattleTowerPok
void CreateApprenticeMon(struct Pokemon *mon, const struct Apprentice *src, u8 monId);
void CreateMonWithEVSpreadNatureOTID(struct Pokemon *mon, u16 species, u8 level, u8 nature, u8 fixedIV, u8 evSpread, u32 otId);
void ConvertPokemonToBattleTowerPokemon(struct Pokemon *mon, struct BattleTowerPokemon *dest);
-bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battlerId);
+bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battler);
void SetDeoxysStats(void);
u16 GetUnionRoomTrainerPic(void);
u16 GetUnionRoomTrainerClass(void);
@@ -427,14 +426,14 @@ void GiveBoxMonInitialMoveset(struct BoxPokemon *boxMon);
u16 MonTryLearningNewMove(struct Pokemon *mon, bool8 firstMove);
void DeleteFirstMoveAndGiveMoveToMon(struct Pokemon *mon, u16 move);
void DeleteFirstMoveAndGiveMoveToBoxMon(struct BoxPokemon *boxMon, u16 move);
-s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *defender, u32 move, u16 sideStatus, u16 powerOverride, u8 typeOverride, u8 bankAtk, u8 bankDef);
+s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *defender, u32 move, u16 sideStatus, u16 powerOverride, u8 typeOverride, u8 battlerIdAtk, u8 battlerIdDef);
u8 CountAliveMonsInBattle(u8 caseId);
-u8 GetDefaultMoveTarget(u8 battlerId);
+u8 GetDefaultMoveTarget(u8 battler);
u8 GetMonGender(struct Pokemon *mon);
u8 GetBoxMonGender(struct BoxPokemon *boxMon);
u8 GetGenderFromSpeciesAndPersonality(u16 species, u32 personality);
void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition);
-void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerSpriteId, u8 battlerPosition);
+void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerPicId, u8 battlerPosition);
void SetMultiuseSpriteTemplateToTrainerFront(u16 trainerPicId, u8 battlerPosition);
/* GameFreak called Get(Box)MonData with either 2 or 3 arguments, for
@@ -468,15 +467,15 @@ void GetSpeciesName(u8 *name, u16 species);
u8 CalculatePPWithBonus(u16 move, u8 ppBonuses, u8 moveIndex);
void RemoveMonPPBonus(struct Pokemon *mon, u8 moveIndex);
void RemoveBattleMonPPBonus(struct BattlePokemon *mon, u8 moveIndex);
-void CopyPlayerPartyMonToBattleData(u8 battlerId, u8 partyIndex);
+void CopyPlayerPartyMonToBattleData(u8 battler, u8 partyIndex);
bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex);
-bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex, u8 e);
-bool8 HealStatusConditions(struct Pokemon *mon, u32 battlePartyId, u32 healMask, u8 battlerId);
+bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex, bool8 usedByAI);
+bool8 HealStatusConditions(struct Pokemon *mon, u32 battlePartyId, u32 healMask, u8 battler);
u8 GetItemEffectParamOffset(u16 itemId, u8 effectByte, u8 effectBit);
u8 *UseStatIncreaseItem(u16 itemId);
u8 GetNature(struct Pokemon *mon);
u8 GetNatureFromPersonality(u32 personality);
-u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 type, u16 evolutionItem);
+u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 mode, u16 evolutionItem);
u16 HoennPokedexNumToSpecies(u16 hoennNum);
u16 NationalPokedexNumToSpecies(u16 nationalNum);
u16 NationalToHoennOrder(u16 nationalNum);
@@ -487,10 +486,10 @@ u16 SpeciesToCryId(u16 species);
void DrawSpindaSpots(u16 species, u32 personality, u8 *dest, bool8 isFrontPic);
void EvolutionRenameMon(struct Pokemon *mon, u16 oldSpecies, u16 newSpecies);
u8 GetPlayerFlankId(void);
-u16 GetLinkTrainerFlankId(u8 id);
+u16 GetLinkTrainerFlankId(u8 linkPlayerId);
s32 GetBattlerMultiplayerId(u16 id);
u8 GetTrainerEncounterMusicId(u16 trainerOpponentId);
-u16 ModifyStatByNature(u8 nature, u16 n, u8 statIndex);
+u16 ModifyStatByNature(u8 nature, u16 stat, u8 statIndex);
void AdjustFriendship(struct Pokemon *mon, u8 event);
void MonGainEVs(struct Pokemon *mon, u16 defeatedSpecies);
u16 GetMonEVCount(struct Pokemon *mon);
diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h
index 9b917c3bf4..0964a50e45 100644
--- a/include/pokemon_icon.h
+++ b/include/pokemon_icon.h
@@ -5,14 +5,14 @@ extern const u8 gMonIconPaletteIndices[];
extern const u8 *const gMonIconTable[];
extern const struct SpritePalette gMonIconPaletteTable[];
-const u8 *GetMonIconTiles(u16 species, bool32);
+const u8 *GetMonIconTiles(u16 species, bool32 handleDeoxys);
void TryLoadAllMonIconPalettesAtOffset(u16 offset);
u8 GetValidMonIconPalIndex(u16 species);
-const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo);
-const u16 *GetValidMonIconPalettePtr(u16 speciesId);
+const u8 *GetMonIconPtr(u16 species, u32 personality, bool32 handleDeoxys);
+const u16 *GetValidMonIconPalettePtr(u16 species);
u16 GetIconSpecies(u16 species, u32 personality);
u16 GetUnownLetterByPersonality(u32 personality);
-u16 GetIconSpeciesNoPersonality(u16 speciesId);
+u16 GetIconSpeciesNoPersonality(u16 species);
void LoadMonIconPalettes(void);
void LoadMonIconPalette(u16 species);
void FreeMonIconPalettes(void);
diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h
index eb25c0ff27..b4f0d6565e 100644
--- a/include/pokemon_storage_system.h
+++ b/include/pokemon_storage_system.h
@@ -57,7 +57,7 @@ bool8 CheckFreePokemonStorageSpace(void);
bool32 CheckBoxMonSanityAt(u32 boxId, u32 boxPosition);
u32 CountStorageNonEggMons(void);
u32 CountAllStorageMons(void);
-bool32 AnyStorageMonWithMove(u16 moveId);
+bool32 AnyStorageMonWithMove(u16 move);
void ResetWaldaWallpaper(void);
void SetWaldaWallpaperLockedOrUnlocked(bool32 unlocked);
diff --git a/include/pokemon_summary_screen.h b/include/pokemon_summary_screen.h
index b026baa533..df9e477524 100755
--- a/include/pokemon_summary_screen.h
+++ b/include/pokemon_summary_screen.h
@@ -14,7 +14,7 @@ void ShowPokemonSummaryScreenHandleDeoxys(u8 mode, struct BoxPokemon *mons, u8 m
u8 GetMoveSlotToReplace(void);
void SummaryScreen_SetAnimDelayTaskId(u8 taskId);
-// The Pokemon Summary Screen can operate in different modes. Certain features,
+// The Pokémon Summary Screen can operate in different modes. Certain features,
// such as move re-ordering, are available in the different modes.
enum PokemonSummaryScreenMode
{
diff --git a/include/pokenav.h b/include/pokenav.h
index c6a8bb253e..553d2ad0f6 100644
--- a/include/pokenav.h
+++ b/include/pokenav.h
@@ -33,7 +33,7 @@ typedef void (*PokenavListBufferItemFunc)(struct PokenavListItem *, u8 *);
struct PokenavListTemplate
{
- struct PokenavListItem * list;
+ struct PokenavListItem *list;
u16 count;
u16 startIndex;
u8 itemSize;
@@ -65,8 +65,8 @@ struct PokenavMonList
enum
{
POKENAV_MODE_NORMAL, // Chosen from Start menu.
- POKENAV_MODE_FORCE_CALL_READY, // Pokenav tutorial before calling Mr. Stone
- POKENAV_MODE_FORCE_CALL_EXIT, // Pokenav tutorial after calling Mr. Stone
+ POKENAV_MODE_FORCE_CALL_READY, // PokéNav tutorial before calling Mr. Stone
+ POKENAV_MODE_FORCE_CALL_EXIT, // PokéNav tutorial after calling Mr. Stone
};
enum
@@ -232,8 +232,8 @@ enum
[CHECK_PAGE_INTRO_2] = gText_MatchCall##name##_Intro2}
-// Pokenav Function IDs
-// Indices into the LoopedTask tables for each of the main Pokenav features
+// PokéNav Function IDs
+// Indices into the LoopedTask tables for each of the main PokéNav features
enum RegionMapFuncIds
{
@@ -306,7 +306,7 @@ enum {
};
// pokenav.c
-void SetSelectedConditionSearch(u32);
+void SetSelectedConditionSearch(u32 cursorPos);
u32 GetSelectedConditionSearch(void);
void CB2_InitPokeNav(void);
@@ -333,7 +333,7 @@ int PokenavList_MoveCursorDown(void);
int PokenavList_PageDown(void);
int PokenavList_PageUp(void);
bool32 PokenavList_IsMoveWindowTaskActive(void);
-void PokenavList_ToggleVerticalArrows(bool32 shouldHide);
+void PokenavList_ToggleVerticalArrows(bool32 invisible);
void PokenavList_DrawCurrentItemIcon(void);
void PokenavList_EraseListForCheckPage(void);
bool32 PokenavList_IsTaskActive(void);
@@ -359,7 +359,7 @@ void CopyPaletteIntoBufferUnfaded(const u16 *palette, u32 bufferOffset, u32 size
void RunMainMenuLoopedTask(u32 state);
u32 IsActiveMenuLoopTaskActive(void);
void LoadLeftHeaderGfxForIndex(u32 menuGfxId);
-void ShowLeftHeaderGfx(u32 menugfxId, bool32 isMain, bool32 isOnRightSide);
+void ShowLeftHeaderGfx(u32 menuGfxId, bool32 isMain, bool32 isOnRightSide);
void PokenavFadeScreen(s32 fadeType);
bool32 AreLeftHeaderSpritesMoving(void);
void InitBgTemplates(const struct BgTemplate *templates, int count);
@@ -369,7 +369,7 @@ bool32 WaitForHelpBar(void);
void SlideMenuHeaderDown(void);
bool32 MainMenuLoopedTaskIsBusy(void);
void SetLeftHeaderSpritesInvisibility(void);
-void PokenavCopyPalette(const u16 *a0, const u16 *a1, int a2, int a3, int a4, u16 *palette);
+void PokenavCopyPalette(const u16 *src, const u16 *dest, int size, int a3, int a4, u16 *palette);
void FadeToBlackExceptPrimary(void);
struct Sprite *GetSpinningPokenavSprite(void);
void HideSpinningPokenavSprite(void);
@@ -379,7 +379,7 @@ void SlideMenuHeaderUp(void);
void PokenavFillPalette(u32 palIndex, u16 fillValue);
u32 PokenavMainMenuLoopedTaskIsActive(void);
bool32 WaitForPokenavShutdownFade(void);
-void SetActiveMenuLoopTasks(void *func1, void *func2);
+void SetActiveMenuLoopTasks(void *createLoopTask, void *isLoopTaskActive); // Fix types later.
void ShutdownPokenav(void);
// pokenav_menu_handler.c
@@ -410,11 +410,11 @@ void FreeMatchCallSubstruct1(void);
int IsMatchCallListInitFinished(void);
int GetNumberRegistered(void);
struct PokenavMatchCallEntry *GetMatchCallList(void);
-u16 GetMatchCallMapSec(int);
+u16 GetMatchCallMapSec(int index);
bool32 ShouldDrawRematchPokeballIcon(int index);
void ClearRematchPokeballIcon(u16 windowId, u32 tileOffset);
int GetMatchCallTrainerPic(int index);
-const u8 *GetMatchCallFlavorText(int index, int textType);
+const u8 *GetMatchCallFlavorText(int index, int checkPageEntry);
const u8 *GetMatchCallMessageText(int index, bool8 *newRematchRequest);
u16 GetMatchCallOptionCursorPos(void);
u16 GetMatchCallOptionId(int optionId);
@@ -422,7 +422,7 @@ void BufferMatchCallNameAndDesc(struct PokenavMatchCallEntry *matchCallEntry, u8
u8 GetMatchTableMapSectionId(int rematchIndex);
int GetIndexDeltaOfNextCheckPageDown(int index);
int GetIndexDeltaOfNextCheckPageUp(int index);
-bool32 IsRematchEntryRegistered(int index);
+bool32 IsRematchEntryRegistered(int rematchIndex);
// pokenav_match_call_gfx.c
bool32 OpenMatchCall(void);
@@ -434,14 +434,14 @@ void FreeMatchCallSubstruct2(void);
u32 PokenavCallback_Init_RegionMap(void);
u32 GetRegionMapCallback(void);
bool32 OpenPokenavRegionMap(void);
-void CreateRegionMapLoopedTask(s32);
+void CreateRegionMapLoopedTask(s32 index);
bool32 IsRegionMapLoopedTaskActive(void);
void FreeRegionMapSubstruct1(void);
void FreeRegionMapSubstruct2(void);
// pokenav_conditions.c
-u32 PokenavCallback_Init_ConditionGraph_Party(void);
-u32 PokenavCallback_Init_ConditionGraph_Search(void);
+bool32 PokenavCallback_Init_ConditionGraph_Party(void);
+bool32 PokenavCallback_Init_ConditionGraph_Search(void);
u32 GetConditionGraphMenuCallback(void);
void FreeConditionGraphMenuSubstruct1(void);
bool32 LoadConditionGraphMenuGfx(void);
@@ -452,47 +452,47 @@ u16 GetMonListCount(void);
u8 GetNumConditionMonSparkles(void);
bool32 LoadNextConditionMenuMonData(u8 mode);
u8 TryGetMonMarkId(void);
-u8 *GetConditionMonNameText(u8 id);
-u8 *GetConditionMonLocationText(u8 id);
+u8 *GetConditionMonNameText(u8 loadId);
+u8 *GetConditionMonLocationText(u8 loadId);
u16 GetConditionMonDataBuffer(void);
-void *GetConditionMonPicGfx(u8 id);
-void *GetConditionMonPal(u8 id);
+void *GetConditionMonPicGfx(u8 loadId);
+void *GetConditionMonPal(u8 loadId);
// pokenav_conditions_gfx.c
bool32 OpenConditionGraphMenu(void);
-void CreateConditionGraphMenuLoopedTask(s32);
+void CreateConditionGraphMenuLoopedTask(s32 id);
u32 IsConditionGraphMenuLoopedTaskActive(void);
void FreeConditionGraphMenuSubstruct2(void);
u8 GetMonMarkingsData(void);
// pokenav_conditions_search_results.c
-u32 PokenavCallback_Init_ConditionSearch(void);
-u32 PokenavCallback_Init_ReturnToMonSearchList(void);
+bool32 PokenavCallback_Init_ConditionSearch(void);
+bool32 PokenavCallback_Init_ReturnToMonSearchList(void);
u32 GetConditionSearchResultsCallback(void);
void FreeSearchResultSubstruct1(void);
bool32 OpenConditionSearchResults(void);
bool32 OpenConditionSearchListFromGraph(void);
-void CreateSearchResultsLoopedTask(s32);
-u32 IsSearchResultLoopedTaskActive(void);
+void CreateSearchResultsLoopedTask(s32 idx);
+bool32 IsSearchResultLoopedTaskActive(void);
void FreeSearchResultSubstruct2(void);
// pokenav_ribbons_list.c
-u32 PokenavCallback_Init_MonRibbonList(void);
-u32 PokenavCallback_Init_RibbonsMonListFromSummary(void);
+bool32 PokenavCallback_Init_MonRibbonList(void);
+bool32 PokenavCallback_Init_RibbonsMonListFromSummary(void);
u32 GetRibbonsMonListCallback(void);
void FreeRibbonsMonList(void);
bool32 OpenRibbonsMonList(void);
bool32 OpenRibbonsMonListFromRibbonsSummary(void);
-void CreateRibbonsMonListLoopedTask(s32);
-u32 IsRibbonsMonListLoopedTaskActive(void);
+void CreateRibbonsMonListLoopedTask(s32 idx);
+bool32 IsRibbonsMonListLoopedTaskActive(void);
void FreeRibbonsMonMenu(void);
// pokenav_ribbons_summary.c
-u32 PokenavCallback_Init_RibbonsSummaryMenu(void);
+bool32 PokenavCallback_Init_RibbonsSummaryMenu(void);
u32 GetRibbonsSummaryMenuCallback(void);
void FreeRibbonsSummaryScreen1(void);
bool32 OpenRibbonsSummaryMenu(void);
-void CreateRibbonsSummaryLoopedTask(s32);
+void CreateRibbonsSummaryLoopedTask(s32 id);
u32 IsRibbonsSummaryLoopedTaskActive(void);
void FreeRibbonsSummaryScreen2(void);
diff --git a/include/random.h b/include/random.h
index 6bf61de6c6..ba7aeccc1a 100644
--- a/include/random.h
+++ b/include/random.h
@@ -13,8 +13,8 @@ u16 Random2(void);
// The number 1103515245 comes from the example implementation of rand and srand
// in the ISO C standard.
-#define ISO_RANDOMIZE1(val)(1103515245 * (val) + 24691)
-#define ISO_RANDOMIZE2(val)(1103515245 * (val) + 12345)
+#define ISO_RANDOMIZE1(val) (1103515245 * (val) + 24691)
+#define ISO_RANDOMIZE2(val) (1103515245 * (val) + 12345)
//Sets the initial seed value of the pseudorandom number generator
void SeedRng(u16 seed);
diff --git a/include/rayquaza_scene.h b/include/rayquaza_scene.h
index 5aa21981eb..422b591273 100644
--- a/include/rayquaza_scene.h
+++ b/include/rayquaza_scene.h
@@ -1,6 +1,6 @@
#ifndef GUARD_RAYQUAZA_SCENE_H
#define GUARD_RAYQUAZA_SCENE_H
-void DoRayquazaScene(u8 animId, bool8 endEarly, void (*callback)(void));
+void DoRayquazaScene(u8 animId, bool8 endEarly, void (*exitCallback)(void));
#endif // GUARD_RAYQUAZA_SCENE_H
diff --git a/include/recorded_battle.h b/include/recorded_battle.h
index 9b89394038..9e53b55aae 100644
--- a/include/recorded_battle.h
+++ b/include/recorded_battle.h
@@ -10,11 +10,11 @@ extern u8 gRecordedBattleMultiplayerId;
void RecordedBattle_Init(u8 mode);
void RecordedBattle_SetTrainerInfo(void);
-void RecordedBattle_SetBattlerAction(u8 battlerId, u8 action);
-void RecordedBattle_ClearBattlerAction(u8 battlerId, u8 bytesToClear);
-u8 RecordedBattle_GetBattlerAction(u8 battlerId);
+void RecordedBattle_SetBattlerAction(u8 battler, u8 action);
+void RecordedBattle_ClearBattlerAction(u8 battler, u8 bytesToClear);
+u8 RecordedBattle_GetBattlerAction(u8 battler);
u8 RecordedBattle_BufferNewBattlerData(u8 *dst);
-void RecordedBattle_RecordAllBattlerData(u8 *data);
+void RecordedBattle_RecordAllBattlerData(u8 *src);
bool32 CanCopyRecordedBattleSaveData(void);
bool32 MoveRecordedBattleToSaveData(void);
void PlayRecordedBattle(void (*CB2_After)(void));
diff --git a/include/region_map.h b/include/region_map.h
index 9f0b110a65..2bca9e7f7d 100644
--- a/include/region_map.h
+++ b/include/region_map.h
@@ -95,7 +95,7 @@ struct RegionMapLocation
void InitRegionMapData(struct RegionMap *regionMap, const struct BgTemplate *template, bool8 zoomed);
bool8 LoadRegionMapGfx(void);
void UpdateRegionMapVideoRegs(void);
-void InitRegionMap(struct RegionMap *regionMap, u8 argument);
+void InitRegionMap(struct RegionMap *regionMap, bool8 zoomed);
u8 DoRegionMapInputCallback(void);
bool8 UpdateRegionMapZoom(void);
void FreeRegionMapIconResources(void);
@@ -103,7 +103,7 @@ u16 GetRegionMapSecIdAt(u16 x, u16 y);
void CreateRegionMapPlayerIcon(u16 tileTag, u16 paletteTag);
void CreateRegionMapCursor(u16 tileTag, u16 paletteTag);
bool32 IsEventIslandMapSecId(u8 mapSecId);
-u8 *GetMapName(u8 *, u16, u16);
+u8 *GetMapName(u8 *dest, u16 regionMapId, u16 padLength);
u8 *GetMapNameGeneric(u8 *dest, u16 mapSecId);
u8 *GetMapNameHandleAquaHideout(u8 *dest, u16 mapSecId);
u16 CorrectSpecialMapSecId(u16 mapSecId);
diff --git a/include/roamer.h b/include/roamer.h
index ba1b09b54d..a1814b1375 100644
--- a/include/roamer.h
+++ b/include/roamer.h
@@ -9,7 +9,7 @@ void RoamerMoveToOtherLocationSet(void);
void RoamerMove(void);
bool8 IsRoamerAt(u8 mapGroup, u8 mapNum);
void CreateRoamerMonInstance(void);
-u8 TryStartRoamerEncounter(void);
+bool8 TryStartRoamerEncounter(void);
void UpdateRoamerHPStatus(struct Pokemon *mon);
void SetRoamerInactive(void);
void GetRoamerLocation(u8 *mapGroup, u8 *mapNum);
diff --git a/include/rotating_gate.h b/include/rotating_gate.h
index fd86a6b04d..3829edab4a 100644
--- a/include/rotating_gate.h
+++ b/include/rotating_gate.h
@@ -1,9 +1,9 @@
#ifndef GUARD_ROTATING_GATE_H
#define GUARD_ROTATING_GATE_H
-void RotatingGatePuzzleCameraUpdate(s16, s16);
+void RotatingGatePuzzleCameraUpdate(s16 deltaX, s16 deltaY);
void RotatingGate_InitPuzzleAndGraphics(void);
-u32 CheckForRotatingGatePuzzleCollision(u8, s16, s16);
-bool32 CheckForRotatingGatePuzzleCollisionWithoutAnimation(u8, s16, s16);
+bool32 CheckForRotatingGatePuzzleCollision(u8 direction, s16 x, s16 y);
+bool32 CheckForRotatingGatePuzzleCollisionWithoutAnimation(u8 direction, s16 x, s16 y);
#endif // GUARD_ROTATING_GATE_H
diff --git a/include/safari_zone.h b/include/safari_zone.h
index 39ee3ccb3e..5336c81057 100644
--- a/include/safari_zone.h
+++ b/include/safari_zone.h
@@ -16,6 +16,6 @@ void SafariZoneRetirePrompt(void);
void CB2_EndSafariBattle(void);
struct Pokeblock *SafariZoneGetActivePokeblock(void);
-void SafariZoneActivatePokeblockFeeder(u8 pokeblock_index);
+void SafariZoneActivatePokeblockFeeder(u8 pkblId);
#endif // GUARD_SAFARI_ZONE_H
diff --git a/include/scanline_effect.h b/include/scanline_effect.h
index 80d9df764d..d9ee9e678c 100644
--- a/include/scanline_effect.h
+++ b/include/scanline_effect.h
@@ -41,7 +41,7 @@ extern u16 ALIGNED(4) gScanlineEffectRegBuffers[2][0x3C0];
void ScanlineEffect_Stop(void);
void ScanlineEffect_Clear(void);
-void ScanlineEffect_SetParams(struct ScanlineEffectParams);
+void ScanlineEffect_SetParams(struct ScanlineEffectParams params);
void ScanlineEffect_InitHBlankDmaTransfer(void);
u8 ScanlineEffect_InitWave(u8 startLine, u8 endLine, u8 frequency, u8 amplitude, u8 delayInterval, u8 regOffset, bool8 applyBattleBgOffsets);
diff --git a/include/script_menu.h b/include/script_menu.h
index 734c717cff..71eb6695bc 100644
--- a/include/script_menu.h
+++ b/include/script_menu.h
@@ -14,7 +14,7 @@ bool8 (*ScriptMenu_HidePokemonPic(void))(void);
int ConvertPixelWidthToTileWidth(int width);
u8 CreateWindowFromRect(u8 x, u8 y, u8 width, u8 height);
void ClearToTransparentAndRemoveWindow(u8 windowId);
-int DisplayTextAndGetWidth(const u8 *str, int width);
+int DisplayTextAndGetWidth(const u8 *str, int prevWidth);
int ScriptMenu_AdjustLeftCoordFromWidth(int left, int width);
bool16 ScriptMenu_CreatePCMultichoice(void);
void ScriptMenu_DisplayPCStartupPrompt(void);
diff --git a/include/script_pokemon_util.h b/include/script_pokemon_util.h
index cae16e40a6..d453c22adc 100644
--- a/include/script_pokemon_util.h
+++ b/include/script_pokemon_util.h
@@ -1,10 +1,10 @@
#ifndef GUARD_SCRIPT_POKEMON_UTIL_H
#define GUARD_SCRIPT_POKEMON_UTIL_H
-u8 ScriptGiveMon(u16, u8, u16, u32, u32, u8);
-u8 ScriptGiveEgg(u16);
-void CreateScriptedWildMon(u16, u8, u16);
-void ScriptSetMonMoveSlot(u8, u16, u8);
+u8 ScriptGiveMon(u16 species, u8 level, u16 item, u32 unused1, u32 unused2, u8 unused3);
+u8 ScriptGiveEgg(u16 species);
+void CreateScriptedWildMon(u16 species, u8 level, u16 item);
+void ScriptSetMonMoveSlot(u8 monIndex, u16 move, u8 slot);
void ReducePlayerPartyToSelectedMons(void);
void HealPlayerParty(void);
diff --git a/include/secret_base.h b/include/secret_base.h
index cb3b95ee78..5502194ff2 100644
--- a/include/secret_base.h
+++ b/include/secret_base.h
@@ -3,7 +3,7 @@
void HideSecretBaseDecorationSprites(void);
void CopyCurSecretBaseOwnerName_StrVar1(void);
-void ClearJapaneseSecretBases(struct SecretBase *dest);
+void ClearJapaneseSecretBases(struct SecretBase *bases);
void SetPlayerSecretBaseParty(void);
u8 *GetSecretBaseMapName(u8 *dest);
const u8 *GetSecretBaseTrainerLoseText(void);
@@ -24,7 +24,6 @@ void SetCurSecretBaseIdFromPosition(const struct MapPosition *position, const st
void TrySetCurSecretBaseIndex(void);
void CheckPlayerHasSecretBase(void);
void ToggleSecretBaseEntranceMetatile(void);
-void ScriptContext_Enable(void);
-void ReceiveSecretBasesData(void *records, size_t recordSize, u8 linkIdx);
+void ReceiveSecretBasesData(void *secretBases, size_t recordSize, u8 linkIdx);
#endif //GUARD_SECRET_BASE_H
diff --git a/include/shop.h b/include/shop.h
index 6644ba0aa0..367c06ed6c 100644
--- a/include/shop.h
+++ b/include/shop.h
@@ -3,9 +3,9 @@
extern struct ItemSlot gMartPurchaseHistory[3];
-void CreatePokemartMenu(const u16 *);
-void CreateDecorationShop1Menu(const u16 *);
-void CreateDecorationShop2Menu(const u16 *);
+void CreatePokemartMenu(const u16 *itemsForSale);
+void CreateDecorationShop1Menu(const u16 *itemsForSale);
+void CreateDecorationShop2Menu(const u16 *itemsForSale);
void CB2_ExitSellMenu(void);
#endif // GUARD_SHOP_H
diff --git a/include/slot_machine.h b/include/slot_machine.h
index 88bbbd91bd..56617b23d7 100644
--- a/include/slot_machine.h
+++ b/include/slot_machine.h
@@ -1,6 +1,6 @@
#ifndef GUARD_SLOT_MACHINE_H
#define GUARD_SLOT_MACHINE_H
-void PlaySlotMachine(u8, void (callback)(void));
+void PlaySlotMachine(u8 machineId, MainCallback exitCallback);
#endif // GUARD_SLOT_MACHINE_H
diff --git a/gflib/sprite.h b/include/sprite.h
similarity index 94%
rename from gflib/sprite.h
rename to include/sprite.h
index 86527bc4c0..822c986991 100644
--- a/gflib/sprite.h
+++ b/include/sprite.h
@@ -1,6 +1,7 @@
#ifndef GUARD_SPRITE_H
#define GUARD_SPRITE_H
+#define OAM_MATRIX_COUNT 32
#define MAX_SPRITES 64
#define SPRITE_NONE 0xFF
#define TAG_NONE 0xFFFF
@@ -254,12 +255,12 @@ extern const union AffineAnimCmd *const gDummySpriteAffineAnimTable[];
extern const struct SpriteTemplate gDummySpriteTemplate;
extern u8 gReservedSpritePaletteCount;
-extern struct Sprite gSprites[];
+extern struct Sprite gSprites[MAX_SPRITES + 1];
extern u8 gOamLimit;
extern u16 gReservedSpriteTileCount;
extern s16 gSpriteCoordOffsetX;
extern s16 gSpriteCoordOffsetY;
-extern struct OamMatrix gOamMatrices[];
+extern struct OamMatrix gOamMatrices[OAM_MATRIX_COUNT];
extern bool8 gAffineAnimsDisabled;
void ResetSpriteData(void);
@@ -297,16 +298,10 @@ void InitSpriteAffineAnim(struct Sprite *sprite);
void SetOamMatrixRotationScaling(u8 matrixNum, s16 xScale, s16 yScale, u16 rotation);
u16 LoadSpriteSheet(const struct SpriteSheet *sheet);
void LoadSpriteSheets(const struct SpriteSheet *sheets);
-u16 AllocTilesForSpriteSheet(struct SpriteSheet *sheet);
-void AllocTilesForSpriteSheets(struct SpriteSheet *sheets);
-void LoadTilesForSpriteSheet(const struct SpriteSheet *sheet);
-void LoadTilesForSpriteSheets(struct SpriteSheet *sheets);
void FreeSpriteTilesByTag(u16 tag);
void FreeSpriteTileRanges(void);
u16 GetSpriteTileStartByTag(u16 tag);
u16 GetSpriteTileTagByTileStart(u16 start);
-void RequestSpriteSheetCopy(const struct SpriteSheet *sheet);
-u16 LoadSpriteSheetDeferred(const struct SpriteSheet *sheet);
void FreeAllSpritePalettes(void);
u8 LoadSpritePalette(const struct SpritePalette *palette);
void LoadSpritePalettes(const struct SpritePalette *palettes);
@@ -315,7 +310,7 @@ u8 IndexOfSpritePaletteTag(u16 tag);
u16 GetSpritePaletteTagByPaletteNum(u8 paletteNum);
void FreeSpritePaletteByTag(u16 tag);
void SetSubspriteTables(struct Sprite *sprite, const struct SubspriteTable *subspriteTables);
-bool8 AddSpriteToOamBuffer(struct Sprite *object, u8 *oamIndex);
+bool8 AddSpriteToOamBuffer(struct Sprite *sprite, u8 *oamIndex);
bool8 AddSubspritesToOamBuffer(struct Sprite *sprite, struct OamData *destOam, u8 *oamIndex);
void CopyToSprites(u8 *src);
void CopyFromSprites(u8 *dest);
diff --git a/gflib/string_util.h b/include/string_util.h
similarity index 100%
rename from gflib/string_util.h
rename to include/string_util.h
diff --git a/include/strings.h b/include/strings.h
index eeada2b943..3215f70c88 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -519,7 +519,7 @@ extern const u8 gText_Speed[];
extern const u8 gText_Dash[];
extern const u8 gText_Plus[];
-//pokedex text
+//Pokédex text
extern const u8 gText_CryOf[];
extern const u8 gText_SizeComparedTo[];
extern const u8 gText_PokedexRegistration[];
@@ -1121,7 +1121,7 @@ extern const u8 gTrickHouse_Mechadoll_Six2[];
extern const u8 gTrickHouse_Mechadoll_Seven2[];
extern const u8 gTrickHouse_Mechadoll_Eight2[];
-// Pokedex strings
+// Pokédex strings
extern const u8 gText_SearchForPkmnBasedOnParameters[];
extern const u8 gText_SwitchPokedexListings[];
extern const u8 gText_ReturnToPokedex[];
@@ -2874,7 +2874,7 @@ extern const u8 gText_WantToPlayAgain[];
extern const u8 gText_CommunicationStandby3[];
extern const u8 gText_SomeoneDroppedOut[];
-// Pokemon jump
+// Pokémon jump
extern const u8 gText_WantToPlayAgain2[];
extern const u8 gText_SomeoneDroppedOut2[];
extern const u8 gText_CommunicationStandby4[];
@@ -2949,7 +2949,7 @@ extern const u8 gText_CutenessContest[];
extern const u8 gText_SmartnessContest[];
extern const u8 gText_ToughnessContest[];
-// Pokenav Match Call
+// PokéNav Match Call
extern const u8 gText_CallCantBeMadeHere[];
extern const u8 gText_NumberRegistered[];
extern const u8 gText_NumberOfBattles[];
@@ -2959,7 +2959,7 @@ extern const u8 gText_Call[];
extern const u8 gText_Check[];
extern const u8 gText_Cancel6[];
-// Pokenav Menu Handler
+// PokéNav Menu Handler
extern const u8 gText_CheckMapOfHoenn[];
extern const u8 gText_CheckPokemonInDetail[];
extern const u8 gText_CallRegisteredTrainer[];
@@ -2976,7 +2976,7 @@ extern const u8 gText_FindToughPokemon[];
extern const u8 gText_ReturnToConditionMenu[];
extern const u8 gText_NoRibbonWinners[];
-// Pokenav
+// PokéNav
extern const u8 gText_NumberIndex[];
extern const u8 gText_RibbonsF700[];
diff --git a/gflib/text.h b/include/text.h
similarity index 95%
rename from gflib/text.h
rename to include/text.h
index ff13efa9a8..db2415fd6d 100644
--- a/gflib/text.h
+++ b/include/text.h
@@ -1,7 +1,7 @@
#ifndef GUARD_TEXT_H
#define GUARD_TEXT_H
-#include "characters.h"
+#include "constants/characters.h"
// Given as a text speed when all the text should be
// loaded at once but not copied to vram yet.
@@ -137,14 +137,14 @@ extern struct TextGlyph gCurGlyph;
void DeactivateAllTextPrinters(void);
u16 AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16));
-bool16 AddTextPrinter(struct TextPrinterTemplate *template, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16));
+bool16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16));
void RunTextPrinters(void);
bool16 IsTextPrinterActive(u8 id);
void GenerateFontHalfRowLookupTable(u8 fgColor, u8 bgColor, u8 shadowColor);
void SaveTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor);
void RestoreTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor);
void DecompressGlyphTile(const void *src_, void *dest_);
-void CopyGlyphToWindow(struct TextPrinter *x);
+void CopyGlyphToWindow(struct TextPrinter *textPrinter);
void ClearTextSpan(struct TextPrinter *textPrinter, u32 width);
void TextPrinterInitDownArrowCounters(struct TextPrinter *textPrinter);
diff --git a/include/tilesets.h b/include/tilesets.h
index c7cc8edac9..e06444e446 100644
--- a/include/tilesets.h
+++ b/include/tilesets.h
@@ -4,7 +4,7 @@
extern const u32 gTilesetTiles_General[];
extern const u16 gTilesetPalettes_General[][16];
-extern const struct Tileset * const gTilesetPointer_SecretBase;
-extern const struct Tileset * const gTilesetPointer_SecretBaseRedCave;
+extern const struct Tileset *const gTilesetPointer_SecretBase;
+extern const struct Tileset *const gTilesetPointer_SecretBaseRedCave;
#endif //GUARD_tilesets_H
diff --git a/include/time_events.h b/include/time_events.h
index fd6d29f390..f40b9b45ef 100644
--- a/include/time_events.h
+++ b/include/time_events.h
@@ -1,8 +1,8 @@
#ifndef GUARD_TIME_EVENTS_H
#define GUARD_TIME_EVENTS_H
-void UpdateMirageRnd(u16);
-u8 IsMirageIslandPresent(void);
-void UpdateBirchState(u16);
+void UpdateMirageRnd(u16 days);
+bool8 IsMirageIslandPresent(void);
+void UpdateBirchState(u16 days);
#endif // GUARD_TIME_EVENTS_H
diff --git a/include/trade.h b/include/trade.h
index 6b621038fc..24de69b036 100644
--- a/include/trade.h
+++ b/include/trade.h
@@ -7,6 +7,7 @@
extern struct Mail gTradeMail[PARTY_SIZE];
extern u8 gSelectedTradeMonPositions[2];
+extern const u16 gTradePlatform_Tilemap[];
extern const struct WindowTemplate gTradeEvolutionSceneYesNoWindowTemplate;
s32 GetGameProgressForLinkTrade(void);
@@ -14,10 +15,10 @@ void CB2_StartCreateTradeMenu(void);
void CB2_LinkTrade(void);
int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData player, u16 species2, u16 species, bool8 isModernFatefulEncounter);
int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct RfuGameCompatibilityData partner, u16 playerSpecies2, u16 partnerSpecies, u8 requestedType, u16 playerSpecies, bool8 isModernFatefulEncounter);
-int CanSpinTradeMon(struct Pokemon *, u16);
+int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx);
void InitTradeSequenceBgGpuRegs(void);
void LinkTradeDrawWindow(void);
void LoadTradeAnimGfx(void);
-void DrawTextOnTradeWindow(u8, const u8 *, u8);
+void DrawTextOnTradeWindow(u8 windowId, const u8 *str, u8 speed);
#endif //GUARD_TRADE_H
diff --git a/include/trainer_card.h b/include/trainer_card.h
index 7c37a84a6c..1faa306aab 100644
--- a/include/trainer_card.h
+++ b/include/trainer_card.h
@@ -70,6 +70,6 @@ u8 GetTrainerCardStars(u8 cardId);
void CopyTrainerCardData(struct TrainerCard *dst, struct TrainerCard *src, u8 gameVersion);
void ShowPlayerTrainerCard(void (*callback)(void));
void ShowTrainerCardInLink(u8 cardId, void (*callback)(void));
-void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *);
+void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard);
#endif // GUARD_TRAINER_CARD_H
diff --git a/include/trainer_see.h b/include/trainer_see.h
index ab808c720c..641e05b8b0 100644
--- a/include/trainer_see.h
+++ b/include/trainer_see.h
@@ -17,7 +17,7 @@ extern bool8 gTrainerApproachedPlayer;
extern u8 gApproachingTrainerId;
bool8 CheckForTrainersWantingBattle(void);
-void SetBuriedTrainerMovement(struct ObjectEvent *var);
+void SetBuriedTrainerMovement(struct ObjectEvent *objEvent);
void DoTrainerApproach(void);
void TryPrepareSecondApproachingTrainer(void);
u8 FldEff_ExclamationMarkIcon(void);
diff --git a/include/tv.h b/include/tv.h
index 31c8fcc50f..a9a387e95b 100644
--- a/include/tv.h
+++ b/include/tv.h
@@ -5,8 +5,8 @@ extern u8 *const gTVStringVarPtrs[3];
void ClearTVShowData(void);
void TryPutBreakingNewsOnAir(void);
-void TryPutBattleSeminarOnAir(u16 foeSpecies, u16 species, u8 moveIdx, const u16 *movePtr, u16 betterMove);
-void TryPutFrontierTVShowOnAir(u16 winStreak, u8 facility);
+void TryPutBattleSeminarOnAir(u16 foeSpecies, u16 species, u8 moveIndex, const u16 *movePtr, u16 betterMove);
+void TryPutFrontierTVShowOnAir(u16 winStreak, u8 facilityAndMode);
void DoTVShow(void);
void DoTVShowInSearchOfTrainers(void);
void TryPutTreasureInvestigatorsOnAir(void);
@@ -16,7 +16,7 @@ void IncrementDailyPlantedBerries(void);
void IncrementDailyPickedBerries(void);
void IncrementDailyBattlePoints(u16 delta);
void HideBattleTowerReporter(void);
-void ReceiveTvShowsData(void *src, u32 size, u8 masterIdx);
+void ReceiveTvShowsData(void *src, u32 size, u8 playersLinkId);
void TryPutSpotTheCutiesOnAir(struct Pokemon *pokemon, u8 ribbonMonDataIdx);
u32 GetPlayerIDAsU32(void);
bool8 IsPokeNewsActive(u8 newsKind);
@@ -29,7 +29,7 @@ void TryPutFindThatGamerOnAir(u16 nCoinsPaidOut);
void TryPutSecretBaseSecretsOnAir(void);
void TryPutTodaysRivalTrainerOnAir(void);
void TryPutTrendWatcherOnAir(const u16 *words);
-void ReceivePokeNewsData(void *src, u32 size, u8 masterIdx);
+void ReceivePokeNewsData(void *src, u32 size, u8 playersLinkId);
void DeactivateAllNormalTVShows(void);
void RecordFishingAttemptForTV(bool8 caughtFish);
void IncrementDailySlotsUses(void);
@@ -37,8 +37,8 @@ void IncrementDailyRouletteUses(void);
void IncrementDailyWildBattles(void);
void IncrementDailyBerryBlender(void);
void SanitizeTVShowsForRuby(TVShow *shows);
-void TryPutSafariFanClubOnAir(u8 nMonsCaught, u8 nPkblkUsed);
-bool8 Put3CheersForPokeblocksOnTheAir(const u8 *partnersName, u8 flavor, u8 unused, u8 sheen, u8 language);
+void TryPutSafariFanClubOnAir(u8 monsCaught, u8 pokeblocksUsed);
+bool8 Put3CheersForPokeblocksOnTheAir(const u8 *partnersName, u8 flavor, u8 color, u8 sheen, u8 language);
void SetPokemonAnglerSpecies(u16 species);
void UpdateTVShowsPerDay(u16 days);
void TryPutPokemonTodayOnAir(void);
@@ -47,7 +47,7 @@ void PutBattleUpdateOnTheAir(u8 opponentLinkPlayerId, u16 move, u16 speciesPlaye
void BravoTrainerPokemonProfile_BeforeInterview1(u16 move);
void InterviewBefore(void);
void InterviewAfter(void);
-void UpdateTVScreensOnMap(int, int);
+void UpdateTVScreensOnMap(int width, int height);
void ConvertIntToDecimalString(u8 varIdx, int value);
void TryPutSmartShopperOnAir(void);
bool8 ShouldAirFrontierTVShow(void);
diff --git a/include/util.h b/include/util.h
index 8f2079a0ba..051f1160bf 100644
--- a/include/util.h
+++ b/include/util.h
@@ -6,9 +6,9 @@
extern const u8 gMiscBlank_Gfx[]; // unused in Emerald
extern const u32 gBitTable[];
-u8 CreateInvisibleSpriteWithCallback(void (*)(struct Sprite *));
-void StoreWordInTwoHalfwords(u16 *, u32);
-void LoadWordFromTwoHalfwords(u16 *, u32 *);
+u8 CreateInvisibleSpriteWithCallback(void (*callback)(struct Sprite *));
+void StoreWordInTwoHalfwords(u16 *h, u32 w);
+void LoadWordFromTwoHalfwords(u16 *h, u32 *w);
int CountTrailingZeroBits(u32 value);
u16 CalcCRC16(const u8 *data, s32 length);
u16 CalcCRC16WithTable(const u8 *data, u32 length);
diff --git a/include/wild_encounter.h b/include/wild_encounter.h
index 8608ec5b16..6e72f6f123 100644
--- a/include/wild_encounter.h
+++ b/include/wild_encounter.h
@@ -29,7 +29,7 @@ struct WildPokemonHeader
extern const struct WildPokemonHeader gWildMonHeaders[];
void DisableWildEncounters(bool8 disabled);
-bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavior);
+bool8 StandardWildEncounter(u16 curMetatileBehavior, u16 prevMetatileBehavior);
bool8 SweetScentWildEncounter(void);
bool8 DoesCurrentMapHaveFishingMons(void);
void FishingWildEncounter(u8 rod);
diff --git a/gflib/window.h b/include/window.h
similarity index 100%
rename from gflib/window.h
rename to include/window.h
diff --git a/json_data_rules.mk b/json_data_rules.mk
index aa9e5b3a25..08a2d00210 100755
--- a/json_data_rules.mk
+++ b/json_data_rules.mk
@@ -12,3 +12,17 @@ $(DATA_SRC_SUBDIR)/region_map/region_map_entries.h: $(DATA_SRC_SUBDIR)/region_ma
$(JSONPROC) $^ $@
$(C_BUILDDIR)/region_map.o: c_dep += $(DATA_SRC_SUBDIR)/region_map/region_map_entries.h
+
+AUTO_GEN_TARGETS += include/constants/region_map_sections.h
+include/constants/region_map_sections.h: $(DATA_SRC_SUBDIR)/region_map/region_map_sections.json $(DATA_SRC_SUBDIR)/region_map/region_map_sections.constants.json.txt
+ $(JSONPROC) $^ $@
+
+AUTO_GEN_TARGETS += $(DATA_SRC_SUBDIR)/heal_locations.h
+$(DATA_SRC_SUBDIR)/heal_locations.h: $(DATA_SRC_SUBDIR)/heal_locations.json $(DATA_SRC_SUBDIR)/heal_locations.json.txt
+ $(JSONPROC) $^ $@
+
+$(C_BUILDDIR)/heal_location.o: c_dep += $(DATA_SRC_SUBDIR)/heal_locations.h
+
+AUTO_GEN_TARGETS += include/constants/heal_locations.h
+include/constants/heal_locations.h: $(DATA_SRC_SUBDIR)/heal_locations.json $(DATA_SRC_SUBDIR)/heal_locations.constants.json.txt
+ $(JSONPROC) $^ $@
diff --git a/ld_script.txt b/ld_script.ld
similarity index 98%
rename from ld_script.txt
rename to ld_script.ld
index 4be5965240..316b5fe20f 100644
--- a/ld_script.txt
+++ b/ld_script.ld
@@ -3,6 +3,13 @@ ENTRY(Start)
gNumMusicPlayers = 4;
gMaxLines = 0;
+MEMORY
+{
+ EWRAM (rwx) : ORIGIN = 0x2000000, LENGTH = 256K
+ IWRAM (rwx) : ORIGIN = 0x3000000, LENGTH = 32K
+ ROM (rx) : ORIGIN = 0x8000000, LENGTH = 32M
+}
+
/* Modify the following load addresses as needed to make more room. Alternately, delete both the
declarations below and their references further down to get rid of the gaps. */
@@ -10,34 +17,24 @@ __anim_mon_load_address = 0x8b00000;
__gfx_load_address = 0x8c00000;
SECTIONS {
- . = 0x2000000;
- ewram (NOLOAD) :
+ ewram 0x2000000 (NOLOAD) :
ALIGN(4)
{
- gHeap = .;
-
- . = 0x1C000;
-
INCLUDE "sym_ewram.ld"
src/*.o(ewram_data);
- gflib/*.o(ewram_data);
*libc.a:impure.o(.data);
*libc.a:locale.o(.data);
*libc.a:mallocr.o(.data);
- . = 0x40000;
- }
+ } > EWRAM
- . = 0x3000000;
-
- iwram (NOLOAD) :
+ iwram 0x3000000 (NOLOAD) :
ALIGN(4)
{
/* .bss starts at 0x3000000 */
INCLUDE "sym_bss.ld"
src/*.o(.bss);
- gflib/*.o(.bss);
data/*.o(.bss);
/* .bss.code starts at 0x3001AA8 */
@@ -45,11 +42,11 @@ SECTIONS {
/* COMMON starts at 0x30022A8 */
INCLUDE "sym_common.ld"
+ src/*.o(COMMON);
*libc.a:sbrkr.o(COMMON);
- end = .;
- . = 0x8000;
- }
+ } > IWRAM
+ /* BEGIN ROM DATA */
. = 0x8000000;
.text :
@@ -59,15 +56,15 @@ SECTIONS {
src/rom_header_gf.o(.text.*);
src/crt0.o(.text);
src/main.o(.text);
- gflib/malloc.o(.text);
- gflib/dma3_manager.o(.text);
- gflib/gpu_regs.o(.text);
- gflib/bg.o(.text);
- gflib/blit.o(.text);
- gflib/window.o(.text);
- gflib/text.o(.text);
- gflib/sprite.o(.text);
- gflib/string_util.o(.text);
+ src/malloc.o(.text);
+ src/dma3_manager.o(.text);
+ src/gpu_regs.o(.text);
+ src/bg.o(.text);
+ src/blit.o(.text);
+ src/window.o(.text);
+ src/text.o(.text);
+ src/sprite.o(.text);
+ src/string_util.o(.text);
src/link.o(.text);
src/AgbRfu_LinkManager.o(.text);
src/link_rfu_3.o(.text);
@@ -343,7 +340,7 @@ SECTIONS {
src/gym_leader_rematch.o(.text);
src/battle_transition_frontier.o(.text);
src/international_string_util.o(.text);
- } =0
+ } > ROM =0
script_data :
ALIGN(4)
@@ -356,7 +353,7 @@ SECTIONS {
data/battle_ai_scripts.o(script_data);
data/contest_ai_scripts.o(script_data);
data/mystery_event_script_cmd_table.o(script_data);
- } =0
+ } > ROM =0
lib_text :
ALIGN(4)
@@ -440,7 +437,7 @@ SECTIONS {
*libc.a:libcfunc.o(.text);
*libc.a:lseekr.o(.text);
*libc.a:readr.o(.text);
- } =0
+ } > ROM =0
.rodata :
ALIGN(4)
@@ -448,12 +445,12 @@ SECTIONS {
src/rom_header.o(.rodata);
src/rom_header_gf.o(.rodata);
src/main.o(.rodata);
- gflib/bg.o(.rodata);
- gflib/window.o(.rodata);
- gflib/text.o(.rodata);
- gflib/sprite.o(.rodata);
- gflib/io_reg.o(.rodata);
- gflib/string_util.o(.rodata);
+ src/bg.o(.rodata);
+ src/window.o(.rodata);
+ src/text.o(.rodata);
+ src/sprite.o(.rodata);
+ src/io_reg.o(.rodata);
+ src/string_util.o(.rodata);
src/link.o(.rodata);
src/link.o(.rodata.str1.4);
src/AgbRfu_LinkManager.o(.rodata);
@@ -705,7 +702,7 @@ SECTIONS {
data/mystery_gift.o(.rodata);
src/m4a_tables.o(.rodata);
data/sound_data.o(.rodata);
- } =0
+ } > ROM =0
song_data :
ALIGN(4)
@@ -1240,7 +1237,7 @@ SECTIONS {
sound/songs/midi/ph_nurse_blend.o(.rodata);
sound/songs/midi/ph_nurse_held.o(.rodata);
sound/songs/midi/ph_nurse_solo.o(.rodata);
- } =0
+ } > ROM =0
lib_rodata :
SUBALIGN(4)
@@ -1293,7 +1290,7 @@ SECTIONS {
*libc.a:lseekr.o(.rodata);
*libc.a:readr.o(.rodata);
src/libisagbprn.o(.rodata);
- } =0
+ } > ROM =0
multiboot_data :
ALIGN(4)
@@ -1301,29 +1298,27 @@ SECTIONS {
data/multiboot_ereader.o(.rodata);
data/multiboot_berry_glitch_fix.o(.rodata);
data/multiboot_pokemon_colosseum.o(.rodata);
- } =0
+ } > ROM =0
anim_mon_front_pic_data __anim_mon_load_address :
ALIGN(4)
{
src/anim_mon_front_pics.o(.rodata);
- } =0
+ } > ROM =0
gfx_data __gfx_load_address :
ALIGN(4)
{
src/graphics.o(.rodata);
- } =0
+ } > ROM =0
extra :
ALIGN(4)
{
src/*.o(.text);
- gflib/*.o(.text);
src/*.o(.rodata);
- gflib/*.o(.rodata);
data/*.o(.rodata);
- } = 0
+ } > ROM = 0
/* DWARF debug sections.
Symbols in the DWARF debugging sections are relative to the beginning
diff --git a/ld_script_modern.txt b/ld_script_modern.ld
similarity index 85%
rename from ld_script_modern.txt
rename to ld_script_modern.ld
index 549d040e1e..788a5736f0 100644
--- a/ld_script_modern.txt
+++ b/ld_script_modern.ld
@@ -3,46 +3,38 @@ ENTRY(Start)
gNumMusicPlayers = 4;
gMaxLines = 0;
-SECTIONS {
- . = 0x2000000;
-
- ewram (NOLOAD) :
- ALIGN(4)
- {
- gHeap = .;
-
- . = 0x1C000;
-
- src/*.o(ewram_data);
- gflib/*.o(ewram_data);
-
- . = 0x40000;
+MEMORY
+{
+ EWRAM (rwx) : ORIGIN = 0x2000000, LENGTH = 256K
+ IWRAM (rwx) : ORIGIN = 0x3000000, LENGTH = 32K
+ ROM (rx) : ORIGIN = 0x8000000, LENGTH = 32M
}
- . = 0x3000000;
+SECTIONS {
- iwram (NOLOAD) :
+ ewram 0x2000000 (NOLOAD) :
+ ALIGN(4)
+ {
+ src/*.o(ewram_data);
+ } > EWRAM
+
+ iwram 0x3000000 (NOLOAD) :
ALIGN(4)
{
- /* .bss starts at 0x3000000 */
src/*.o(.bss);
- gflib/*.o(.bss);
data/*.o(.bss);
*libc.a:*.o(.bss*);
*libnosys.a:*.o(.bss*);
- /* .bss.code starts at 0x3001AA8 */
src/m4a.o(.bss.code);
- /* COMMON starts at 0x30022A8 */
+ src/*.o(common_data);
src/*.o(COMMON);
- gflib/*.o(COMMON);
*libc.a:*.o(COMMON);
*libnosys.a:*.o(COMMON);
- end = .;
- . = 0x8000;
- }
+ } > IWRAM
+ /* BEGIN ROM DATA */
. = 0x8000000;
.text :
@@ -52,16 +44,15 @@ SECTIONS {
src/rom_header_gf.o(.text.*);
src/crt0.o(.text);
src/main.o(.text);
- gflib/*.o(.text*);
src/*.o(.text*);
asm/*.o(.text*);
- } =0
+ } > ROM =0
script_data :
ALIGN(4)
{
data/*.o(script_data);
- } =0
+ } > ROM =0
lib_text :
ALIGN(4)
@@ -82,21 +73,20 @@ SECTIONS {
*libc.a:*.o(.text*);
*libnosys.a:*.o(.text*);
src/libisagbprn.o(.text);
- } =0
+ } > ROM =0
.rodata :
ALIGN(4)
{
src/*.o(.rodata*);
- gflib/*.o(.rodata*);
data/*.o(.rodata*);
- } =0
+ } > ROM =0
song_data :
ALIGN(4)
{
sound/songs/*.o(.rodata);
- } =0
+ } > ROM =0
lib_rodata :
SUBALIGN(4)
@@ -121,19 +111,19 @@ SECTIONS {
data/multiboot_ereader.o(.rodata);
data/multiboot_berry_glitch_fix.o(.rodata);
data/multiboot_pokemon_colosseum.o(.rodata);
- } =0
+ } > ROM =0
anim_mon_front_pic_data :
ALIGN(4)
{
src/anim_mon_front_pics.o(.rodata);
- } =0
+ } > ROM =0
gfx_data :
ALIGN(4)
{
src/graphics.o(.rodata);
- } =0
+ } > ROM =0
/* DWARF debug sections.
Symbols in the DWARF debugging sections are relative to the beginning
diff --git a/make_tools.mk b/make_tools.mk
index 7e0baf8900..4a6a929a86 100644
--- a/make_tools.mk
+++ b/make_tools.mk
@@ -1,12 +1,22 @@
+# This controls building executables in the `tools` folder.
+# Can be invoked through the `Makefile` or standalone.
MAKEFLAGS += --no-print-directory
# Inclusive list. If you don't want a tool to be built, don't add it here.
-TOOLDIRS := tools/aif2pcm tools/bin2c tools/gbafix tools/gbagfx tools/jsonproc tools/mapjson tools/mid2agb tools/preproc tools/ramscrgen tools/rsfont tools/scaninc
+TOOLS_DIR := tools
+TOOL_NAMES := aif2pcm bin2c gbafix gbagfx jsonproc mapjson mid2agb preproc ramscrgen rsfont scaninc
-.PHONY: all $(TOOLDIRS)
+TOOLDIRS := $(TOOL_NAMES:%=$(TOOLS_DIR)/%)
-all: $(TOOLDIRS)
+# Tool making doesnt require a pokeemerald dependency scan.
+RULES_NO_SCAN += tools check-tools clean-tools $(TOOLDIRS)
+.PHONY: $(RULES_NO_SCAN)
+
+tools: $(TOOLDIRS)
$(TOOLDIRS):
@$(MAKE) -C $@
+
+clean-tools:
+ @$(foreach tooldir,$(TOOLDIRS),$(MAKE) clean -C $(tooldir);)
diff --git a/map_data_rules.mk b/map_data_rules.mk
index 626cd47240..cad0531689 100755
--- a/map_data_rules.mk
+++ b/map_data_rules.mk
@@ -1,31 +1,41 @@
# Map JSON data
+# Inputs
MAPS_DIR = $(DATA_ASM_SUBDIR)/maps
LAYOUTS_DIR = $(DATA_ASM_SUBDIR)/layouts
+# Outputs
+MAPS_OUTDIR := $(MAPS_DIR)
+LAYOUTS_OUTDIR := $(LAYOUTS_DIR)
+INCLUDECONSTS_OUTDIR := include/constants
+
+AUTO_GEN_TARGETS += $(INCLUDECONSTS_OUTDIR)/map_groups.h
+AUTO_GEN_TARGETS += $(INCLUDECONSTS_OUTDIR)/layouts.h
+AUTO_GEN_TARGETS += $(INCLUDECONSTS_OUTDIR)/map_event_ids.h
+
MAP_DIRS := $(dir $(wildcard $(MAPS_DIR)/*/map.json))
MAP_CONNECTIONS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/connections.inc,$(MAP_DIRS))
MAP_EVENTS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/events.inc,$(MAP_DIRS))
MAP_HEADERS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/header.inc,$(MAP_DIRS))
+MAP_JSONS := $(patsubst $(MAPS_DIR)/%/,$(MAPS_DIR)/%/map.json,$(MAP_DIRS))
$(DATA_ASM_BUILDDIR)/maps.o: $(DATA_ASM_SUBDIR)/maps.s $(LAYOUTS_DIR)/layouts.inc $(LAYOUTS_DIR)/layouts_table.inc $(MAPS_DIR)/headers.inc $(MAPS_DIR)/groups.inc $(MAPS_DIR)/connections.inc $(MAP_CONNECTIONS) $(MAP_HEADERS)
- $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@
+ $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(PREPROC) -ie $< charmap.txt | $(AS) $(ASFLAGS) -o $@
$(DATA_ASM_BUILDDIR)/map_events.o: $(DATA_ASM_SUBDIR)/map_events.s $(MAPS_DIR)/events.inc $(MAP_EVENTS)
- $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(AS) $(ASFLAGS) -o $@
+ $(PREPROC) $< charmap.txt | $(CPP) -I include - | $(PREPROC) -ie $< charmap.txt | $(AS) $(ASFLAGS) -o $@
-$(MAPS_DIR)/%/header.inc: $(MAPS_DIR)/%/map.json
- $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json
-$(MAPS_DIR)/%/events.inc: $(MAPS_DIR)/%/header.inc ;
-$(MAPS_DIR)/%/connections.inc: $(MAPS_DIR)/%/events.inc ;
-$(MAPS_DIR)/groups.inc: $(MAPS_DIR)/map_groups.json
- $(MAPJSON) groups emerald $<
-$(MAPS_DIR)/connections.inc: $(MAPS_DIR)/groups.inc ;
-$(MAPS_DIR)/events.inc: $(MAPS_DIR)/connections.inc ;
-$(MAPS_DIR)/headers.inc: $(MAPS_DIR)/events.inc ;
-include/constants/map_groups.h: $(MAPS_DIR)/headers.inc ;
+$(MAPS_OUTDIR)/%/header.inc $(MAPS_OUTDIR)/%/events.inc $(MAPS_OUTDIR)/%/connections.inc: $(MAPS_DIR)/%/map.json
+ $(MAPJSON) map emerald $< $(LAYOUTS_DIR)/layouts.json $(@D)
-$(LAYOUTS_DIR)/layouts.inc: $(LAYOUTS_DIR)/layouts.json
- $(MAPJSON) layouts emerald $<
-$(LAYOUTS_DIR)/layouts_table.inc: $(LAYOUTS_DIR)/layouts.inc ;
-include/constants/layouts.h: $(LAYOUTS_DIR)/layouts_table.inc ;
+$(MAPS_OUTDIR)/connections.inc $(MAPS_OUTDIR)/groups.inc $(MAPS_OUTDIR)/events.inc $(MAPS_OUTDIR)/headers.inc $(INCLUDECONSTS_OUTDIR)/map_groups.h: $(MAPS_DIR)/map_groups.json
+ $(MAPJSON) groups emerald $< $(MAPS_OUTDIR) $(INCLUDECONSTS_OUTDIR)
+
+$(LAYOUTS_OUTDIR)/layouts.inc $(LAYOUTS_OUTDIR)/layouts_table.inc $(INCLUDECONSTS_OUTDIR)/layouts.h: $(LAYOUTS_DIR)/layouts.json
+ $(MAPJSON) layouts emerald $< $(LAYOUTS_OUTDIR) $(INCLUDECONSTS_OUTDIR)
+
+# Generate constants for map events, which depend on data that's distributed across the map.json files.
+# There's a lot of map.json files, so we print an abbreviated output with echo.
+$(INCLUDECONSTS_OUTDIR)/map_event_ids.h: $(MAP_JSONS)
+ @$(MAPJSON) event_constants emerald $^ $(INCLUDECONSTS_OUTDIR)/map_event_ids.h
+ @echo "$(MAPJSON) event_constants emerald $(INCLUDECONSTS_OUTDIR)/map_event_ids.h"
diff --git a/songs.mk b/songs.mk
deleted file mode 100644
index 698f983ceb..0000000000
--- a/songs.mk
+++ /dev/null
@@ -1,1264 +0,0 @@
-STD_REVERB = 50
-
-$(MID_BUILDDIR)/%.o: $(MID_SUBDIR)/%.s
- $(AS) $(ASFLAGS) -I sound -o $@ $<
-
-$(MID_SUBDIR)/mus_aqua_magma_hideout.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G076 -V084
-
-$(MID_SUBDIR)/mus_encounter_aqua.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G065 -V086
-
-$(MID_SUBDIR)/mus_route111.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G055 -V076
-
-$(MID_SUBDIR)/mus_encounter_suspicious.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G069 -V078
-
-$(MID_SUBDIR)/mus_b_arena.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G104 -V090
-
-$(MID_SUBDIR)/mus_b_dome.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G111 -V090
-
-$(MID_SUBDIR)/mus_b_dome_lobby.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G111 -V056
-
-$(MID_SUBDIR)/mus_b_factory.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G113 -V100
-
-$(MID_SUBDIR)/mus_b_frontier.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G103 -V094
-
-$(MID_SUBDIR)/mus_b_palace.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G108 -V105
-
-$(MID_SUBDIR)/mus_b_tower_rs.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G035 -V080
-
-$(MID_SUBDIR)/mus_b_pike.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G112 -V092
-
-$(MID_SUBDIR)/mus_vs_trainer.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G119 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_wild.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G117 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_aqua_magma_leader.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G126 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_aqua_magma.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G118 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_gym_leader.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G120 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_champion.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G121 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_kyogre_groudon.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G123 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_rival.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G124 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_regi.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G122 -V080 -P1
-
-$(MID_SUBDIR)/mus_vs_elite_four.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G125 -V080 -P1
-
-$(MID_SUBDIR)/mus_roulette.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G038 -V080
-
-$(MID_SUBDIR)/mus_lilycove_museum.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G020 -V080
-
-$(MID_SUBDIR)/mus_encounter_brendan.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G067 -V078
-
-$(MID_SUBDIR)/mus_encounter_male.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G028 -V080
-
-$(MID_SUBDIR)/mus_victory_road.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G075 -V076
-
-$(MID_SUBDIR)/mus_game_corner.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G072 -V072
-
-$(MID_SUBDIR)/mus_contest_winner.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G085 -V100
-
-$(MID_SUBDIR)/mus_contest_results.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G092 -V080
-
-$(MID_SUBDIR)/mus_contest_lobby.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G098 -V060
-
-$(MID_SUBDIR)/mus_contest.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G086 -V088
-
-$(MID_SUBDIR)/mus_cycling.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G049 -V083
-
-$(MID_SUBDIR)/mus_encounter_champion.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G100 -V076
-
-$(MID_SUBDIR)/mus_petalburg_woods.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G018 -V080
-
-$(MID_SUBDIR)/mus_abandoned_ship.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G030 -V080
-
-$(MID_SUBDIR)/mus_cave_of_origin.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G037 -V080
-
-$(MID_SUBDIR)/mus_underwater.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G057 -V094
-
-$(MID_SUBDIR)/mus_intro.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G060 -V090
-
-$(MID_SUBDIR)/mus_hall_of_fame.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G082 -V078
-
-$(MID_SUBDIR)/mus_route110.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G010 -V080
-
-$(MID_SUBDIR)/mus_route120.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G014 -V080
-
-$(MID_SUBDIR)/mus_route122.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G021 -V080
-
-$(MID_SUBDIR)/mus_route101.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G011 -V080
-
-$(MID_SUBDIR)/mus_dummy.s: %.s: %.mid
- $(MID) $< $@ -E -R40
-
-$(MID_SUBDIR)/mus_hall_of_fame_room.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G093 -V080
-
-$(MID_SUBDIR)/mus_end.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G102 -V036
-
-$(MID_SUBDIR)/mus_help.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G056 -V078
-
-$(MID_SUBDIR)/mus_level_up.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_obtain_item.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_evolved.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_gsc_route38.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -V080
-
-$(MID_SUBDIR)/mus_slateport.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G079 -V070
-
-$(MID_SUBDIR)/mus_poke_mart.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G050 -V085
-
-$(MID_SUBDIR)/mus_oceanic_museum.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G023 -V080
-
-$(MID_SUBDIR)/mus_gym.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G013 -V080
-
-$(MID_SUBDIR)/mus_encounter_may.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G061 -V078
-
-$(MID_SUBDIR)/mus_encounter_female.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G053 -V072
-
-$(MID_SUBDIR)/mus_verdanturf.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G044 -V090
-
-$(MID_SUBDIR)/mus_rustboro.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G045 -V085
-
-$(MID_SUBDIR)/mus_route119.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G048 -V096
-
-$(MID_SUBDIR)/mus_encounter_intense.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G062 -V078
-
-$(MID_SUBDIR)/mus_weather_groudon.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G090 -V050
-
-$(MID_SUBDIR)/mus_dewford.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G073 -V078
-
-$(MID_SUBDIR)/mus_encounter_twins.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G095 -V075
-
-$(MID_SUBDIR)/mus_encounter_interviewer.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G099 -V062
-
-$(MID_SUBDIR)/mus_victory_trainer.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G058 -V091
-
-$(MID_SUBDIR)/mus_victory_wild.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G025 -V080
-
-$(MID_SUBDIR)/mus_victory_gym_leader.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G024 -V080
-
-$(MID_SUBDIR)/mus_victory_aqua_magma.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G070 -V088
-
-$(MID_SUBDIR)/mus_victory_league.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G029 -V080
-
-$(MID_SUBDIR)/mus_caught.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G025 -V080
-
-$(MID_SUBDIR)/mus_encounter_cool.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G063 -V086
-
-$(MID_SUBDIR)/mus_trick_house.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G094 -V070
-
-$(MID_SUBDIR)/mus_route113.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G064 -V084
-
-$(MID_SUBDIR)/mus_sailing.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G077 -V086
-
-$(MID_SUBDIR)/mus_mt_pyre.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G078 -V088
-
-$(MID_SUBDIR)/mus_sealed_chamber.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G084 -V100
-
-$(MID_SUBDIR)/mus_petalburg.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G015 -V080
-
-$(MID_SUBDIR)/mus_fortree.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G032 -V080
-
-$(MID_SUBDIR)/mus_oldale.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G019 -V080
-
-$(MID_SUBDIR)/mus_mt_pyre_exterior.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G080 -V080
-
-$(MID_SUBDIR)/mus_heal.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_slots_jackpot.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_slots_win.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_obtain_badge.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_obtain_berry.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_obtain_b_points.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G103 -V090 -P5
-
-$(MID_SUBDIR)/mus_rg_photo.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G180 -V100 -P5
-
-$(MID_SUBDIR)/mus_evolution_intro.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G026 -V080
-
-$(MID_SUBDIR)/mus_obtain_symbol.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G103 -V100 -P5
-
-$(MID_SUBDIR)/mus_awaken_legend.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_register_match_call.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G105 -V090 -P5
-
-$(MID_SUBDIR)/mus_move_deleted.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_obtain_tmhm.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_too_bad.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G012 -V090 -P5
-
-$(MID_SUBDIR)/mus_encounter_magma.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G087 -V072
-
-$(MID_SUBDIR)/mus_lilycove.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G054 -V085
-
-$(MID_SUBDIR)/mus_littleroot.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G051 -V100
-
-$(MID_SUBDIR)/mus_surf.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G017 -V080
-
-$(MID_SUBDIR)/mus_route104.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G047 -V097
-
-$(MID_SUBDIR)/mus_gsc_pewter.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -V080
-
-$(MID_SUBDIR)/mus_birch_lab.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G033 -V080
-
-$(MID_SUBDIR)/mus_abnormal_weather.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G089 -V080
-
-$(MID_SUBDIR)/mus_school.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G081 -V100
-
-$(MID_SUBDIR)/mus_c_comm_center.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -V080
-
-$(MID_SUBDIR)/mus_poke_center.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G046 -V092
-
-$(MID_SUBDIR)/mus_b_pyramid.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G106 -V079
-
-$(MID_SUBDIR)/mus_b_pyramid_top.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G107 -V077
-
-$(MID_SUBDIR)/mus_ever_grande.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G068 -V086
-
-$(MID_SUBDIR)/mus_rayquaza_appears.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G109 -V090
-
-$(MID_SUBDIR)/mus_rg_rocket_hideout.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G133 -V090
-
-$(MID_SUBDIR)/mus_rg_follow_me.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G131 -V068
-
-$(MID_SUBDIR)/mus_rg_victory_road.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G154 -V090
-
-$(MID_SUBDIR)/mus_rg_cycling.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G141 -V090
-
-$(MID_SUBDIR)/mus_rg_intro_fight.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G136 -V090
-
-$(MID_SUBDIR)/mus_rg_hall_of_fame.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G145 -V079
-
-$(MID_SUBDIR)/mus_rg_encounter_deoxys.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G184 -V079
-
-$(MID_SUBDIR)/mus_rg_credits.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G149 -V090
-
-$(MID_SUBDIR)/mus_rg_encounter_gym_leader.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G144 -V090
-
-$(MID_SUBDIR)/mus_rg_dex_rating.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G175 -V070 -P5
-
-$(MID_SUBDIR)/mus_rg_obtain_key_item.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G178 -V077 -P5
-
-$(MID_SUBDIR)/mus_rg_caught_intro.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G179 -V094 -P5
-
-$(MID_SUBDIR)/mus_rg_caught.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G170 -V100
-
-$(MID_SUBDIR)/mus_rg_cinnabar.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G138 -V090
-
-$(MID_SUBDIR)/mus_rg_gym.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G134 -V090
-
-$(MID_SUBDIR)/mus_rg_fuchsia.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G167 -V090
-
-$(MID_SUBDIR)/mus_rg_poke_jump.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G132 -V090
-
-$(MID_SUBDIR)/mus_rg_heal.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G140 -V090
-
-$(MID_SUBDIR)/mus_rg_oak_lab.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G160 -V075
-
-$(MID_SUBDIR)/mus_rg_berry_pick.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G132 -V090
-
-$(MID_SUBDIR)/mus_rg_vermillion.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G172 -V090
-
-$(MID_SUBDIR)/mus_rg_route1.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G150 -V079
-
-$(MID_SUBDIR)/mus_rg_route3.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G152 -V083
-
-$(MID_SUBDIR)/mus_rg_route11.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G153 -V090
-
-$(MID_SUBDIR)/mus_rg_pallet.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G159 -V100
-
-$(MID_SUBDIR)/mus_rg_surf.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G164 -V071
-
-$(MID_SUBDIR)/mus_rg_sevii_45.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G188 -V084
-
-$(MID_SUBDIR)/mus_rg_sevii_67.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G189 -V084
-
-$(MID_SUBDIR)/mus_rg_sevii_123.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G173 -V084
-
-$(MID_SUBDIR)/mus_rg_sevii_cave.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G147 -V090
-
-$(MID_SUBDIR)/mus_rg_sevii_dungeon.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G146 -V090
-
-$(MID_SUBDIR)/mus_rg_sevii_route.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G187 -V080
-
-$(MID_SUBDIR)/mus_rg_net_center.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G162 -V096
-
-$(MID_SUBDIR)/mus_rg_pewter.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G173 -V084
-
-$(MID_SUBDIR)/mus_rg_oak.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G161 -V086
-
-$(MID_SUBDIR)/mus_rg_mystery_gift.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G183 -V100
-
-$(MID_SUBDIR)/mus_rg_route24.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G151 -V086
-
-$(MID_SUBDIR)/mus_rg_teachy_tv_show.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G131 -V068
-
-$(MID_SUBDIR)/mus_rg_mt_moon.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G147 -V090
-
-$(MID_SUBDIR)/mus_rg_poke_tower.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G165 -V090
-
-$(MID_SUBDIR)/mus_rg_poke_center.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G162 -V096
-
-$(MID_SUBDIR)/mus_rg_poke_flute.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G165 -V048 -P5
-
-$(MID_SUBDIR)/mus_rg_poke_mansion.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G148 -V090
-
-$(MID_SUBDIR)/mus_rg_jigglypuff.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G135 -V068 -P5
-
-$(MID_SUBDIR)/mus_rg_encounter_rival.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G174 -V079
-
-$(MID_SUBDIR)/mus_rg_rival_exit.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G174 -V079
-
-$(MID_SUBDIR)/mus_rg_encounter_rocket.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G142 -V096
-
-$(MID_SUBDIR)/mus_rg_ss_anne.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G163 -V090
-
-$(MID_SUBDIR)/mus_rg_new_game_exit.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G182 -V088
-
-$(MID_SUBDIR)/mus_rg_new_game_intro.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G182 -V088
-
-$(MID_SUBDIR)/mus_rg_lavender.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G139 -V090
-
-$(MID_SUBDIR)/mus_rg_silph.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G166 -V076
-
-$(MID_SUBDIR)/mus_rg_encounter_girl.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G143 -V051
-
-$(MID_SUBDIR)/mus_rg_encounter_boy.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G144 -V090
-
-$(MID_SUBDIR)/mus_rg_game_corner.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G132 -V090
-
-$(MID_SUBDIR)/mus_rg_slow_pallet.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G159 -V092
-
-$(MID_SUBDIR)/mus_rg_new_game_instruct.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G182 -V085
-
-$(MID_SUBDIR)/mus_rg_viridian_forest.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G146 -V090
-
-$(MID_SUBDIR)/mus_rg_trainer_tower.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G134 -V090
-
-$(MID_SUBDIR)/mus_rg_celadon.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G168 -V070
-
-$(MID_SUBDIR)/mus_rg_title.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G137 -V090
-
-$(MID_SUBDIR)/mus_rg_game_freak.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G181 -V075
-
-$(MID_SUBDIR)/mus_rg_teachy_tv_menu.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G186 -V059
-
-$(MID_SUBDIR)/mus_rg_union_room.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G132 -V090
-
-$(MID_SUBDIR)/mus_rg_vs_legend.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G157 -V090
-
-$(MID_SUBDIR)/mus_rg_vs_deoxys.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G185 -V080
-
-$(MID_SUBDIR)/mus_rg_vs_gym_leader.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G155 -V090
-
-$(MID_SUBDIR)/mus_rg_vs_champion.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G158 -V090
-
-$(MID_SUBDIR)/mus_rg_vs_mewtwo.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G157 -V090
-
-$(MID_SUBDIR)/mus_rg_vs_trainer.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G156 -V090
-
-$(MID_SUBDIR)/mus_rg_vs_wild.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G157 -V090
-
-$(MID_SUBDIR)/mus_rg_victory_gym_leader.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G171 -V090
-
-$(MID_SUBDIR)/mus_rg_victory_trainer.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G169 -V089
-
-$(MID_SUBDIR)/mus_rg_victory_wild.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G170 -V090
-
-$(MID_SUBDIR)/mus_cable_car.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G071 -V078
-
-$(MID_SUBDIR)/mus_sootopolis.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G091 -V062
-
-$(MID_SUBDIR)/mus_safari_zone.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G074 -V082
-
-$(MID_SUBDIR)/mus_b_tower.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G110 -V100
-
-$(MID_SUBDIR)/mus_evolution.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G026 -V080
-
-$(MID_SUBDIR)/mus_encounter_elite_four.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G096 -V078
-
-$(MID_SUBDIR)/mus_c_vs_legend_beast.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -V080
-
-$(MID_SUBDIR)/mus_encounter_swimmer.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G036 -V080
-
-$(MID_SUBDIR)/mus_encounter_girl.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G027 -V080
-
-$(MID_SUBDIR)/mus_intro_battle.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G088 -V088
-
-$(MID_SUBDIR)/mus_encounter_rich.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G043 -V094
-
-$(MID_SUBDIR)/mus_link_contest_p1.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G039 -V079
-
-$(MID_SUBDIR)/mus_link_contest_p2.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G040 -V090
-
-$(MID_SUBDIR)/mus_link_contest_p3.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G041 -V075
-
-$(MID_SUBDIR)/mus_link_contest_p4.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G042 -V090
-
-$(MID_SUBDIR)/mus_littleroot_test.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G034 -V099
-
-$(MID_SUBDIR)/mus_credits.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G101 -V100
-
-$(MID_SUBDIR)/mus_title.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G059 -V090
-
-$(MID_SUBDIR)/mus_fallarbor.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G083 -V100
-
-$(MID_SUBDIR)/mus_mt_chimney.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G052 -V078
-
-$(MID_SUBDIR)/mus_follow_me.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G066 -V074
-
-$(MID_SUBDIR)/mus_vs_frontier_brain.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G115 -V090 -P1
-
-$(MID_SUBDIR)/mus_vs_mew.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G116 -V090
-
-$(MID_SUBDIR)/mus_vs_rayquaza.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G114 -V080 -P1
-
-$(MID_SUBDIR)/mus_encounter_hiker.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G097 -V076
-
-$(MID_SUBDIR)/ph_choice_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_choice_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_choice_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_cloth_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_cloth_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_cloth_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_cure_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_cure_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_cure_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_dress_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_dress_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_dress_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_face_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_face_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_face_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_fleece_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_fleece_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_fleece_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_foot_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_foot_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_foot_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_goat_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_goat_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_goat_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_goose_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_goose_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_goose_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_kit_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_kit_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_kit_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_lot_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_lot_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_lot_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_mouth_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_mouth_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_mouth_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_nurse_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_nurse_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_nurse_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_price_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_price_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_price_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_strut_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_strut_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_strut_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_thought_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_thought_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_thought_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_trap_blend.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_trap_held.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/ph_trap_solo.s: %.s: %.mid
- $(MID) $< $@ -E -G130 -P4
-
-$(MID_SUBDIR)/se_a.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V095 -P4
-
-$(MID_SUBDIR)/se_bang.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_taillow_wing_flap.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P5
-
-$(MID_SUBDIR)/se_glass_flute.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P5
-
-$(MID_SUBDIR)/se_boo.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P4
-
-$(MID_SUBDIR)/se_ball.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V070 -P4
-
-$(MID_SUBDIR)/se_ball_open.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_mugshot.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P5
-
-$(MID_SUBDIR)/se_contest_heart.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P5
-
-$(MID_SUBDIR)/se_contest_curtain_fall.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V070 -P5
-
-$(MID_SUBDIR)/se_contest_curtain_rise.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V070 -P5
-
-$(MID_SUBDIR)/se_contest_icon_change.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P5
-
-$(MID_SUBDIR)/se_contest_mons_turn.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P5
-
-$(MID_SUBDIR)/se_contest_icon_clear.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P5
-
-$(MID_SUBDIR)/se_card.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P4
-
-$(MID_SUBDIR)/se_pike_curtain_close.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
-
-$(MID_SUBDIR)/se_pike_curtain_open.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
-
-$(MID_SUBDIR)/se_ledge.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P4
-
-$(MID_SUBDIR)/se_itemfinder.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P5
-
-$(MID_SUBDIR)/se_applause.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P5
-
-$(MID_SUBDIR)/se_field_poison.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
-
-$(MID_SUBDIR)/se_door.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V080 -P5
-
-$(MID_SUBDIR)/se_e.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P4
-
-$(MID_SUBDIR)/se_elevator.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_escalator.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_exp.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V080 -P5
-
-$(MID_SUBDIR)/se_exp_max.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V094 -P5
-
-$(MID_SUBDIR)/se_fu_zaku.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V120 -P4
-
-$(MID_SUBDIR)/se_contest_condition_lose.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P4
-
-$(MID_SUBDIR)/se_lavaridge_fall_warp.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -P4
-
-$(MID_SUBDIR)/se_balloon_red.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P4
-
-$(MID_SUBDIR)/se_balloon_blue.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P4
-
-$(MID_SUBDIR)/se_balloon_yellow.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P4
-
-$(MID_SUBDIR)/se_arena_timeup1.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
-
-$(MID_SUBDIR)/se_arena_timeup2.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
-
-$(MID_SUBDIR)/se_bridge_walk.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V095 -P4
-
-$(MID_SUBDIR)/se_failure.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V120 -P4
-
-$(MID_SUBDIR)/se_rotating_gate.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P4
-
-$(MID_SUBDIR)/se_low_health.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P3
-
-$(MID_SUBDIR)/se_i.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P4
-
-$(MID_SUBDIR)/se_sliding_door.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V095 -P4
-
-$(MID_SUBDIR)/se_vend.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_bike_hop.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P4
-
-$(MID_SUBDIR)/se_bike_bell.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P4
-
-$(MID_SUBDIR)/se_contest_place.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P4
-
-$(MID_SUBDIR)/se_exit.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V120 -P5
-
-$(MID_SUBDIR)/se_use_item.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_unlock.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_ball_bounce_1.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_ball_bounce_2.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_ball_bounce_3.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_ball_bounce_4.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_super_effective.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
-
-$(MID_SUBDIR)/se_not_effective.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
-
-$(MID_SUBDIR)/se_effective.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
-
-$(MID_SUBDIR)/se_puddle.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V020 -P4
-
-$(MID_SUBDIR)/se_berry_blender.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P4
-
-$(MID_SUBDIR)/se_switch.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P4
-
-$(MID_SUBDIR)/se_n.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -P4
-
-$(MID_SUBDIR)/se_ball_throw.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P5
-
-$(MID_SUBDIR)/se_ship.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V075 -P4
-
-$(MID_SUBDIR)/se_flee.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P5
-
-$(MID_SUBDIR)/se_o.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P4
-
-$(MID_SUBDIR)/se_intro_blast.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_pc_login.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_pc_off.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_pc_on.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_pin.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V060 -P4
-
-$(MID_SUBDIR)/se_ding_dong.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P5
-
-$(MID_SUBDIR)/se_pokenav_off.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_pokenav_on.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_faint.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
-
-$(MID_SUBDIR)/se_shiny.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V095 -P5
-
-$(MID_SUBDIR)/se_shop.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P5
-
-$(MID_SUBDIR)/se_rg_bag_cursor.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
-
-$(MID_SUBDIR)/se_rg_bag_pocket.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
-
-$(MID_SUBDIR)/se_rg_card_flip.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
-
-$(MID_SUBDIR)/se_rg_card_flipping.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
-
-$(MID_SUBDIR)/se_rg_card_open.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V112 -P5
-
-$(MID_SUBDIR)/se_rg_deoxys_move.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V080 -P5
-
-$(MID_SUBDIR)/se_rg_poke_jump_success.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P5
-
-$(MID_SUBDIR)/se_rg_ball_click.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V100 -P5
-
-$(MID_SUBDIR)/se_rg_help_close.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V095 -P5
-
-$(MID_SUBDIR)/se_rg_help_error.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V125 -P5
-
-$(MID_SUBDIR)/se_rg_help_open.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V096 -P5
-
-$(MID_SUBDIR)/se_rg_ss_anne_horn.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V096 -P5
-
-$(MID_SUBDIR)/se_rg_poke_jump_failure.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -P5
-
-$(MID_SUBDIR)/se_rg_shop.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V080 -P5
-
-$(MID_SUBDIR)/se_rg_door.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V100 -P5
-
-$(MID_SUBDIR)/se_ice_crack.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P4
-
-$(MID_SUBDIR)/se_ice_stairs.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P4
-
-$(MID_SUBDIR)/se_ice_break.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_fall.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_save.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V080 -P5
-
-$(MID_SUBDIR)/se_success.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V080 -P4
-
-$(MID_SUBDIR)/se_select.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V080 -P5
-
-$(MID_SUBDIR)/se_ball_trade.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_thunderstorm.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V080 -P2
-
-$(MID_SUBDIR)/se_thunderstorm_stop.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V080 -P2
-
-$(MID_SUBDIR)/se_thunder.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P3
-
-$(MID_SUBDIR)/se_thunder2.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P3
-
-$(MID_SUBDIR)/se_rain.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V080 -P2
-
-$(MID_SUBDIR)/se_rain_stop.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V080 -P2
-
-$(MID_SUBDIR)/se_downpour.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P2
-
-$(MID_SUBDIR)/se_downpour_stop.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P2
-
-$(MID_SUBDIR)/se_orb.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P5
-
-$(MID_SUBDIR)/se_egg_hatch.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P5
-
-$(MID_SUBDIR)/se_roulette_ball.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P2
-
-$(MID_SUBDIR)/se_roulette_ball2.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P2
-
-$(MID_SUBDIR)/se_ball_tray_exit.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
-
-$(MID_SUBDIR)/se_ball_tray_ball.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P5
-
-$(MID_SUBDIR)/se_ball_tray_enter.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P5
-
-$(MID_SUBDIR)/se_click.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P4
-
-$(MID_SUBDIR)/se_warp_in.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P4
-
-$(MID_SUBDIR)/se_warp_out.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P4
-
-$(MID_SUBDIR)/se_pokenav_call.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V120 -P5
-
-$(MID_SUBDIR)/se_pokenav_hang_up.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V110 -P5
-
-$(MID_SUBDIR)/se_note_a.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_note_b.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_note_c.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_note_c_high.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_note_d.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_mud_ball.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_note_e.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_note_f.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_note_g.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_breakable_door.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_truck_door.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_truck_unload.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -P4
-
-$(MID_SUBDIR)/se_truck_move.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -P4
-
-$(MID_SUBDIR)/se_truck_stop.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -P4
-
-$(MID_SUBDIR)/se_repel.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P4
-
-$(MID_SUBDIR)/se_u.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -P4
-
-$(MID_SUBDIR)/se_sudowoodo_shake.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G129 -V077 -P5
-
-$(MID_SUBDIR)/se_m_double_slap.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_comet_punch.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P4
-
-$(MID_SUBDIR)/se_m_pay_day.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V095 -P4
-
-$(MID_SUBDIR)/se_m_fire_punch.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_scratch.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_vicegrip.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_razor_wind.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_razor_wind2.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P4
-
-$(MID_SUBDIR)/se_m_swords_dance.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_m_cut.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P4
-
-$(MID_SUBDIR)/se_m_gust.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_gust2.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_wing_attack.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P4
-
-$(MID_SUBDIR)/se_m_fly.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_bind.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
-
-$(MID_SUBDIR)/se_m_mega_kick.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P4
-
-$(MID_SUBDIR)/se_m_mega_kick2.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_jump_kick.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_sand_attack.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_headbutt.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_horn_attack.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_take_down.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P4
-
-$(MID_SUBDIR)/se_m_tail_whip.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_m_leer.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
-
-$(MID_SUBDIR)/se_dex_search.s: %.s: %.mid
- $(MID) $< $@ -E -R$(STD_REVERB) -G127 -v100 -P5
diff --git a/sound/music_player_table.inc b/sound/music_player_table.inc
index 5981a4d037..955d4d556f 100644
--- a/sound/music_player_table.inc
+++ b/sound/music_player_table.inc
@@ -5,6 +5,7 @@
.equiv NUM_TRACKS_SE3, 1
.bss
+ .align 2
gMPlayTrack_BGM::
.space TRACK_SIZE * NUM_TRACKS_BGM
diff --git a/sound/songs/midi/midi.cfg b/sound/songs/midi/midi.cfg
new file mode 100644
index 0000000000..5802904b41
--- /dev/null
+++ b/sound/songs/midi/midi.cfg
@@ -0,0 +1,420 @@
+mus_abandoned_ship.mid: -E -R50 -G030 -V080
+mus_abnormal_weather.mid: -E -R50 -G089 -V080
+mus_aqua_magma_hideout.mid: -E -R50 -G076 -V084
+mus_awaken_legend.mid: -E -R50 -G012 -V090 -P5
+mus_b_arena.mid: -E -R50 -G104 -V090
+mus_b_dome_lobby.mid: -E -R50 -G111 -V056
+mus_b_dome.mid: -E -R50 -G111 -V090
+mus_b_factory.mid: -E -R50 -G113 -V100
+mus_b_frontier.mid: -E -R50 -G103 -V094
+mus_b_palace.mid: -E -R50 -G108 -V105
+mus_b_pike.mid: -E -R50 -G112 -V092
+mus_b_pyramid_top.mid: -E -R50 -G107 -V077
+mus_b_pyramid.mid: -E -R50 -G106 -V079
+mus_b_tower_rs.mid: -E -R50 -G035 -V080
+mus_b_tower.mid: -E -R50 -G110 -V100
+mus_birch_lab.mid: -E -R50 -G033 -V080
+mus_c_comm_center.mid: -E -R50 -V080
+mus_c_vs_legend_beast.mid: -E -R50 -V080
+mus_cable_car.mid: -E -R50 -G071 -V078
+mus_caught.mid: -E -R50 -G025 -V080
+mus_cave_of_origin.mid: -E -R50 -G037 -V080
+mus_contest_lobby.mid: -E -R50 -G098 -V060
+mus_contest_results.mid: -E -R50 -G092 -V080
+mus_contest_winner.mid: -E -R50 -G085 -V100
+mus_contest.mid: -E -R50 -G086 -V088
+mus_credits.mid: -E -R50 -G101 -V100
+mus_cycling.mid: -E -R50 -G049 -V083
+mus_dewford.mid: -E -R50 -G073 -V078
+mus_dummy.mid: -E -R40
+mus_encounter_aqua.mid: -E -R50 -G065 -V086
+mus_encounter_brendan.mid: -E -R50 -G067 -V078
+mus_encounter_champion.mid: -E -R50 -G100 -V076
+mus_encounter_cool.mid: -E -R50 -G063 -V086
+mus_encounter_elite_four.mid: -E -R50 -G096 -V078
+mus_encounter_female.mid: -E -R50 -G053 -V072
+mus_encounter_girl.mid: -E -R50 -G027 -V080
+mus_encounter_hiker.mid: -E -R50 -G097 -V076
+mus_encounter_intense.mid: -E -R50 -G062 -V078
+mus_encounter_interviewer.mid: -E -R50 -G099 -V062
+mus_encounter_magma.mid: -E -R50 -G087 -V072
+mus_encounter_male.mid: -E -R50 -G028 -V080
+mus_encounter_may.mid: -E -R50 -G061 -V078
+mus_encounter_rich.mid: -E -R50 -G043 -V094
+mus_encounter_suspicious.mid: -E -R50 -G069 -V078
+mus_encounter_swimmer.mid: -E -R50 -G036 -V080
+mus_encounter_twins.mid: -E -R50 -G095 -V075
+mus_end.mid: -E -R50 -G102 -V036
+mus_ever_grande.mid: -E -R50 -G068 -V086
+mus_evolution_intro.mid: -E -R50 -G026 -V080
+mus_evolution.mid: -E -R50 -G026 -V080
+mus_evolved.mid: -E -R50 -G012 -V090 -P5
+mus_fallarbor.mid: -E -R50 -G083 -V100
+mus_follow_me.mid: -E -R50 -G066 -V074
+mus_fortree.mid: -E -R50 -G032 -V080
+mus_game_corner.mid: -E -R50 -G072 -V072
+mus_gsc_pewter.mid: -E -R50 -V080
+mus_gsc_route38.mid: -E -R50 -V080
+mus_gym.mid: -E -R50 -G013 -V080
+mus_hall_of_fame_room.mid: -E -R50 -G093 -V080
+mus_hall_of_fame.mid: -E -R50 -G082 -V078
+mus_heal.mid: -E -R50 -G012 -V090 -P5
+mus_help.mid: -E -R50 -G056 -V078
+mus_intro_battle.mid: -E -R50 -G088 -V088
+mus_intro.mid: -E -R50 -G060 -V090
+mus_level_up.mid: -E -R50 -G012 -V090 -P5
+mus_lilycove_museum.mid: -E -R50 -G020 -V080
+mus_lilycove.mid: -E -R50 -G054 -V085
+mus_link_contest_p1.mid: -E -R50 -G039 -V079
+mus_link_contest_p2.mid: -E -R50 -G040 -V090
+mus_link_contest_p3.mid: -E -R50 -G041 -V075
+mus_link_contest_p4.mid: -E -R50 -G042 -V090
+mus_littleroot_test.mid: -E -R50 -G034 -V099
+mus_littleroot.mid: -E -R50 -G051 -V100
+mus_move_deleted.mid: -E -R50 -G012 -V090 -P5
+mus_mt_chimney.mid: -E -R50 -G052 -V078
+mus_mt_pyre_exterior.mid: -E -R50 -G080 -V080
+mus_mt_pyre.mid: -E -R50 -G078 -V088
+mus_obtain_b_points.mid: -E -R50 -G103 -V090 -P5
+mus_obtain_badge.mid: -E -R50 -G012 -V090 -P5
+mus_obtain_berry.mid: -E -R50 -G012 -V090 -P5
+mus_obtain_item.mid: -E -R50 -G012 -V090 -P5
+mus_obtain_symbol.mid: -E -R50 -G103 -V100 -P5
+mus_obtain_tmhm.mid: -E -R50 -G012 -V090 -P5
+mus_oceanic_museum.mid: -E -R50 -G023 -V080
+mus_oldale.mid: -E -R50 -G019 -V080
+mus_petalburg_woods.mid: -E -R50 -G018 -V080
+mus_petalburg.mid: -E -R50 -G015 -V080
+mus_poke_center.mid: -E -R50 -G046 -V092
+mus_poke_mart.mid: -E -R50 -G050 -V085
+mus_rayquaza_appears.mid: -E -R50 -G109 -V090
+mus_register_match_call.mid: -E -R50 -G105 -V090 -P5
+mus_rg_berry_pick.mid: -E -R50 -G132 -V090
+mus_rg_caught_intro.mid: -E -R50 -G179 -V094 -P5
+mus_rg_caught.mid: -E -R50 -G170 -V100
+mus_rg_celadon.mid: -E -R50 -G168 -V070
+mus_rg_cinnabar.mid: -E -R50 -G138 -V090
+mus_rg_credits.mid: -E -R50 -G149 -V090
+mus_rg_cycling.mid: -E -R50 -G141 -V090
+mus_rg_dex_rating.mid: -E -R50 -G175 -V070 -P5
+mus_rg_encounter_boy.mid: -E -R50 -G144 -V090
+mus_rg_encounter_deoxys.mid: -E -R50 -G184 -V079
+mus_rg_encounter_girl.mid: -E -R50 -G143 -V051
+mus_rg_encounter_gym_leader: -E -R50 -G144 -V090
+mus_rg_encounter_rival.mid: -E -R50 -G174 -V079
+mus_rg_encounter_rocket.mid: -E -R50 -G142 -V096
+mus_rg_follow_me.mid: -E -R50 -G131 -V068
+mus_rg_fuchsia.mid: -E -R50 -G167 -V090
+mus_rg_game_corner.mid: -E -R50 -G132 -V090
+mus_rg_game_freak.mid: -E -R50 -G181 -V075
+mus_rg_gym.mid: -E -R50 -G134 -V090
+mus_rg_hall_of_fame.mid: -E -R50 -G145 -V079
+mus_rg_heal.mid: -E -R50 -G140 -V090
+mus_rg_intro_fight.mid: -E -R50 -G136 -V090
+mus_rg_jigglypuff.mid: -E -R50 -G135 -V068 -P5
+mus_rg_lavender.mid: -E -R50 -G139 -V090
+mus_rg_mt_moon.mid: -E -R50 -G147 -V090
+mus_rg_mystery_gift.mid: -E -R50 -G183 -V100
+mus_rg_net_center.mid: -E -R50 -G162 -V096
+mus_rg_new_game_exit.mid: -E -R50 -G182 -V088
+mus_rg_new_game_instruct.mid: -E -R50 -G182 -V085
+mus_rg_new_game_intro.mid: -E -R50 -G182 -V088
+mus_rg_oak_lab.mid: -E -R50 -G160 -V075
+mus_rg_oak.mid: -E -R50 -G161 -V086
+mus_rg_obtain_key_item.mid: -E -R50 -G178 -V077 -P5
+mus_rg_pallet.mid: -E -R50 -G159 -V100
+mus_rg_pewter.mid: -E -R50 -G173 -V084
+mus_rg_photo.mid: -E -R50 -G180 -V100 -P5
+mus_rg_poke_center.mid: -E -R50 -G162 -V096
+mus_rg_poke_flute.mid: -E -R50 -G165 -V048 -P5
+mus_rg_poke_jump.mid: -E -R50 -G132 -V090
+mus_rg_poke_mansion.mid: -E -R50 -G148 -V090
+mus_rg_poke_tower.mid: -E -R50 -G165 -V090
+mus_rg_rival_exit.mid: -E -R50 -G174 -V079
+mus_rg_rocket_hideout.mid: -E -R50 -G133 -V090
+mus_rg_route1.mid: -E -R50 -G150 -V079
+mus_rg_route3.mid: -E -R50 -G152 -V083
+mus_rg_route11.mid: -E -R50 -G153 -V090
+mus_rg_route24.mid: -E -R50 -G151 -V086
+mus_rg_sevii_45.mid: -E -R50 -G188 -V084
+mus_rg_sevii_67.mid: -E -R50 -G189 -V084
+mus_rg_sevii_123.mid: -E -R50 -G173 -V084
+mus_rg_sevii_cave.mid: -E -R50 -G147 -V090
+mus_rg_sevii_dungeon.mid: -E -R50 -G146 -V090
+mus_rg_sevii_route.mid: -E -R50 -G187 -V080
+mus_rg_silph.mid: -E -R50 -G166 -V076
+mus_rg_slow_pallet.mid: -E -R50 -G159 -V092
+mus_rg_ss_anne.mid: -E -R50 -G163 -V090
+mus_rg_surf.mid: -E -R50 -G164 -V071
+mus_rg_teachy_tv_menu.mid: -E -R50 -G186 -V059
+mus_rg_teachy_tv_show.mid: -E -R50 -G131 -V068
+mus_rg_title.mid: -E -R50 -G137 -V090
+mus_rg_trainer_tower.mid: -E -R50 -G134 -V090
+mus_rg_union_room.mid: -E -R50 -G132 -V090
+mus_rg_vermillion.mid: -E -R50 -G172 -V090
+mus_rg_victory_gym_leader.mid: -E -R50 -G171 -V090
+mus_rg_victory_road.mid: -E -R50 -G154 -V090
+mus_rg_victory_trainer.mid: -E -R50 -G169 -V089
+mus_rg_victory_wild.mid: -E -R50 -G170 -V090
+mus_rg_viridian_forest.mid: -E -R50 -G146 -V090
+mus_rg_vs_champion.mid: -E -R50 -G158 -V090
+mus_rg_vs_deoxys.mid: -E -R50 -G185 -V080
+mus_rg_vs_gym_leader.mid: -E -R50 -G155 -V090
+mus_rg_vs_legend.mid: -E -R50 -G157 -V090
+mus_rg_vs_mewtwo.mid: -E -R50 -G157 -V090
+mus_rg_vs_trainer.mid: -E -R50 -G156 -V090
+mus_rg_vs_wild.mid: -E -R50 -G157 -V090
+mus_roulette.mid: -E -R50 -G038 -V080
+mus_route101.mid: -E -R50 -G011 -V080
+mus_route104.mid: -E -R50 -G047 -V097
+mus_route110.mid: -E -R50 -G010 -V080
+mus_route111.mid: -E -R50 -G055 -V076
+mus_route113.mid: -E -R50 -G064 -V084
+mus_route119.mid: -E -R50 -G048 -V096
+mus_route120.mid: -E -R50 -G014 -V080
+mus_route122.mid: -E -R50 -G021 -V080
+mus_rustboro.mid: -E -R50 -G045 -V085
+mus_safari_zone.mid: -E -R50 -G074 -V082
+mus_sailing.mid: -E -R50 -G077 -V086
+mus_school.mid: -E -R50 -G081 -V100
+mus_sealed_chamber.mid: -E -R50 -G084 -V100
+mus_slateport.mid: -E -R50 -G079 -V070
+mus_slots_jackpot.mid: -E -R50 -G012 -V090 -P5
+mus_slots_win.mid: -E -R50 -G012 -V090 -P5
+mus_sootopolis.mid: -E -R50 -G091 -V062
+mus_surf.mid: -E -R50 -G017 -V080
+mus_title.mid: -E -R50 -G059 -V090
+mus_too_bad.mid: -E -R50 -G012 -V090 -P5
+mus_trick_house.mid: -E -R50 -G094 -V070
+mus_underwater.mid: -E -R50 -G057 -V094
+mus_verdanturf.mid: -E -R50 -G044 -V090
+mus_victory_aqua_magma.mid: -E -R50 -G070 -V088
+mus_victory_gym_leader.mid: -E -R50 -G024 -V080
+mus_victory_league.mid: -E -R50 -G029 -V080
+mus_victory_road.mid: -E -R50 -G075 -V076
+mus_victory_trainer.mid: -E -R50 -G058 -V091
+mus_victory_wild.mid: -E -R50 -G025 -V080
+mus_vs_aqua_magma_leader.mid: -E -R50 -G126 -V080 -P1
+mus_vs_aqua_magma.mid: -E -R50 -G118 -V080 -P1
+mus_vs_champion.mid: -E -R50 -G121 -V080 -P1
+mus_vs_elite_four.mid: -E -R50 -G125 -V080 -P1
+mus_vs_frontier_brain.mid: -E -R50 -G115 -V090 -P1
+mus_vs_gym_leader.mid: -E -R50 -G120 -V080 -P1
+mus_vs_kyogre_groudon.mid: -E -R50 -G123 -V080 -P1
+mus_vs_mew.mid: -E -R50 -G116 -V090
+mus_vs_rayquaza.mid: -E -R50 -G114 -V080 -P1
+mus_vs_regi.mid: -E -R50 -G122 -V080 -P1
+mus_vs_rival.mid: -E -R50 -G124 -V080 -P1
+mus_vs_trainer.mid: -E -R50 -G119 -V080 -P1
+mus_vs_wild.mid: -E -R50 -G117 -V080 -P1
+mus_weather_groudon.mid: -E -R50 -G090 -V050
+ph_choice_blend.mid: -E -G130 -P4
+ph_choice_held.mid: -E -G130 -P4
+ph_choice_solo.mid: -E -G130 -P4
+ph_cloth_blend.mid: -E -G130 -P4
+ph_cloth_held.mid: -E -G130 -P4
+ph_cloth_solo.mid: -E -G130 -P4
+ph_cure_blend.mid: -E -G130 -P4
+ph_cure_held.mid: -E -G130 -P4
+ph_cure_solo.mid: -E -G130 -P4
+ph_dress_blend.mid: -E -G130 -P4
+ph_dress_held.mid: -E -G130 -P4
+ph_dress_solo.mid: -E -G130 -P4
+ph_face_blend.mid: -E -G130 -P4
+ph_face_held.mid: -E -G130 -P4
+ph_face_solo.mid: -E -G130 -P4
+ph_fleece_blend.mid: -E -G130 -P4
+ph_fleece_held.mid: -E -G130 -P4
+ph_fleece_solo.mid: -E -G130 -P4
+ph_foot_blend.mid: -E -G130 -P4
+ph_foot_held.mid: -E -G130 -P4
+ph_foot_solo.mid: -E -G130 -P4
+ph_goat_blend.mid: -E -G130 -P4
+ph_goat_held.mid: -E -G130 -P4
+ph_goat_solo.mid: -E -G130 -P4
+ph_goose_blend.mid: -E -G130 -P4
+ph_goose_held.mid: -E -G130 -P4
+ph_goose_solo.mid: -E -G130 -P4
+ph_kit_blend.mid: -E -G130 -P4
+ph_kit_held.mid: -E -G130 -P4
+ph_kit_solo.mid: -E -G130 -P4
+ph_lot_blend.mid: -E -G130 -P4
+ph_lot_held.mid: -E -G130 -P4
+ph_lot_solo.mid: -E -G130 -P4
+ph_mouth_blend.mid: -E -G130 -P4
+ph_mouth_held.mid: -E -G130 -P4
+ph_mouth_solo.mid: -E -G130 -P4
+ph_nurse_blend.mid: -E -G130 -P4
+ph_nurse_held.mid: -E -G130 -P4
+ph_nurse_solo.mid: -E -G130 -P4
+ph_price_blend.mid: -E -G130 -P4
+ph_price_held.mid: -E -G130 -P4
+ph_price_solo.mid: -E -G130 -P4
+ph_strut_blend.mid: -E -G130 -P4
+ph_strut_held.mid: -E -G130 -P4
+ph_strut_solo.mid: -E -G130 -P4
+ph_thought_blend.mid: -E -G130 -P4
+ph_thought_held.mid: -E -G130 -P4
+ph_thought_solo.mid: -E -G130 -P4
+ph_trap_blend.mid: -E -G130 -P4
+ph_trap_held.mid: -E -G130 -P4
+ph_trap_solo.mid: -E -G130 -P4
+se_a.mid: -E -R50 -G128 -V095 -P4
+se_applause.mid: -E -R50 -G128 -V100 -P5
+se_arena_timeup1.mid: -E -R50 -G129 -P5
+se_arena_timeup2.mid: -E -R50 -G129 -P5
+se_ball_bounce_1.mid: -E -R50 -G128 -V100 -P4
+se_ball_bounce_2.mid: -E -R50 -G128 -V100 -P4
+se_ball_bounce_3.mid: -E -R50 -G128 -V100 -P4
+se_ball_bounce_4.mid: -E -R50 -G128 -V100 -P4
+se_ball_open.mid: -E -R50 -G127 -V100 -P5
+se_ball_throw.mid: -E -R50 -G128 -V120 -P5
+se_ball_trade.mid: -E -R50 -G127 -V100 -P5
+se_ball_tray_ball.mid: -E -R50 -G128 -V110 -P5
+se_ball_tray_enter.mid: -E -R50 -G128 -V110 -P5
+se_ball_tray_exit.mid: -E -R50 -G127 -V100 -P5
+se_ball.mid: -E -R50 -G127 -V070 -P4
+se_balloon_blue.mid: -E -R50 -G128 -V105 -P4
+se_balloon_red.mid: -E -R50 -G128 -V105 -P4
+se_balloon_yellow.mid: -E -R50 -G128 -V105 -P4
+se_bang.mid: -E -R50 -G128 -V110 -P4
+se_berry_blender.mid: -E -R50 -G128 -V090 -P4
+se_bike_bell.mid: -E -R50 -G128 -V090 -P4
+se_bike_hop.mid: -E -R50 -G127 -V090 -P4
+se_boo.mid: -E -R50 -G127 -V110 -P4
+se_breakable_door.mid: -E -R50 -G128 -V110 -P4
+se_bridge_walk.mid: -E -R50 -G128 -V095 -P4
+se_card.mid: -E -R50 -G127 -V100 -P4
+se_click.mid: -E -R50 -G127 -V110 -P4
+se_contest_condition_lose.mid: -E -R50 -G127 -V110 -P4
+se_contest_curtain_fall.mid: -E -R50 -G128 -V070 -P5
+se_contest_curtain_rise.mid: -E -R50 -G128 -V070 -P5
+se_contest_heart.mid: -E -R50 -G128 -V090 -P5
+se_contest_icon_change.mid: -E -R50 -G128 -V110 -P5
+se_contest_icon_clear.mid: -E -R50 -G128 -V090 -P5
+se_contest_mons_turn.mid: -E -R50 -G128 -V090 -P5
+se_contest_place.mid: -E -R50 -G127 -V110 -P4
+se_dex_search.mid: -E -R50 -G127 -v100 -P5
+se_ding_dong.mid: -E -R50 -G127 -V090 -P5
+se_door.mid: -E -R50 -G127 -V080 -P5
+se_downpour_stop.mid: -E -R50 -G128 -V100 -P2
+se_downpour.mid: -E -R50 -G128 -V100 -P2
+se_e.mid: -E -R50 -G128 -V120 -P4
+se_effective.mid: -E -R50 -G127 -V110 -P5
+se_egg_hatch.mid: -E -R50 -G128 -V120 -P5
+se_elevator.mid: -E -R50 -G128 -V100 -P4
+se_escalator.mid: -E -R50 -G128 -V100 -P4
+se_exit.mid: -E -R50 -G127 -V120 -P5
+se_exp_max.mid: -E -R50 -G128 -V094 -P5
+se_exp.mid: -E -R50 -G127 -V080 -P5
+se_failure.mid: -E -R50 -G127 -V120 -P4
+se_faint.mid: -E -R50 -G127 -V110 -P5
+se_fall.mid: -E -R50 -G128 -V110 -P4
+se_field_poison.mid: -E -R50 -G127 -V110 -P5
+se_flee.mid: -E -R50 -G127 -V090 -P5
+se_fu_zaku.mid: -E -R50 -G127 -V120 -P4
+se_glass_flute.mid: -E -R50 -G128 -V105 -P5
+se_i.mid: -E -R50 -G128 -V120 -P4
+se_ice_break.mid: -E -R50 -G128 -V100 -P4
+se_ice_crack.mid: -E -R50 -G127 -V100 -P4
+se_ice_stairs.mid: -E -R50 -G128 -V090 -P4
+se_intro_blast.mid: -E -R50 -G127 -V100 -P5
+se_itemfinder.mid: -E -R50 -G127 -V090 -P5
+se_lavaridge_fall_warp.mid: -E -R50 -G127 -P4
+se_ledge.mid: -E -R50 -G127 -V100 -P4
+se_low_health.mid: -E -R50 -G127 -V100 -P3
+se_m_bind.mid: -E -R50 -G128 -V100 -P4
+se_m_comet_punch.mid: -E -R50 -G128 -V120 -P4
+se_m_cut.mid: -E -R50 -G128 -V120 -P4
+se_m_double_slap.mid: -E -R50 -G128 -V110 -P4
+se_m_fire_punch.mid: -E -R50 -G128 -V110 -P4
+se_m_fly.mid: -E -R50 -G128 -V110 -P4
+se_m_gust.mid: -E -R50 -G128 -V110 -P4
+se_m_gust2.mid: -E -R50 -G128 -V110 -P4
+se_m_headbutt.mid: -E -R50 -G128 -V110 -P4
+se_m_horn_attack.mid: -E -R50 -G128 -V110 -P4
+se_m_jump_kick.mid: -E -R50 -G128 -V110 -P4
+se_m_leer.mid: -E -R50 -G128 -V110 -P4
+se_m_mega_kick.mid: -E -R50 -G128 -V090 -P4
+se_m_mega_kick2.mid: -E -R50 -G128 -V110 -P4
+se_m_pay_day.mid: -E -R50 -G128 -V095 -P4
+se_m_razor_wind.mid: -E -R50 -G128 -V110 -P4
+se_m_razor_wind2.mid: -E -R50 -G128 -V090 -P4
+se_m_sand_attack.mid: -E -R50 -G128 -V110 -P4
+se_m_scratch.mid: -E -R50 -G128 -V110 -P4
+se_m_swords_dance.mid: -E -R50 -G128 -V100 -P4
+se_m_tail_whip.mid: -E -R50 -G128 -V110 -P4
+se_m_take_down.mid: -E -R50 -G128 -V105 -P4
+se_m_vicegrip.mid: -E -R50 -G128 -V110 -P4
+se_m_wing_attack.mid: -E -R50 -G128 -V105 -P4
+se_mud_ball.mid: -E -R50 -G128 -V110 -P4
+se_mugshot.mid: -E -R50 -G128 -V090 -P5
+se_n.mid: -E -R50 -G128 -P4
+se_not_effective.mid: -E -R50 -G127 -V110 -P5
+se_note_a.mid: -E -R50 -G128 -V110 -P4
+se_note_b.mid: -E -R50 -G128 -V110 -P4
+se_note_c_high.mid: -E -R50 -G128 -V110 -P4
+se_note_c.mid: -E -R50 -G128 -V110 -P4
+se_note_d.mid: -E -R50 -G128 -V110 -P4
+se_note_e.mid: -E -R50 -G128 -V110 -P4
+se_note_f.mid: -E -R50 -G128 -V110 -P4
+se_note_g.mid: -E -R50 -G128 -V110 -P4
+se_o.mid: -E -R50 -G128 -V120 -P4
+se_orb.mid: -E -R50 -G128 -V100 -P5
+se_pc_login.mid: -E -R50 -G127 -V100 -P5
+se_pc_off.mid: -E -R50 -G127 -V100 -P5
+se_pc_on.mid: -E -R50 -G127 -V100 -P5
+se_pike_curtain_close.mid: -E -R50 -G129 -P5
+se_pike_curtain_open.mid: -E -R50 -G129 -P5
+se_pin.mid: -E -R50 -G127 -V060 -P4
+se_pokenav_call.mid: -E -R50 -G129 -V120 -P5
+se_pokenav_hang_up.mid: -E -R50 -G129 -V110 -P5
+se_pokenav_off.mid: -E -R50 -G127 -V100 -P5
+se_pokenav_on.mid: -E -R50 -G127 -V100 -P5
+se_puddle.mid: -E -R50 -G128 -V020 -P4
+se_rain_stop.mid: -E -R50 -G128 -V080 -P2
+se_rain.mid: -E -R50 -G128 -V080 -P2
+se_repel.mid: -E -R50 -G127 -V090 -P4
+se_rg_bag_cursor.mid: -E -R50 -G129 -P5
+se_rg_bag_pocket.mid: -E -R50 -G129 -P5
+se_rg_ball_click.mid: -E -R50 -G129 -V100 -P5
+se_rg_card_flip.mid: -E -R50 -G129 -P5
+se_rg_card_flipping.mid: -E -R50 -G129 -P5
+se_rg_card_open.mid: -E -R50 -G129 -V112 -P5
+se_rg_deoxys_move.mid: -E -R50 -G129 -V080 -P5
+se_rg_door.mid: -E -R50 -G129 -V100 -P5
+se_rg_help_close.mid: -E -R50 -G129 -V095 -P5
+se_rg_help_error.mid: -E -R50 -G129 -V125 -P5
+se_rg_help_open.mid: -E -R50 -G129 -V096 -P5
+se_rg_poke_jump_failure.mid: -E -R50 -G127 -P5
+se_rg_poke_jump_success.mid: -E -R50 -G128 -V110 -P5
+se_rg_shop.mid: -E -R50 -G129 -V080 -P5
+se_rg_ss_anne_horn.mid: -E -R50 -G129 -V096 -P5
+se_rotating_gate.mid: -E -R50 -G128 -V090 -P4
+se_roulette_ball.mid: -E -R50 -G128 -V110 -P2
+se_roulette_ball2.mid: -E -R50 -G128 -V110 -P2
+se_save.mid: -E -R50 -G128 -V080 -P5
+se_select.mid: -E -R50 -G127 -V080 -P5
+se_shiny.mid: -E -R50 -G128 -V095 -P5
+se_ship.mid: -E -R50 -G127 -V075 -P4
+se_shop.mid: -E -R50 -G127 -V090 -P5
+se_sliding_door.mid: -E -R50 -G128 -V095 -P4
+se_success.mid: -E -R50 -G127 -V080 -P4
+se_sudowoodo_shake.mid: -E -R50 -G129 -V077 -P5
+se_super_effective.mid: -E -R50 -G127 -V110 -P5
+se_switch.mid: -E -R50 -G127 -V100 -P4
+se_taillow_wing_flap.mid: -E -R50 -G128 -V105 -P5
+se_thunder.mid: -E -R50 -G128 -V110 -P3
+se_thunder2.mid: -E -R50 -G128 -V110 -P3
+se_thunderstorm_stop.mid: -E -R50 -G128 -V080 -P2
+se_thunderstorm.mid: -E -R50 -G128 -V080 -P2
+se_truck_door.mid: -E -R50 -G128 -V110 -P4
+se_truck_move.mid: -E -R50 -G128 -P4
+se_truck_stop.mid: -E -R50 -G128 -P4
+se_truck_unload.mid: -E -R50 -G127 -P4
+se_u.mid: -E -R50 -G128 -P4
+se_unlock.mid: -E -R50 -G128 -V100 -P4
+se_use_item.mid: -E -R50 -G127 -V100 -P5
+se_vend.mid: -E -R50 -G128 -V110 -P4
+se_warp_in.mid: -E -R50 -G127 -V090 -P4
+se_warp_out.mid: -E -R50 -G127 -V090 -P4
diff --git a/src/AgbRfu_LinkManager.c b/src/AgbRfu_LinkManager.c
index e4ee377f7b..b53b69c48b 100644
--- a/src/AgbRfu_LinkManager.c
+++ b/src/AgbRfu_LinkManager.c
@@ -14,7 +14,7 @@
#define FSP_ON 0x01
#define FSP_START 0x02
-LINK_MANAGER lman;
+COMMON_DATA LINK_MANAGER lman = {0};
static void rfu_LMAN_clearVariables(void);
static void rfu_LMAN_settingPCSWITCH(u32 rand);
@@ -59,7 +59,9 @@ void rfu_LMAN_REQ_sendData(bool8 clockChangeFlag)
clockChangeFlag = FALSE;
}
else
+ {
lman.parentAck_flag = 0;
+ }
rfu_REQ_sendData(clockChangeFlag);
}
diff --git a/src/agb_flash.c b/src/agb_flash.c
index 6b9381c704..ffec206fee 100644
--- a/src/agb_flash.c
+++ b/src/agb_flash.c
@@ -6,16 +6,16 @@ static u16 sTimerCount;
static vu16 *sTimerReg;
static u16 sSavedIme;
-u8 gFlashTimeoutFlag;
-u8 (*PollFlashStatus)(u8 *);
-u16 (*WaitForFlashWrite)(u8 phase, u8 *addr, u8 lastData);
-u16 (*ProgramFlashSector)(u16 sectorNum, u8 *src);
-const struct FlashType *gFlash;
-u16 (*ProgramFlashByte)(u16 sectorNum, u32 offset, u8 data);
-u16 gFlashNumRemainingBytes;
-u16 (*EraseFlashChip)();
-u16 (*EraseFlashSector)(u16 sectorNum);
-const u16 *gFlashMaxTime;
+COMMON_DATA u8 gFlashTimeoutFlag = 0;
+COMMON_DATA u8 (*PollFlashStatus)(u8 *) = NULL;
+COMMON_DATA u16 (*WaitForFlashWrite)(u8 phase, u8 *addr, u8 lastData) = NULL;
+COMMON_DATA u16 (*ProgramFlashSector)(u16 sectorNum, u8 *src) = NULL;
+COMMON_DATA const struct FlashType *gFlash = NULL;
+COMMON_DATA u16 (*ProgramFlashByte)(u16 sectorNum, u32 offset, u8 data) = NULL;
+COMMON_DATA u16 gFlashNumRemainingBytes = 0;
+COMMON_DATA u16 (*EraseFlashChip)() = NULL;
+COMMON_DATA u16 (*EraseFlashSector)(u16 sectorNum) = 0;
+COMMON_DATA const u16 *gFlashMaxTime = NULL;
void SetReadFlash1(u16 *dest);
diff --git a/src/agb_flash_1m.c b/src/agb_flash_1m.c
index 6fc4f3d600..f5ebd83ac8 100644
--- a/src/agb_flash_1m.c
+++ b/src/agb_flash_1m.c
@@ -3,7 +3,7 @@
static const char AgbLibFlashVersion[] = "FLASH1M_V103";
-static const struct FlashSetupInfo * const sSetupInfos[] =
+static const struct FlashSetupInfo *const sSetupInfos[] =
{
&MX29L010,
&LE26FV10N1TS,
@@ -14,7 +14,7 @@ u16 IdentifyFlash(void)
{
u16 result;
u16 flashId;
- const struct FlashSetupInfo * const *setupInfo;
+ const struct FlashSetupInfo *const *setupInfo;
REG_WAITCNT = (REG_WAITCNT & ~WAITCNT_SRAM_MASK) | WAITCNT_SRAM_8;
diff --git a/src/apprentice.c b/src/apprentice.c
index 2280412fe7..cb2ab96bc7 100644
--- a/src/apprentice.c
+++ b/src/apprentice.c
@@ -70,18 +70,18 @@ struct ApprenticeQuestionData
{
u16 speciesId;
u16 altSpeciesId;
- u16 moveId1;
- u16 moveId2;
+ u16 move1;
+ u16 move2;
};
// IWRAM common
-struct ApprenticePartyMovesData *gApprenticePartyMovesData;
-struct ApprenticeQuestionData *gApprenticeQuestionData;
-void (*gApprenticeFunc)(void);
+COMMON_DATA struct ApprenticePartyMovesData *gApprenticePartyMovesData = NULL;
+COMMON_DATA struct ApprenticeQuestionData *gApprenticeQuestionData = NULL;
+COMMON_DATA void (*gApprenticeFunc)(void) = NULL;
// This file's functions.
static u16 GetRandomAlternateMove(u8 monId);
-static bool8 TrySetMove(u8 monId, u16 moveId);
+static bool8 TrySetMove(u8 monId, u16 move);
static void CreateChooseAnswerTask(bool8 noBButton, u8 itemsCount, u8 windowId);
static u8 CreateAndShowWindow(u8 left, u8 top, u8 width, u8 height);
static void RemoveAndHideWindow(u8 windowId);
@@ -337,7 +337,7 @@ static u16 GetRandomAlternateMove(u8 monId)
u16 species;
const u16 *learnset;
bool32 needTMs = FALSE;
- u16 moveId = MOVE_NONE;
+ u16 move = MOVE_NONE;
bool32 shouldUseMove;
u8 level;
@@ -379,7 +379,7 @@ static u16 GetRandomAlternateMove(u8 monId)
}
while (!shouldUseMove);
- moveId = ItemIdToBattleMoveId(ITEM_TM01 + id);
+ move = ItemIdToBattleMoveId(ITEM_TM01 + id);
shouldUseMove = TRUE;
if (numLearnsetMoves <= MAX_MON_MOVES)
@@ -390,7 +390,7 @@ static u16 GetRandomAlternateMove(u8 monId)
for (; j < numLearnsetMoves; j++)
{
// Keep looking for TMs until one not in the level up learnset is found
- if ((learnset[j] & LEVEL_UP_MOVE_ID) == moveId)
+ if ((learnset[j] & LEVEL_UP_MOVE_ID) == move)
{
shouldUseMove = FALSE;
break;
@@ -414,13 +414,13 @@ static u16 GetRandomAlternateMove(u8 monId)
{
// Get a random move excluding the 4 it would know at max level
u8 learnsetId = Random() % (numLearnsetMoves - MAX_MON_MOVES);
- moveId = learnset[learnsetId] & LEVEL_UP_MOVE_ID;
+ move = learnset[learnsetId] & LEVEL_UP_MOVE_ID;
shouldUseMove = TRUE;
for (j = numLearnsetMoves - MAX_MON_MOVES; j < numLearnsetMoves; j++)
{
// Keep looking for moves until one not in the last 4 is found
- if ((learnset[j] & LEVEL_UP_MOVE_ID) == moveId)
+ if ((learnset[j] & LEVEL_UP_MOVE_ID) == move)
{
shouldUseMove = FALSE;
break;
@@ -430,29 +430,29 @@ static u16 GetRandomAlternateMove(u8 monId)
}
}
- if (TrySetMove(monId, moveId))
+ if (TrySetMove(monId, move))
{
- if (sValidApprenticeMoves[moveId])
+ if (sValidApprenticeMoves[move])
break;
i++;
}
}
gApprenticePartyMovesData->moveCounter++;
- return moveId;
+ return move;
}
-static bool8 TrySetMove(u8 monId, u16 moveId)
+static bool8 TrySetMove(u8 monId, u16 move)
{
u8 i;
for (i = 0; i < NUM_WHICH_MOVE_QUESTIONS; i++)
{
- if (gApprenticePartyMovesData->moves[monId][i] == moveId)
+ if (gApprenticePartyMovesData->moves[monId][i] == move)
return FALSE;
}
- gApprenticePartyMovesData->moves[monId][gApprenticePartyMovesData->moveCounter] = moveId;
+ gApprenticePartyMovesData->moves[monId][gApprenticePartyMovesData->moveCounter] = move;
return TRUE;
}
@@ -605,8 +605,8 @@ static void CreateApprenticeMenu(u8 menu)
case APPRENTICE_ASK_MOVES:
left = 17;
top = 8;
- strings[0] = gMoveNames[gApprenticeQuestionData->moveId1];
- strings[1] = gMoveNames[gApprenticeQuestionData->moveId2];
+ strings[0] = gMoveNames[gApprenticeQuestionData->move1];
+ strings[1] = gMoveNames[gApprenticeQuestionData->move2];
break;
case APPRENTICE_ASK_GIVE:
left = 18;
@@ -1006,8 +1006,8 @@ static void InitQuestionData(void)
count = PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].monId;
APPRENTICE_SPECIES_ID_NO_COND(id1, count);
gApprenticeQuestionData->speciesId = gApprentices[PLAYER_APPRENTICE.id].species[id1];
- gApprenticeQuestionData->moveId1 = GetDefaultMove(count, id1, PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].moveSlot);
- gApprenticeQuestionData->moveId2 = PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].data;
+ gApprenticeQuestionData->move1 = GetDefaultMove(count, id1, PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].moveSlot);
+ gApprenticeQuestionData->move2 = PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].data;
}
}
else if (gSpecialVar_0x8005 == APPRENTICE_QUESTION_WHAT_ITEM)
@@ -1062,13 +1062,13 @@ static void ApprenticeBufferString(void)
StringCopy(stringDst, gSpeciesNames[gApprenticeQuestionData->speciesId]);
break;
case APPRENTICE_BUFF_MOVE1:
- StringCopy(stringDst, gMoveNames[gApprenticeQuestionData->moveId1]);
+ StringCopy(stringDst, gMoveNames[gApprenticeQuestionData->move1]);
break;
case APPRENTICE_BUFF_MOVE2:
- StringCopy(stringDst, gMoveNames[gApprenticeQuestionData->moveId2]);
+ StringCopy(stringDst, gMoveNames[gApprenticeQuestionData->move2]);
break;
case APPRENTICE_BUFF_ITEM:
- StringCopy(stringDst, ItemId_GetName(PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].data));
+ StringCopy(stringDst, GetItemName(PLAYER_APPRENTICE.questions[CURRENT_QUESTION_NUM].data));
break;
case APPRENTICE_BUFF_NAME:
TVShowConvertInternationalString(text, GetApprenticeNameInLanguage(PLAYER_APPRENTICE.id, GAME_LANGUAGE), GAME_LANGUAGE);
diff --git a/src/bard_music.c b/src/bard_music.c
index 165b4fe770..3335e2428f 100644
--- a/src/bard_music.c
+++ b/src/bard_music.c
@@ -1,63 +1,247 @@
#include "global.h"
#include "bard_music.h"
#include "easy_chat.h"
+#include "constants/songs.h"
-#include "data/bard_music/bard_sounds.h"
-#include "data/bard_music/word_pitch.h"
-#include "data/bard_music/default_sound.h"
-#include "data/bard_music/length_table.h"
+// Indicates that the previous sound should be held.
+#define PREV_BARD_SOUND { .songId = NUM_PHONEME_SONGS }
-static s16 CalcWordPitch(int pitchIdx, int songPos)
+// Invalid sound, indicates the end of the sounds for the word.
+#define NULL_BARD_SOUND { .songId = PHONEME_ID_NONE }
+
+#include "data/bard_music/pokemon.h"
+#include "data/bard_music/moves.h"
+#include "data/bard_music/trainer.h"
+#include "data/bard_music/status.h"
+#include "data/bard_music/battle.h"
+#include "data/bard_music/greetings.h"
+#include "data/bard_music/people.h"
+#include "data/bard_music/voices.h"
+#include "data/bard_music/speech.h"
+#include "data/bard_music/endings.h"
+#include "data/bard_music/feelings.h"
+#include "data/bard_music/conditions.h"
+#include "data/bard_music/actions.h"
+#include "data/bard_music/lifestyle.h"
+#include "data/bard_music/hobbies.h"
+#include "data/bard_music/time.h"
+#include "data/bard_music/misc.h"
+#include "data/bard_music/adjectives.h"
+#include "data/bard_music/events.h"
+#include "data/bard_music/trendysaying.h"
+
+static const struct BardSoundTemplate (*const sBardSoundTemplatesTable[EC_NUM_GROUPS])[MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_GROUP_POKEMON] = NULL, // Handled by sBardSoundTemplates_Pokemon
+ [EC_GROUP_TRAINER] = sBardSoundTemplates_Trainer,
+ [EC_GROUP_STATUS] = sBardSoundTemplates_Status,
+ [EC_GROUP_BATTLE] = sBardSoundTemplates_Battle,
+ [EC_GROUP_GREETINGS] = sBardSoundTemplates_Greetings,
+ [EC_GROUP_PEOPLE] = sBardSoundTemplates_People,
+ [EC_GROUP_VOICES] = sBardSoundTemplates_Voices,
+ [EC_GROUP_SPEECH] = sBardSoundTemplates_Speech,
+ [EC_GROUP_ENDINGS] = sBardSoundTemplates_Endings,
+ [EC_GROUP_FEELINGS] = sBardSoundTemplates_Feelings,
+ [EC_GROUP_CONDITIONS] = sBardSoundTemplates_Conditions,
+ [EC_GROUP_ACTIONS] = sBardSoundTemplates_Actions,
+ [EC_GROUP_LIFESTYLE] = sBardSoundTemplates_Lifestyle,
+ [EC_GROUP_HOBBIES] = sBardSoundTemplates_Hobbies,
+ [EC_GROUP_TIME] = sBardSoundTemplates_Time,
+ [EC_GROUP_MISC] = sBardSoundTemplates_Misc,
+ [EC_GROUP_ADJECTIVES] = sBardSoundTemplates_Adjectives,
+ [EC_GROUP_EVENTS] = sBardSoundTemplates_Events,
+ [EC_GROUP_MOVE_1] = NULL, // Handled by sBardSoundTemplates_Moves
+ [EC_GROUP_MOVE_2] = NULL, // Handled by sBardSoundTemplates_Moves
+ [EC_GROUP_TRENDY_SAYING] = sBardSoundTemplates_TrendySaying,
+ [EC_GROUP_POKEMON_NATIONAL] = NULL, // Handled by sBardSoundTemplates_Pokemon
+};
+
+// The pitch tables below will be indexed using the number of BardSoundTemplates per word, so a table is selected
+// that has at least MAX_BARD_SOUNDS_PER_WORD pitch values. Curiously they select pitch tables whose size is +1
+// of the maximum number of sounds per word, so the final pitch value (before PITCH_END) isn't used.
+// (i.e., 'NUM_BARD_PITCH_TABLES_PER_SIZE * (MAX_BARD_SOUNDS_PER_WORD-1)' would select a sufficiently large table).
+#define BASE_PITCH_TABLE_INDEX (NUM_BARD_PITCH_TABLES_PER_SIZE * MAX_BARD_SOUNDS_PER_WORD)
+
+#define PITCH_END 0x1800
+
+static const s16 sPitch1_0[] = { -0x300, PITCH_END };
+static const s16 sPitch1_1[] = { 0x0900, PITCH_END };
+static const s16 sPitch1_2[] = { 0x0100, PITCH_END };
+static const s16 sPitch1_3[] = { 0x0400, PITCH_END };
+static const s16 sPitch1_4[] = { 0x0b00, PITCH_END };
+
+static const s16 sPitch2_0[] = { -0x300, -0x100, PITCH_END };
+static const s16 sPitch2_1[] = { -0x300, 0x0200, PITCH_END };
+static const s16 sPitch2_2[] = { 0x0200, 0x0400, PITCH_END };
+static const s16 sPitch2_3[] = { 0x0600, 0x0800, PITCH_END };
+static const s16 sPitch2_4[] = { 0x0900, 0x0800, PITCH_END };
+
+static const s16 sPitch3_0[] = { -0x300, -0x100, -0x300, PITCH_END };
+static const s16 sPitch3_1[] = { 0x0400, -0x300, 0x0400, PITCH_END };
+static const s16 sPitch3_2[] = { 0x0900, 0x0800, 0x0600, PITCH_END };
+static const s16 sPitch3_3[] = { 0x0100, 0x0200, 0x0400, PITCH_END };
+static const s16 sPitch3_4[] = { 0x0600, 0x1000, 0x0d00, PITCH_END };
+
+static const s16 sPitch4_0[] = { 0x0400, 0x0900, 0x0400, 0x0900, PITCH_END };
+static const s16 sPitch4_1[] = { 0x0900, 0x0400, 0x0d00, 0x0400, PITCH_END };
+static const s16 sPitch4_2[] = { 0x0100, 0x0200, 0x0400, 0x0600, PITCH_END };
+static const s16 sPitch4_3[] = { 0x0800, 0x0600, 0x0400, 0x0200, PITCH_END };
+static const s16 sPitch4_4[] = { 0x0f00, 0x0d00, 0x0b00, 0x0a00, PITCH_END };
+
+static const s16 sPitch5_0[] = { -0x300, -0x100, 0x0100, 0x0200, 0x0400, PITCH_END };
+static const s16 sPitch5_1[] = { 0x0900, 0x0800, 0x0600, 0x0400, 0x0200, PITCH_END };
+static const s16 sPitch5_2[] = { 0x0100, 0x0400, 0x0900, 0x0400, 0x0100, PITCH_END };
+static const s16 sPitch5_3[] = { 0x0900, 0x0400, 0x0900, 0x0400, -0x300, PITCH_END };
+static const s16 sPitch5_4[] = { 0x0b00, 0x0800, 0x0400, 0x0400, 0x0600, PITCH_END };
+
+static const s16 sPitch6_0[] = { -0x300, -0x100, 0x0100, 0x0200, 0x0400, 0x0600, PITCH_END };
+static const s16 sPitch6_1[] = { 0x0800, 0x0600, 0x0400, 0x0200, 0x0100, -0x100, PITCH_END };
+static const s16 sPitch6_2[] = { 0x0100, 0x0200, 0x0400, 0x0100, 0x0200, 0x1000, PITCH_END };
+static const s16 sPitch6_3[] = { 0x0400, -0x300, 0x0900, 0x0400, 0x0900, 0x0400, PITCH_END };
+static const s16 sPitch6_4[] = { 0x0800, 0x0900, 0x0800, 0x0900, 0x0800, 0x0900, PITCH_END };
+
+static const s16 sPitch7_0[] = { 0x0200, 0x0100, 0x0200, 0x0100, 0x0200, 0x0400, 0x0200, PITCH_END };
+static const s16 sPitch7_1[] = { 0x0100, 0x0100, -0x100, -0x100, -0x300, 0x0400, -0x300, PITCH_END };
+static const s16 sPitch7_2[] = { 0x0800, 0x0900, 0x0b00, 0x0d00, 0x0e00, 0x0d00, 0x0b00, PITCH_END };
+static const s16 sPitch7_3[] = { 0x0800, 0x0600, 0x0400, 0x0200, 0x0d00, 0x0b00, 0x0900, PITCH_END };
+static const s16 sPitch7_4[] = { 0x0300, 0x0400, 0x0600, 0x0800, 0x0700, 0x0800, 0x0400, PITCH_END };
+
+// In practice only sPitch7_# below are used below.
+// BASE_PITCH_TABLE_INDEX is 30 by default, and this table is always indexed with (x + 30), where x is some value 0 - 4
+static const s16 *const sPitchTables[NUM_BARD_PITCH_TABLES_PER_SIZE * 7] = {
+ sPitch1_0, sPitch1_1, sPitch1_2, sPitch1_3, sPitch1_4,
+ sPitch2_0, sPitch2_1, sPitch2_2, sPitch2_3, sPitch2_4,
+ sPitch3_0, sPitch3_1, sPitch3_2, sPitch3_3, sPitch3_4,
+ sPitch4_0, sPitch4_1, sPitch4_2, sPitch4_3, sPitch4_4,
+ sPitch5_0, sPitch5_1, sPitch5_2, sPitch5_3, sPitch5_4,
+ sPitch6_0, sPitch6_1, sPitch6_2, sPitch6_3, sPitch6_4,
+ sPitch7_0, sPitch7_1, sPitch7_2, sPitch7_3, sPitch7_4
+};
+
+// If this fails, CalcWordSounds will likely read out of bounds for sPitchTables.
+STATIC_ASSERT(BASE_PITCH_TABLE_INDEX + (NUM_BARD_PITCH_TABLES_PER_SIZE-1) < ARRAY_COUNT(sPitchTables), NotEnoughPitchTablesForBardSounds)
+
+static const struct BardSoundTemplate sEmptyPhonemeTemplate[] = {
+ NULL_BARD_SOUND,
+ NULL_BARD_SOUND,
+ NULL_BARD_SOUND,
+ NULL_BARD_SOUND,
+ NULL_BARD_SOUND,
+ NULL_BARD_SOUND
+};
+
+static const int sPhonemeLengths[NUM_PHONEME_SONGS + 1] = {
+ [PHONEME_ID(PH_TRAP_BLEND)] = 9,
+ [PHONEME_ID(PH_TRAP_HELD)] = 22,
+ [PHONEME_ID(PH_TRAP_SOLO)] = 15,
+ [PHONEME_ID(PH_FACE_BLEND)] = 16,
+ [PHONEME_ID(PH_FACE_HELD)] = 39,
+ [PHONEME_ID(PH_FACE_SOLO)] = 21,
+ [PHONEME_ID(PH_CLOTH_BLEND)] = 9,
+ [PHONEME_ID(PH_CLOTH_HELD)] = 30,
+ [PHONEME_ID(PH_CLOTH_SOLO)] = 24,
+ [PHONEME_ID(PH_DRESS_BLEND)] = 15,
+ [PHONEME_ID(PH_DRESS_HELD)] = 25,
+ [PHONEME_ID(PH_DRESS_SOLO)] = 12,
+ [PHONEME_ID(PH_FLEECE_BLEND)] = 22,
+ [PHONEME_ID(PH_FLEECE_HELD)] = 45,
+ [PHONEME_ID(PH_FLEECE_SOLO)] = 24,
+ [PHONEME_ID(PH_KIT_BLEND)] = 15,
+ [PHONEME_ID(PH_KIT_HELD)] = 40,
+ [PHONEME_ID(PH_KIT_SOLO)] = 9,
+ [PHONEME_ID(PH_PRICE_BLEND)] = 21,
+ [PHONEME_ID(PH_PRICE_HELD)] = 42,
+ [PHONEME_ID(PH_PRICE_SOLO)] = 18,
+ [PHONEME_ID(PH_LOT_BLEND)] = 9,
+ [PHONEME_ID(PH_LOT_HELD)] = 22,
+ [PHONEME_ID(PH_LOT_SOLO)] = 15,
+ [PHONEME_ID(PH_GOAT_BLEND)] = 27,
+ [PHONEME_ID(PH_GOAT_HELD)] = 48,
+ [PHONEME_ID(PH_GOAT_SOLO)] = 18,
+ [PHONEME_ID(PH_THOUGHT_BLEND)] = 27,
+ [PHONEME_ID(PH_THOUGHT_HELD)] = 33,
+ [PHONEME_ID(PH_THOUGHT_SOLO)] = 24,
+ [PHONEME_ID(PH_CHOICE_BLEND)] = 25,
+ [PHONEME_ID(PH_CHOICE_HELD)] = 39,
+ [PHONEME_ID(PH_CHOICE_SOLO)] = 19,
+ [PHONEME_ID(PH_MOUTH_BLEND)] = 16,
+ [PHONEME_ID(PH_MOUTH_HELD)] = 54,
+ [PHONEME_ID(PH_MOUTH_SOLO)] = 18,
+ [PHONEME_ID(PH_FOOT_BLEND)] = 9,
+ [PHONEME_ID(PH_FOOT_HELD)] = 45,
+ [PHONEME_ID(PH_FOOT_SOLO)] = 15,
+ [PHONEME_ID(PH_GOOSE_BLEND)] = 12,
+ [PHONEME_ID(PH_GOOSE_HELD)] = 39,
+ [PHONEME_ID(PH_GOOSE_SOLO)] = 23,
+ [PHONEME_ID(PH_STRUT_BLEND)] = 5,
+ [PHONEME_ID(PH_STRUT_HELD)] = 45,
+ [PHONEME_ID(PH_STRUT_SOLO)] = 12,
+ [PHONEME_ID(PH_CURE_BLEND)] = 21,
+ [PHONEME_ID(PH_CURE_HELD)] = 48,
+ [PHONEME_ID(PH_CURE_SOLO)] = 12,
+ [PHONEME_ID(PH_NURSE_BLEND)] = 21,
+ [PHONEME_ID(PH_NURSE_HELD)] = 69,
+ [PHONEME_ID(PH_NURSE_SOLO)] = 18,
+ [NUM_PHONEME_SONGS] = 15, // This is the length that will be used by PREV_BARD_SOUND to hold the previous phoneme sound.
+};
+
+static s16 GetWordPitch(int tableIndex, int pitchIndex)
{
- return sBardSoundPitchTables[pitchIdx][songPos];
+ return sPitchTables[tableIndex][pitchIndex];
}
-const struct BardSound *GetWordSounds(u16 word)
+const struct BardSoundTemplate *GetWordSoundTemplates(u16 easyChatWord)
{
u32 category;
u32 subword;
- const struct BardSound (*ptr)[6];
+ const struct BardSoundTemplate (*ptr)[MAX_BARD_SOUNDS_PER_WORD];
- if (IsBardWordInvalid(word))
- {
- return gBardSound_InvalidWord;
- }
- category = EC_GROUP(word);
- subword = EC_INDEX(word);
+ if (IsBardWordInvalid(easyChatWord))
+ return sEmptyPhonemeTemplate;
+
+ category = EC_GROUP(easyChatWord);
+ subword = EC_INDEX(easyChatWord);
switch (category)
{
case EC_GROUP_POKEMON:
case EC_GROUP_POKEMON_NATIONAL:
- ptr = gBardSounds_Pokemon;
+ ptr = sBardSoundTemplates_Pokemon;
break;
case EC_GROUP_MOVE_1:
case EC_GROUP_MOVE_2:
- ptr = gBardSounds_Moves;
+ ptr = sBardSoundTemplates_Moves;
break;
default:
- ptr = gBardSoundsTable[category];
+ ptr = sBardSoundTemplatesTable[category];
break;
}
ptr += subword;
return *ptr;
}
-void GetWordPhonemes(struct BardSong *song, u16 word)
+// Assumes that 'soundTemplates' has already been loaded with the BardSoundTemplates for the easy chat word to calculate sounds for.
+// 'pitchTableIndex' is chosen depending on the easy chat word, but is essentially an arbitrary value 0-4.
+void CalcWordSounds(struct BardSong *song, u16 pitchTableIndex)
{
int i;
- const struct BardSound *sound;
+ const struct BardSoundTemplate *template;
song->length = 0;
- for (i = 0; i < 6; i ++)
+
+ for (i = 0; i < MAX_BARD_SOUNDS_PER_WORD; i ++)
{
- sound = &song->sound[i];
- if (sound->songLengthId != 0xFF)
+ template = &song->soundTemplates[i];
+ if (template->songId != PHONEME_ID_NONE)
{
- song->phonemes[i].length = sound->songLengthOffset + gBardSoundLengthTable[sound->songLengthId];
- song->phonemes[i].pitch = CalcWordPitch(word + 30, i);
- song->length += song->phonemes[i].length;
+ // Calculate the length and pitch of each phoneme in this word.
+ // A phoneme's length is always the same, and depends on the phoneme song and any adjustments in the template.
+ // Its pitch changes depending on the easy chat word and where in the list of templates the phoneme appears.
+ song->sounds[i].length = template->lengthAdjustment + sPhonemeLengths[template->songId];
+ song->sounds[i].pitch = GetWordPitch(pitchTableIndex + BASE_PITCH_TABLE_INDEX, i);
+
+ // Add this phoneme's length to the total sound length for this word.
+ song->length += song->sounds[i].length;
}
}
- song->currPhoneme = 0;
+ song->soundIndex = 0;
song->voiceInflection = 0;
}
diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c
index d8a9760ff2..6fd3cdad8e 100644
--- a/src/battle_ai_script_commands.c
+++ b/src/battle_ai_script_commands.c
@@ -344,7 +344,7 @@ void BattleAI_SetupAIData(u8 defaultScoreMoves)
gBattleResources->AI_ScriptsStack->size = 0;
sBattler_AI = gActiveBattler;
- // Decide a random target battlerId in doubles.
+ // Decide a random target battler in doubles.
if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
{
gBattlerTarget = (Random() & BIT_FLANK) + BATTLE_OPPOSITE(GetBattlerSide(gActiveBattler));
@@ -632,32 +632,32 @@ static void RecordLastUsedMoveByTarget(void)
}
}
-void ClearBattlerMoveHistory(u8 battlerId)
+void ClearBattlerMoveHistory(u8 battler)
{
s32 i;
for (i = 0; i < MAX_MON_MOVES; i++)
- BATTLE_HISTORY->usedMoves[battlerId].moves[i] = MOVE_NONE;
+ BATTLE_HISTORY->usedMoves[battler].moves[i] = MOVE_NONE;
}
-void RecordAbilityBattle(u8 battlerId, u8 abilityId)
+void RecordAbilityBattle(u8 battler, u8 abilityId)
{
- BATTLE_HISTORY->abilities[battlerId] = abilityId;
+ BATTLE_HISTORY->abilities[battler] = abilityId;
}
-void ClearBattlerAbilityHistory(u8 battlerId)
+void ClearBattlerAbilityHistory(u8 battler)
{
- BATTLE_HISTORY->abilities[battlerId] = ABILITY_NONE;
+ BATTLE_HISTORY->abilities[battler] = ABILITY_NONE;
}
-void RecordItemEffectBattle(u8 battlerId, u8 itemEffect)
+void RecordItemEffectBattle(u8 battler, u8 itemEffect)
{
- BATTLE_HISTORY->itemEffects[battlerId] = itemEffect;
+ BATTLE_HISTORY->itemEffects[battler] = itemEffect;
}
-void ClearBattlerItemEffectHistory(u8 battlerId)
+void ClearBattlerItemEffectHistory(u8 battler)
{
- BATTLE_HISTORY->itemEffects[battlerId] = 0;
+ BATTLE_HISTORY->itemEffects[battler] = 0;
}
static void Cmd_if_random_less_than(void)
@@ -712,14 +712,14 @@ static void Cmd_score(void)
static void Cmd_if_hp_less_than(void)
{
- u16 battlerId;
+ u16 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if ((u32)(100 * gBattleMons[battlerId].hp / gBattleMons[battlerId].maxHP) < gAIScriptPtr[2])
+ if ((u32)(100 * gBattleMons[battler].hp / gBattleMons[battler].maxHP) < gAIScriptPtr[2])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
@@ -727,14 +727,14 @@ static void Cmd_if_hp_less_than(void)
static void Cmd_if_hp_more_than(void)
{
- u16 battlerId;
+ u16 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if ((u32)(100 * gBattleMons[battlerId].hp / gBattleMons[battlerId].maxHP) > gAIScriptPtr[2])
+ if ((u32)(100 * gBattleMons[battler].hp / gBattleMons[battler].maxHP) > gAIScriptPtr[2])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
@@ -742,14 +742,14 @@ static void Cmd_if_hp_more_than(void)
static void Cmd_if_hp_equal(void)
{
- u16 battlerId;
+ u16 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if ((u32)(100 * gBattleMons[battlerId].hp / gBattleMons[battlerId].maxHP) == gAIScriptPtr[2])
+ if ((u32)(100 * gBattleMons[battler].hp / gBattleMons[battler].maxHP) == gAIScriptPtr[2])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
@@ -757,14 +757,14 @@ static void Cmd_if_hp_equal(void)
static void Cmd_if_hp_not_equal(void)
{
- u16 battlerId;
+ u16 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if ((u32)(100 * gBattleMons[battlerId].hp / gBattleMons[battlerId].maxHP) != gAIScriptPtr[2])
+ if ((u32)(100 * gBattleMons[battler].hp / gBattleMons[battler].maxHP) != gAIScriptPtr[2])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
@@ -772,17 +772,17 @@ static void Cmd_if_hp_not_equal(void)
static void Cmd_if_status(void)
{
- u16 battlerId;
+ u16 battler;
u32 status;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
status = T1_READ_32(gAIScriptPtr + 2);
- if (gBattleMons[battlerId].status1 & status)
+ if (gBattleMons[battler].status1 & status)
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
@@ -790,17 +790,17 @@ static void Cmd_if_status(void)
static void Cmd_if_not_status(void)
{
- u16 battlerId;
+ u16 battler;
u32 status;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
status = T1_READ_32(gAIScriptPtr + 2);
- if (!(gBattleMons[battlerId].status1 & status))
+ if (!(gBattleMons[battler].status1 & status))
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
@@ -808,17 +808,17 @@ static void Cmd_if_not_status(void)
static void Cmd_if_status2(void)
{
- u16 battlerId;
+ u16 battler;
u32 status;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
status = T1_READ_32(gAIScriptPtr + 2);
- if ((gBattleMons[battlerId].status2 & status))
+ if ((gBattleMons[battler].status2 & status))
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
@@ -826,17 +826,17 @@ static void Cmd_if_status2(void)
static void Cmd_if_not_status2(void)
{
- u16 battlerId;
+ u16 battler;
u32 status;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
status = T1_READ_32(gAIScriptPtr + 2);
- if (!(gBattleMons[battlerId].status2 & status))
+ if (!(gBattleMons[battler].status2 & status))
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
@@ -844,17 +844,17 @@ static void Cmd_if_not_status2(void)
static void Cmd_if_status3(void)
{
- u16 battlerId;
+ u16 battler;
u32 status;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
status = T1_READ_32(gAIScriptPtr + 2);
- if (gStatuses3[battlerId] & status)
+ if (gStatuses3[battler] & status)
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
@@ -862,17 +862,17 @@ static void Cmd_if_status3(void)
static void Cmd_if_not_status3(void)
{
- u16 battlerId;
+ u16 battler;
u32 status;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
status = T1_READ_32(gAIScriptPtr + 2);
- if (!(gStatuses3[battlerId] & status))
+ if (!(gStatuses3[battler] & status))
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
@@ -880,15 +880,15 @@ static void Cmd_if_not_status3(void)
static void Cmd_if_side_affecting(void)
{
- u16 battlerId;
+ u16 battler;
u32 side, status;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- side = GET_BATTLER_SIDE(battlerId);
+ side = GET_BATTLER_SIDE(battler);
status = T1_READ_32(gAIScriptPtr + 2);
if (gSideStatuses[side] & status)
@@ -899,15 +899,15 @@ static void Cmd_if_side_affecting(void)
static void Cmd_if_not_side_affecting(void)
{
- u16 battlerId;
+ u16 battler;
u32 side, status;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- side = GET_BATTLER_SIDE(battlerId);
+ side = GET_BATTLER_SIDE(battler);
status = T1_READ_32(gAIScriptPtr + 2);
if (!(gSideStatuses[side] & status))
@@ -1119,16 +1119,16 @@ static void Cmd_get_type(void)
switch (typeVar)
{
case AI_TYPE1_USER: // AI user primary type
- AI_THINKING_STRUCT->funcResult = gBattleMons[sBattler_AI].type1;
+ AI_THINKING_STRUCT->funcResult = gBattleMons[sBattler_AI].types[0];
break;
case AI_TYPE1_TARGET: // target primary type
- AI_THINKING_STRUCT->funcResult = gBattleMons[gBattlerTarget].type1;
+ AI_THINKING_STRUCT->funcResult = gBattleMons[gBattlerTarget].types[0];
break;
case AI_TYPE2_USER: // AI user secondary type
- AI_THINKING_STRUCT->funcResult = gBattleMons[sBattler_AI].type2;
+ AI_THINKING_STRUCT->funcResult = gBattleMons[sBattler_AI].types[1];
break;
case AI_TYPE2_TARGET: // target secondary type
- AI_THINKING_STRUCT->funcResult = gBattleMons[gBattlerTarget].type2;
+ AI_THINKING_STRUCT->funcResult = gBattleMons[gBattlerTarget].types[1];
break;
case AI_TYPE_MOVE: // type of move being pointed to
AI_THINKING_STRUCT->funcResult = gBattleMoves[AI_THINKING_STRUCT->moveConsidered].type;
@@ -1155,9 +1155,9 @@ static u8 BattleAI_GetWantedBattler(u8 wantedBattler)
static void Cmd_is_of_type(void)
{
- u8 battlerId = BattleAI_GetWantedBattler(gAIScriptPtr[1]);
+ u8 battler = BattleAI_GetWantedBattler(gAIScriptPtr[1]);
- if (IS_BATTLER_OF_TYPE(battlerId, gAIScriptPtr[2]))
+ if (IS_BATTLER_OF_TYPE(battler, gAIScriptPtr[2]))
AI_THINKING_STRUCT->funcResult = TRUE;
else
AI_THINKING_STRUCT->funcResult = FALSE;
@@ -1291,7 +1291,7 @@ static void Cmd_nop_2B(void)
static void Cmd_count_usable_party_mons(void)
{
- u8 battlerId;
+ u8 battler;
u8 battlerOnField1, battlerOnField2;
struct Pokemon *party;
s32 i;
@@ -1299,11 +1299,11 @@ static void Cmd_count_usable_party_mons(void)
AI_THINKING_STRUCT->funcResult = 0;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
party = gPlayerParty;
else
party = gEnemyParty;
@@ -1311,14 +1311,14 @@ static void Cmd_count_usable_party_mons(void)
if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
{
u32 position;
- battlerOnField1 = gBattlerPartyIndexes[battlerId];
- position = BATTLE_PARTNER(GetBattlerPosition(battlerId));
+ battlerOnField1 = gBattlerPartyIndexes[battler];
+ position = BATTLE_PARTNER(GetBattlerPosition(battler));
battlerOnField2 = gBattlerPartyIndexes[GetBattlerAtPosition(position)];
}
- else // In singles there's only one battlerId by side.
+ else // In singles there's only one battler by side.
{
- battlerOnField1 = gBattlerPartyIndexes[battlerId];
- battlerOnField2 = gBattlerPartyIndexes[battlerId];
+ battlerOnField1 = gBattlerPartyIndexes[battler];
+ battlerOnField2 = gBattlerPartyIndexes[battler];
}
for (i = 0; i < PARTY_SIZE; i++)
@@ -1349,56 +1349,56 @@ static void Cmd_get_considered_move_effect(void)
static void Cmd_get_ability(void)
{
- u8 battlerId;
+ u8 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if (gActiveBattler != battlerId)
+ if (gActiveBattler != battler)
{
- if (BATTLE_HISTORY->abilities[battlerId] != 0)
+ if (BATTLE_HISTORY->abilities[battler] != 0)
{
- AI_THINKING_STRUCT->funcResult = BATTLE_HISTORY->abilities[battlerId];
+ AI_THINKING_STRUCT->funcResult = BATTLE_HISTORY->abilities[battler];
gAIScriptPtr += 2;
return;
}
// abilities that prevent fleeing.
- if (gBattleMons[battlerId].ability == ABILITY_SHADOW_TAG
- || gBattleMons[battlerId].ability == ABILITY_MAGNET_PULL
- || gBattleMons[battlerId].ability == ABILITY_ARENA_TRAP)
+ if (gBattleMons[battler].ability == ABILITY_SHADOW_TAG
+ || gBattleMons[battler].ability == ABILITY_MAGNET_PULL
+ || gBattleMons[battler].ability == ABILITY_ARENA_TRAP)
{
- AI_THINKING_STRUCT->funcResult = gBattleMons[battlerId].ability;
+ AI_THINKING_STRUCT->funcResult = gBattleMons[battler].ability;
gAIScriptPtr += 2;
return;
}
- if (gSpeciesInfo[gBattleMons[battlerId].species].abilities[0] != ABILITY_NONE)
+ if (gSpeciesInfo[gBattleMons[battler].species].abilities[0] != ABILITY_NONE)
{
- if (gSpeciesInfo[gBattleMons[battlerId].species].abilities[1] != ABILITY_NONE)
+ if (gSpeciesInfo[gBattleMons[battler].species].abilities[1] != ABILITY_NONE)
{
// AI has no knowledge of opponent, so it guesses which ability.
if (Random() & 1)
- AI_THINKING_STRUCT->funcResult = gSpeciesInfo[gBattleMons[battlerId].species].abilities[0];
+ AI_THINKING_STRUCT->funcResult = gSpeciesInfo[gBattleMons[battler].species].abilities[0];
else
- AI_THINKING_STRUCT->funcResult = gSpeciesInfo[gBattleMons[battlerId].species].abilities[1];
+ AI_THINKING_STRUCT->funcResult = gSpeciesInfo[gBattleMons[battler].species].abilities[1];
}
else
{
- AI_THINKING_STRUCT->funcResult = gSpeciesInfo[gBattleMons[battlerId].species].abilities[0]; // It's definitely ability 1.
+ AI_THINKING_STRUCT->funcResult = gSpeciesInfo[gBattleMons[battler].species].abilities[0]; // It's definitely ability 1.
}
}
else
{
- AI_THINKING_STRUCT->funcResult = gSpeciesInfo[gBattleMons[battlerId].species].abilities[1]; // AI can't actually reach this part since no pokemon has ability 2 and no ability 1.
+ AI_THINKING_STRUCT->funcResult = gSpeciesInfo[gBattleMons[battler].species].abilities[1]; // AI can't actually reach this part since no Pokémon has ability 2 and no ability 1.
}
}
else
{
// The AI knows its own ability.
- AI_THINKING_STRUCT->funcResult = gBattleMons[battlerId].ability;
+ AI_THINKING_STRUCT->funcResult = gBattleMons[battler].ability;
}
gAIScriptPtr += 2;
@@ -1406,32 +1406,32 @@ static void Cmd_get_ability(void)
static void Cmd_check_ability(void)
{
- u32 battlerId = BattleAI_GetWantedBattler(gAIScriptPtr[1]);
+ u32 battler = BattleAI_GetWantedBattler(gAIScriptPtr[1]);
u32 ability = gAIScriptPtr[2];
if (gAIScriptPtr[1] == AI_TARGET || gAIScriptPtr[1] == AI_TARGET_PARTNER)
{
- if (BATTLE_HISTORY->abilities[battlerId] != ABILITY_NONE)
+ if (BATTLE_HISTORY->abilities[battler] != ABILITY_NONE)
{
- ability = BATTLE_HISTORY->abilities[battlerId];
+ ability = BATTLE_HISTORY->abilities[battler];
AI_THINKING_STRUCT->funcResult = ability;
}
// Abilities that prevent fleeing.
- else if (gBattleMons[battlerId].ability == ABILITY_SHADOW_TAG
- || gBattleMons[battlerId].ability == ABILITY_MAGNET_PULL
- || gBattleMons[battlerId].ability == ABILITY_ARENA_TRAP)
+ else if (gBattleMons[battler].ability == ABILITY_SHADOW_TAG
+ || gBattleMons[battler].ability == ABILITY_MAGNET_PULL
+ || gBattleMons[battler].ability == ABILITY_ARENA_TRAP)
{
- ability = gBattleMons[battlerId].ability;
+ ability = gBattleMons[battler].ability;
}
- else if (gSpeciesInfo[gBattleMons[battlerId].species].abilities[0] != ABILITY_NONE)
+ else if (gSpeciesInfo[gBattleMons[battler].species].abilities[0] != ABILITY_NONE)
{
- if (gSpeciesInfo[gBattleMons[battlerId].species].abilities[1] != ABILITY_NONE)
+ if (gSpeciesInfo[gBattleMons[battler].species].abilities[1] != ABILITY_NONE)
{
u8 abilityDummyVariable = ability; // Needed to match.
- if (gSpeciesInfo[gBattleMons[battlerId].species].abilities[0] != abilityDummyVariable
- && gSpeciesInfo[gBattleMons[battlerId].species].abilities[1] != abilityDummyVariable)
+ if (gSpeciesInfo[gBattleMons[battler].species].abilities[0] != abilityDummyVariable
+ && gSpeciesInfo[gBattleMons[battler].species].abilities[1] != abilityDummyVariable)
{
- ability = gSpeciesInfo[gBattleMons[battlerId].species].abilities[0];
+ ability = gSpeciesInfo[gBattleMons[battler].species].abilities[0];
}
else
{
@@ -1440,26 +1440,26 @@ static void Cmd_check_ability(void)
}
else
{
- ability = gSpeciesInfo[gBattleMons[battlerId].species].abilities[0];
+ ability = gSpeciesInfo[gBattleMons[battler].species].abilities[0];
}
}
else
{
- ability = gSpeciesInfo[gBattleMons[battlerId].species].abilities[1]; // AI can't actually reach this part since no pokemon has ability 2 and no ability 1.
+ ability = gSpeciesInfo[gBattleMons[battler].species].abilities[1]; // AI can't actually reach this part since no Pokémon has ability 2 and no ability 1.
}
}
else
{
// The AI knows its own or partner's ability.
- ability = gBattleMons[battlerId].ability;
+ ability = gBattleMons[battler].ability;
}
if (ability == 0)
AI_THINKING_STRUCT->funcResult = 2; // Unable to answer.
else if (ability == gAIScriptPtr[2])
- AI_THINKING_STRUCT->funcResult = 1; // Pokemon has the ability we wanted to check.
+ AI_THINKING_STRUCT->funcResult = 1; // Pokémon has the ability we wanted to check.
else
- AI_THINKING_STRUCT->funcResult = 0; // Pokemon doesn't have the ability we wanted to check.
+ AI_THINKING_STRUCT->funcResult = 0; // Pokémon doesn't have the ability we wanted to check.
gAIScriptPtr += 3;
}
@@ -1527,7 +1527,7 @@ static void Cmd_if_type_effectiveness(void)
// TypeCalc does not assign to gMoveResultFlags, Cmd_typecalc does
// This makes the check for gMoveResultFlags below always fail
- // This is how you get the "dual non-immunity" glitch, where AI
+ // This is how you get the "dual non-immunity" glitch, where AI
// will use ineffective moves on immune pokémon if the second type
// has a non-neutral, non-immune effectiveness
#ifdef BUGFIX
@@ -1570,19 +1570,19 @@ static void Cmd_if_status_in_party(void)
struct Pokemon *party;
s32 i;
u32 statusToCompareTo;
- u8 battlerId;
+ u8 battler;
switch (gAIScriptPtr[1])
{
case AI_USER:
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
break;
default:
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
break;
}
- party = (GetBattlerSide(battlerId) == B_SIDE_PLAYER) ? gPlayerParty : gEnemyParty;
+ party = (GetBattlerSide(battler) == B_SIDE_PLAYER) ? gPlayerParty : gEnemyParty;
statusToCompareTo = T1_READ_32(gAIScriptPtr + 2);
@@ -1607,19 +1607,19 @@ static void Cmd_if_status_not_in_party(void)
struct Pokemon *party;
s32 i;
u32 statusToCompareTo;
- u8 battlerId;
+ u8 battler;
switch(gAIScriptPtr[1])
{
case 1:
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
break;
default:
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
break;
}
- party = (GetBattlerSide(battlerId) == B_SIDE_PLAYER) ? gPlayerParty : gEnemyParty;
+ party = (GetBattlerSide(battler) == B_SIDE_PLAYER) ? gPlayerParty : gEnemyParty;
statusToCompareTo = T1_READ_32(gAIScriptPtr + 2);
@@ -1673,14 +1673,14 @@ static void Cmd_if_not_effect(void)
static void Cmd_if_stat_level_less_than(void)
{
- u32 battlerId;
+ u32 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if (gBattleMons[battlerId].statStages[gAIScriptPtr[2]] < gAIScriptPtr[3])
+ if (gBattleMons[battler].statStages[gAIScriptPtr[2]] < gAIScriptPtr[3])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
else
gAIScriptPtr += 8;
@@ -1688,14 +1688,14 @@ static void Cmd_if_stat_level_less_than(void)
static void Cmd_if_stat_level_more_than(void)
{
- u32 battlerId;
+ u32 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if (gBattleMons[battlerId].statStages[gAIScriptPtr[2]] > gAIScriptPtr[3])
+ if (gBattleMons[battler].statStages[gAIScriptPtr[2]] > gAIScriptPtr[3])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
else
gAIScriptPtr += 8;
@@ -1703,14 +1703,14 @@ static void Cmd_if_stat_level_more_than(void)
static void Cmd_if_stat_level_equal(void)
{
- u32 battlerId;
+ u32 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if (gBattleMons[battlerId].statStages[gAIScriptPtr[2]] == gAIScriptPtr[3])
+ if (gBattleMons[battler].statStages[gAIScriptPtr[2]] == gAIScriptPtr[3])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
else
gAIScriptPtr += 8;
@@ -1718,14 +1718,14 @@ static void Cmd_if_stat_level_equal(void)
static void Cmd_if_stat_level_not_equal(void)
{
- u32 battlerId;
+ u32 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if (gBattleMons[battlerId].statStages[gAIScriptPtr[2]] != gAIScriptPtr[3])
+ if (gBattleMons[battler].statStages[gAIScriptPtr[2]] != gAIScriptPtr[3])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
else
gAIScriptPtr += 8;
@@ -1951,16 +1951,16 @@ static void Cmd_if_doesnt_have_move_with_effect(void)
static void Cmd_if_any_move_disabled_or_encored(void)
{
- u8 battlerId;
+ u8 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
if (gAIScriptPtr[2] == 0)
{
- if (gDisableStructs[battlerId].disabledMove == MOVE_NONE)
+ if (gDisableStructs[battler].disabledMove == MOVE_NONE)
gAIScriptPtr += 7;
else
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
@@ -1971,7 +1971,7 @@ static void Cmd_if_any_move_disabled_or_encored(void)
}
else
{
- if (gDisableStructs[battlerId].encoredMove != MOVE_NONE)
+ if (gDisableStructs[battler].encoredMove != MOVE_NONE)
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
@@ -2022,31 +2022,31 @@ static void Cmd_watch(void)
static void Cmd_get_hold_effect(void)
{
- u8 battlerId;
+ u8 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- if (gActiveBattler != battlerId)
- AI_THINKING_STRUCT->funcResult = ItemId_GetHoldEffect(BATTLE_HISTORY->itemEffects[battlerId]);
+ if (gActiveBattler != battler)
+ AI_THINKING_STRUCT->funcResult = GetItemHoldEffect(BATTLE_HISTORY->itemEffects[battler]);
else
- AI_THINKING_STRUCT->funcResult = ItemId_GetHoldEffect(gBattleMons[battlerId].item);
+ AI_THINKING_STRUCT->funcResult = GetItemHoldEffect(gBattleMons[battler].item);
gAIScriptPtr += 2;
}
static void Cmd_if_holds_item(void)
{
- u8 battlerId = BattleAI_GetWantedBattler(gAIScriptPtr[1]);
+ u8 battler = BattleAI_GetWantedBattler(gAIScriptPtr[1]);
u16 item;
u8 itemLo, itemHi;
- if ((battlerId & BIT_SIDE) == (sBattler_AI & BIT_SIDE))
- item = gBattleMons[battlerId].item;
+ if ((battler & BIT_SIDE) == (sBattler_AI & BIT_SIDE))
+ item = gBattleMons[battler].item;
else
- item = BATTLE_HISTORY->itemEffects[battlerId];
+ item = BATTLE_HISTORY->itemEffects[battler];
itemHi = gAIScriptPtr[2];
itemLo = gAIScriptPtr[3];
@@ -2066,42 +2066,42 @@ static void Cmd_if_holds_item(void)
static void Cmd_get_gender(void)
{
- u8 battlerId;
+ u8 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- AI_THINKING_STRUCT->funcResult = GetGenderFromSpeciesAndPersonality(gBattleMons[battlerId].species, gBattleMons[battlerId].personality);
+ AI_THINKING_STRUCT->funcResult = GetGenderFromSpeciesAndPersonality(gBattleMons[battler].species, gBattleMons[battler].personality);
gAIScriptPtr += 2;
}
static void Cmd_is_first_turn_for(void)
{
- u8 battlerId;
+ u8 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- AI_THINKING_STRUCT->funcResult = gDisableStructs[battlerId].isFirstTurn;
+ AI_THINKING_STRUCT->funcResult = gDisableStructs[battler].isFirstTurn;
gAIScriptPtr += 2;
}
static void Cmd_get_stockpile_count(void)
{
- u8 battlerId;
+ u8 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- AI_THINKING_STRUCT->funcResult = gDisableStructs[battlerId].stockpileCounter;
+ AI_THINKING_STRUCT->funcResult = gDisableStructs[battler].stockpileCounter;
gAIScriptPtr += 2;
}
@@ -2115,14 +2115,14 @@ static void Cmd_is_double_battle(void)
static void Cmd_get_used_held_item(void)
{
- u8 battlerId;
+ u8 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- AI_THINKING_STRUCT->funcResult = *(u8 *)&gBattleStruct->usedHeldItems[battlerId];
+ AI_THINKING_STRUCT->funcResult = *(u8 *)&gBattleStruct->usedHeldItems[battler];
gAIScriptPtr += 2;
}
@@ -2150,14 +2150,14 @@ static void Cmd_get_move_effect_from_result(void)
static void Cmd_get_protect_count(void)
{
- u8 battlerId;
+ u8 battler;
if (gAIScriptPtr[1] == AI_USER)
- battlerId = sBattler_AI;
+ battler = sBattler_AI;
else
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
- AI_THINKING_STRUCT->funcResult = gDisableStructs[battlerId].protectUses;
+ AI_THINKING_STRUCT->funcResult = gDisableStructs[battler].protectUses;
gAIScriptPtr += 2;
}
@@ -2254,9 +2254,9 @@ static void Cmd_if_target_is_ally(void)
static void Cmd_if_flash_fired(void)
{
- u8 battlerId = BattleAI_GetWantedBattler(gAIScriptPtr[1]);
+ u8 battler = BattleAI_GetWantedBattler(gAIScriptPtr[1]);
- if (gBattleResources->flags->flags[battlerId] & RESOURCE_FLAG_FLASH_FIRE)
+ if (gBattleResources->flags->flags[battler] & RESOURCE_FLAG_FLASH_FIRE)
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c
index 06cdd6c82f..2e76b418a9 100644
--- a/src/battle_ai_switch_items.c
+++ b/src/battle_ai_switch_items.c
@@ -23,7 +23,7 @@ static bool8 ShouldSwitchIfPerishSong(void)
&& gDisableStructs[gActiveBattler].perishSongTimer == 0)
{
*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE;
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SWITCH, 0);
return TRUE;
}
else
@@ -51,7 +51,7 @@ static bool8 ShouldSwitchIfWonderGuard(void)
if (gBattleMons[GetBattlerAtPosition(opposingPosition)].ability != ABILITY_WONDER_GUARD)
return FALSE;
- // Check if Pokemon has a super effective move.
+ // Check if Pokémon has a super effective move.
for (opposingBattler = GetBattlerAtPosition(opposingPosition), i = 0; i < MAX_MON_MOVES; i++)
{
move = gBattleMons[gActiveBattler].moves[i];
@@ -81,7 +81,7 @@ static bool8 ShouldSwitchIfWonderGuard(void)
else
party = gEnemyParty;
- // Find a Pokemon in the party that has a super effective move.
+ // Find a Pokémon in the party that has a super effective move.
for (i = firstId; i < lastId; i++)
{
if (GetMonData(&party[i], MON_DATA_HP) == 0)
@@ -107,13 +107,13 @@ static bool8 ShouldSwitchIfWonderGuard(void)
{
// We found a mon.
*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = i;
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SWITCH, 0);
return TRUE;
}
}
}
- return FALSE; // There is not a single Pokemon in the party that has a super effective move against a mon with Wonder Guard.
+ return FALSE; // There is not a single Pokémon in the party that has a super effective move against a mon with Wonder Guard.
}
static bool8 FindMonThatAbsorbsOpponentsMove(void)
@@ -207,7 +207,7 @@ static bool8 FindMonThatAbsorbsOpponentsMove(void)
{
// we found a mon.
*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = i;
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SWITCH, 0);
return TRUE;
}
}
@@ -229,14 +229,14 @@ static bool8 ShouldSwitchIfNaturalCure(void)
&& Random() & 1)
{
*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE;
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SWITCH, 0);
return TRUE;
}
else if (gBattleMoves[gLastLandedMoves[gActiveBattler]].power == 0
&& Random() & 1)
{
*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE;
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SWITCH, 0);
return TRUE;
}
@@ -248,7 +248,7 @@ static bool8 ShouldSwitchIfNaturalCure(void)
if (Random() & 1)
{
*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE;
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SWITCH, 0);
return TRUE;
}
@@ -416,7 +416,7 @@ static bool8 FindMonWithFlagsAndSuperEffective(u8 flags, u8 moduloPercent)
if (moveFlags & MOVE_RESULT_SUPER_EFFECTIVE && Random() % moduloPercent == 0)
{
*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = i;
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SWITCH, 0);
return TRUE;
}
}
@@ -599,7 +599,7 @@ void AI_TrySwitchOrUseItem(void)
}
}
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_MOVE, BATTLE_OPPOSITE(gActiveBattler) << 8);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_USE_MOVE, BATTLE_OPPOSITE(gActiveBattler) << 8);
}
static void ModulateByTypeEffectiveness(u8 atkType, u8 defType1, u8 defType2, u8 *var)
@@ -706,8 +706,8 @@ u8 GetMostSuitableMonToSwitchInto(void)
u8 type1 = gSpeciesInfo[species].types[0];
u8 type2 = gSpeciesInfo[species].types[1];
u8 typeDmg = TYPE_MUL_NORMAL;
- ModulateByTypeEffectiveness(gBattleMons[opposingBattler].type1, type1, type2, &typeDmg);
- ModulateByTypeEffectiveness(gBattleMons[opposingBattler].type2, type1, type2, &typeDmg);
+ ModulateByTypeEffectiveness(gBattleMons[opposingBattler].types[0], type1, type2, &typeDmg);
+ ModulateByTypeEffectiveness(gBattleMons[opposingBattler].types[1], type1, type2, &typeDmg);
/* Possible bug: this comparison gives the type that takes the most damage, when
a "good" AI would want to select the type that takes the least damage. Unknown if this
@@ -933,7 +933,7 @@ static bool8 ShouldUseItem(void)
if (shouldUse)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_ITEM, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_USE_ITEM, 0);
*(gBattleStruct->chosenItem + (gActiveBattler / 2) * 2) = item;
gBattleResources->battleHistory->trainerItems[i] = ITEM_NONE;
return shouldUse;
diff --git a/src/battle_anim.c b/src/battle_anim.c
index e6e049c370..fb2817af99 100644
--- a/src/battle_anim.c
+++ b/src/battle_anim.c
@@ -115,7 +115,7 @@ EWRAM_DATA u8 gAnimCustomPanning = 0;
#include "data/battle_anim.h"
-static void (* const sScriptCmdTable[])(void) =
+static void (*const sScriptCmdTable[])(void) =
{
Cmd_loadspritegfx, // 0x00
Cmd_unloadspritegfx, // 0x01
@@ -592,30 +592,30 @@ static void Cmd_monbg(void)
{
bool8 toBG_2;
u8 taskId;
- u8 battlerId;
+ u8 battler;
u8 animBattler;
sBattleAnimScriptPtr++;
animBattler = sBattleAnimScriptPtr[0];
if (animBattler & ANIM_TARGET)
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
else
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
// Move designated battler to background
- if (IsBattlerSpriteVisible(battlerId))
+ if (IsBattlerSpriteVisible(battler))
{
- u8 position = GetBattlerPosition(battlerId);
+ u8 position = GetBattlerPosition(battler);
if (position == B_POSITION_OPPONENT_LEFT || position == B_POSITION_PLAYER_RIGHT || IsContest())
toBG_2 = FALSE;
else
toBG_2 = TRUE;
- MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE);
+ MoveBattlerSpriteToBG(battler, toBG_2, FALSE);
taskId = CreateTask(Task_InitUpdateMonBg, 10);
gAnimVisualTaskCount++;
- gTasks[taskId].tBattlerId = battlerId;
+ gTasks[taskId].tBattlerId = battler;
gTasks[taskId].tInBg2 = toBG_2;
gTasks[taskId].tActive = TRUE;
gTasks[taskId].tIsPartner = FALSE;
@@ -623,19 +623,19 @@ static void Cmd_monbg(void)
}
// Move battler's partner to background
- battlerId ^= BIT_FLANK;
- if (IsBattlerSpriteVisible(battlerId))
+ battler ^= BIT_FLANK;
+ if (IsBattlerSpriteVisible(battler))
{
- u8 position = GetBattlerPosition(battlerId);
+ u8 position = GetBattlerPosition(battler);
if (position == B_POSITION_OPPONENT_LEFT || position == B_POSITION_PLAYER_RIGHT || IsContest())
toBG_2 = FALSE;
else
toBG_2 = TRUE;
- MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE);
+ MoveBattlerSpriteToBG(battler, toBG_2, FALSE);
taskId = CreateTask(Task_InitUpdateMonBg, 10);
gAnimVisualTaskCount++;
- gTasks[taskId].tBattlerId = battlerId;
+ gTasks[taskId].tBattlerId = battler;
gTasks[taskId].tInBg2 = toBG_2;
gTasks[taskId].tActive = TRUE;
gTasks[taskId].tIsPartner = TRUE;
@@ -646,26 +646,26 @@ static void Cmd_monbg(void)
gAnimScriptCallback = WaitAnimFrameCount;
}
-bool8 IsBattlerSpriteVisible(u8 battlerId)
+bool8 IsBattlerSpriteVisible(u8 battler)
{
if (IsContest())
{
- if (battlerId == gBattleAnimAttacker)
+ if (battler == gBattleAnimAttacker)
return TRUE;
else
return FALSE;
}
- if (!IsBattlerSpritePresent(battlerId))
+ if (!IsBattlerSpritePresent(battler))
return FALSE;
if (IsContest())
return TRUE; // This line won't ever be reached.
- if (!gBattleSpritesDataPtr->battlerData[battlerId].invisible || !gSprites[gBattlerSpriteIds[battlerId]].invisible)
+ if (!gBattleSpritesDataPtr->battlerData[battler].invisible || !gSprites[gBattlerSpriteIds[battler]].invisible)
return TRUE;
return FALSE;
}
-void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
+void MoveBattlerSpriteToBG(u8 battler, bool8 toBG_2, bool8 setSpriteInvisible)
{
struct BattleAnimBgData animBg;
u8 battlerSpriteId;
@@ -693,7 +693,7 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
SetAnimBgAttribute(1, BG_ANIM_SCREEN_SIZE, 1);
SetAnimBgAttribute(1, BG_ANIM_AREA_OVERFLOW_MODE, 0);
- battlerSpriteId = gBattlerSpriteIds[battlerId];
+ battlerSpriteId = gBattlerSpriteIds[battler];
gBattle_BG1_X = -(gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2) + 0x20;
if (IsContest() && IsSpeciesNotUnown(gContestResources->moveAnim->species))
@@ -701,18 +701,18 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
gBattle_BG1_Y = -(gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2) + 0x20;
if (setSpriteInvisible)
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X);
SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y);
- LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
- CpuCopy32(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], (void *)(BG_PLTT + PLTT_OFFSET_4BPP(animBg.paletteId)), PLTT_SIZE_4BPP);
+ LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battler)], BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
+ CpuCopy32(&gPlttBufferUnfaded[OBJ_PLTT_ID(battler)], (void *)(BG_PLTT + PLTT_OFFSET_4BPP(animBg.paletteId)), PLTT_SIZE_4BPP);
if (IsContest())
battlerPosition = 0;
else
- battlerPosition = GetBattlerPosition(battlerId);
+ battlerPosition = GetBattlerPosition(battler);
DrawBattlerOnBg(1, 0, 0, battlerPosition, animBg.paletteId, animBg.bgTiles, animBg.bgTilemap, animBg.tilesOffset);
@@ -730,21 +730,21 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
SetAnimBgAttribute(2, BG_ANIM_SCREEN_SIZE, 1);
SetAnimBgAttribute(2, BG_ANIM_AREA_OVERFLOW_MODE, 0);
- battlerSpriteId = gBattlerSpriteIds[battlerId];
+ battlerSpriteId = gBattlerSpriteIds[battler];
gBattle_BG2_X = -(gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2) + 0x20;
gBattle_BG2_Y = -(gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2) + 0x20;
if (setSpriteInvisible)
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
SetGpuReg(REG_OFFSET_BG2HOFS, gBattle_BG2_X);
SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y);
- LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], BG_PLTT_ID(9), PLTT_SIZE_4BPP);
- CpuCopy32(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], (void *)(BG_PLTT + PLTT_OFFSET_4BPP(9)), PLTT_SIZE_4BPP);
+ LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battler)], BG_PLTT_ID(9), PLTT_SIZE_4BPP);
+ CpuCopy32(&gPlttBufferUnfaded[OBJ_PLTT_ID(battler)], (void *)(BG_PLTT + PLTT_OFFSET_4BPP(9)), PLTT_SIZE_4BPP);
- DrawBattlerOnBg(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000, animBg.bgTilemap + 0x400, animBg.tilesOffset);
+ DrawBattlerOnBg(2, 0, 0, GetBattlerPosition(battler), animBg.paletteId, animBg.bgTiles + 0x1000, animBg.bgTilemap + 0x400, animBg.tilesOffset);
}
}
@@ -812,12 +812,12 @@ void ResetBattleAnimBg(bool8 toBG2)
static void Task_UpdateMonBg(u8 taskId)
{
- u8 spriteId, battlerId;
+ u8 spriteId, battler;
s16 x, y;
struct BattleAnimBgData animBg;
spriteId = gTasks[taskId].t2_SpriteId;
- battlerId = gTasks[taskId].t2_BattlerId;
+ battler = gTasks[taskId].t2_BattlerId;
GetBattleAnimBg1Data(&animBg);
x = gTasks[taskId].t2_SpriteX - (gSprites[spriteId].x + gSprites[spriteId].x2);
y = gTasks[taskId].t2_SpriteY - (gSprites[spriteId].y + gSprites[spriteId].y2);
@@ -826,13 +826,13 @@ static void Task_UpdateMonBg(u8 taskId)
{
gBattle_BG1_X = x + gTasks[taskId].t2_BgX;
gBattle_BG1_Y = y + gTasks[taskId].t2_BgY;
- CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(battlerId)], &gPlttBufferFaded[BG_PLTT_ID(animBg.paletteId)], PLTT_SIZE_4BPP);
+ CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(battler)], &gPlttBufferFaded[BG_PLTT_ID(animBg.paletteId)], PLTT_SIZE_4BPP);
}
else
{
gBattle_BG2_X = x + gTasks[taskId].t2_BgX;
gBattle_BG2_Y = y + gTasks[taskId].t2_BgY;
- CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(battlerId)], &gPlttBufferFaded[BG_PLTT_ID(9)], PLTT_SIZE_4BPP);
+ CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(battler)], &gPlttBufferFaded[BG_PLTT_ID(9)], PLTT_SIZE_4BPP);
}
}
@@ -852,7 +852,7 @@ static void Task_UpdateMonBg(u8 taskId)
static void Cmd_clearmonbg(void)
{
u8 animBattlerId;
- u8 battlerId;
+ u8 battler;
u8 taskId;
sBattleAnimScriptPtr++;
@@ -864,20 +864,20 @@ static void Cmd_clearmonbg(void)
animBattlerId = ANIM_DEF_PARTNER;
if (animBattlerId == ANIM_ATTACKER || animBattlerId == ANIM_ATK_PARTNER)
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
else
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
if (sMonAnimTaskIdArray[0] != TASK_NONE)
- gSprites[gBattlerSpriteIds[battlerId]].invisible = FALSE;
+ gSprites[gBattlerSpriteIds[battler]].invisible = FALSE;
if (animBattlerId > 1 && sMonAnimTaskIdArray[1] != TASK_NONE)
- gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battlerId)]].invisible = FALSE;
+ gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].invisible = FALSE;
else
animBattlerId = 0;
taskId = CreateTask(Task_ClearMonBg, 5);
gTasks[taskId].data[0] = animBattlerId;
- gTasks[taskId].data[2] = battlerId;
+ gTasks[taskId].data[2] = battler;
sBattleAnimScriptPtr++;
}
@@ -914,7 +914,7 @@ static void Task_ClearMonBg(u8 taskId)
static void Cmd_monbg_static(void)
{
bool8 toBG_2;
- u8 battlerId;
+ u8 battler;
u8 animBattlerId;
sBattleAnimScriptPtr++;
@@ -927,31 +927,31 @@ static void Cmd_monbg_static(void)
animBattlerId = ANIM_DEF_PARTNER;
if (animBattlerId == ANIM_ATTACKER || animBattlerId == ANIM_ATK_PARTNER)
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
else
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
- if (IsBattlerSpriteVisible(battlerId))
+ if (IsBattlerSpriteVisible(battler))
{
- u8 position = GetBattlerPosition(battlerId);
+ u8 position = GetBattlerPosition(battler);
if (position == B_POSITION_OPPONENT_LEFT || position == B_POSITION_PLAYER_RIGHT || IsContest())
toBG_2 = FALSE;
else
toBG_2 = TRUE;
- MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE);
+ MoveBattlerSpriteToBG(battler, toBG_2, FALSE);
}
- battlerId ^= BIT_FLANK;
- if (animBattlerId > 1 && IsBattlerSpriteVisible(battlerId))
+ battler ^= BIT_FLANK;
+ if (animBattlerId > 1 && IsBattlerSpriteVisible(battler))
{
- u8 position = GetBattlerPosition(battlerId);
+ u8 position = GetBattlerPosition(battler);
if (position == B_POSITION_OPPONENT_LEFT || position == B_POSITION_PLAYER_RIGHT || IsContest())
toBG_2 = FALSE;
else
toBG_2 = TRUE;
- MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE);
+ MoveBattlerSpriteToBG(battler, toBG_2, FALSE);
}
sBattleAnimScriptPtr++;
@@ -960,7 +960,7 @@ static void Cmd_monbg_static(void)
static void Cmd_clearmonbg_static(void)
{
u8 animBattlerId;
- u8 battlerId;
+ u8 battler;
u8 taskId;
sBattleAnimScriptPtr++;
@@ -972,20 +972,20 @@ static void Cmd_clearmonbg_static(void)
animBattlerId = ANIM_DEF_PARTNER;
if (animBattlerId == ANIM_ATTACKER || animBattlerId == ANIM_ATK_PARTNER)
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
else
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
- if (IsBattlerSpriteVisible(battlerId))
- gSprites[gBattlerSpriteIds[battlerId]].invisible = FALSE;
- if (animBattlerId > 1 && IsBattlerSpriteVisible(BATTLE_PARTNER(battlerId)))
- gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battlerId)]].invisible = FALSE;
+ if (IsBattlerSpriteVisible(battler))
+ gSprites[gBattlerSpriteIds[battler]].invisible = FALSE;
+ if (animBattlerId > 1 && IsBattlerSpriteVisible(BATTLE_PARTNER(battler)))
+ gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].invisible = FALSE;
else
animBattlerId = 0;
taskId = CreateTask(Task_ClearMonBgStatic, 5);
gTasks[taskId].data[0] = animBattlerId;
- gTasks[taskId].data[2] = battlerId;
+ gTasks[taskId].data[2] = battler;
sBattleAnimScriptPtr++;
}
@@ -996,16 +996,16 @@ static void Task_ClearMonBgStatic(u8 taskId)
if (gTasks[taskId].data[1] != 1)
{
bool8 toBG_2;
- u8 battlerId = gTasks[taskId].data[2];
- u8 position = GetBattlerPosition(battlerId);
+ u8 battler = gTasks[taskId].data[2];
+ u8 position = GetBattlerPosition(battler);
if (position == B_POSITION_OPPONENT_LEFT || position == B_POSITION_PLAYER_RIGHT || IsContest())
toBG_2 = FALSE;
else
toBG_2 = TRUE;
- if (IsBattlerSpriteVisible(battlerId))
+ if (IsBattlerSpriteVisible(battler))
ResetBattleAnimBg(toBG_2);
- if (gTasks[taskId].data[0] > 1 && IsBattlerSpriteVisible(BATTLE_PARTNER(battlerId)))
+ if (gTasks[taskId].data[0] > 1 && IsBattlerSpriteVisible(BATTLE_PARTNER(battler)))
ResetBattleAnimBg(toBG_2 ^ 1);
DestroyTask(taskId);
@@ -1687,19 +1687,19 @@ static void Cmd_jumpifcontest(void)
static void Cmd_splitbgprio(void)
{
u8 wantedBattler;
- u8 battlerId;
+ u8 battler;
u8 battlerPosition;
wantedBattler = sBattleAnimScriptPtr[1];
sBattleAnimScriptPtr += 2;
if (wantedBattler != ANIM_ATTACKER)
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
else
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
// Apply only if the given battler is the lead (on left from team's perspective)
- battlerPosition = GetBattlerPosition(battlerId);
+ battlerPosition = GetBattlerPosition(battler);
if (!IsContest() && (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_OPPONENT_RIGHT))
{
SetAnimBgAttribute(1, BG_ANIM_PRIORITY, 1);
@@ -1721,7 +1721,7 @@ static void Cmd_splitbgprio_foes(void)
{
u8 wantedBattler;
u8 battlerPosition;
- u8 battlerId;
+ u8 battler;
wantedBattler = sBattleAnimScriptPtr[1];
sBattleAnimScriptPtr += 2;
@@ -1730,12 +1730,12 @@ static void Cmd_splitbgprio_foes(void)
if (GetBattlerSide(gBattleAnimAttacker) != GetBattlerSide(gBattleAnimTarget))
{
if (wantedBattler != ANIM_ATTACKER)
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
else
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
// Apply only if the given battler is the lead (on left from team's perspective)
- battlerPosition = GetBattlerPosition(battlerId);
+ battlerPosition = GetBattlerPosition(battler);
if (!IsContest() && (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_OPPONENT_RIGHT))
{
SetAnimBgAttribute(1, BG_ANIM_PRIORITY, 1);
diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c
index 3a558969b5..c2894894b6 100644
--- a/src/battle_anim_effects_1.c
+++ b/src/battle_anim_effects_1.c
@@ -3082,20 +3082,18 @@ static void AnimPresent(struct Sprite *sprite)
static void AnimKnockOffOpponentsItem(struct Sprite *sprite)
{
- int zero;
sprite->data[0] += ((sprite->data[3] * 128) / sprite->data[4]);
- zero = 0;
if (sprite->data[0] > 0x7F)
{
sprite->data[1]++;
- sprite->data[0] = zero;
+ sprite->data[0] = 0;
}
sprite->y2 = Sin(sprite->data[0] + 0x80, 30 - sprite->data[1] * 8);
if (moveAlongLinearPath(sprite))
{
- sprite->y2 = zero;
- sprite->data[0] = zero;
+ sprite->y2 = 0;
+ sprite->data[0] = 0;
DestroyAnimSprite(sprite);
}
}
@@ -3173,13 +3171,11 @@ static void AnimItemSteal(struct Sprite *sprite)
static void AnimItemSteal_Step3(struct Sprite *sprite)
{
- int zero;
sprite->data[0] += ((sprite->data[3] * 128) / sprite->data[4]);
- zero = 0;
if (sprite->data[0] > 127)
{
sprite->data[1]++;
- sprite->data[0] = zero;
+ sprite->data[0] = 0;
}
sprite->y2 = Sin(sprite->data[0] + 0x80, 30 - sprite->data[1] * 8);
@@ -4043,7 +4039,9 @@ static void AnimMilkBottle_Step1(struct Sprite *sprite)
sprite->data[6]++;
}
else if (sprite->data[7] > 0)
+ {
sprite->data[7]--;
+ }
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(sprite->data[6], sprite->data[7]));
if (sprite->data[6] == 16 && sprite->data[7] == 0)
diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c
old mode 100755
new mode 100644
index d26e0ba4c7..bf7e774f6b
--- a/src/battle_anim_effects_2.c
+++ b/src/battle_anim_effects_2.c
@@ -2209,7 +2209,9 @@ static void AnimTask_Splash_Step(u8 taskId)
task->data[4] -= 2;
}
else
+ {
task->data[1]++;
+ }
break;
case 3:
if (!RunAffineAnimFromTaskData(task))
@@ -2956,7 +2958,9 @@ static void AnimTask_SpeedDust_Step(u8 taskId)
task->data[8] = 1;
}
else
+ {
task->data[8] = 2;
+ }
}
}
break;
@@ -3673,7 +3677,6 @@ static void AnimTask_UproarDistortion_Step(u8 taskId)
static void AnimJaggedMusicNote(struct Sprite *sprite)
{
- int var1;
u8 battler = !gBattleAnimArgs[0] ? gBattleAnimAttacker : gBattleAnimTarget;
if (GetBattlerSide(battler) == B_SIDE_OPPONENT)
@@ -3684,16 +3687,8 @@ static void AnimJaggedMusicNote(struct Sprite *sprite)
sprite->data[0] = 0;
sprite->data[1] = (u16)sprite->x << 3;
sprite->data[2] = (u16)sprite->y << 3;
-
- var1 = gBattleAnimArgs[1] << 3;
- if (var1 < 0)
- var1 += 7;
- sprite->data[3] = var1 >> 3;
-
- var1 = gBattleAnimArgs[2] << 3;
- if (var1 < 0)
- var1 += 7;
- sprite->data[4] = var1 >> 3;
+ sprite->data[3] = (gBattleAnimArgs[1] << 3) / 8;
+ sprite->data[4] = (gBattleAnimArgs[2] << 3) / 8;
sprite->oam.tileNum += gBattleAnimArgs[3] * 16;
sprite->callback = AnimJaggedMusicNote_Step;
diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c
index b6a82b8d9a..cc36e608f8 100644
--- a/src/battle_anim_electric.c
+++ b/src/battle_anim_electric.c
@@ -597,7 +597,9 @@ static void AnimZapCannonSpark_Step(struct Sprite *sprite)
sprite->invisible ^= 1;
}
else
+ {
DestroyAnimSprite(sprite);
+ }
}
static void AnimThunderboltOrb_Step(struct Sprite *sprite)
@@ -870,7 +872,9 @@ static void AnimTask_ElectricChargingParticles_Step(u8 taskId)
}
}
else if(task->data[7] == 0)
+ {
DestroyAnimVisualTask(taskId);
+ }
}
static void AnimElectricChargingParticles_Step(struct Sprite *sprite)
@@ -991,7 +995,9 @@ void AnimTask_VoltTackleAttackerReappear(u8 taskId)
gSprites[task->data[15]].x2 = task->data[14];
}
else
+ {
task->data[0]++;
+ }
}
break;
diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c
index 764a951ef8..b9cc966ecf 100644
--- a/src/battle_anim_fight.c
+++ b/src/battle_anim_fight.c
@@ -37,7 +37,7 @@ static void AnimRevengeScratch(struct Sprite *);
static void AnimFocusPunchFist(struct Sprite *);
static void AnimSpinningKickOrPunchFinish(struct Sprite *);
-extern struct SpriteTemplate gBasicHitSplatSpriteTemplate;
+extern const struct SpriteTemplate gBasicHitSplatSpriteTemplate;
// Unused
static const struct SpriteTemplate sUnusedHumanoidFootSpriteTemplate =
@@ -493,7 +493,7 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite)
y *= -1;
if (GET_BATTLER_SIDE2(battler) == B_SIDE_PLAYER)
- y += 0xFFF0;
+ y -= 16;
sprite->x += x;
sprite->y += y;
diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c
index c5e59a65af..872e136f93 100644
--- a/src/battle_anim_flying.c
+++ b/src/battle_anim_flying.c
@@ -900,7 +900,7 @@ static void AnimUnusedBubbleThrow(struct Sprite *sprite)
sprite->callback = TranslateAnimSpriteToTargetMonLocation;
}
-static void AnimWhirlwindLine(struct Sprite * sprite)
+static void AnimWhirlwindLine(struct Sprite *sprite)
{
u16 offset;
u8 mult;
diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c
index fed1325bc3..6cb7da5c20 100644
--- a/src/battle_anim_ghost.c
+++ b/src/battle_anim_ghost.c
@@ -280,7 +280,9 @@ static void AnimConfuseRayBallBounce_Step2(struct Sprite *sprite)
sprite->callback = DestroyAnimSpriteAndDisableBlend;
}
else
+ {
UpdateConfuseRayBallBlend(sprite);
+ }
}
static void UpdateConfuseRayBallBlend(struct Sprite *sprite)
@@ -628,11 +630,13 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId)
task->data[3] = 16;
task->data[13] = GetAnimBattlerSpriteId(ANIM_TARGET);
task->data[4] = OBJ_PLTT_ID2(gSprites[task->data[13]].oam.paletteNum);
- if (position == 1) {
+ if (position == 1)
+ {
u16 mask = DISPCNT_BG1_ON;
mask2 = mask;
}
- else {
+ else
+ {
u16 mask = DISPCNT_BG2_ON;
mask2 = mask;
}
diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c
index d6d8137bcd..b3591544ec 100644
--- a/src/battle_anim_ground.c
+++ b/src/battle_anim_ground.c
@@ -22,7 +22,7 @@ static void AnimTask_DigEndBounceMovementSetInvisible(u8);
static void AnimTask_DigSetVisibleUnderground(u8);
static void AnimTask_DigRiseUpFromHole(u8);
static void SetDigScanlineEffect(u8, s16, s16);
-static void AnimTask_ShakeTerrain(u8);
+static void AnimTask_ShakePlatforms(u8);
static void AnimTask_ShakeBattlers(u8);
static void SetBattlersXOffsetForShake(struct Task *);
static void WaitForFissureCompletion(u8);
@@ -564,12 +564,12 @@ static void AnimDigDirtMound(struct Sprite *sprite)
#define tMaxTime data[3]
#define tbattlerSpriteIds(i) data[9 + (i)]
#define tNumBattlers data[13] // AnimTask_ShakeBattlers
-#define tInitialX data[13] // AnimTask_ShakeTerrain
+#define tInitialX data[13] // AnimTask_ShakePlatforms
#define tHorizOffset data[14]
#define tInitHorizOffset data[15]
-// Shakes battler(s) or the battle terrain back and forth horizontally. Used by e.g. Earthquake, Eruption
-// arg0: What to shake. 0-3 for any specific battler, MAX_BATTLERS_COUNT for all battlers, MAX_BATTLERS_COUNT + 1 for the terrain
+// Shakes battler(s) or the battle platforms back and forth horizontally. Used by e.g. Earthquake, Eruption
+// arg0: What to shake. 0-3 for any specific battler, MAX_BATTLERS_COUNT for all battlers, MAX_BATTLERS_COUNT + 1 for the platforms
// arg1: Shake intensity, used to calculate horizontal pixel offset (if 0, use move power instead)
// arg2: Length of time to shake for
void AnimTask_HorizontalShake(u8 taskId)
@@ -585,9 +585,9 @@ void AnimTask_HorizontalShake(u8 taskId)
task->tMaxTime = gBattleAnimArgs[2];
switch (gBattleAnimArgs[0])
{
- case MAX_BATTLERS_COUNT + 1: // Shake terrain
+ case MAX_BATTLERS_COUNT + 1: // Shake platforms
task->tInitialX = gBattle_BG3_X;
- task->func = AnimTask_ShakeTerrain;
+ task->func = AnimTask_ShakePlatforms;
break;
case MAX_BATTLERS_COUNT: // Shake all battlers
task->tNumBattlers = 0;
@@ -616,7 +616,7 @@ void AnimTask_HorizontalShake(u8 taskId)
}
}
-static void AnimTask_ShakeTerrain(u8 taskId)
+static void AnimTask_ShakePlatforms(u8 taskId)
{
struct Task *task = &gTasks[taskId];
diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c
index 273721e162..6b48215a7a 100644
--- a/src/battle_anim_ice.c
+++ b/src/battle_anim_ice.c
@@ -13,11 +13,16 @@
#include "constants/battle_anim.h"
#include "constants/rgb.h"
+enum {
+ HAILSTRUCTTYPE_NEGATIVE_POS_MOD = 0,
+ HAILSTRUCTTYPE_POSITIVE_POS_MOD = 1,
+ HAILSTRUCTTYPE_FIXED_POSITION = 2,
+};
struct HailStruct {
s32 x:10;
s32 y:10;
s32 bPosition:8;
- s32 unk3:4;
+ s32 type:4;
};
static void AnimUnusedIceCrystalThrow(struct Sprite *);
@@ -371,16 +376,16 @@ const struct SpriteTemplate gPoisonGasCloudSpriteTemplate =
static const struct HailStruct sHailCoordData[] =
{
- {.x = 100, .y = 120, .bPosition = B_POSITION_PLAYER_LEFT, .unk3 = 2},
- {.x = 85, .y = 120, .bPosition = B_POSITION_PLAYER_LEFT, .unk3 = 0},
- {.x = 242, .y = 120, .bPosition = B_POSITION_OPPONENT_LEFT, .unk3 = 1},
- {.x = 66, .y = 120, .bPosition = B_POSITION_PLAYER_RIGHT, .unk3 = 1},
- {.x = 182, .y = 120, .bPosition = B_POSITION_OPPONENT_RIGHT, .unk3 = 0},
- {.x = 60, .y = 120, .bPosition = B_POSITION_PLAYER_LEFT, .unk3 = 2},
- {.x = 214, .y = 120, .bPosition = B_POSITION_OPPONENT_LEFT, .unk3 = 0},
- {.x = 113, .y = 120, .bPosition = B_POSITION_PLAYER_LEFT, .unk3 = 1},
- {.x = 210, .y = 120, .bPosition = B_POSITION_OPPONENT_RIGHT, .unk3 = 1},
- {.x = 38, .y = 120, .bPosition = B_POSITION_PLAYER_RIGHT, .unk3 = 0},
+ {.x = 100, .y = 120, .bPosition = B_POSITION_PLAYER_LEFT, .type = HAILSTRUCTTYPE_FIXED_POSITION},
+ {.x = 85, .y = 120, .bPosition = B_POSITION_PLAYER_LEFT, .type = HAILSTRUCTTYPE_NEGATIVE_POS_MOD},
+ {.x = 242, .y = 120, .bPosition = B_POSITION_OPPONENT_LEFT, .type = HAILSTRUCTTYPE_POSITIVE_POS_MOD},
+ {.x = 66, .y = 120, .bPosition = B_POSITION_PLAYER_RIGHT, .type = HAILSTRUCTTYPE_POSITIVE_POS_MOD},
+ {.x = 182, .y = 120, .bPosition = B_POSITION_OPPONENT_RIGHT, .type = HAILSTRUCTTYPE_NEGATIVE_POS_MOD},
+ {.x = 60, .y = 120, .bPosition = B_POSITION_PLAYER_LEFT, .type = HAILSTRUCTTYPE_FIXED_POSITION},
+ {.x = 214, .y = 120, .bPosition = B_POSITION_OPPONENT_LEFT, .type = HAILSTRUCTTYPE_NEGATIVE_POS_MOD},
+ {.x = 113, .y = 120, .bPosition = B_POSITION_PLAYER_LEFT, .type = HAILSTRUCTTYPE_POSITIVE_POS_MOD},
+ {.x = 210, .y = 120, .bPosition = B_POSITION_OPPONENT_RIGHT, .type = HAILSTRUCTTYPE_POSITIVE_POS_MOD},
+ {.x = 38, .y = 120, .bPosition = B_POSITION_PLAYER_RIGHT, .type = HAILSTRUCTTYPE_NEGATIVE_POS_MOD},
};
static const union AffineAnimCmd sAffineAnim_HailParticle_0[] =
@@ -1332,6 +1337,13 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
}
}
+#define tState data[0]
+#define tSpriteCount data[1]
+#define tHailAffineAnimNum data[2]
+#define tHailStructId data[3]
+#define tInitialDelayTimer data[4]
+#define tHailSpawnTimer data[5]
+
void AnimTask_Hail(u8 taskId)
{
struct Task *task = &gTasks[taskId];
@@ -1342,71 +1354,86 @@ void AnimTask_Hail(u8 taskId)
static void AnimTask_Hail2(u8 taskId)
{
struct Task *task = &gTasks[taskId];
- switch (task->data[0])
+ switch (task->tState)
{
case 0:
- if (++task->data[4] > 2)
+ if (++task->tInitialDelayTimer > 2)
{
- task->data[4] = 0;
- task->data[5] = 0;
- task->data[2] = 0;
- task->data[0]++;
+ task->tInitialDelayTimer = 0;
+ task->tHailSpawnTimer = 0;
+ task->tHailAffineAnimNum = 0;
+ task->tState++;
}
break;
case 1:
- if (task->data[5] == 0)
+ if (task->tHailSpawnTimer == 0)
{
- if (GenerateHailParticle(task->data[3], task->data[2], taskId, 1))
- task->data[1]++;
+ if (GenerateHailParticle(task->tHailStructId, task->tHailAffineAnimNum, taskId, 1))
+ task->tSpriteCount++;
- if (++task->data[2] == 3)
+ if (++task->tHailAffineAnimNum == (int)ARRAY_COUNT(sAffineAnims_HailParticle))
{
- if (++task->data[3] == 10)
- task->data[0]++;
+ if (++task->tHailStructId == (int)ARRAY_COUNT(sHailCoordData))
+ task->tState++;
else
- task->data[0]--;
+ task->tState--;
}
else
{
- task->data[5] = 1;
+ task->tHailSpawnTimer = 1;
}
}
else
{
- task->data[5]--;
+ task->tHailSpawnTimer--;
}
break;
case 2:
- if (task->data[1] == 0)
+ if (task->tSpriteCount == 0)
DestroyAnimVisualTask(taskId);
break;
}
}
+#undef tState
+#undef tSpriteCount
+#undef tHailAffineAnimNum
+#undef tHailStructId
+#undef tInitialDelayTimer
+#undef tHailSpawnTimer
+
+// Hail falling particle sprite vars
+#define sSpawnImpactEffect data[0]
+#define sTargetX data[3]
+#define sTargetY data[4]
+#define sAffineAnimNum data[5]
+#define sOwnerTaskId data[6]
+#define sOwnerTaskSpriteCountField data[7]
+
static bool8 GenerateHailParticle(u8 hailStructId, u8 affineAnimNum, u8 taskId, u8 c)
{
u8 id;
s16 battlerX, battlerY;
s16 spriteX;
- bool8 possibleBool = FALSE;
- s8 unk = sHailCoordData[hailStructId].unk3;
+ bool8 shouldSpawnImpactEffect = FALSE;
+ s8 type = sHailCoordData[hailStructId].type;
- if (unk != 2)
+ if (type != HAILSTRUCTTYPE_FIXED_POSITION)
{
id = GetBattlerAtPosition(sHailCoordData[hailStructId].bPosition);
if (IsBattlerSpriteVisible(id))
{
- possibleBool = TRUE;
+ shouldSpawnImpactEffect = TRUE;
battlerX = GetBattlerSpriteCoord(id, BATTLER_COORD_X_2);
battlerY = GetBattlerSpriteCoord(id, BATTLER_COORD_Y_PIC_OFFSET);
- switch (unk)
+ switch (type)
{
- case 0:
+ case HAILSTRUCTTYPE_NEGATIVE_POS_MOD:
battlerX -= GetBattlerSpriteCoordAttr(id, BATTLER_COORD_ATTR_WIDTH) / 6;
battlerY -= GetBattlerSpriteCoordAttr(id, BATTLER_COORD_ATTR_HEIGHT) / 6;
break;
- case 1:
+ case HAILSTRUCTTYPE_POSITIVE_POS_MOD:
battlerX += GetBattlerSpriteCoordAttr(id, BATTLER_COORD_ATTR_WIDTH) / 6;
battlerY += GetBattlerSpriteCoordAttr(id, BATTLER_COORD_ATTR_HEIGHT) / 6;
break;
@@ -1432,12 +1459,12 @@ static bool8 GenerateHailParticle(u8 hailStructId, u8 affineAnimNum, u8 taskId,
else
{
StartSpriteAffineAnim(&gSprites[id], affineAnimNum);
- gSprites[id].data[0] = possibleBool;
- gSprites[id].data[3] = battlerX;
- gSprites[id].data[4] = battlerY;
- gSprites[id].data[5] = affineAnimNum;
- gSprites[id].data[6] = taskId;
- gSprites[id].data[7] = c;
+ gSprites[id].sSpawnImpactEffect = shouldSpawnImpactEffect;
+ gSprites[id].sTargetX = battlerX;
+ gSprites[id].sTargetY = battlerY;
+ gSprites[id].sAffineAnimNum = affineAnimNum;
+ gSprites[id].sOwnerTaskId = taskId;
+ gSprites[id].sOwnerTaskSpriteCountField = c;
return TRUE;
}
}
@@ -1449,20 +1476,23 @@ static void AnimHailBegin(struct Sprite *sprite)
sprite->x += 4;
sprite->y += 8;
- if (sprite->x < sprite->data[3] && sprite->y < sprite->data[4])
+ if (sprite->x < sprite->sTargetX && sprite->y < sprite->sTargetY)
return;
- if (sprite->data[0] == 1 && sprite->data[5] == 0)
+ if (sprite->sSpawnImpactEffect == 1 && sprite->sAffineAnimNum == 0)
{
spriteId = CreateSprite(&gIceCrystalHitLargeSpriteTemplate,
- sprite->data[3], sprite->data[4], sprite->subpriority);
+ sprite->sTargetX, sprite->sTargetY, sprite->subpriority);
sprite->data[0] = spriteId;
if (spriteId != MAX_SPRITES)
{
+ // The sprite template we're using is shared amongst a few other
+ // places, which make the sprite flicker. That's not what we want
+ // here, though. Override the callback.
gSprites[sprite->data[0]].callback = AnimHailContinue;
- gSprites[sprite->data[0]].data[6] = sprite->data[6];
- gSprites[sprite->data[0]].data[7] = sprite->data[7];
+ gSprites[sprite->data[0]].sOwnerTaskId = sprite->sOwnerTaskId;
+ gSprites[sprite->data[0]].sOwnerTaskSpriteCountField = sprite->sOwnerTaskSpriteCountField;
}
FreeOamMatrix(sprite->oam.matrixNum);
@@ -1470,22 +1500,34 @@ static void AnimHailBegin(struct Sprite *sprite)
}
else
{
- gTasks[sprite->data[6]].data[sprite->data[7]]--;
+ gTasks[sprite->sOwnerTaskId].data[sprite->sOwnerTaskSpriteCountField]--;
FreeOamMatrix(sprite->oam.matrixNum);
DestroySprite(sprite);
}
}
+#undef sSpawnImpactEffect
+#undef sTargetX
+#undef sTargetY
+#undef sAffineAnimNum
+
+// Hail impact VFX sprite vars
+#define sTimer data[0]
+
static void AnimHailContinue(struct Sprite *sprite)
{
- if (++sprite->data[0] == 20)
+ if (++sprite->sTimer == 20)
{
- gTasks[sprite->data[6]].data[sprite->data[7]]--;
+ gTasks[sprite->sOwnerTaskId].data[sprite->sOwnerTaskSpriteCountField]--;
FreeOamMatrix(sprite->oam.matrixNum);
DestroySprite(sprite);
}
}
+#undef sTimer
+#undef sOwnerTaskId
+#undef sOwnerTaskSpriteCountField
+
// Initializes the animation for Ice Ball.
// arg 0: initial x pixel offset
// arg 1: initial y pixel offset
diff --git a/src/battle_anim_mon_movement.c b/src/battle_anim_mon_movement.c
index 247aba1a42..a8a129c201 100644
--- a/src/battle_anim_mon_movement.c
+++ b/src/battle_anim_mon_movement.c
@@ -156,7 +156,7 @@ void AnimTask_ShakeMon2(u8 taskId)
{
u8 spriteId;
bool8 abort = FALSE;
- u8 battlerId;
+ u8 battler;
if (gBattleAnimArgs[0] < MAX_BATTLERS_COUNT)
{
@@ -169,24 +169,24 @@ void AnimTask_ShakeMon2(u8 taskId)
switch (gBattleAnimArgs[0])
{
case ANIM_PLAYER_LEFT:
- battlerId = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT);
+ battler = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT);
break;
case ANIM_PLAYER_RIGHT:
- battlerId = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT);
+ battler = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT);
break;
case ANIM_OPPONENT_LEFT:
- battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
+ battler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
break;
case ANIM_OPPONENT_RIGHT:
default:
- battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT);
+ battler = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT);
break;
}
- if (IsBattlerSpriteVisible(battlerId) == FALSE)
+ if (IsBattlerSpriteVisible(battler) == FALSE)
abort = TRUE;
- spriteId = gBattlerSpriteIds[battlerId];
+ spriteId = gBattlerSpriteIds[battler];
}
else
{
@@ -535,7 +535,7 @@ static void SlideMonToOriginalPos_Step(struct Sprite *sprite)
}
// Linearly translates a mon to a target offset. The horizontal offset
-// is mirrored for the opponent's pokemon, and the vertical offset
+// is mirrored for the opponent's Pokémon, and the vertical offset
// is only mirrored if arg 3 is set to 1.
// arg 0: 0 = attacker, 1 = target
// arg 1: target x pixel offset
@@ -578,16 +578,16 @@ static void SlideMonToOffset(struct Sprite *sprite)
static void SlideMonToOffsetAndBack(struct Sprite *sprite)
{
u8 spriteId;
- u8 battlerId;
+ u8 battler;
sprite->invisible = TRUE;
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
else
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
- spriteId = gBattlerSpriteIds[battlerId];
- if (GetBattlerSide(battlerId))
+ spriteId = gBattlerSpriteIds[battler];
+ if (GetBattlerSide(battler))
{
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
if (gBattleAnimArgs[3] == 1)
diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c
index 6dd0d20852..dff3a71fa1 100644
--- a/src/battle_anim_mons.c
+++ b/src/battle_anim_mons.c
@@ -77,7 +77,7 @@ static const u8 sCastformBackSpriteYCoords[NUM_CASTFORM_FORMS] =
[CASTFORM_ICE] = 0,
};
-// Placeholders for pokemon sprites to be created for a move animation effect (e.g. Role Play / Snatch)
+// Placeholders for Pokémon sprites to be created for a move animation effect (e.g. Role Play / Snatch)
#define TAG_MOVE_EFFECT_MON_1 55125
#define TAG_MOVE_EFFECT_MON_2 55126
@@ -109,7 +109,7 @@ static const struct SpriteSheet sSpriteSheets_MoveEffectMons[] =
{ gMiscBlank_Gfx, MON_PIC_SIZE, TAG_MOVE_EFFECT_MON_2, },
};
-u8 GetBattlerSpriteCoord(u8 battlerId, u8 coordType)
+u8 GetBattlerSpriteCoord(u8 battler, u8 coordType)
{
u8 retVal;
u16 species;
@@ -117,7 +117,7 @@ u8 GetBattlerSpriteCoord(u8 battlerId, u8 coordType)
if (IsContest())
{
- if (coordType == BATTLER_COORD_Y_PIC_OFFSET && battlerId == 3)
+ if (coordType == BATTLER_COORD_Y_PIC_OFFSET && battler == 3)
coordType = BATTLER_COORD_Y;
}
@@ -125,10 +125,10 @@ u8 GetBattlerSpriteCoord(u8 battlerId, u8 coordType)
{
case BATTLER_COORD_X:
case BATTLER_COORD_X_2:
- retVal = sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battlerId)].x;
+ retVal = sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battler)].x;
break;
case BATTLER_COORD_Y:
- retVal = sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battlerId)].y;
+ retVal = sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battler)].y;
break;
case BATTLER_COORD_Y_PIC_OFFSET:
case BATTLER_COORD_Y_PIC_OFFSET_DEFAULT:
@@ -142,34 +142,34 @@ u8 GetBattlerSpriteCoord(u8 battlerId, u8 coordType)
}
else
{
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
- species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ if (!spriteInfo[battler].transformSpecies)
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
else
- species = spriteInfo[battlerId].transformSpecies;
+ species = spriteInfo[battler].transformSpecies;
}
else
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ if (!spriteInfo[battler].transformSpecies)
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
else
- species = spriteInfo[battlerId].transformSpecies;
+ species = spriteInfo[battler].transformSpecies;
}
}
if (coordType == BATTLER_COORD_Y_PIC_OFFSET)
- retVal = GetBattlerSpriteFinal_Y(battlerId, species, TRUE);
+ retVal = GetBattlerSpriteFinal_Y(battler, species, TRUE);
else
- retVal = GetBattlerSpriteFinal_Y(battlerId, species, FALSE);
+ retVal = GetBattlerSpriteFinal_Y(battler, species, FALSE);
break;
}
return retVal;
}
-u8 GetBattlerYDelta(u8 battlerId, u16 species)
+u8 GetBattlerYDelta(u8 battler, u16 species)
{
u16 letter;
u32 personality;
@@ -177,7 +177,7 @@ u8 GetBattlerYDelta(u8 battlerId, u16 species)
u8 ret;
u16 coordSpecies;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER || IsContest())
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER || IsContest())
{
if (species == SPECIES_UNOWN)
{
@@ -191,10 +191,10 @@ u8 GetBattlerYDelta(u8 battlerId, u16 species)
else
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
- personality = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PERSONALITY);
+ if (!spriteInfo[battler].transformSpecies)
+ personality = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_PERSONALITY);
else
- personality = gTransformedPersonalities[battlerId];
+ personality = gTransformedPersonalities[battler];
}
letter = GET_UNOWN_LETTER(personality);
if (!letter)
@@ -205,7 +205,7 @@ u8 GetBattlerYDelta(u8 battlerId, u16 species)
}
else if (species == SPECIES_CASTFORM)
{
- ret = sCastformBackSpriteYCoords[gBattleMonForms[battlerId]];
+ ret = sCastformBackSpriteYCoords[gBattleMonForms[battler]];
}
else if (species > NUM_SPECIES)
{
@@ -221,10 +221,10 @@ u8 GetBattlerYDelta(u8 battlerId, u16 species)
if (species == SPECIES_UNOWN)
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
- personality = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PERSONALITY);
+ if (!spriteInfo[battler].transformSpecies)
+ personality = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_PERSONALITY);
else
- personality = gTransformedPersonalities[battlerId];
+ personality = gTransformedPersonalities[battler];
letter = GET_UNOWN_LETTER(personality);
if (!letter)
coordSpecies = species;
@@ -234,7 +234,7 @@ u8 GetBattlerYDelta(u8 battlerId, u16 species)
}
else if (species == SPECIES_CASTFORM)
{
- ret = gCastformFrontSpriteCoords[gBattleMonForms[battlerId]].y_offset;
+ ret = gCastformFrontSpriteCoords[gBattleMonForms[battler]].y_offset;
}
else if (species > NUM_SPECIES)
{
@@ -248,15 +248,15 @@ u8 GetBattlerYDelta(u8 battlerId, u16 species)
return ret;
}
-u8 GetBattlerElevation(u8 battlerId, u16 species)
+u8 GetBattlerElevation(u8 battler, u16 species)
{
u8 ret = 0;
- if (GetBattlerSide(battlerId) == B_SIDE_OPPONENT)
+ if (GetBattlerSide(battler) == B_SIDE_OPPONENT)
{
if (!IsContest())
{
if (species == SPECIES_CASTFORM)
- ret = sCastformElevations[gBattleMonForms[battlerId]];
+ ret = sCastformElevations[gBattleMonForms[battler]];
else if (species > NUM_SPECIES)
ret = gEnemyMonElevation[0];
else
@@ -266,24 +266,24 @@ u8 GetBattlerElevation(u8 battlerId, u16 species)
return ret;
}
-u8 GetBattlerSpriteFinal_Y(u8 battlerId, u16 species, bool8 a3)
+u8 GetBattlerSpriteFinal_Y(u8 battler, u16 species, bool8 a3)
{
u16 offset;
u8 y;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER || IsContest())
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER || IsContest())
{
- offset = GetBattlerYDelta(battlerId, species);
+ offset = GetBattlerYDelta(battler, species);
}
else
{
- offset = GetBattlerYDelta(battlerId, species);
- offset -= GetBattlerElevation(battlerId, species);
+ offset = GetBattlerYDelta(battler, species);
+ offset -= GetBattlerElevation(battler, species);
}
- y = offset + sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battlerId)].y;
+ y = offset + sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battler)].y;
if (a3)
{
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
y += 8;
if (y > DISPLAY_HEIGHT - MON_PIC_HEIGHT + 8)
y = DISPLAY_HEIGHT - MON_PIC_HEIGHT + 8;
@@ -291,7 +291,7 @@ u8 GetBattlerSpriteFinal_Y(u8 battlerId, u16 species, bool8 a3)
return y;
}
-u8 GetBattlerSpriteCoord2(u8 battlerId, u8 coordType)
+u8 GetBattlerSpriteCoord2(u8 battler, u8 coordType)
{
u16 species;
struct BattleSpriteInfo *spriteInfo;
@@ -308,64 +308,64 @@ u8 GetBattlerSpriteCoord2(u8 battlerId, u8 coordType)
else
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
- species = gAnimBattlerSpecies[battlerId];
+ if (!spriteInfo[battler].transformSpecies)
+ species = gAnimBattlerSpecies[battler];
else
- species = spriteInfo[battlerId].transformSpecies;
+ species = spriteInfo[battler].transformSpecies;
}
if (coordType == BATTLER_COORD_Y_PIC_OFFSET)
- return GetBattlerSpriteFinal_Y(battlerId, species, TRUE);
+ return GetBattlerSpriteFinal_Y(battler, species, TRUE);
else
- return GetBattlerSpriteFinal_Y(battlerId, species, FALSE);
+ return GetBattlerSpriteFinal_Y(battler, species, FALSE);
}
else
{
- return GetBattlerSpriteCoord(battlerId, coordType);
+ return GetBattlerSpriteCoord(battler, coordType);
}
}
-u8 GetBattlerSpriteDefault_Y(u8 battlerId)
+u8 GetBattlerSpriteDefault_Y(u8 battler)
{
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y_PIC_OFFSET_DEFAULT);
+ return GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET_DEFAULT);
}
-u8 GetSubstituteSpriteDefault_Y(u8 battlerId)
+u8 GetSubstituteSpriteDefault_Y(u8 battler)
{
u16 y;
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
- y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 16;
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
+ y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + 16;
else
- y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 17;
+ y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + 17;
return y;
}
-u8 GetBattlerYCoordWithElevation(u8 battlerId)
+u8 GetBattlerYCoordWithElevation(u8 battler)
{
u16 species;
u8 y;
struct BattleSpriteInfo *spriteInfo;
- y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y);
+ y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y);
if (!IsContest())
{
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
- species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ if (!spriteInfo[battler].transformSpecies)
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
else
- species = spriteInfo[battlerId].transformSpecies;
+ species = spriteInfo[battler].transformSpecies;
}
else
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ if (!spriteInfo[battler].transformSpecies)
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
else
- species = spriteInfo[battlerId].transformSpecies;
+ species = spriteInfo[battler].transformSpecies;
}
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
- y -= GetBattlerElevation(battlerId, species);
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
+ y -= GetBattlerElevation(battler, species);
}
return y;
}
@@ -846,14 +846,14 @@ void InitSpritePosToAnimAttacker(struct Sprite *sprite, bool8 respectMonPicOffse
sprite->y += gBattleAnimArgs[1];
}
-u8 GetBattlerSide(u8 battlerId)
+u8 GetBattlerSide(u8 battler)
{
- return GET_BATTLER_SIDE2(battlerId);
+ return GET_BATTLER_SIDE2(battler);
}
-u8 GetBattlerPosition(u8 battlerId)
+u8 GetBattlerPosition(u8 battler)
{
- return gBattlerPositions[battlerId];
+ return gBattlerPositions[battler];
}
u8 GetBattlerAtPosition(u8 position)
@@ -868,31 +868,31 @@ u8 GetBattlerAtPosition(u8 position)
return i;
}
-bool8 IsBattlerSpritePresent(u8 battlerId)
+bool8 IsBattlerSpritePresent(u8 battler)
{
if (IsContest())
{
- if (gBattleAnimAttacker == battlerId)
+ if (gBattleAnimAttacker == battler)
return TRUE;
- else if (gBattleAnimTarget == battlerId)
+ else if (gBattleAnimTarget == battler)
return TRUE;
else
return FALSE;
}
else
{
- if (gBattlerPositions[battlerId] == 0xff)
+ if (gBattlerPositions[battler] == 0xff)
{
return FALSE;
}
- else if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ else if (GetBattlerSide(battler) != B_SIDE_PLAYER)
{
- if (GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_HP) != 0)
+ if (GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_HP) != 0)
return TRUE;
}
else
{
- if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_HP) != 0)
+ if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_HP) != 0)
return TRUE;
}
}
@@ -956,7 +956,7 @@ void GetBattleAnimBgData(struct BattleAnimBgData *out, u32 bgId)
}
}
-void GetBgDataForTransform(struct BattleAnimBgData *out, u8 battlerId)
+void GetBgDataForTransform(struct BattleAnimBgData *out, u8 battler)
{
out->bgTiles = gBattleAnimBgTileBuffer;
out->bgTilemap = (u16 *)gBattleAnimBgTilemapBuffer;
@@ -1294,14 +1294,14 @@ static bool8 ShouldRotScaleSpeciesBeFlipped(void)
void PrepareBattlerSpriteForRotScale(u8 spriteId, u8 objMode)
{
- u8 battlerId = gSprites[spriteId].data[0];
+ u8 battler = gSprites[spriteId].data[0];
- if (IsContest() || IsBattlerSpriteVisible(battlerId))
+ if (IsContest() || IsBattlerSpriteVisible(battler))
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = objMode;
gSprites[spriteId].affineAnimPaused = TRUE;
if (!IsContest() && !gSprites[spriteId].oam.affineMode)
- gSprites[spriteId].oam.matrixNum = gBattleSpritesDataPtr->healthBoxesData[battlerId].matrixNum;
+ gSprites[spriteId].oam.matrixNum = gBattleSpritesDataPtr->healthBoxesData[battler].matrixNum;
gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_DOUBLE;
CalcCenterToCornerVec(&gSprites[spriteId], gSprites[spriteId].oam.shape, gSprites[spriteId].oam.size, gSprites[spriteId].oam.affineMode);
}
@@ -1514,18 +1514,18 @@ static u8 UNUSED GetSpritePalIdxByPosition(u8 position)
void AnimSpriteOnMonPos(struct Sprite *sprite)
{
- bool8 var;
+ bool8 respectMonPicOffsets;
if (!sprite->data[0])
{
if (!gBattleAnimArgs[3])
- var = TRUE;
+ respectMonPicOffsets = TRUE;
else
- var = FALSE;
+ respectMonPicOffsets = FALSE;
if (!gBattleAnimArgs[2])
- InitSpritePosToAnimAttacker(sprite, var);
+ InitSpritePosToAnimAttacker(sprite, respectMonPicOffsets);
else
- InitSpritePosToAnimTarget(sprite, var);
+ InitSpritePosToAnimTarget(sprite, respectMonPicOffsets);
sprite->data[0]++;
}
@@ -1590,35 +1590,35 @@ static void AnimThrowProjectile_Step(struct Sprite *sprite)
void AnimTravelDiagonally(struct Sprite *sprite)
{
- bool8 r4;
- u8 battlerId, coordType;
+ bool8 respectMonPicOffsets;
+ u8 battler, coordType;
if (!gBattleAnimArgs[6])
{
- r4 = TRUE;
+ respectMonPicOffsets = TRUE;
coordType = BATTLER_COORD_Y_PIC_OFFSET;
}
else
{
- r4 = FALSE;
+ respectMonPicOffsets = FALSE;
coordType = BATTLER_COORD_Y;
}
if (gBattleAnimArgs[5] == ANIM_ATTACKER)
{
- InitSpritePosToAnimAttacker(sprite, r4);
- battlerId = gBattleAnimAttacker;
+ InitSpritePosToAnimAttacker(sprite, respectMonPicOffsets);
+ battler = gBattleAnimAttacker;
}
else
{
- InitSpritePosToAnimTarget(sprite, r4);
- battlerId = gBattleAnimTarget;
+ InitSpritePosToAnimTarget(sprite, respectMonPicOffsets);
+ battler = gBattleAnimTarget;
}
if (GetBattlerSide(gBattleAnimAttacker))
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
- InitSpritePosToAnimTarget(sprite, r4);
+ InitSpritePosToAnimTarget(sprite, respectMonPicOffsets);
sprite->data[0] = gBattleAnimArgs[4];
- sprite->data[2] = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) + gBattleAnimArgs[2];
- sprite->data[4] = GetBattlerSpriteCoord(battlerId, coordType) + gBattleAnimArgs[3];
+ sprite->data[2] = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[2];
+ sprite->data[4] = GetBattlerSpriteCoord(battler, coordType) + gBattleAnimArgs[3];
sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
}
@@ -1897,7 +1897,7 @@ void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId)
static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId)
{
struct BattleSpriteInfo *spriteInfo;
- u8 battlerId = gSprites[spriteId].data[0];
+ u8 battler = gSprites[spriteId].data[0];
u16 species;
u16 i;
@@ -1915,26 +1915,26 @@ static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId)
if (GetBattlerSide(i) == B_SIDE_PLAYER)
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
+ if (!spriteInfo[battler].transformSpecies)
species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[i]], MON_DATA_SPECIES);
else
- species = spriteInfo[battlerId].transformSpecies;
+ species = spriteInfo[battler].transformSpecies;
if (species == SPECIES_CASTFORM)
- return sCastformBackSpriteYCoords[gBattleMonForms[battlerId]];
+ return sCastformBackSpriteYCoords[gBattleMonForms[battler]];
else
return gMonBackPicCoords[species].y_offset;
}
else
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
+ if (!spriteInfo[battler].transformSpecies)
species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[i]], MON_DATA_SPECIES);
else
- species = spriteInfo[battlerId].transformSpecies;
+ species = spriteInfo[battler].transformSpecies;
if (species == SPECIES_CASTFORM)
- return sCastformElevations[gBattleMonForms[battlerId]];
+ return sCastformElevations[gBattleMonForms[battler]];
else
return gMonFrontPicCoords[species].y_offset;
}
@@ -2032,21 +2032,21 @@ void InitPrioritiesForVisibleBattlers(void)
}
}
-u8 GetBattlerSpriteSubpriority(u8 battlerId)
+u8 GetBattlerSpriteSubpriority(u8 battler)
{
u8 position;
u8 subpriority;
if (IsContest())
{
- if (battlerId == 2)
+ if (battler == 2)
return 30;
else
return 40;
}
else
{
- position = GetBattlerPosition(battlerId);
+ position = GetBattlerPosition(battler);
if (position == B_POSITION_PLAYER_LEFT)
subpriority = 30;
else if (position == B_POSITION_PLAYER_RIGHT)
@@ -2060,9 +2060,9 @@ u8 GetBattlerSpriteSubpriority(u8 battlerId)
return subpriority;
}
-u8 GetBattlerSpriteBGPriority(u8 battlerId)
+u8 GetBattlerSpriteBGPriority(u8 battler)
{
- u8 position = GetBattlerPosition(battlerId);
+ u8 position = GetBattlerPosition(battler);
if (IsContest())
return 2;
@@ -2072,11 +2072,11 @@ u8 GetBattlerSpriteBGPriority(u8 battlerId)
return GetAnimBgAttribute(1, BG_ANIM_PRIORITY);
}
-u8 GetBattlerSpriteBGPriorityRank(u8 battlerId)
+u8 GetBattlerSpriteBGPriorityRank(u8 battler)
{
if (!IsContest())
{
- u8 position = GetBattlerPosition(battlerId);
+ u8 position = GetBattlerPosition(battler);
if (position == B_POSITION_PLAYER_LEFT || position == B_POSITION_OPPONENT_RIGHT)
return 2;
else
@@ -2085,8 +2085,8 @@ u8 GetBattlerSpriteBGPriorityRank(u8 battlerId)
return 1;
}
-// Create pokemon sprite to be used for a move animation effect (e.g. Role Play / Snatch)
-u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battlerId, bool32 ignoreDeoxysForm)
+// Create Pokémon sprite to be used for a move animation effect (e.g. Role Play / Snatch)
+u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battler, bool32 ignoreDeoxysForm)
{
u8 spriteId;
u16 sheet = LoadSpriteSheet(&sSpriteSheets_MoveEffectMons[id]);
@@ -2097,7 +2097,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16
if (!isBackpic)
{
LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), OBJ_PLTT_ID(palette), PLTT_SIZE_4BPP);
- if (ignoreDeoxysForm == TRUE || ShouldIgnoreDeoxysForm(5, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0)
+ if (ignoreDeoxysForm == TRUE || ShouldIgnoreDeoxysForm(5, battler) == TRUE || gBattleSpritesDataPtr->battlerData[battler].transformSpecies != 0)
LoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species],
gMonSpritesGfxPtr->buffer,
species,
@@ -2113,7 +2113,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 id, s16
else
{
LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), OBJ_PLTT_ID(palette), PLTT_SIZE_4BPP);
- if (ignoreDeoxysForm == TRUE || ShouldIgnoreDeoxysForm(5, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0)
+ if (ignoreDeoxysForm == TRUE || ShouldIgnoreDeoxysForm(5, battler) == TRUE || gBattleSpritesDataPtr->battlerData[battler].transformSpecies != 0)
LoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species],
gMonSpritesGfxPtr->buffer,
species,
@@ -2148,7 +2148,7 @@ void DestroySpriteAndFreeResources_(struct Sprite *sprite)
DestroySpriteAndFreeResources(sprite);
}
-s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr)
+s16 GetBattlerSpriteCoordAttr(u8 battler, u8 attr)
{
u16 species;
u32 personality;
@@ -2181,7 +2181,7 @@ s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr)
}
else if (species == SPECIES_CASTFORM)
{
- coords = &gCastformFrontSpriteCoords[gBattleMonForms[battlerId]];
+ coords = &gCastformFrontSpriteCoords[gBattleMonForms[battler]];
}
else if (species <= SPECIES_EGG)
{
@@ -2194,18 +2194,18 @@ s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr)
}
else
{
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
+ if (!spriteInfo[battler].transformSpecies)
{
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- personality = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PERSONALITY);
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ personality = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_PERSONALITY);
}
else
{
- species = spriteInfo[battlerId].transformSpecies;
- personality = gTransformedPersonalities[battlerId];
+ species = spriteInfo[battler].transformSpecies;
+ personality = gTransformedPersonalities[battler];
}
if (species == SPECIES_UNOWN)
@@ -2229,15 +2229,15 @@ s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr)
else
{
spriteInfo = gBattleSpritesDataPtr->battlerData;
- if (!spriteInfo[battlerId].transformSpecies)
+ if (!spriteInfo[battler].transformSpecies)
{
- species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- personality = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PERSONALITY);
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ personality = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_PERSONALITY);
}
else
{
- species = spriteInfo[battlerId].transformSpecies;
- personality = gTransformedPersonalities[battlerId];
+ species = spriteInfo[battler].transformSpecies;
+ personality = gTransformedPersonalities[battler];
}
if (species == SPECIES_UNOWN)
@@ -2251,7 +2251,7 @@ s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr)
}
else if (species == SPECIES_CASTFORM)
{
- coords = &gCastformFrontSpriteCoords[gBattleMonForms[battlerId]];
+ coords = &gCastformFrontSpriteCoords[gBattleMonForms[battler]];
}
else if (species > NUM_SPECIES)
{
@@ -2271,22 +2271,22 @@ s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr)
case BATTLER_COORD_ATTR_WIDTH:
return GET_MON_COORDS_WIDTH(coords->size);
case BATTLER_COORD_ATTR_LEFT:
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) - (GET_MON_COORDS_WIDTH(coords->size) / 2);
+ return GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) - (GET_MON_COORDS_WIDTH(coords->size) / 2);
case BATTLER_COORD_ATTR_RIGHT:
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) + (GET_MON_COORDS_WIDTH(coords->size) / 2);
+ return GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + (GET_MON_COORDS_WIDTH(coords->size) / 2);
case BATTLER_COORD_ATTR_TOP:
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y_PIC_OFFSET) - (GET_MON_COORDS_HEIGHT(coords->size) / 2);
+ return GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) - (GET_MON_COORDS_HEIGHT(coords->size) / 2);
case BATTLER_COORD_ATTR_BOTTOM:
- return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y_PIC_OFFSET) + (GET_MON_COORDS_HEIGHT(coords->size) / 2);
+ return GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + (GET_MON_COORDS_HEIGHT(coords->size) / 2);
case BATTLER_COORD_ATTR_RAW_BOTTOM:
- ret = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 31;
+ ret = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + 31;
return ret - coords->y_offset;
default:
return 0;
}
}
-void SetAverageBattlerPositions(u8 battlerId, bool8 respectMonPicOffsets, s16 *x, s16 *y)
+void SetAverageBattlerPositions(u8 battler, bool8 respectMonPicOffsets, s16 *x, s16 *y)
{
u8 xCoordType, yCoordType;
s16 battlerX, battlerY;
@@ -2303,12 +2303,12 @@ void SetAverageBattlerPositions(u8 battlerId, bool8 respectMonPicOffsets, s16 *x
yCoordType = BATTLER_COORD_Y_PIC_OFFSET;
}
- battlerX = GetBattlerSpriteCoord(battlerId, xCoordType);
- battlerY = GetBattlerSpriteCoord(battlerId, yCoordType);
+ battlerX = GetBattlerSpriteCoord(battler, xCoordType);
+ battlerY = GetBattlerSpriteCoord(battler, yCoordType);
if (IsDoubleBattle() && !IsContest())
{
- partnerX = GetBattlerSpriteCoord(BATTLE_PARTNER(battlerId), xCoordType);
- partnerY = GetBattlerSpriteCoord(BATTLE_PARTNER(battlerId), yCoordType);
+ partnerX = GetBattlerSpriteCoord(BATTLE_PARTNER(battler), xCoordType);
+ partnerY = GetBattlerSpriteCoord(BATTLE_PARTNER(battler), yCoordType);
}
else
{
@@ -2320,7 +2320,7 @@ void SetAverageBattlerPositions(u8 battlerId, bool8 respectMonPicOffsets, s16 *x
*y = (battlerY + partnerY) / 2;
}
-u8 CreateInvisibleSpriteCopy(int battlerId, u8 spriteId, int species)
+u8 CreateInvisibleSpriteCopy(int battler, u8 spriteId, int species)
{
u8 newSpriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy);
gSprites[newSpriteId] = gSprites[spriteId];
diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c
index 94bbb6ee4e..fa6bd69343 100644
--- a/src/battle_anim_normal.c
+++ b/src/battle_anim_normal.c
@@ -13,9 +13,9 @@ static void AnimComplexPaletteBlend(struct Sprite *);
static void AnimComplexPaletteBlend_Step1(struct Sprite *);
static void AnimComplexPaletteBlend_Step2(struct Sprite *);
static void AnimCirclingSparkle(struct Sprite *);
-static void AnimShakeMonOrBattleTerrain(struct Sprite *);
-static void AnimShakeMonOrBattleTerrain_Step(struct Sprite *);
-static void AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled(void);
+static void AnimShakeMonOrBattlePlatforms(struct Sprite *);
+static void AnimShakeMonOrBattlePlatforms_Step(struct Sprite *);
+static void AnimShakeMonOrBattlePlatforms_UpdateCoordOffsetEnabled(void);
static void AnimHitSplatBasic(struct Sprite *);
static void AnimHitSplatPersistent(struct Sprite *);
static void AnimHitSplatHandleInvert(struct Sprite *);
@@ -33,7 +33,7 @@ static void BlendColorCycleByTag(u8, u8, u8);
static void AnimTask_BlendColorCycleByTagLoop(u8);
static void AnimTask_FlashAnimTagWithColor_Step1(u8);
static void AnimTask_FlashAnimTagWithColor_Step2(u8);
-static void AnimTask_ShakeBattleTerrain_Step(u8);
+static void AnimTask_ShakeBattlePlatforms_Step(u8);
static const union AnimCmd sAnim_ConfusionDuck_0[] =
{
@@ -119,7 +119,7 @@ static const struct SpriteTemplate sCirclingSparkleSpriteTemplate =
.callback = AnimCirclingSparkle,
};
-const struct SpriteTemplate gShakeMonOrTerrainSpriteTemplate =
+const struct SpriteTemplate gShakeMonOrPlatformSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
@@ -127,7 +127,7 @@ const struct SpriteTemplate gShakeMonOrTerrainSpriteTemplate =
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
- .callback = AnimShakeMonOrBattleTerrain,
+ .callback = AnimShakeMonOrBattlePlatforms,
};
static const union AffineAnimCmd sAffineAnim_HitSplat_0[] =
@@ -795,7 +795,7 @@ void AnimTask_TintPalettes(u8 taskId)
#undef tColorG
#undef tColorB
-static void AnimShakeMonOrBattleTerrain(struct Sprite *sprite)
+static void AnimShakeMonOrBattlePlatforms(struct Sprite *sprite)
{
u16 var0;
@@ -825,12 +825,12 @@ static void AnimShakeMonOrBattleTerrain(struct Sprite *sprite)
sprite->data[5] = gBattleAnimArgs[3];
var0 = sprite->data[5] - 2;
if (var0 < 2)
- AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled();
+ AnimShakeMonOrBattlePlatforms_UpdateCoordOffsetEnabled();
- sprite->callback = AnimShakeMonOrBattleTerrain_Step;
+ sprite->callback = AnimShakeMonOrBattlePlatforms_Step;
}
-static void AnimShakeMonOrBattleTerrain_Step(struct Sprite *sprite)
+static void AnimShakeMonOrBattlePlatforms_Step(struct Sprite *sprite)
{
u8 i;
u16 var0;
@@ -863,7 +863,7 @@ static void AnimShakeMonOrBattleTerrain_Step(struct Sprite *sprite)
}
}
-static void AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled(void)
+static void AnimShakeMonOrBattlePlatforms_UpdateCoordOffsetEnabled(void)
{
gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].coordOffsetEnabled = FALSE;
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].coordOffsetEnabled = FALSE;
@@ -882,19 +882,19 @@ static void AnimShakeMonOrBattleTerrain_UpdateCoordOffsetEnabled(void)
}
}
-// Task data for AnimTask_ShakeBattleTerrain
+// Task data for AnimTask_ShakeBattlePlatforms
#define tXOffset data[0]
#define tYOffset data[1]
#define tNumShakes data[2]
#define tTimer data[3]
#define tShakeDelay data[8]
-// Can shake battle terrain back and forth on the X or down and back to original pos on Y (cant shake up from orig pos)
+// Can shake battle platforms back and forth on the X or down and back to original pos on Y (cant shake up from orig pos)
// arg0: x offset of shake
// arg1: y offset of shake
// arg2: number of shakes
// arg3: time between shakes
-void AnimTask_ShakeBattleTerrain(u8 taskId)
+void AnimTask_ShakeBattlePlatforms(u8 taskId)
{
gTasks[taskId].tXOffset = gBattleAnimArgs[0];
gTasks[taskId].tYOffset = gBattleAnimArgs[1];
@@ -903,11 +903,11 @@ void AnimTask_ShakeBattleTerrain(u8 taskId)
gTasks[taskId].tShakeDelay = gBattleAnimArgs[3];
gBattle_BG3_X = gBattleAnimArgs[0];
gBattle_BG3_Y = gBattleAnimArgs[1];
- gTasks[taskId].func = AnimTask_ShakeBattleTerrain_Step;
+ gTasks[taskId].func = AnimTask_ShakeBattlePlatforms_Step;
gTasks[taskId].func(taskId);
}
-static void AnimTask_ShakeBattleTerrain_Step(u8 taskId)
+static void AnimTask_ShakeBattlePlatforms_Step(u8 taskId)
{
if (gTasks[taskId].tTimer == 0)
{
diff --git a/src/battle_anim_poison.c b/src/battle_anim_poison.c
index d9a15c835c..bfe1fc835f 100644
--- a/src/battle_anim_poison.c
+++ b/src/battle_anim_poison.c
@@ -59,15 +59,7 @@ static const union AnimCmd sAnim_SludgeBombHit[] =
static const union AnimCmd *const sAnims_PoisonProjectile[] =
{
sAnim_PoisonProjectile,
-};
-
-static const union AnimCmd *const sAnims_AcidPoisonDroplet[] =
-{
sAnim_AcidPoisonDroplet,
-};
-
-static const union AnimCmd *const sAnims_SludgeBombHit[] =
-{
sAnim_SludgeBombHit,
};
@@ -122,7 +114,7 @@ const struct SpriteTemplate gSludgeBombHitParticleSpriteTemplate =
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
- .anims = sAnims_SludgeBombHit,
+ .anims = &sAnims_PoisonProjectile[2],
.images = NULL,
.affineAnims = sAffineAnims_SludgeBombHit,
.callback = AnimSludgeBombHitParticle,
@@ -145,7 +137,7 @@ const struct SpriteTemplate gAcidPoisonDropletSpriteTemplate =
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gOamData_AffineDouble_ObjNormal_16x16,
- .anims = sAnims_AcidPoisonDroplet,
+ .anims = &sAnims_PoisonProjectile[1],
.images = NULL,
.affineAnims = gAffineAnims_Droplet,
.callback = AnimAcidPoisonDroplet,
diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c
index f9253675ca..376edfc0eb 100644
--- a/src/battle_anim_rock.c
+++ b/src/battle_anim_rock.c
@@ -388,6 +388,11 @@ static void AnimParticleInVortex_Step(struct Sprite *sprite)
}
}
+#define tBlendTimer data[10]
+#define tBlend data[11]
+#define tFullAlphaTimer data[11] // not a typo; this data field is used for multiple purposes
+#define tState data[12]
+
void AnimTask_LoadSandstormBackground(u8 taskId)
{
int var0;
@@ -430,45 +435,45 @@ static void AnimTask_LoadSandstormBackground_Step(u8 taskId)
gBattle_BG1_Y += -1;
- switch (gTasks[taskId].data[12])
+ switch (gTasks[taskId].tState)
{
case 0:
- if (++gTasks[taskId].data[10] == 4)
+ if (++gTasks[taskId].tBlendTimer == 4)
{
- gTasks[taskId].data[10] = 0;
- gTasks[taskId].data[11]++;
- SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[11], 16 - gTasks[taskId].data[11]));
- if (gTasks[taskId].data[11] == 7)
+ gTasks[taskId].tBlendTimer = 0;
+ gTasks[taskId].tBlend++;
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].tBlend, 16 - gTasks[taskId].tBlend));
+ if (gTasks[taskId].tBlend == 7)
{
- gTasks[taskId].data[12]++;
- gTasks[taskId].data[11] = 0;
+ gTasks[taskId].tState++;
+ gTasks[taskId].tFullAlphaTimer = 0;
}
}
break;
case 1:
- if (++gTasks[taskId].data[11] == 101)
+ if (++gTasks[taskId].tFullAlphaTimer == 101)
{
- gTasks[taskId].data[11] = 7;
- gTasks[taskId].data[12]++;
+ gTasks[taskId].tBlend = 7;
+ gTasks[taskId].tState++;
}
break;
case 2:
- if (++gTasks[taskId].data[10] == 4)
+ if (++gTasks[taskId].tBlendTimer == 4)
{
- gTasks[taskId].data[10] = 0;
- gTasks[taskId].data[11]--;
- SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[11], 16 - gTasks[taskId].data[11]));
- if (gTasks[taskId].data[11] == 0)
+ gTasks[taskId].tBlendTimer = 0;
+ gTasks[taskId].tBlend--;
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].tBlend, 16 - gTasks[taskId].tBlend));
+ if (gTasks[taskId].tBlend == 0)
{
- gTasks[taskId].data[12]++;
- gTasks[taskId].data[11] = 0;
+ gTasks[taskId].tState++;
+ gTasks[taskId].tFullAlphaTimer = 0;
}
}
break;
case 3:
GetBattleAnimBg1Data(&animBg);
ClearBattleAnimBg(animBg.bgId);
- gTasks[taskId].data[12]++;
+ gTasks[taskId].tState++;
break;
case 4:
if (!IsContest())
@@ -484,21 +489,36 @@ static void AnimTask_LoadSandstormBackground_Step(u8 taskId)
}
}
+#undef tBlendTimer
+#undef tBlend
+#undef tFullAlphaTimer
+#undef tState
+
// Animates the sprites that fly diagonally across the screen
// in Sandstorm and Heat Wave.
-// arg 0: initial y pixel offset
-// arg 1: projectile speed
-// arg 2: y pixel drop
-// arg 3: ??? unknown (possibly a color bit)
+
+#define sState data[0]
+#define sVelocityX data[1] // 256ths of a pixel // init'd from gBattleAnimArgs[1]
+#define sVelocityY data[2] // 256ths of a pixel // init'd from gBattleAnimArgs[2]
+#define sFractionalX data[3] // 256ths of a pixel
+#define sFractionalY data[4] // 256ths of a pixel
+#define sMirroredX data[5] // init'd from gBattleAnimArgs[3]
+
+// The fields named "velocity" are arguably more like "acceleration,"
+// and the fields named "fractional" are arguably more like "velocity."
+//
+// ...is what I WOULD say if the "fractional" fields weren't AND'd with
+// 0xFF after every frame.
+
static void AnimFlyingSandCrescent(struct Sprite *sprite)
{
- if (sprite->data[0] == 0)
+ if (sprite->sState == 0)
{
if (gBattleAnimArgs[3] != 0 && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->x = DISPLAY_WIDTH + 64;
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
- sprite->data[5] = 1;
+ sprite->sMirroredX = 1;
sprite->oam.matrixNum = ST_OAM_HFLIP;
}
else
@@ -508,18 +528,18 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite)
sprite->y = gBattleAnimArgs[0];
SetSubspriteTables(sprite, sFlyingSandSubspriteTable);
- sprite->data[1] = gBattleAnimArgs[1];
- sprite->data[2] = gBattleAnimArgs[2];
- sprite->data[0]++;
+ sprite->sVelocityX = gBattleAnimArgs[1];
+ sprite->sVelocityY = gBattleAnimArgs[2];
+ sprite->sState++;
}
else
{
- sprite->data[3] += sprite->data[1];
- sprite->data[4] += sprite->data[2];
- sprite->x2 += (sprite->data[3] >> 8);
- sprite->y2 += (sprite->data[4] >> 8);
- sprite->data[3] &= 0xFF;
- sprite->data[4] &= 0xFF;
+ sprite->sFractionalX += sprite->sVelocityX;
+ sprite->sFractionalY += sprite->sVelocityY;
+ sprite->x2 += (sprite->sFractionalX >> 8);
+ sprite->y2 += (sprite->sFractionalY >> 8);
+ sprite->sFractionalX &= 0xFF;
+ sprite->sFractionalY &= 0xFF;
if (sprite->data[5] == 0)
{
@@ -535,6 +555,13 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite)
}
}
+#undef sState
+#undef sVelocityX
+#undef sVelocityY
+#undef sFractionalX
+#undef sFractionalY
+#undef sMirroredX
+
// Animates the rising rocks in Ancient Power.
// arg 0: initial x pixel offset
// arg 1: initial y pixel offset
@@ -558,7 +585,6 @@ void AnimTask_Rollout(u8 taskId)
{
u16 var0, var1, var2, var3;
u8 rolloutCounter;
- int var5;
s16 pan1, pan2;
struct Task *task;
@@ -582,13 +608,7 @@ void AnimTask_Rollout(u8 taskId)
task->data[11] = 0;
task->data[9] = 0;
task->data[12] = 1;
-
- var5 = task->data[8];
- if (var5 < 0)
- var5 += 7;
-
- task->data[10] = (var5 >> 3) - 1;
-
+ task->data[10] = (task->data[8] / 8) - 1;
task->data[2] = var0 * 8;
task->data[3] = var1 * 8;
task->data[4] = ((var2 - var0) * 8) / task->data[8];
diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c
index 1fde3a9823..a833df2dd1 100644
--- a/src/battle_anim_sound_tasks.c
+++ b/src/battle_anim_sound_tasks.c
@@ -144,29 +144,29 @@ void SoundTask_PlayCryHighPitch(u8 taskId)
}
else
{
- u8 battlerId;
+ u8 battler;
// Get wanted battler.
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
else if (gBattleAnimArgs[0] == ANIM_TARGET)
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
else if (gBattleAnimArgs[0] == ANIM_ATK_PARTNER)
- battlerId = BATTLE_PARTNER(gBattleAnimAttacker);
+ battler = BATTLE_PARTNER(gBattleAnimAttacker);
else
- battlerId = BATTLE_PARTNER(gBattleAnimTarget);
+ battler = BATTLE_PARTNER(gBattleAnimTarget);
// Check if battler is visible.
- if ((gBattleAnimArgs[0] == ANIM_TARGET || gBattleAnimArgs[0] == ANIM_DEF_PARTNER) && !IsBattlerSpriteVisible(battlerId))
+ if ((gBattleAnimArgs[0] == ANIM_TARGET || gBattleAnimArgs[0] == ANIM_DEF_PARTNER) && !IsBattlerSpriteVisible(battler))
{
DestroyAnimVisualTask(taskId);
return;
}
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
- species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
else
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
}
if (species != SPECIES_NONE)
@@ -192,29 +192,29 @@ void SoundTask_PlayDoubleCry(u8 taskId)
}
else
{
- u8 battlerId;
+ u8 battler;
// Get wanted battler.
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
- battlerId = gBattleAnimAttacker;
+ battler = gBattleAnimAttacker;
else if (gBattleAnimArgs[0] == ANIM_TARGET)
- battlerId = gBattleAnimTarget;
+ battler = gBattleAnimTarget;
else if (gBattleAnimArgs[0] == ANIM_ATK_PARTNER)
- battlerId = BATTLE_PARTNER(gBattleAnimAttacker);
+ battler = BATTLE_PARTNER(gBattleAnimAttacker);
else
- battlerId = BATTLE_PARTNER(gBattleAnimTarget);
+ battler = BATTLE_PARTNER(gBattleAnimTarget);
// Check if battler is visible.
- if ((gBattleAnimArgs[0] == ANIM_TARGET || gBattleAnimArgs[0] == ANIM_DEF_PARTNER) && !IsBattlerSpriteVisible(battlerId))
+ if ((gBattleAnimArgs[0] == ANIM_TARGET || gBattleAnimArgs[0] == ANIM_DEF_PARTNER) && !IsBattlerSpriteVisible(battler))
{
DestroyAnimVisualTask(taskId);
return;
}
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
- species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
else
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
}
gTasks[taskId].data[0] = gBattleAnimArgs[1];
diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c
index cc04843b7f..ca69f109ca 100644
--- a/src/battle_anim_status_effects.c
+++ b/src/battle_anim_status_effects.c
@@ -270,16 +270,16 @@ static const struct SpriteTemplate sFlashingCircleImpactSpriteTemplate =
.callback = AnimFlashingCircleImpact,
};
-static u8 UNUSED Task_FlashingCircleImpacts(u8 battlerId, bool8 red)
+static u8 UNUSED Task_FlashingCircleImpacts(u8 battler, bool8 red)
{
- u8 battlerSpriteId = gBattlerSpriteIds[battlerId];
+ u8 battlerSpriteId = gBattlerSpriteIds[battler];
u8 taskId = CreateTask(Task_UpdateFlashingCircleImpacts, 10);
u8 spriteId;
u8 i;
LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
- gTasks[taskId].data[0] = battlerId;
+ gTasks[taskId].data[0] = battler;
if (red)
{
gTasks[taskId].data[1] = RGB_RED;
@@ -540,15 +540,15 @@ void AnimTask_StatsChange(u8 taskId)
#undef CASE
-void LaunchStatusAnimation(u8 battlerId, u8 statusAnimId)
+void LaunchStatusAnimation(u8 battler, u8 statusAnimId)
{
u8 taskId;
- gBattleAnimAttacker = battlerId;
- gBattleAnimTarget = battlerId;
+ gBattleAnimAttacker = battler;
+ gBattleAnimTarget = battler;
LaunchBattleAnimation(gBattleAnims_StatusConditions, statusAnimId, FALSE);
taskId = CreateTask(Task_DoStatusAnimation, 10);
- gTasks[taskId].data[0] = battlerId;
+ gTasks[taskId].data[0] = battler;
}
static void Task_DoStatusAnimation(u8 taskId)
diff --git a/src/battle_anim_throw.c b/src/battle_anim_throw.c
index 8296126f14..22bd41fd25 100755
--- a/src/battle_anim_throw.c
+++ b/src/battle_anim_throw.c
@@ -23,9 +23,9 @@
#include "constants/rgb.h"
// iwram
-u32 gMonShrinkDuration;
-u16 gMonShrinkDelta;
-u16 gMonShrinkDistance;
+COMMON_DATA u32 gMonShrinkDuration = 0;
+COMMON_DATA u16 gMonShrinkDelta = 0;
+COMMON_DATA u16 gMonShrinkDistance = 0;
enum {
BALL_ROLL_1,
@@ -1147,7 +1147,9 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite)
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
}
else
+ {
gBattleSpritesDataPtr->animationData->ballSubpx += 176;
+ }
sprite->sTimer++;
sprite->affineAnimPaused = FALSE;
@@ -1172,7 +1174,9 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite)
ChangeSpriteAffineAnim(sprite, BALL_ROTATE_RIGHT);
}
else
+ {
sprite->affineAnimPaused = TRUE;
+ }
break;
case BALL_ROLL_2:
if (gBattleSpritesDataPtr->animationData->ballSubpx > 255)
@@ -1181,7 +1185,9 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite)
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
}
else
+ {
gBattleSpritesDataPtr->animationData->ballSubpx += 176;
+ }
sprite->sTimer++;
sprite->affineAnimPaused = FALSE;
@@ -1216,7 +1222,9 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite)
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
}
else
+ {
gBattleSpritesDataPtr->animationData->ballSubpx += 176;
+ }
sprite->sTimer++;
sprite->affineAnimPaused = FALSE;
@@ -1390,7 +1398,9 @@ static void SpriteCB_Ball_FadeOut(struct Sprite *sprite)
static void DestroySpriteAfterOneFrame(struct Sprite *sprite)
{
if (sprite->sFrame == 0)
+ {
sprite->sFrame = -1;
+ }
else
{
FreeSpriteOamMatrix(sprite);
@@ -1410,7 +1420,9 @@ static void MakeCaptureStars(struct Sprite *sprite)
u8 subpriority;
if (sprite->subpriority)
+ {
subpriority = sprite->subpriority - 1;
+ }
else
{
subpriority = 0;
@@ -1852,7 +1864,7 @@ static void RepeatBallOpenParticleAnimation(u8 taskId)
priority = gTasks[taskId].data[3];
subpriority = gTasks[taskId].data[4];
- for (i = 0; i < POKEBALL_COUNT; i++)
+ for (i = 0; i < 12; i++)
{
spriteId = CreateSprite(&sBallParticleSpriteTemplates[ballId], x, y, subpriority);
if (spriteId != MAX_SPRITES)
@@ -2358,7 +2370,9 @@ static void SpriteCB_ShinyStars_Diagonal(struct Sprite *sprite)
{
// Delayed four frames to de-sync from encircling stars
if (sprite->sTimer < 4)
+ {
sprite->sTimer++;
+ }
else
{
sprite->invisible = FALSE;
diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c
index 18a599a4c1..b76c636f56 100644
--- a/src/battle_anim_utility_funcs.c
+++ b/src/battle_anim_utility_funcs.c
@@ -109,36 +109,36 @@ void AnimTask_BlendBattleAnimPalExclude(u8 taskId)
void AnimTask_SetCamouflageBlend(u8 taskId)
{
u32 selectedPalettes = UnpackSelectedBattlePalettes(gBattleAnimArgs[0]);
- switch (gBattleTerrain)
+ switch (gBattleEnvironment)
{
- case BATTLE_TERRAIN_GRASS:
+ case BATTLE_ENVIRONMENT_GRASS:
gBattleAnimArgs[4] = RGB(12, 24, 2);
break;
- case BATTLE_TERRAIN_LONG_GRASS:
+ case BATTLE_ENVIRONMENT_LONG_GRASS:
gBattleAnimArgs[4] = RGB(0, 15, 2);
break;
- case BATTLE_TERRAIN_SAND:
+ case BATTLE_ENVIRONMENT_SAND:
gBattleAnimArgs[4] = RGB(30, 24, 11);
break;
- case BATTLE_TERRAIN_UNDERWATER:
+ case BATTLE_ENVIRONMENT_UNDERWATER:
gBattleAnimArgs[4] = RGB(0, 0, 18);
break;
- case BATTLE_TERRAIN_WATER:
+ case BATTLE_ENVIRONMENT_WATER:
gBattleAnimArgs[4] = RGB(11, 22, 31);
break;
- case BATTLE_TERRAIN_POND:
+ case BATTLE_ENVIRONMENT_POND:
gBattleAnimArgs[4] = RGB(11, 22, 31);
break;
- case BATTLE_TERRAIN_MOUNTAIN:
+ case BATTLE_ENVIRONMENT_MOUNTAIN:
gBattleAnimArgs[4] = RGB(22, 16, 10);
break;
- case BATTLE_TERRAIN_CAVE:
+ case BATTLE_ENVIRONMENT_CAVE:
gBattleAnimArgs[4] = RGB(14, 9, 3);
break;
- case BATTLE_TERRAIN_BUILDING:
+ case BATTLE_ENVIRONMENT_BUILDING:
gBattleAnimArgs[4] = RGB_WHITE;
break;
- case BATTLE_TERRAIN_PLAIN:
+ case BATTLE_ENVIRONMENT_PLAIN:
gBattleAnimArgs[4] = RGB_WHITE;
break;
}
@@ -937,9 +937,9 @@ static void UpdateMonScrollingBgMask(u8 taskId)
}
}
-void AnimTask_GetBattleTerrain(u8 taskId)
+void AnimTask_GetBattleEnvironment(u8 taskId)
{
- gBattleAnimArgs[0] = gBattleTerrain;
+ gBattleAnimArgs[0] = gBattleEnvironment;
DestroyAnimVisualTask(taskId);
}
diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c
index dc793f70a5..883cf5825e 100644
--- a/src/battle_anim_water.c
+++ b/src/battle_anim_water.c
@@ -473,27 +473,37 @@ const struct SpriteTemplate gWeatherBallWaterDownSpriteTemplate =
.callback = AnimWeatherBallDown,
};
+#define tRaindropSpawnTimer data[0]
+#define tRaindropUnused data[1]
+#define tRaindropSpawnInterval data[2]
+#define tRaindropSpawnDuration data[3] // number of frames over which we spawn raindrops
+
void AnimTask_CreateRaindrops(u8 taskId)
{
u8 x, y;
- if (gTasks[taskId].data[0] == 0)
+ if (gTasks[taskId].tRaindropSpawnTimer == 0)
{
- gTasks[taskId].data[1] = gBattleAnimArgs[0];
- gTasks[taskId].data[2] = gBattleAnimArgs[1];
- gTasks[taskId].data[3] = gBattleAnimArgs[2];
+ gTasks[taskId].tRaindropUnused = gBattleAnimArgs[0];
+ gTasks[taskId].tRaindropSpawnInterval = gBattleAnimArgs[1];
+ gTasks[taskId].tRaindropSpawnDuration = gBattleAnimArgs[2];
}
- gTasks[taskId].data[0]++;
- if (gTasks[taskId].data[0] % gTasks[taskId].data[2] == 1)
+ gTasks[taskId].tRaindropSpawnTimer++;
+ if (gTasks[taskId].tRaindropSpawnTimer % gTasks[taskId].tRaindropSpawnInterval == 1)
{
x = Random2() % DISPLAY_WIDTH;
y = Random2() % (DISPLAY_HEIGHT / 2);
CreateSprite(&gRainDropSpriteTemplate, x, y, 4);
}
- if (gTasks[taskId].data[0] == gTasks[taskId].data[3])
+ if (gTasks[taskId].tRaindropSpawnTimer == gTasks[taskId].tRaindropSpawnDuration)
DestroyAnimVisualTask(taskId);
}
+#undef tRaindropSpawnTimer
+#undef tRaindropUnused
+#undef tRaindropSpawnInterval
+#undef tRaindropSpawnDuration
+
static void AnimRainDrop(struct Sprite *sprite)
{
sprite->callback = AnimRainDrop_Step;
@@ -503,6 +513,10 @@ static void AnimRainDrop_Step(struct Sprite *sprite)
{
if (++sprite->data[0] <= 13)
{
+ //
+ // Make the raindrop fall, but only until it reaches the
+ // impact/splash frames of its animation.
+ //
sprite->x2++;
sprite->y2 += 4;
}
@@ -739,7 +753,7 @@ static void AnimHydroCannonCharge_Step(struct Sprite *sprite)
// Flashing blue orbs move from the attacker to the target. Second stage of Hydro Cannon
static void AnimHydroCannonBeam(struct Sprite *sprite)
{
- bool8 animType;
+ bool8 respectMonPicOffsets;
u8 coordType;
if (GetBattlerSide(gBattleAnimAttacker) == GetBattlerSide(gBattleAnimTarget))
{
@@ -748,14 +762,14 @@ static void AnimHydroCannonBeam(struct Sprite *sprite)
gBattleAnimArgs[0] *= -1;
}
if ((gBattleAnimArgs[5] & 0xFF00) == 0)
- animType = TRUE;
+ respectMonPicOffsets = TRUE;
else
- animType = FALSE;
+ respectMonPicOffsets = FALSE;
if ((u8)gBattleAnimArgs[5] == 0)
coordType = BATTLER_COORD_Y_PIC_OFFSET;
else
coordType = BATTLER_COORD_Y;
- InitSpritePosToAnimAttacker(sprite, animType);
+ InitSpritePosToAnimAttacker(sprite, respectMonPicOffsets);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[4];
diff --git a/src/battle_arena.c b/src/battle_arena.c
index ed3cf16dfd..f452ed4ec3 100644
--- a/src/battle_arena.c
+++ b/src/battle_arena.c
@@ -341,7 +341,7 @@ static const struct CompressedSpriteSheet sBattleArenaJudgmentSymbolsSpriteSheet
{0}
};
-static void (* const sArenaFunctions[])(void) =
+static void (*const sArenaFunctions[])(void) =
{
[BATTLE_ARENA_FUNC_INIT] = InitArenaChallenge,
[BATTLE_ARENA_FUNC_GET_DATA] = GetArenaData,
diff --git a/src/battle_bg.c b/src/battle_bg.c
index 05073db96d..a1ce702c59 100644
--- a/src/battle_bg.c
+++ b/src/battle_bg.c
@@ -593,102 +593,102 @@ static const struct WindowTemplate sBattleArenaWindowTemplates[] =
DUMMY_WIN_TEMPLATE
};
-const struct WindowTemplate * const gBattleWindowTemplates[] =
+const struct WindowTemplate *const gBattleWindowTemplates[] =
{
[B_WIN_TYPE_NORMAL] = sStandardBattleWindowTemplates,
[B_WIN_TYPE_ARENA] = sBattleArenaWindowTemplates,
};
-static const struct BattleBackground sBattleTerrainTable[] =
+static const struct BattleBackground sBattleEnvironmentTable[] =
{
- [BATTLE_TERRAIN_GRASS] =
+ [BATTLE_ENVIRONMENT_GRASS] =
{
- .tileset = gBattleTerrainTiles_TallGrass,
- .tilemap = gBattleTerrainTilemap_TallGrass,
- .entryTileset = gBattleTerrainAnimTiles_TallGrass,
- .entryTilemap = gBattleTerrainAnimTilemap_TallGrass,
- .palette = gBattleTerrainPalette_TallGrass,
+ .tileset = gBattleEnvironmentTiles_TallGrass,
+ .tilemap = gBattleEnvironmentTilemap_TallGrass,
+ .entryTileset = gBattleEnvironmentAnimTiles_TallGrass,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_TallGrass,
+ .palette = gBattleEnvironmentPalette_TallGrass,
},
- [BATTLE_TERRAIN_LONG_GRASS] =
+ [BATTLE_ENVIRONMENT_LONG_GRASS] =
{
- .tileset = gBattleTerrainTiles_LongGrass,
- .tilemap = gBattleTerrainTilemap_LongGrass,
- .entryTileset = gBattleTerrainAnimTiles_LongGrass,
- .entryTilemap = gBattleTerrainAnimTilemap_LongGrass,
- .palette = gBattleTerrainPalette_LongGrass,
+ .tileset = gBattleEnvironmentTiles_LongGrass,
+ .tilemap = gBattleEnvironmentTilemap_LongGrass,
+ .entryTileset = gBattleEnvironmentAnimTiles_LongGrass,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_LongGrass,
+ .palette = gBattleEnvironmentPalette_LongGrass,
},
- [BATTLE_TERRAIN_SAND] =
+ [BATTLE_ENVIRONMENT_SAND] =
{
- .tileset = gBattleTerrainTiles_Sand,
- .tilemap = gBattleTerrainTilemap_Sand,
- .entryTileset = gBattleTerrainAnimTiles_Sand,
- .entryTilemap = gBattleTerrainAnimTilemap_Sand,
- .palette = gBattleTerrainPalette_Sand,
+ .tileset = gBattleEnvironmentTiles_Sand,
+ .tilemap = gBattleEnvironmentTilemap_Sand,
+ .entryTileset = gBattleEnvironmentAnimTiles_Sand,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_Sand,
+ .palette = gBattleEnvironmentPalette_Sand,
},
- [BATTLE_TERRAIN_UNDERWATER] =
+ [BATTLE_ENVIRONMENT_UNDERWATER] =
{
- .tileset = gBattleTerrainTiles_Underwater,
- .tilemap = gBattleTerrainTilemap_Underwater,
- .entryTileset = gBattleTerrainAnimTiles_Underwater,
- .entryTilemap = gBattleTerrainAnimTilemap_Underwater,
- .palette = gBattleTerrainPalette_Underwater,
+ .tileset = gBattleEnvironmentTiles_Underwater,
+ .tilemap = gBattleEnvironmentTilemap_Underwater,
+ .entryTileset = gBattleEnvironmentAnimTiles_Underwater,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_Underwater,
+ .palette = gBattleEnvironmentPalette_Underwater,
},
- [BATTLE_TERRAIN_WATER] =
+ [BATTLE_ENVIRONMENT_WATER] =
{
- .tileset = gBattleTerrainTiles_Water,
- .tilemap = gBattleTerrainTilemap_Water,
- .entryTileset = gBattleTerrainAnimTiles_Water,
- .entryTilemap = gBattleTerrainAnimTilemap_Water,
- .palette = gBattleTerrainPalette_Water,
+ .tileset = gBattleEnvironmentTiles_Water,
+ .tilemap = gBattleEnvironmentTilemap_Water,
+ .entryTileset = gBattleEnvironmentAnimTiles_Water,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_Water,
+ .palette = gBattleEnvironmentPalette_Water,
},
- [BATTLE_TERRAIN_POND] =
+ [BATTLE_ENVIRONMENT_POND] =
{
- .tileset = gBattleTerrainTiles_PondWater,
- .tilemap = gBattleTerrainTilemap_PondWater,
- .entryTileset = gBattleTerrainAnimTiles_PondWater,
- .entryTilemap = gBattleTerrainAnimTilemap_PondWater,
- .palette = gBattleTerrainPalette_PondWater,
+ .tileset = gBattleEnvironmentTiles_PondWater,
+ .tilemap = gBattleEnvironmentTilemap_PondWater,
+ .entryTileset = gBattleEnvironmentAnimTiles_PondWater,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_PondWater,
+ .palette = gBattleEnvironmentPalette_PondWater,
},
- [BATTLE_TERRAIN_MOUNTAIN] =
+ [BATTLE_ENVIRONMENT_MOUNTAIN] =
{
- .tileset = gBattleTerrainTiles_Rock,
- .tilemap = gBattleTerrainTilemap_Rock,
- .entryTileset = gBattleTerrainAnimTiles_Rock,
- .entryTilemap = gBattleTerrainAnimTilemap_Rock,
- .palette = gBattleTerrainPalette_Rock,
+ .tileset = gBattleEnvironmentTiles_Rock,
+ .tilemap = gBattleEnvironmentTilemap_Rock,
+ .entryTileset = gBattleEnvironmentAnimTiles_Rock,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_Rock,
+ .palette = gBattleEnvironmentPalette_Rock,
},
- [BATTLE_TERRAIN_CAVE] =
+ [BATTLE_ENVIRONMENT_CAVE] =
{
- .tileset = gBattleTerrainTiles_Cave,
- .tilemap = gBattleTerrainTilemap_Cave,
- .entryTileset = gBattleTerrainAnimTiles_Cave,
- .entryTilemap = gBattleTerrainAnimTilemap_Cave,
- .palette = gBattleTerrainPalette_Cave,
+ .tileset = gBattleEnvironmentTiles_Cave,
+ .tilemap = gBattleEnvironmentTilemap_Cave,
+ .entryTileset = gBattleEnvironmentAnimTiles_Cave,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_Cave,
+ .palette = gBattleEnvironmentPalette_Cave,
},
- [BATTLE_TERRAIN_BUILDING] =
+ [BATTLE_ENVIRONMENT_BUILDING] =
{
- .tileset = gBattleTerrainTiles_Building,
- .tilemap = gBattleTerrainTilemap_Building,
- .entryTileset = gBattleTerrainAnimTiles_Building,
- .entryTilemap = gBattleTerrainAnimTilemap_Building,
- .palette = gBattleTerrainPalette_Building,
+ .tileset = gBattleEnvironmentTiles_Building,
+ .tilemap = gBattleEnvironmentTilemap_Building,
+ .entryTileset = gBattleEnvironmentAnimTiles_Building,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_Building,
+ .palette = gBattleEnvironmentPalette_Building,
},
- [BATTLE_TERRAIN_PLAIN] =
+ [BATTLE_ENVIRONMENT_PLAIN] =
{
- .tileset = gBattleTerrainTiles_Building,
- .tilemap = gBattleTerrainTilemap_Building,
- .entryTileset = gBattleTerrainAnimTiles_Building,
- .entryTilemap = gBattleTerrainAnimTilemap_Building,
- .palette = gBattleTerrainPalette_Plain,
+ .tileset = gBattleEnvironmentTiles_Building,
+ .tilemap = gBattleEnvironmentTilemap_Building,
+ .entryTileset = gBattleEnvironmentAnimTiles_Building,
+ .entryTilemap = gBattleEnvironmentAnimTilemap_Building,
+ .palette = gBattleEnvironmentPalette_Plain,
},
};
@@ -761,27 +761,27 @@ void DrawMainBattleBackground(void)
{
if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_FRONTIER | BATTLE_TYPE_EREADER_TRAINER | BATTLE_TYPE_RECORDED_LINK))
{
- LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
}
else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON)
{
- LZDecompressVram(gBattleTerrainTiles_Cave, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Cave, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_Groudon, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Cave, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Cave, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_Groudon, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
}
else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE)
{
- LZDecompressVram(gBattleTerrainTiles_Water, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Water, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_Kyogre, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Water, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Water, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_Kyogre, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
}
else if (gBattleTypeFlags & BATTLE_TYPE_RAYQUAZA)
{
- LZDecompressVram(gBattleTerrainTiles_Rayquaza, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_Rayquaza, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Rayquaza, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_Rayquaza, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
}
else
{
@@ -790,16 +790,16 @@ void DrawMainBattleBackground(void)
u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass;
if (trainerClass == TRAINER_CLASS_LEADER)
{
- LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_BuildingLeader, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_BuildingLeader, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
return;
}
else if (trainerClass == TRAINER_CLASS_CHAMPION)
{
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_StadiumWallace, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumWallace, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
return;
}
}
@@ -808,49 +808,49 @@ void DrawMainBattleBackground(void)
{
default:
case MAP_BATTLE_SCENE_NORMAL:
- LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(sBattleTerrainTable[gBattleTerrain].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].tileset, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].tilemap, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(sBattleEnvironmentTable[gBattleEnvironment].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_GYM:
- LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_BuildingGym, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_BuildingGym, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_MAGMA:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_StadiumMagma, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumMagma, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_AQUA:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_StadiumAqua, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumAqua, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_SIDNEY:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_StadiumSidney, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumSidney, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_PHOEBE:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_StadiumPhoebe, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumPhoebe, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_GLACIA:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_StadiumGlacia, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumGlacia, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_DRAKE:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_StadiumDrake, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumDrake, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_FRONTIER:
- LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2)));
- LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
- LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
+ LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
}
}
@@ -1024,7 +1024,7 @@ void InitLinkBattleVsScreen(u8 taskId)
case 0:
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
{
- for (i = 0; i < MAX_BATTLERS_COUNT; i++)
+ for (i = 0; i < MAX_LINK_PLAYERS; i++)
{
name = gLinkPlayers[i].name;
linkPlayer = &gLinkPlayers[i];
@@ -1144,8 +1144,8 @@ void DrawBattleEntryBackground(void)
{
if (!(gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) || gPartnerTrainerId == TRAINER_STEVEN_PARTNER)
{
- LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1)));
- LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28)));
+ LZDecompressVram(gBattleEnvironmentAnimTiles_Building, (void *)(BG_CHAR_ADDR(1)));
+ LZDecompressVram(gBattleEnvironmentAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28)));
}
else
{
@@ -1161,18 +1161,18 @@ void DrawBattleEntryBackground(void)
}
else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON)
{
- LZDecompressVram(gBattleTerrainAnimTiles_Cave, (void *)(BG_CHAR_ADDR(1)));
- LZDecompressVram(gBattleTerrainAnimTilemap_Cave, (void *)(BG_SCREEN_ADDR(28)));
+ LZDecompressVram(gBattleEnvironmentAnimTiles_Cave, (void *)(BG_CHAR_ADDR(1)));
+ LZDecompressVram(gBattleEnvironmentAnimTilemap_Cave, (void *)(BG_SCREEN_ADDR(28)));
}
else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE)
{
- LZDecompressVram(gBattleTerrainAnimTiles_Underwater, (void *)(BG_CHAR_ADDR(1)));
- LZDecompressVram(gBattleTerrainAnimTilemap_Underwater, (void *)(BG_SCREEN_ADDR(28)));
+ LZDecompressVram(gBattleEnvironmentAnimTiles_Underwater, (void *)(BG_CHAR_ADDR(1)));
+ LZDecompressVram(gBattleEnvironmentAnimTilemap_Underwater, (void *)(BG_SCREEN_ADDR(28)));
}
else if (gBattleTypeFlags & BATTLE_TYPE_RAYQUAZA)
{
- LZDecompressVram(gBattleTerrainAnimTiles_Rayquaza, (void *)(BG_CHAR_ADDR(1)));
- LZDecompressVram(gBattleTerrainAnimTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(28)));
+ LZDecompressVram(gBattleEnvironmentAnimTiles_Rayquaza, (void *)(BG_CHAR_ADDR(1)));
+ LZDecompressVram(gBattleEnvironmentAnimTilemap_Rayquaza, (void *)(BG_SCREEN_ADDR(28)));
}
else
{
@@ -1181,27 +1181,27 @@ void DrawBattleEntryBackground(void)
u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass;
if (trainerClass == TRAINER_CLASS_LEADER)
{
- LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1)));
- LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28)));
+ LZDecompressVram(gBattleEnvironmentAnimTiles_Building, (void *)(BG_CHAR_ADDR(1)));
+ LZDecompressVram(gBattleEnvironmentAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28)));
return;
}
else if (trainerClass == TRAINER_CLASS_CHAMPION)
{
- LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1)));
- LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28)));
+ LZDecompressVram(gBattleEnvironmentAnimTiles_Building, (void *)(BG_CHAR_ADDR(1)));
+ LZDecompressVram(gBattleEnvironmentAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28)));
return;
}
}
if (GetCurrentMapBattleScene() == MAP_BATTLE_SCENE_NORMAL)
{
- LZDecompressVram(sBattleTerrainTable[gBattleTerrain].entryTileset, (void *)(BG_CHAR_ADDR(1)));
- LZDecompressVram(sBattleTerrainTable[gBattleTerrain].entryTilemap, (void *)(BG_SCREEN_ADDR(28)));
+ LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].entryTileset, (void *)(BG_CHAR_ADDR(1)));
+ LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].entryTilemap, (void *)(BG_SCREEN_ADDR(28)));
}
else
{
- LZDecompressVram(gBattleTerrainAnimTiles_Building, (void *)(BG_CHAR_ADDR(1)));
- LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28)));
+ LZDecompressVram(gBattleEnvironmentAnimTiles_Building, (void *)(BG_CHAR_ADDR(1)));
+ LZDecompressVram(gBattleEnvironmentAnimTilemap_Building, (void *)(BG_SCREEN_ADDR(28)));
}
}
}
@@ -1225,11 +1225,11 @@ bool8 LoadChosenBattleElement(u8 caseId)
case 3:
if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK | BATTLE_TYPE_EREADER_TRAINER))
{
- LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2)));
}
else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON)
{
- LZDecompressVram(gBattleTerrainTiles_Cave, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Cave, (void *)(BG_CHAR_ADDR(2)));
}
else
{
@@ -1238,12 +1238,12 @@ bool8 LoadChosenBattleElement(u8 caseId)
u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass;
if (trainerClass == TRAINER_CLASS_LEADER)
{
- LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2)));
break;
}
else if (trainerClass == TRAINER_CLASS_CHAMPION)
{
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
break;
}
}
@@ -1252,31 +1252,31 @@ bool8 LoadChosenBattleElement(u8 caseId)
{
default:
case MAP_BATTLE_SCENE_NORMAL:
- LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tileset, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].tileset, (void *)(BG_CHAR_ADDR(2)));
break;
case MAP_BATTLE_SCENE_GYM:
- LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2)));
break;
case MAP_BATTLE_SCENE_MAGMA:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
break;
case MAP_BATTLE_SCENE_AQUA:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
break;
case MAP_BATTLE_SCENE_SIDNEY:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
break;
case MAP_BATTLE_SCENE_PHOEBE:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
break;
case MAP_BATTLE_SCENE_GLACIA:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
break;
case MAP_BATTLE_SCENE_DRAKE:
- LZDecompressVram(gBattleTerrainTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Stadium, (void *)(BG_CHAR_ADDR(2)));
break;
case MAP_BATTLE_SCENE_FRONTIER:
- LZDecompressVram(gBattleTerrainTiles_Building, (void *)(BG_CHAR_ADDR(2)));
+ LZDecompressVram(gBattleEnvironmentTiles_Building, (void *)(BG_CHAR_ADDR(2)));
break;
}
}
@@ -1284,14 +1284,14 @@ bool8 LoadChosenBattleElement(u8 caseId)
case 4:
if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK | BATTLE_TYPE_EREADER_TRAINER))
{
- LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
}
else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON)
{
if (gGameVersion == VERSION_RUBY)
- LZDecompressVram(gBattleTerrainTilemap_Cave, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Cave, (void *)(BG_SCREEN_ADDR(26)));
else
- LZDecompressVram(gBattleTerrainTilemap_Water, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Water, (void *)(BG_SCREEN_ADDR(26)));
}
else
{
@@ -1300,12 +1300,12 @@ bool8 LoadChosenBattleElement(u8 caseId)
u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass;
if (trainerClass == TRAINER_CLASS_LEADER)
{
- LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
break;
}
else if (trainerClass == TRAINER_CLASS_CHAMPION)
{
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
break;
}
}
@@ -1314,31 +1314,31 @@ bool8 LoadChosenBattleElement(u8 caseId)
{
default:
case MAP_BATTLE_SCENE_NORMAL:
- LZDecompressVram(sBattleTerrainTable[gBattleTerrain].tilemap, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(sBattleEnvironmentTable[gBattleEnvironment].tilemap, (void *)(BG_SCREEN_ADDR(26)));
break;
case MAP_BATTLE_SCENE_GYM:
- LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
break;
case MAP_BATTLE_SCENE_MAGMA:
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
break;
case MAP_BATTLE_SCENE_AQUA:
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
break;
case MAP_BATTLE_SCENE_SIDNEY:
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
break;
case MAP_BATTLE_SCENE_PHOEBE:
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
break;
case MAP_BATTLE_SCENE_GLACIA:
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
break;
case MAP_BATTLE_SCENE_DRAKE:
- LZDecompressVram(gBattleTerrainTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Stadium, (void *)(BG_SCREEN_ADDR(26)));
break;
case MAP_BATTLE_SCENE_FRONTIER:
- LZDecompressVram(gBattleTerrainTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
+ LZDecompressVram(gBattleEnvironmentTilemap_Building, (void *)(BG_SCREEN_ADDR(26)));
break;
}
}
@@ -1346,14 +1346,14 @@ bool8 LoadChosenBattleElement(u8 caseId)
case 5:
if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK | BATTLE_TYPE_EREADER_TRAINER))
{
- LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
}
else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON)
{
if (gGameVersion == VERSION_RUBY)
- LoadCompressedPalette(gBattleTerrainPalette_Groudon, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_Groudon, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
else
- LoadCompressedPalette(gBattleTerrainPalette_Kyogre, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_Kyogre, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
}
else
{
@@ -1362,12 +1362,12 @@ bool8 LoadChosenBattleElement(u8 caseId)
u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass;
if (trainerClass == TRAINER_CLASS_LEADER)
{
- LoadCompressedPalette(gBattleTerrainPalette_BuildingLeader, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_BuildingLeader, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
}
else if (trainerClass == TRAINER_CLASS_CHAMPION)
{
- LoadCompressedPalette(gBattleTerrainPalette_StadiumWallace, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumWallace, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
}
}
@@ -1376,31 +1376,31 @@ bool8 LoadChosenBattleElement(u8 caseId)
{
default:
case MAP_BATTLE_SCENE_NORMAL:
- LoadCompressedPalette(sBattleTerrainTable[gBattleTerrain].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(sBattleEnvironmentTable[gBattleEnvironment].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_GYM:
- LoadCompressedPalette(gBattleTerrainPalette_BuildingGym, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_BuildingGym, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_MAGMA:
- LoadCompressedPalette(gBattleTerrainPalette_StadiumMagma, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumMagma, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_AQUA:
- LoadCompressedPalette(gBattleTerrainPalette_StadiumAqua, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumAqua, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_SIDNEY:
- LoadCompressedPalette(gBattleTerrainPalette_StadiumSidney, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumSidney, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_PHOEBE:
- LoadCompressedPalette(gBattleTerrainPalette_StadiumPhoebe, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumPhoebe, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_GLACIA:
- LoadCompressedPalette(gBattleTerrainPalette_StadiumGlacia, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumGlacia, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_DRAKE:
- LoadCompressedPalette(gBattleTerrainPalette_StadiumDrake, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_StadiumDrake, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
case MAP_BATTLE_SCENE_FRONTIER:
- LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break;
}
}
diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c
index 2104298775..7ef9d3e9cf 100644
--- a/src/battle_controller_link_opponent.c
+++ b/src/battle_controller_link_opponent.c
@@ -92,7 +92,7 @@ static void LinkOpponentBufferExecCompleted(void);
static void SwitchIn_HandleSoundAndEnd(void);
static u32 CopyLinkOpponentMonData(u8 monId, u8 *dst);
static void SetLinkOpponentMonData(u8 monId);
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit);
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit);
static void DoSwitchOutAnimation(void);
static void LinkOpponentDoMoveAnimation(void);
static void Task_StartSendOutAnim(u8 taskId);
@@ -518,7 +518,7 @@ static void LinkOpponentBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
@@ -529,7 +529,7 @@ static void LinkOpponentBufferExecCompleted(void)
static void LinkOpponentHandleGetMonData(void)
{
- u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two pokemon, trying to get more will result in overwriting data
+ u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two Pokémon, trying to get more will result in overwriting data
u32 size = 0;
u8 monToCheck;
s32 i;
@@ -548,7 +548,7 @@ static void LinkOpponentHandleGetMonData(void)
monToCheck >>= 1;
}
}
- BtlController_EmitDataTransfer(BUFFER_B, size, monData);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, size, monData);
LinkOpponentBufferExecCompleted();
}
@@ -1141,36 +1141,36 @@ static void LinkOpponentHandleSwitchInAnim(void)
gBattlerControllerFuncs[gActiveBattler] = SwitchIn_TryShinyAnim;
}
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit)
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit)
{
u16 species;
- ClearTemporarySpeciesSpriteData(battlerId, dontClearSubstituteBit);
- gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
- species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
- BattleLoadOpponentMonSpriteGfx(&gEnemyParty[gBattlerPartyIndexes[battlerId]], battlerId);
- SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
+ ClearTemporarySpeciesSpriteData(battler, dontClearSubstituteBit);
+ gBattlerPartyIndexes[battler] = gBattleBufferA[battler][1];
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ gBattleControllerData[battler] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
+ BattleLoadOpponentMonSpriteGfx(&gEnemyParty[gBattlerPartyIndexes[battler]], battler);
+ SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battler));
- gBattlerSpriteIds[battlerId] = CreateSprite(
+ gBattlerSpriteIds[battler] = CreateSprite(
&gMultiuseSpriteTemplate,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2),
- GetBattlerSpriteDefault_Y(battlerId),
- GetBattlerSpriteSubpriority(battlerId));
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2),
+ GetBattlerSpriteDefault_Y(battler),
+ GetBattlerSpriteSubpriority(battler));
- gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battler]].data[1] = gBattlerSpriteIds[battler];
+ gSprites[gBattleControllerData[battler]].data[2] = battler;
- gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
- gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
- gSprites[gBattlerSpriteIds[battlerId]].oam.paletteNum = battlerId;
+ gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
+ gSprites[gBattlerSpriteIds[battler]].data[2] = species;
+ gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], gBattleMonForms[battler]);
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
- gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
- gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT);
+ gSprites[gBattleControllerData[battler]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT);
}
static void LinkOpponentHandleReturnMonToBall(void)
@@ -1321,7 +1321,7 @@ static void LinkOpponentHandleTrainerSlide(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
- gBattlerControllerFuncs[gActiveBattler] = CompleteOnBankSpriteCallbackDummy2; // this line is redundant, because LinkOpponentBufferExecCompleted changes the battle battlerId function
+ gBattlerControllerFuncs[gActiveBattler] = CompleteOnBankSpriteCallbackDummy2; // this line is redundant, because LinkOpponentBufferExecCompleted changes the battle battler function
LinkOpponentBufferExecCompleted();
}
@@ -1534,11 +1534,11 @@ static void LinkOpponentHandleStatusIconUpdate(void)
{
if (!IsBattleSEPlaying(gActiveBattler))
{
- u8 battlerId;
+ u8 battler;
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_STATUS_ICON);
- battlerId = gActiveBattler;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].statusAnimActive = 0;
+ battler = gActiveBattler;
+ gBattleSpritesDataPtr->healthBoxesData[battler].statusAnimActive = 0;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnFinishedStatusAnimation;
}
}
diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c
index 054563ad3a..1a486b93f2 100644
--- a/src/battle_controller_link_partner.c
+++ b/src/battle_controller_link_partner.c
@@ -92,7 +92,7 @@ static void LinkPartnerBufferExecCompleted(void);
static void SwitchIn_WaitAndEnd(void);
static u32 CopyLinkPartnerMonData(u8 monId, u8 *dst);
static void SetLinkPartnerMonData(u8 monId);
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit);
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit);
static void DoSwitchOutAnimation(void);
static void LinkPartnerDoMoveAnimation(void);
static void Task_StartSendOutAnim(u8 taskId);
@@ -400,7 +400,7 @@ static void LinkPartnerBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
@@ -423,7 +423,7 @@ static void CompleteOnFinishedBattleAnimation(void)
static void LinkPartnerHandleGetMonData(void)
{
- u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two pokemon, trying to get more will result in overwriting data
+ u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two Pokémon, trying to get more will result in overwriting data
u32 size = 0;
u8 monToCheck;
s32 i;
@@ -442,7 +442,7 @@ static void LinkPartnerHandleGetMonData(void)
monToCheck >>= 1;
}
}
- BtlController_EmitDataTransfer(BUFFER_B, size, monData);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, size, monData);
LinkPartnerBufferExecCompleted();
}
@@ -1036,35 +1036,35 @@ static void LinkPartnerHandleSwitchInAnim(void)
gBattlerControllerFuncs[gActiveBattler] = SwitchIn_TryShinyAnim;
}
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit)
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit)
{
u16 species;
- ClearTemporarySpeciesSpriteData(battlerId, dontClearSubstituteBit);
- gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
- SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
+ ClearTemporarySpeciesSpriteData(battler, dontClearSubstituteBit);
+ gBattlerPartyIndexes[battler] = gBattleBufferA[battler][1];
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ gBattleControllerData[battler] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
+ SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battler));
- gBattlerSpriteIds[battlerId] = CreateSprite(
+ gBattlerSpriteIds[battler] = CreateSprite(
&gMultiuseSpriteTemplate,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2),
- GetBattlerSpriteDefault_Y(battlerId),
- GetBattlerSpriteSubpriority(battlerId));
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2),
+ GetBattlerSpriteDefault_Y(battler),
+ GetBattlerSpriteSubpriority(battler));
- gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battler]].data[1] = gBattlerSpriteIds[battler];
+ gSprites[gBattleControllerData[battler]].data[2] = battler;
- gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
- gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
- gSprites[gBattlerSpriteIds[battlerId]].oam.paletteNum = battlerId;
+ gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
+ gSprites[gBattlerSpriteIds[battler]].data[2] = species;
+ gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], gBattleMonForms[battler]);
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
- gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
- gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
+ gSprites[gBattleControllerData[battler]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
}
static void LinkPartnerHandleReturnMonToBall(void)
@@ -1373,11 +1373,11 @@ static void LinkPartnerHandleStatusIconUpdate(void)
{
if (!IsBattleSEPlaying(gActiveBattler))
{
- u8 battlerId;
+ u8 battler;
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_STATUS_ICON);
- battlerId = gActiveBattler;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].statusAnimActive = 0;
+ battler = gActiveBattler;
+ gBattleSpritesDataPtr->healthBoxesData[battler].statusAnimActive = 0;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnFinishedStatusAnimation;
}
}
diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c
index e434e3ee62..21431053ea 100644
--- a/src/battle_controller_opponent.c
+++ b/src/battle_controller_opponent.c
@@ -97,7 +97,7 @@ static void OpponentBufferExecCompleted(void);
static void SwitchIn_HandleSoundAndEnd(void);
static u32 GetOpponentMonData(u8 monId, u8 *dst);
static void SetOpponentMonData(u8 monId);
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit);
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit);
static void DoSwitchOutAnimation(void);
static void OpponentDoMoveAnimation(void);
static void SpriteCB_FreeOpponentSprite(struct Sprite *sprite);
@@ -257,7 +257,9 @@ static void Intro_WaitForShinyAnimAndHealthbox(void)
FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS);
}
else
+ {
return;
+ }
}
else if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim)
{
@@ -270,13 +272,17 @@ static void Intro_WaitForShinyAnimAndHealthbox(void)
FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS);
}
else
+ {
return;
+ }
}
- gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE;
- gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE;
+ gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE;
+ gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE;
}
else
+ {
return;
+ }
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay = 3;
gBattlerControllerFuncs[gActiveBattler] = Intro_DelayAndEnd;
@@ -331,7 +337,9 @@ static void Intro_TryShinyAnimShowHealthbox(void)
m4aMPlayContinue(&gMPlayInfo_BGM);
}
else
+ {
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100);
+ }
}
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].bgmRestored = TRUE;
bgmRestored = TRUE;
@@ -523,7 +531,7 @@ static void OpponentBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
@@ -534,7 +542,7 @@ static void OpponentBufferExecCompleted(void)
static void OpponentHandleGetMonData(void)
{
- u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two pokemon, trying to get more will result in overwriting data
+ u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two Pokémon, trying to get more will result in overwriting data
u32 size = 0;
u8 monToCheck;
s32 i;
@@ -553,7 +561,7 @@ static void OpponentHandleGetMonData(void)
monToCheck >>= 1;
}
}
- BtlController_EmitDataTransfer(BUFFER_B, size, monData);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, size, monData);
OpponentBufferExecCompleted();
}
@@ -873,7 +881,7 @@ static void OpponentHandleGetRawMonData(void)
for (i = 0; i < gBattleBufferA[gActiveBattler][2]; i++)
dst[i] = src[i];
- BtlController_EmitDataTransfer(BUFFER_B, gBattleBufferA[gActiveBattler][2], dst);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, gBattleBufferA[gActiveBattler][2], dst);
OpponentBufferExecCompleted();
}
@@ -1157,36 +1165,36 @@ static void OpponentHandleSwitchInAnim(void)
gBattlerControllerFuncs[gActiveBattler] = SwitchIn_TryShinyAnim;
}
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit)
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit)
{
u16 species;
- ClearTemporarySpeciesSpriteData(battlerId, dontClearSubstituteBit);
- gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
- species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
- BattleLoadOpponentMonSpriteGfx(&gEnemyParty[gBattlerPartyIndexes[battlerId]], battlerId);
- SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
+ ClearTemporarySpeciesSpriteData(battler, dontClearSubstituteBit);
+ gBattlerPartyIndexes[battler] = gBattleBufferA[battler][1];
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ gBattleControllerData[battler] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
+ BattleLoadOpponentMonSpriteGfx(&gEnemyParty[gBattlerPartyIndexes[battler]], battler);
+ SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battler));
- gBattlerSpriteIds[battlerId] = CreateSprite(&gMultiuseSpriteTemplate,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2),
- GetBattlerSpriteDefault_Y(battlerId),
- GetBattlerSpriteSubpriority(battlerId));
+ gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate,
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2),
+ GetBattlerSpriteDefault_Y(battler),
+ GetBattlerSpriteSubpriority(battler));
- gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
- gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
+ gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
+ gSprites[gBattlerSpriteIds[battler]].data[2] = species;
- gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battler]].data[1] = gBattlerSpriteIds[battler];
+ gSprites[gBattleControllerData[battler]].data[2] = battler;
- gSprites[gBattlerSpriteIds[battlerId]].oam.paletteNum = battlerId;
+ gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], gBattleMonForms[battler]);
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
- gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
- gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT);
+ gSprites[gBattleControllerData[battler]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT);
}
static void OpponentHandleReturnMonToBall(void)
@@ -1544,7 +1552,7 @@ static void OpponentHandleChooseMove(void)
{
if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, ChooseMoveAndTargetInBattlePalace());
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, ChooseMoveAndTargetInBattlePalace());
OpponentBufferExecCompleted();
}
else
@@ -1561,13 +1569,13 @@ static void OpponentHandleChooseMove(void)
switch (chosenMoveId)
{
case AI_CHOICE_WATCH:
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_WATCH_CAREFULLY, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SAFARI_WATCH_CAREFULLY, 0);
break;
case AI_CHOICE_FLEE:
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_RUN, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_RUN, 0);
break;
case 6:
- BtlController_EmitTwoReturnValues(BUFFER_B, 15, gBattlerTarget);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 15, gBattlerTarget);
break;
default:
if (gBattleMoves[moveInfo->moves[chosenMoveId]].target & (MOVE_TARGET_USER_OR_SELECTED | MOVE_TARGET_USER))
@@ -1578,7 +1586,7 @@ static void OpponentHandleChooseMove(void)
if (gAbsentBattlerFlags & gBitTable[gBattlerTarget])
gBattlerTarget = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT);
}
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, (chosenMoveId) | (gBattlerTarget << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, (chosenMoveId) | (gBattlerTarget << 8));
break;
}
OpponentBufferExecCompleted();
@@ -1593,11 +1601,11 @@ static void OpponentHandleChooseMove(void)
} while (move == MOVE_NONE);
if (gBattleMoves[move].target & (MOVE_TARGET_USER_OR_SELECTED | MOVE_TARGET_USER))
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, (chosenMoveId) | (gActiveBattler << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, (chosenMoveId) | (gActiveBattler << 8));
else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, (chosenMoveId) | (GetBattlerAtPosition(Random() & 2) << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, (chosenMoveId) | (GetBattlerAtPosition(Random() & 2) << 8));
else
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, (chosenMoveId) | (GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, (chosenMoveId) | (GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) << 8));
OpponentBufferExecCompleted();
}
@@ -1606,7 +1614,7 @@ static void OpponentHandleChooseMove(void)
static void OpponentHandleChooseItem(void)
{
- BtlController_EmitOneReturnValue(BUFFER_B, *(gBattleStruct->chosenItem + (gActiveBattler / 2) * 2));
+ BtlController_EmitOneReturnValue(B_COMM_TO_ENGINE, *(gBattleStruct->chosenItem + (gActiveBattler / 2) * 2));
OpponentBufferExecCompleted();
}
@@ -1663,7 +1671,7 @@ static void OpponentHandleChoosePokemon(void)
*(gBattleStruct->monToSwitchIntoId + gActiveBattler) = chosenMonId;
- BtlController_EmitChosenMonReturnValue(BUFFER_B, chosenMonId, NULL);
+ BtlController_EmitChosenMonReturnValue(B_COMM_TO_ENGINE, chosenMonId, NULL);
OpponentBufferExecCompleted();
}
@@ -1705,11 +1713,11 @@ static void OpponentHandleStatusIconUpdate(void)
{
if (!IsBattleSEPlaying(gActiveBattler))
{
- u8 battlerId;
+ u8 battler;
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_STATUS_ICON);
- battlerId = gActiveBattler;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].statusAnimActive = 0;
+ battler = gActiveBattler;
+ gBattleSpritesDataPtr->healthBoxesData[battler].statusAnimActive = 0;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnFinishedStatusAnimation;
}
}
@@ -2007,7 +2015,7 @@ static void OpponentHandleEndLinkBattle(void)
{
if (gBattleTypeFlags & BATTLE_TYPE_LINK && !(gBattleTypeFlags & BATTLE_TYPE_IS_MASTER))
{
- gMain.inBattle = 0;
+ gMain.inBattle = FALSE;
gMain.callback1 = gPreBattleCallback1;
SetMainCallback2(gMain.savedCallback);
}
diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c
index 357912d4b6..4b564ad141 100644
--- a/src/battle_controller_player.c
+++ b/src/battle_controller_player.c
@@ -204,7 +204,7 @@ static void PlayerBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
@@ -249,16 +249,16 @@ static void HandleInputChooseAction(void)
switch (gActionSelectionCursor[gActiveBattler])
{
case 0: // Top left
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_MOVE, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_USE_MOVE, 0);
break;
case 1: // Top right
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_ITEM, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_USE_ITEM, 0);
break;
case 2: // Bottom left
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SWITCH, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SWITCH, 0);
break;
case 3: // Bottom right
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_RUN, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_RUN, 0);
break;
}
PlayerBufferExecCompleted();
@@ -319,7 +319,7 @@ static void HandleInputChooseAction(void)
return;
}
PlaySE(SE_SELECT);
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_CANCEL_PARTNER, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_CANCEL_PARTNER, 0);
PlayerBufferExecCompleted();
}
}
@@ -365,7 +365,7 @@ static void HandleInputChooseTarget(void)
{
PlaySE(SE_SELECT);
gSprites[gBattlerSpriteIds[gMultiUsePlayerCursor]].callback = SpriteCB_HideAsMoveTarget;
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, gMoveSelectionCursor[gActiveBattler] | (gMultiUsePlayerCursor << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, gMoveSelectionCursor[gActiveBattler] | (gMultiUsePlayerCursor << 8));
EndBounceEffect(gMultiUsePlayerCursor, BOUNCE_HEALTHBOX);
PlayerBufferExecCompleted();
}
@@ -485,7 +485,7 @@ static void HandleInputChooseMove(void)
PlaySE(SE_SELECT);
if (moveInfo->moves[gMoveSelectionCursor[gActiveBattler]] == MOVE_CURSE)
{
- if (moveInfo->monType1 != TYPE_GHOST && moveInfo->monType2 != TYPE_GHOST)
+ if (moveInfo->monTypes[0] != TYPE_GHOST && moveInfo->monTypes[1] != TYPE_GHOST)
moveTarget = MOVE_TARGET_USER;
else
moveTarget = MOVE_TARGET_SELECTED;
@@ -523,7 +523,7 @@ static void HandleInputChooseMove(void)
if (!canSelectTarget)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, gMoveSelectionCursor[gActiveBattler] | (gMultiUsePlayerCursor << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, gMoveSelectionCursor[gActiveBattler] | (gMultiUsePlayerCursor << 8));
PlayerBufferExecCompleted();
}
else
@@ -543,7 +543,7 @@ static void HandleInputChooseMove(void)
else if (JOY_NEW(B_BUTTON) || gPlayerDpadHoldFrames > 59)
{
PlaySE(SE_SELECT);
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, 0xFFFF);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, 0xFFFF);
PlayerBufferExecCompleted();
}
else if (JOY_NEW(DPAD_LEFT))
@@ -981,12 +981,12 @@ static void Intro_TryShinyAnimShowHealthbox(void)
bool32 bgmRestored = FALSE;
bool32 battlerAnimsDone = FALSE;
- // Start shiny animation if applicable for 1st pokemon
+ // Start shiny animation if applicable for 1st Pokémon
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim
&& !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive)
TryShinyAnimation(gActiveBattler, &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]]);
- // Start shiny animation if applicable for 2nd pokemon
+ // Start shiny animation if applicable for 2nd Pokémon
if (!gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].triedShinyMonAnim
&& !gBattleSpritesDataPtr->healthBoxesData[BATTLE_PARTNER(gActiveBattler)].ballAnimActive)
TryShinyAnimation(BATTLE_PARTNER(gActiveBattler), &gPlayerParty[gBattlerPartyIndexes[BATTLE_PARTNER(gActiveBattler)]]);
@@ -1154,10 +1154,10 @@ static void CompleteOnInactiveTextPrinter(void)
static void Task_GiveExpToMon(u8 taskId)
{
u32 monId = (u8)(gTasks[taskId].tExpTask_monId);
- u8 battlerId = gTasks[taskId].tExpTask_battler;
+ u8 battler = gTasks[taskId].tExpTask_battler;
s16 gainedExp = gTasks[taskId].tExpTask_gainedExp;
- if (IsDoubleBattle() == TRUE || monId != gBattlerPartyIndexes[battlerId]) // Give exp without moving the expbar.
+ if (IsDoubleBattle() == TRUE || monId != gBattlerPartyIndexes[battler]) // Give exp without moving the expbar.
{
struct Pokemon *mon = &gPlayerParty[monId];
u16 species = GetMonData(mon, MON_DATA_SPECIES);
@@ -1173,12 +1173,12 @@ static void Task_GiveExpToMon(u8 taskId)
CalculateMonStats(mon);
gainedExp -= nextLvlExp - currExp;
savedActiveBattler = gActiveBattler;
- gActiveBattler = battlerId;
- BtlController_EmitTwoReturnValues(BUFFER_B, RET_VALUE_LEVELED_UP, gainedExp);
+ gActiveBattler = battler;
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, RET_VALUE_LEVELED_UP, gainedExp);
gActiveBattler = savedActiveBattler;
if (IsDoubleBattle() == TRUE
- && ((u16)(monId) == gBattlerPartyIndexes[battlerId] || (u16)(monId) == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)]))
+ && ((u16)(monId) == gBattlerPartyIndexes[battler] || (u16)(monId) == gBattlerPartyIndexes[BATTLE_PARTNER(battler)]))
gTasks[taskId].func = Task_LaunchLvlUpAnim;
else
gTasks[taskId].func = DestroyExpTaskAndCompleteOnInactiveTextPrinter;
@@ -1187,7 +1187,7 @@ static void Task_GiveExpToMon(u8 taskId)
{
currExp += gainedExp;
SetMonData(mon, MON_DATA_EXP, &currExp);
- gBattlerControllerFuncs[battlerId] = CompleteOnInactiveTextPrinter;
+ gBattlerControllerFuncs[battler] = CompleteOnInactiveTextPrinter;
DestroyTask(taskId);
}
}
@@ -1201,7 +1201,7 @@ static void Task_PrepareToGiveExpWithExpBar(u8 taskId)
{
u8 monIndex = gTasks[taskId].tExpTask_monId;
s32 gainedExp = gTasks[taskId].tExpTask_gainedExp;
- u8 battlerId = gTasks[taskId].tExpTask_battler;
+ u8 battler = gTasks[taskId].tExpTask_battler;
struct Pokemon *mon = &gPlayerParty[monIndex];
u8 level = GetMonData(mon, MON_DATA_LEVEL);
u16 species = GetMonData(mon, MON_DATA_SPECIES);
@@ -1211,7 +1211,7 @@ static void Task_PrepareToGiveExpWithExpBar(u8 taskId)
exp -= currLvlExp;
expToNextLvl = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1] - currLvlExp;
- SetBattleBarStruct(battlerId, gHealthboxSpriteIds[battlerId], expToNextLvl, exp, -gainedExp);
+ SetBattleBarStruct(battler, gHealthboxSpriteIds[battler], expToNextLvl, exp, -gainedExp);
PlaySE(SE_EXP);
gTasks[taskId].func = Task_GiveExpWithExpBar;
}
@@ -1226,11 +1226,11 @@ static void Task_GiveExpWithExpBar(u8 taskId)
{
u8 monId = gTasks[taskId].tExpTask_monId;
s16 gainedExp = gTasks[taskId].tExpTask_gainedExp;
- u8 battlerId = gTasks[taskId].tExpTask_battler;
+ u8 battler = gTasks[taskId].tExpTask_battler;
s16 newExpPoints;
- newExpPoints = MoveBattleBar(battlerId, gHealthboxSpriteIds[battlerId], EXP_BAR, 0);
- SetHealthboxSpriteVisible(gHealthboxSpriteIds[battlerId]);
+ newExpPoints = MoveBattleBar(battler, gHealthboxSpriteIds[battler], EXP_BAR, 0);
+ SetHealthboxSpriteVisible(gHealthboxSpriteIds[battler]);
if (newExpPoints == -1) // The bar has been filled with given exp points.
{
u8 level;
@@ -1252,8 +1252,8 @@ static void Task_GiveExpWithExpBar(u8 taskId)
CalculateMonStats(&gPlayerParty[monId]);
gainedExp -= expOnNextLvl - currExp;
savedActiveBattler = gActiveBattler;
- gActiveBattler = battlerId;
- BtlController_EmitTwoReturnValues(BUFFER_B, RET_VALUE_LEVELED_UP, gainedExp);
+ gActiveBattler = battler;
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, RET_VALUE_LEVELED_UP, gainedExp);
gActiveBattler = savedActiveBattler;
gTasks[taskId].func = Task_LaunchLvlUpAnim;
}
@@ -1261,7 +1261,7 @@ static void Task_GiveExpWithExpBar(u8 taskId)
{
currExp += gainedExp;
SetMonData(&gPlayerParty[monId], MON_DATA_EXP, &currExp);
- gBattlerControllerFuncs[battlerId] = CompleteOnInactiveTextPrinter;
+ gBattlerControllerFuncs[battler] = CompleteOnInactiveTextPrinter;
DestroyTask(taskId);
}
}
@@ -1270,30 +1270,30 @@ static void Task_GiveExpWithExpBar(u8 taskId)
static void Task_LaunchLvlUpAnim(u8 taskId)
{
- u8 battlerId = gTasks[taskId].tExpTask_battler;
+ u8 battler = gTasks[taskId].tExpTask_battler;
u8 monIndex = gTasks[taskId].tExpTask_monId;
- if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)])
- battlerId ^= BIT_FLANK;
+ if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battler)])
+ battler ^= BIT_FLANK;
- InitAndLaunchSpecialAnimation(battlerId, battlerId, battlerId, B_ANIM_LVL_UP);
+ InitAndLaunchSpecialAnimation(battler, battler, battler, B_ANIM_LVL_UP);
gTasks[taskId].func = Task_UpdateLvlInHealthbox;
}
static void Task_UpdateLvlInHealthbox(u8 taskId)
{
- u8 battlerId = gTasks[taskId].tExpTask_battler;
+ u8 battler = gTasks[taskId].tExpTask_battler;
- if (!gBattleSpritesDataPtr->healthBoxesData[battlerId].specialAnimActive)
+ if (!gBattleSpritesDataPtr->healthBoxesData[battler].specialAnimActive)
{
u8 monIndex = gTasks[taskId].tExpTask_monId;
GetMonData(&gPlayerParty[monIndex], MON_DATA_LEVEL); // Unused return value.
- if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)])
- UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(battlerId)], &gPlayerParty[monIndex], HEALTHBOX_ALL);
+ if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battler)])
+ UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(battler)], &gPlayerParty[monIndex], HEALTHBOX_ALL);
else
- UpdateHealthboxAttribute(gHealthboxSpriteIds[battlerId], &gPlayerParty[monIndex], HEALTHBOX_ALL);
+ UpdateHealthboxAttribute(gHealthboxSpriteIds[battler], &gPlayerParty[monIndex], HEALTHBOX_ALL);
gTasks[taskId].func = DestroyExpTaskAndCompleteOnInactiveTextPrinter;
}
@@ -1302,12 +1302,12 @@ static void Task_UpdateLvlInHealthbox(u8 taskId)
static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8 taskId)
{
u8 monIndex;
- u8 battlerId;
+ u8 battler;
monIndex = gTasks[taskId].tExpTask_monId;
GetMonData(&gPlayerParty[monIndex], MON_DATA_LEVEL); // Unused return value.
- battlerId = gTasks[taskId].tExpTask_battler;
- gBattlerControllerFuncs[battlerId] = CompleteOnInactiveTextPrinter;
+ battler = gTasks[taskId].tExpTask_battler;
+ gBattlerControllerFuncs[battler] = CompleteOnInactiveTextPrinter;
DestroyTask(taskId);
}
@@ -1361,9 +1361,9 @@ static void WaitForMonSelection(void)
if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active)
{
if (gPartyMenuUseExitCallback == TRUE)
- BtlController_EmitChosenMonReturnValue(BUFFER_B, gSelectedMonPartyId, gBattlePartyCurrentOrder);
+ BtlController_EmitChosenMonReturnValue(B_COMM_TO_ENGINE, gSelectedMonPartyId, gBattlePartyCurrentOrder);
else
- BtlController_EmitChosenMonReturnValue(BUFFER_B, PARTY_SIZE, NULL);
+ BtlController_EmitChosenMonReturnValue(B_COMM_TO_ENGINE, PARTY_SIZE, NULL);
if ((gBattleBufferA[gActiveBattler][1] & 0xF) == 1)
PrintLinkStandbyMsg();
@@ -1387,7 +1387,7 @@ static void CompleteWhenChoseItem(void)
{
if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active)
{
- BtlController_EmitOneReturnValue(BUFFER_B, gSpecialVar_ItemId);
+ BtlController_EmitOneReturnValue(B_COMM_TO_ENGINE, gSpecialVar_ItemId);
PlayerBufferExecCompleted();
}
}
@@ -1439,9 +1439,9 @@ static void PlayerHandleYesNoInput(void)
PlaySE(SE_SELECT);
if (gMultiUsePlayerCursor != 0)
- BtlController_EmitTwoReturnValues(BUFFER_B, 0xE, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 0xE, 0);
else
- BtlController_EmitTwoReturnValues(BUFFER_B, 0xD, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 0xD, 0);
PlayerBufferExecCompleted();
}
@@ -1581,7 +1581,7 @@ static void PrintLinkStandbyMsg(void)
static void PlayerHandleGetMonData(void)
{
- u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two pokemon, trying to get more will result in overwriting data
+ u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two Pokémon, trying to get more will result in overwriting data
u32 size = 0;
u8 monToCheck;
s32 i;
@@ -1600,7 +1600,7 @@ static void PlayerHandleGetMonData(void)
monToCheck >>= 1;
}
}
- BtlController_EmitDataTransfer(BUFFER_B, size, monData);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, size, monData);
PlayerBufferExecCompleted();
}
@@ -1920,7 +1920,7 @@ void PlayerHandleGetRawMonData(void)
for (i = 0; i < gBattleBufferA[gActiveBattler][2]; i++)
dst[i] = src[i];
- BtlController_EmitDataTransfer(BUFFER_B, gBattleBufferA[gActiveBattler][2], dst);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, gBattleBufferA[gActiveBattler][2], dst);
PlayerBufferExecCompleted();
}
@@ -2193,35 +2193,35 @@ static void PlayerHandleSwitchInAnim(void)
gBattlerControllerFuncs[gActiveBattler] = SwitchIn_TryShinyAnimShowHealthbox;
}
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit)
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit)
{
u16 species;
- ClearTemporarySpeciesSpriteData(battlerId, dontClearSubstituteBit);
- gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
- SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
+ ClearTemporarySpeciesSpriteData(battler, dontClearSubstituteBit);
+ gBattlerPartyIndexes[battler] = gBattleBufferA[battler][1];
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ gBattleControllerData[battler] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
+ SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battler));
- gBattlerSpriteIds[battlerId] = CreateSprite(
+ gBattlerSpriteIds[battler] = CreateSprite(
&gMultiuseSpriteTemplate,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2),
- GetBattlerSpriteDefault_Y(battlerId),
- GetBattlerSpriteSubpriority(battlerId));
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2),
+ GetBattlerSpriteDefault_Y(battler),
+ GetBattlerSpriteSubpriority(battler));
- gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battler]].data[1] = gBattlerSpriteIds[battler];
+ gSprites[gBattleControllerData[battler]].data[2] = battler;
- gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
- gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
- gSprites[gBattlerSpriteIds[battlerId]].oam.paletteNum = battlerId;
+ gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
+ gSprites[gBattlerSpriteIds[battler]].data[2] = species;
+ gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], gBattleMonForms[battler]);
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
- gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
- gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
+ gSprites[gBattleControllerData[battler]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
}
static void PlayerHandleReturnMonToBall(void)
@@ -2621,7 +2621,7 @@ static void PlayerChooseMoveInBattlePalace(void)
if (--*(gBattleStruct->arenaMindPoints + gActiveBattler) == 0)
{
gBattlePalaceMoveSelectionRngValue = gRngValue;
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, ChooseMoveAndTargetInBattlePalace());
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, ChooseMoveAndTargetInBattlePalace());
PlayerBufferExecCompleted();
}
}
@@ -2671,7 +2671,7 @@ static void PlayerHandleChoosePokemon(void)
if (gBattleTypeFlags & BATTLE_TYPE_ARENA && (gBattleBufferA[gActiveBattler][1] & 0xF) != PARTY_ACTION_CANT_SWITCH)
{
- BtlController_EmitChosenMonReturnValue(BUFFER_B, gBattlerPartyIndexes[gActiveBattler] + 1, gBattlePartyCurrentOrder);
+ BtlController_EmitChosenMonReturnValue(B_COMM_TO_ENGINE, gBattlerPartyIndexes[gActiveBattler] + 1, gBattlePartyCurrentOrder);
PlayerBufferExecCompleted();
}
else
@@ -2756,11 +2756,11 @@ static void PlayerHandleStatusIconUpdate(void)
{
if (!IsBattleSEPlaying(gActiveBattler))
{
- u8 battlerId;
+ u8 battler;
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_STATUS_ICON);
- battlerId = gActiveBattler;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].statusAnimActive = 0;
+ battler = gActiveBattler;
+ gBattleSpritesDataPtr->healthBoxesData[battler].statusAnimActive = 0;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnFinishedStatusAnimation;
}
}
@@ -2828,25 +2828,25 @@ static void PlayerHandleCmd32(void)
static void PlayerHandleTwoReturnValues(void)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, 0, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 0, 0);
PlayerBufferExecCompleted();
}
static void PlayerHandleChosenMonReturnValue(void)
{
- BtlController_EmitChosenMonReturnValue(BUFFER_B, 0, NULL);
+ BtlController_EmitChosenMonReturnValue(B_COMM_TO_ENGINE, 0, NULL);
PlayerBufferExecCompleted();
}
static void PlayerHandleOneReturnValue(void)
{
- BtlController_EmitOneReturnValue(BUFFER_B, 0);
+ BtlController_EmitOneReturnValue(B_COMM_TO_ENGINE, 0);
PlayerBufferExecCompleted();
}
static void PlayerHandleOneReturnValue_Duplicate(void)
{
- BtlController_EmitOneReturnValue_Duplicate(BUFFER_B, 0);
+ BtlController_EmitOneReturnValue_Duplicate(B_COMM_TO_ENGINE, 0);
PlayerBufferExecCompleted();
}
@@ -2975,7 +2975,7 @@ static void PlayerHandleIntroTrainerBallThrow(void)
void SpriteCB_FreePlayerSpriteLoadMonSprite(struct Sprite *sprite)
{
- u8 battlerId = sprite->sBattlerId;
+ u8 battler = sprite->sBattlerId;
// Free player trainer sprite
FreeSpriteOamMatrix(sprite);
@@ -2983,8 +2983,8 @@ void SpriteCB_FreePlayerSpriteLoadMonSprite(struct Sprite *sprite)
DestroySprite(sprite);
// Load mon sprite
- BattleLoadPlayerMonSpriteGfx(&gPlayerParty[gBattlerPartyIndexes[battlerId]], battlerId);
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], 0);
+ BattleLoadPlayerMonSpriteGfx(&gPlayerParty[gBattlerPartyIndexes[battler]], battler);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], 0);
}
#undef sBattlerId
diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c
index 236a66ce83..a5d00c4740 100644
--- a/src/battle_controller_player_partner.c
+++ b/src/battle_controller_player_partner.c
@@ -95,7 +95,7 @@ static void Task_UpdateLvlInHealthbox(u8 taskId);
static void SwitchIn_WaitAndEnd(void);
static u32 CopyPlayerPartnerMonData(u8 monId, u8 *dst);
static void SetPlayerPartnerMonData(u8 monId);
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit);
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit);
static void DoSwitchOutAnimation(void);
static void PlayerPartnerDoMoveAnimation(void);
static void Task_StartSendOutAnim(u8 taskId);
@@ -312,10 +312,10 @@ static void CompleteOnInactiveTextPrinter(void)
static void Task_GiveExpToMon(u8 taskId)
{
u32 monId = (u8)(gTasks[taskId].tExpTask_monId);
- u8 battlerId = gTasks[taskId].tExpTask_bank;
+ u8 battler = gTasks[taskId].tExpTask_bank;
s16 gainedExp = gTasks[taskId].tExpTask_gainedExp;
- if (IsDoubleBattle() == TRUE || monId != gBattlerPartyIndexes[battlerId]) // give exp without the expbar
+ if (IsDoubleBattle() == TRUE || monId != gBattlerPartyIndexes[battler]) // give exp without the expbar
{
struct Pokemon *mon = &gPlayerParty[monId];
u16 species = GetMonData(mon, MON_DATA_SPECIES);
@@ -331,12 +331,12 @@ static void Task_GiveExpToMon(u8 taskId)
CalculateMonStats(mon);
gainedExp -= nextLvlExp - currExp;
savedActiveBank = gActiveBattler;
- gActiveBattler = battlerId;
- BtlController_EmitTwoReturnValues(BUFFER_B, RET_VALUE_LEVELED_UP, gainedExp);
+ gActiveBattler = battler;
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, RET_VALUE_LEVELED_UP, gainedExp);
gActiveBattler = savedActiveBank;
if (IsDoubleBattle() == TRUE
- && ((u16)(monId) == gBattlerPartyIndexes[battlerId] || (u16)(monId) == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)]))
+ && ((u16)(monId) == gBattlerPartyIndexes[battler] || (u16)(monId) == gBattlerPartyIndexes[BATTLE_PARTNER(battler)]))
gTasks[taskId].func = Task_LaunchLvlUpAnim;
else
gTasks[taskId].func = DestroyExpTaskAndCompleteOnInactiveTextPrinter;
@@ -345,7 +345,7 @@ static void Task_GiveExpToMon(u8 taskId)
{
currExp += gainedExp;
SetMonData(mon, MON_DATA_EXP, &currExp);
- gBattlerControllerFuncs[battlerId] = CompleteOnInactiveTextPrinter;
+ gBattlerControllerFuncs[battler] = CompleteOnInactiveTextPrinter;
DestroyTask(taskId);
}
}
@@ -359,7 +359,7 @@ static void Task_PrepareToGiveExpWithExpBar(u8 taskId)
{
u8 monIndex = gTasks[taskId].tExpTask_monId;
s32 gainedExp = gTasks[taskId].tExpTask_gainedExp;
- u8 battlerId = gTasks[taskId].tExpTask_bank;
+ u8 battler = gTasks[taskId].tExpTask_bank;
struct Pokemon *mon = &gPlayerParty[monIndex];
u8 level = GetMonData(mon, MON_DATA_LEVEL);
u16 species = GetMonData(mon, MON_DATA_SPECIES);
@@ -369,7 +369,7 @@ static void Task_PrepareToGiveExpWithExpBar(u8 taskId)
exp -= currLvlExp;
expToNextLvl = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1] - currLvlExp;
- SetBattleBarStruct(battlerId, gHealthboxSpriteIds[battlerId], expToNextLvl, exp, -gainedExp);
+ SetBattleBarStruct(battler, gHealthboxSpriteIds[battler], expToNextLvl, exp, -gainedExp);
PlaySE(SE_EXP);
gTasks[taskId].func = Task_GiveExpWithExpBar;
}
@@ -384,11 +384,11 @@ static void Task_GiveExpWithExpBar(u8 taskId)
{
u8 monId = gTasks[taskId].tExpTask_monId;
s16 gainedExp = gTasks[taskId].tExpTask_gainedExp;
- u8 battlerId = gTasks[taskId].tExpTask_bank;
+ u8 battler = gTasks[taskId].tExpTask_bank;
s16 r4;
- r4 = MoveBattleBar(battlerId, gHealthboxSpriteIds[battlerId], EXP_BAR, 0);
- SetHealthboxSpriteVisible(gHealthboxSpriteIds[battlerId]);
+ r4 = MoveBattleBar(battler, gHealthboxSpriteIds[battler], EXP_BAR, 0);
+ SetHealthboxSpriteVisible(gHealthboxSpriteIds[battler]);
if (r4 == -1)
{
u8 level;
@@ -410,8 +410,8 @@ static void Task_GiveExpWithExpBar(u8 taskId)
CalculateMonStats(&gPlayerParty[monId]);
gainedExp -= expOnNextLvl - currExp;
savedActiveBank = gActiveBattler;
- gActiveBattler = battlerId;
- BtlController_EmitTwoReturnValues(BUFFER_B, RET_VALUE_LEVELED_UP, gainedExp);
+ gActiveBattler = battler;
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, RET_VALUE_LEVELED_UP, gainedExp);
gActiveBattler = savedActiveBank;
gTasks[taskId].func = Task_LaunchLvlUpAnim;
}
@@ -419,7 +419,7 @@ static void Task_GiveExpWithExpBar(u8 taskId)
{
currExp += gainedExp;
SetMonData(&gPlayerParty[monId], MON_DATA_EXP, &currExp);
- gBattlerControllerFuncs[battlerId] = CompleteOnInactiveTextPrinter;
+ gBattlerControllerFuncs[battler] = CompleteOnInactiveTextPrinter;
DestroyTask(taskId);
}
}
@@ -428,30 +428,30 @@ static void Task_GiveExpWithExpBar(u8 taskId)
static void Task_LaunchLvlUpAnim(u8 taskId)
{
- u8 battlerId = gTasks[taskId].tExpTask_bank;
+ u8 battler = gTasks[taskId].tExpTask_bank;
u8 monIndex = gTasks[taskId].tExpTask_monId;
- if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)])
- battlerId ^= BIT_FLANK;
+ if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battler)])
+ battler ^= BIT_FLANK;
- InitAndLaunchSpecialAnimation(battlerId, battlerId, battlerId, B_ANIM_LVL_UP);
+ InitAndLaunchSpecialAnimation(battler, battler, battler, B_ANIM_LVL_UP);
gTasks[taskId].func = Task_UpdateLvlInHealthbox;
}
static void Task_UpdateLvlInHealthbox(u8 taskId)
{
- u8 battlerId = gTasks[taskId].tExpTask_bank;
+ u8 battler = gTasks[taskId].tExpTask_bank;
- if (!gBattleSpritesDataPtr->healthBoxesData[battlerId].specialAnimActive)
+ if (!gBattleSpritesDataPtr->healthBoxesData[battler].specialAnimActive)
{
u8 monIndex = gTasks[taskId].tExpTask_monId;
GetMonData(&gPlayerParty[monIndex], MON_DATA_LEVEL); // Unused return value
- if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battlerId)])
- UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(battlerId)], &gPlayerParty[monIndex], HEALTHBOX_ALL);
+ if (IsDoubleBattle() == TRUE && monIndex == gBattlerPartyIndexes[BATTLE_PARTNER(battler)])
+ UpdateHealthboxAttribute(gHealthboxSpriteIds[BATTLE_PARTNER(battler)], &gPlayerParty[monIndex], HEALTHBOX_ALL);
else
- UpdateHealthboxAttribute(gHealthboxSpriteIds[battlerId], &gPlayerParty[monIndex], HEALTHBOX_ALL);
+ UpdateHealthboxAttribute(gHealthboxSpriteIds[battler], &gPlayerParty[monIndex], HEALTHBOX_ALL);
gTasks[taskId].func = DestroyExpTaskAndCompleteOnInactiveTextPrinter;
}
@@ -460,12 +460,12 @@ static void Task_UpdateLvlInHealthbox(u8 taskId)
static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8 taskId)
{
u8 monIndex;
- u8 battlerId;
+ u8 battler;
monIndex = gTasks[taskId].tExpTask_monId;
GetMonData(&gPlayerParty[monIndex], MON_DATA_LEVEL); // Unused return value
- battlerId = gTasks[taskId].tExpTask_bank;
- gBattlerControllerFuncs[battlerId] = CompleteOnInactiveTextPrinter;
+ battler = gTasks[taskId].tExpTask_bank;
+ gBattlerControllerFuncs[battler] = CompleteOnInactiveTextPrinter;
DestroyTask(taskId);
}
@@ -584,7 +584,7 @@ static void PlayerPartnerBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
@@ -607,7 +607,7 @@ static void CompleteOnFinishedBattleAnimation(void)
static void PlayerPartnerHandleGetMonData(void)
{
- u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two pokemon, trying to get more will result in overwriting data
+ u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two Pokémon, trying to get more will result in overwriting data
u32 size = 0;
u8 monToCheck;
s32 i;
@@ -626,7 +626,7 @@ static void PlayerPartnerHandleGetMonData(void)
monToCheck >>= 1;
}
}
- BtlController_EmitDataTransfer(BUFFER_B, size, monData);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, size, monData);
PlayerPartnerBufferExecCompleted();
}
@@ -1220,35 +1220,35 @@ static void PlayerPartnerHandleSwitchInAnim(void)
gBattlerControllerFuncs[gActiveBattler] = SwitchIn_TryShinyAnim;
}
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit)
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit)
{
u16 species;
- ClearTemporarySpeciesSpriteData(battlerId, dontClearSubstituteBit);
- gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
- SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
+ ClearTemporarySpeciesSpriteData(battler, dontClearSubstituteBit);
+ gBattlerPartyIndexes[battler] = gBattleBufferA[battler][1];
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ gBattleControllerData[battler] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
+ SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battler));
- gBattlerSpriteIds[battlerId] = CreateSprite(
+ gBattlerSpriteIds[battler] = CreateSprite(
&gMultiuseSpriteTemplate,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2),
- GetBattlerSpriteDefault_Y(battlerId),
- GetBattlerSpriteSubpriority(battlerId));
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2),
+ GetBattlerSpriteDefault_Y(battler),
+ GetBattlerSpriteSubpriority(battler));
- gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battler]].data[1] = gBattlerSpriteIds[battler];
+ gSprites[gBattleControllerData[battler]].data[2] = battler;
- gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
- gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
- gSprites[gBattlerSpriteIds[battlerId]].oam.paletteNum = battlerId;
+ gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
+ gSprites[gBattlerSpriteIds[battler]].data[2] = species;
+ gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], gBattleMonForms[battler]);
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
- gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
- gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
+ gSprites[gBattleControllerData[battler]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
}
static void PlayerPartnerHandleReturnMonToBall(void)
@@ -1527,7 +1527,7 @@ static void PlayerPartnerHandleChooseMove(void)
gBattlerTarget = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT);
}
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, chosenMoveId | (gBattlerTarget << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, chosenMoveId | (gBattlerTarget << 8));
PlayerPartnerBufferExecCompleted();
}
@@ -1557,7 +1557,7 @@ static void PlayerPartnerHandleChoosePokemon(void)
}
*(gBattleStruct->monToSwitchIntoId + gActiveBattler) = chosenMonId;
- BtlController_EmitChosenMonReturnValue(BUFFER_B, chosenMonId, NULL);
+ BtlController_EmitChosenMonReturnValue(B_COMM_TO_ENGINE, chosenMonId, NULL);
PlayerPartnerBufferExecCompleted();
}
@@ -1623,11 +1623,11 @@ static void PlayerPartnerHandleStatusIconUpdate(void)
{
if (!IsBattleSEPlaying(gActiveBattler))
{
- u8 battlerId;
+ u8 battler;
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_STATUS_ICON);
- battlerId = gActiveBattler;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].statusAnimActive = 0;
+ battler = gActiveBattler;
+ gBattleSpritesDataPtr->healthBoxesData[battler].statusAnimActive = 0;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnFinishedStatusAnimation;
}
}
diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c
index 9c37cd0a92..518086cbb7 100644
--- a/src/battle_controller_recorded_opponent.c
+++ b/src/battle_controller_recorded_opponent.c
@@ -92,7 +92,7 @@ static void RecordedOpponentBufferExecCompleted(void);
static void SwitchIn_HandleSoundAndEnd(void);
static u32 CopyRecordedOpponentMonData(u8 monId, u8 *dst);
static void SetRecordedOpponentMonData(u8 monId);
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit);
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit);
static void DoSwitchOutAnimation(void);
static void RecordedOpponentDoMoveAnimation(void);
static void Task_StartSendOutAnim(u8 taskId);
@@ -504,7 +504,7 @@ static void RecordedOpponentBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
@@ -515,7 +515,7 @@ static void RecordedOpponentBufferExecCompleted(void)
static void RecordedOpponentHandleGetMonData(void)
{
- u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two pokemon, trying to get more will result in overwriting data
+ u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two Pokémon, trying to get more will result in overwriting data
u32 size = 0;
u8 monToCheck;
s32 i;
@@ -534,7 +534,7 @@ static void RecordedOpponentHandleGetMonData(void)
monToCheck >>= 1;
}
}
- BtlController_EmitDataTransfer(BUFFER_B, size, monData);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, size, monData);
RecordedOpponentBufferExecCompleted();
}
@@ -1127,35 +1127,35 @@ static void RecordedOpponentHandleSwitchInAnim(void)
gBattlerControllerFuncs[gActiveBattler] = SwitchIn_TryShinyAnim;
}
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit)
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit)
{
u16 species;
- ClearTemporarySpeciesSpriteData(battlerId, dontClearSubstituteBit);
- gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
- species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
- BattleLoadOpponentMonSpriteGfx(&gEnemyParty[gBattlerPartyIndexes[battlerId]], battlerId);
- SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
+ ClearTemporarySpeciesSpriteData(battler, dontClearSubstituteBit);
+ gBattlerPartyIndexes[battler] = gBattleBufferA[battler][1];
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ gBattleControllerData[battler] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
+ BattleLoadOpponentMonSpriteGfx(&gEnemyParty[gBattlerPartyIndexes[battler]], battler);
+ SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battler));
- gBattlerSpriteIds[battlerId] = CreateSprite(&gMultiuseSpriteTemplate,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2),
- GetBattlerSpriteDefault_Y(battlerId),
- GetBattlerSpriteSubpriority(battlerId));
+ gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate,
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2),
+ GetBattlerSpriteDefault_Y(battler),
+ GetBattlerSpriteSubpriority(battler));
- gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battler]].data[1] = gBattlerSpriteIds[battler];
+ gSprites[gBattleControllerData[battler]].data[2] = battler;
- gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
- gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
- gSprites[gBattlerSpriteIds[battlerId]].oam.paletteNum = battlerId;
+ gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
+ gSprites[gBattlerSpriteIds[battler]].data[2] = species;
+ gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], gBattleMonForms[battler]);
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
- gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
- gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT);
+ gSprites[gBattleControllerData[battler]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT);
}
static void RecordedOpponentHandleReturnMonToBall(void)
@@ -1402,7 +1402,7 @@ static void RecordedOpponentHandlePrintSelectionString(void)
static void RecordedOpponentHandleChooseAction(void)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, RecordedBattle_GetBattlerAction(gActiveBattler), 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, RecordedBattle_GetBattlerAction(gActiveBattler), 0);
RecordedOpponentBufferExecCompleted();
}
@@ -1415,13 +1415,13 @@ static void RecordedOpponentHandleChooseMove(void)
{
if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, ChooseMoveAndTargetInBattlePalace());
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, ChooseMoveAndTargetInBattlePalace());
}
else
{
- u8 moveId = RecordedBattle_GetBattlerAction(gActiveBattler);
+ u8 moveIndex = RecordedBattle_GetBattlerAction(gActiveBattler);
u8 target = RecordedBattle_GetBattlerAction(gActiveBattler);
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, moveId | (target << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, moveIndex | (target << 8));
}
RecordedOpponentBufferExecCompleted();
@@ -1435,7 +1435,7 @@ static void RecordedOpponentHandleChooseItem(void)
static void RecordedOpponentHandleChoosePokemon(void)
{
*(gBattleStruct->monToSwitchIntoId + gActiveBattler) = RecordedBattle_GetBattlerAction(gActiveBattler);
- BtlController_EmitChosenMonReturnValue(BUFFER_B, *(gBattleStruct->monToSwitchIntoId + gActiveBattler), NULL);
+ BtlController_EmitChosenMonReturnValue(B_COMM_TO_ENGINE, *(gBattleStruct->monToSwitchIntoId + gActiveBattler), NULL);
RecordedOpponentBufferExecCompleted();
}
@@ -1477,11 +1477,11 @@ static void RecordedOpponentHandleStatusIconUpdate(void)
{
if (!IsBattleSEPlaying(gActiveBattler))
{
- u8 battlerId;
+ u8 battler;
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_STATUS_ICON);
- battlerId = gActiveBattler;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].statusAnimActive = 0;
+ battler = gActiveBattler;
+ gBattleSpritesDataPtr->healthBoxesData[battler].statusAnimActive = 0;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnFinishedStatusAnimation;
}
}
diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c
index 591ddb67e3..6b061487b4 100644
--- a/src/battle_controller_recorded_player.c
+++ b/src/battle_controller_recorded_player.c
@@ -88,7 +88,7 @@ static void RecordedPlayerBufferExecCompleted(void);
static void SwitchIn_WaitAndEnd(void);
static u32 CopyRecordedPlayerMonData(u8 monId, u8 *dst);
static void SetRecordedPlayerMonData(u8 monId);
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit);
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit);
static void DoSwitchOutAnimation(void);
static void RecordedPlayerDoMoveAnimation(void);
static void Task_StartSendOutAnim(u8 taskId);
@@ -475,7 +475,7 @@ static void RecordedPlayerBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
@@ -498,7 +498,7 @@ static void CompleteOnFinishedBattleAnimation(void)
static void RecordedPlayerHandleGetMonData(void)
{
- u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two pokemon, trying to get more will result in overwriting data
+ u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two Pokémon, trying to get more will result in overwriting data
u32 size = 0;
u8 monToCheck;
s32 i;
@@ -517,7 +517,7 @@ static void RecordedPlayerHandleGetMonData(void)
monToCheck >>= 1;
}
}
- BtlController_EmitDataTransfer(BUFFER_B, size, monData);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, size, monData);
RecordedPlayerBufferExecCompleted();
}
@@ -1111,35 +1111,35 @@ static void RecordedPlayerHandleSwitchInAnim(void)
gBattlerControllerFuncs[gActiveBattler] = SwitchIn_TryShinyAnim;
}
-static void StartSendOutAnim(u8 battlerId, bool8 dontClearSubstituteBit)
+static void StartSendOutAnim(u8 battler, bool8 dontClearSubstituteBit)
{
u16 species;
- ClearTemporarySpeciesSpriteData(battlerId, dontClearSubstituteBit);
- gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
- SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
+ ClearTemporarySpeciesSpriteData(battler, dontClearSubstituteBit);
+ gBattlerPartyIndexes[battler] = gBattleBufferA[battler][1];
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ gBattleControllerData[battler] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
+ SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battler));
- gBattlerSpriteIds[battlerId] = CreateSprite(
+ gBattlerSpriteIds[battler] = CreateSprite(
&gMultiuseSpriteTemplate,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2),
- GetBattlerSpriteDefault_Y(battlerId),
- GetBattlerSpriteSubpriority(battlerId));
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2),
+ GetBattlerSpriteDefault_Y(battler),
+ GetBattlerSpriteSubpriority(battler));
- gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battler]].data[1] = gBattlerSpriteIds[battler];
+ gSprites[gBattleControllerData[battler]].data[2] = battler;
- gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
- gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
- gSprites[gBattlerSpriteIds[battlerId]].oam.paletteNum = battlerId;
+ gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
+ gSprites[gBattlerSpriteIds[battler]].data[2] = species;
+ gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], gBattleMonForms[battler]);
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
- gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
- gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
+ gSprites[gBattleControllerData[battler]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
}
static void RecordedPlayerHandleReturnMonToBall(void)
@@ -1414,7 +1414,7 @@ static void ChooseActionInBattlePalace(void)
{
if (gBattleCommunication[4] >= gBattlersCount / 2)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, RecordedBattle_GetBattlerAction(gActiveBattler), 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, RecordedBattle_GetBattlerAction(gActiveBattler), 0);
RecordedPlayerBufferExecCompleted();
}
}
@@ -1427,7 +1427,7 @@ static void RecordedPlayerHandleChooseAction(void)
}
else
{
- BtlController_EmitTwoReturnValues(BUFFER_B, RecordedBattle_GetBattlerAction(gActiveBattler), 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, RecordedBattle_GetBattlerAction(gActiveBattler), 0);
RecordedPlayerBufferExecCompleted();
}
}
@@ -1441,13 +1441,13 @@ static void RecordedPlayerHandleChooseMove(void)
{
if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, ChooseMoveAndTargetInBattlePalace());
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, ChooseMoveAndTargetInBattlePalace());
}
else
{
- u8 moveId = RecordedBattle_GetBattlerAction(gActiveBattler);
+ u8 moveIndex = RecordedBattle_GetBattlerAction(gActiveBattler);
u8 target = RecordedBattle_GetBattlerAction(gActiveBattler);
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, moveId | (target << 8));
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, moveIndex | (target << 8));
}
RecordedPlayerBufferExecCompleted();
@@ -1461,7 +1461,7 @@ static void RecordedPlayerHandleChooseItem(void)
static void RecordedPlayerHandleChoosePokemon(void)
{
*(gBattleStruct->monToSwitchIntoId + gActiveBattler) = RecordedBattle_GetBattlerAction(gActiveBattler);
- BtlController_EmitChosenMonReturnValue(BUFFER_B, *(gBattleStruct->monToSwitchIntoId + gActiveBattler), NULL);
+ BtlController_EmitChosenMonReturnValue(B_COMM_TO_ENGINE, *(gBattleStruct->monToSwitchIntoId + gActiveBattler), NULL);
RecordedPlayerBufferExecCompleted();
}
@@ -1504,11 +1504,11 @@ static void RecordedPlayerHandleStatusIconUpdate(void)
{
if (!IsBattleSEPlaying(gActiveBattler))
{
- u8 battlerId;
+ u8 battler;
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_STATUS_ICON);
- battlerId = gActiveBattler;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].statusAnimActive = 0;
+ battler = gActiveBattler;
+ gBattleSpritesDataPtr->healthBoxesData[battler].statusAnimActive = 0;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnFinishedStatusAnimation;
}
}
diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c
index 157bb6954c..c432fcbb64 100644
--- a/src/battle_controller_safari.c
+++ b/src/battle_controller_safari.c
@@ -176,16 +176,16 @@ static void HandleInputChooseAction(void)
switch (gActionSelectionCursor[gActiveBattler])
{
case 0:
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_BALL, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SAFARI_BALL, 0);
break;
case 1:
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_POKEBLOCK, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SAFARI_POKEBLOCK, 0);
break;
case 2:
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_GO_NEAR, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SAFARI_GO_NEAR, 0);
break;
case 3:
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_SAFARI_RUN, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_SAFARI_RUN, 0);
break;
}
SafariBufferExecCompleted();
@@ -280,7 +280,7 @@ static void CompleteWhenChosePokeblock(void)
{
if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active)
{
- BtlController_EmitOneReturnValue(BUFFER_B, gSpecialVar_ItemId);
+ BtlController_EmitOneReturnValue(B_COMM_TO_ENGINE, gSpecialVar_ItemId);
SafariBufferExecCompleted();
}
}
@@ -298,7 +298,7 @@ static void SafariBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c
index ce357319a5..11d7a851f4 100644
--- a/src/battle_controller_wally.c
+++ b/src/battle_controller_wally.c
@@ -196,7 +196,7 @@ static void WallyHandleActions(void)
if (--gBattleStruct->wallyWaitFrames == 0)
{
PlaySE(SE_SELECT);
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_MOVE, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_USE_MOVE, 0);
WallyBufferExecCompleted();
gBattleStruct->wallyBattleState++;
gBattleStruct->wallyMovesState = 0;
@@ -207,7 +207,7 @@ static void WallyHandleActions(void)
if (--gBattleStruct->wallyWaitFrames == 0)
{
PlaySE(SE_SELECT);
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_MOVE, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_USE_MOVE, 0);
WallyBufferExecCompleted();
gBattleStruct->wallyBattleState++;
gBattleStruct->wallyMovesState = 0;
@@ -217,7 +217,7 @@ static void WallyHandleActions(void)
case 3:
if (--gBattleStruct->wallyWaitFrames == 0)
{
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_WALLY_THROW, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_WALLY_THROW, 0);
WallyBufferExecCompleted();
gBattleStruct->wallyBattleState++;
gBattleStruct->wallyMovesState = 0;
@@ -238,7 +238,7 @@ static void WallyHandleActions(void)
if (--gBattleStruct->wallyWaitFrames == 0)
{
PlaySE(SE_SELECT);
- BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_USE_ITEM, 0);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, B_ACTION_USE_ITEM, 0);
WallyBufferExecCompleted();
}
break;
@@ -278,7 +278,7 @@ static void CompleteOnChosenItem(void)
{
if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active)
{
- BtlController_EmitOneReturnValue(BUFFER_B, gSpecialVar_ItemId);
+ BtlController_EmitOneReturnValue(B_COMM_TO_ENGINE, gSpecialVar_ItemId);
WallyBufferExecCompleted();
}
}
@@ -408,7 +408,7 @@ static void WallyBufferExecCompleted(void)
{
u8 playerId = GetMultiplayerId();
- PrepareBufferDataTransferLink(2, 4, &playerId);
+ PrepareBufferDataTransferLink(B_COMM_CONTROLLER_IS_DONE, 4, &playerId);
gBattleBufferA[gActiveBattler][0] = CONTROLLER_TERMINATOR_NOP;
}
else
@@ -425,7 +425,7 @@ static void UNUSED CompleteOnFinishedStatusAnimation(void)
static void WallyHandleGetMonData(void)
{
- u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two pokemon, trying to get more will result in overwriting data
+ u8 monData[sizeof(struct Pokemon) * 2 + 56]; // this allows to get full data of two Pokémon, trying to get more will result in overwriting data
u32 size = 0;
u8 monToCheck;
s32 i;
@@ -444,7 +444,7 @@ static void WallyHandleGetMonData(void)
monToCheck >>= 1;
}
}
- BtlController_EmitDataTransfer(BUFFER_B, size, monData);
+ BtlController_EmitDataTransfer(B_COMM_TO_ENGINE, size, monData);
WallyBufferExecCompleted();
}
@@ -1241,7 +1241,7 @@ static void WallyHandleChooseMove(void)
if (--gBattleStruct->wallyMoveFrames == 0)
{
PlaySE(SE_SELECT);
- BtlController_EmitTwoReturnValues(BUFFER_B, 10, 0x100);
+ BtlController_EmitTwoReturnValues(B_COMM_TO_ENGINE, 10, 0x100);
WallyBufferExecCompleted();
}
break;
@@ -1458,31 +1458,31 @@ static void WallyHandleIntroTrainerBallThrow(void)
gBattlerControllerFuncs[gActiveBattler] = BattleControllerDummy;
}
-static void StartSendOutAnim(u8 battlerId)
+static void StartSendOutAnim(u8 battler)
{
u16 species;
- gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies = 0;
- gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
- species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
- SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
- gBattlerSpriteIds[battlerId] = CreateSprite(&gMultiuseSpriteTemplate,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2),
- GetBattlerSpriteDefault_Y(battlerId),
- GetBattlerSpriteSubpriority(battlerId));
+ gBattleSpritesDataPtr->battlerData[battler].transformSpecies = 0;
+ gBattlerPartyIndexes[battler] = gBattleBufferA[battler][1];
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES);
+ gBattleControllerData[battler] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
+ SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battler));
+ gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate,
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2),
+ GetBattlerSpriteDefault_Y(battler),
+ GetBattlerSpriteSubpriority(battler));
- gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battler]].data[1] = gBattlerSpriteIds[battler];
+ gSprites[gBattleControllerData[battler]].data[2] = battler;
- gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
- gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
- gSprites[gBattlerSpriteIds[battlerId]].oam.paletteNum = battlerId;
+ gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
+ gSprites[gBattlerSpriteIds[battler]].data[2] = species;
+ gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
- StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
- gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
- gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
- gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
+ StartSpriteAnim(&gSprites[gBattlerSpriteIds[battler]], gBattleMonForms[battler]);
+ gSprites[gBattlerSpriteIds[battler]].invisible = TRUE;
+ gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
+ gSprites[gBattleControllerData[battler]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
}
static void Task_StartSendOutAnim(u8 taskId)
diff --git a/src/battle_controllers.c b/src/battle_controllers.c
index 2ba5d4329d..f7e9fef406 100644
--- a/src/battle_controllers.c
+++ b/src/battle_controllers.c
@@ -114,31 +114,31 @@ static void InitSinglePlayerBtlControllers(void)
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED)
{
- gBattlerControllerFuncs[0] = SetControllerToRecordedPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToPlayerPartner;
- gBattlerPositions[2] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToPlayerPartner;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_PLAYER_RIGHT;
- gBattlerControllerFuncs[3] = SetControllerToOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
}
else
{
- gBattlerControllerFuncs[0] = SetControllerToPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToPlayerPartner;
- gBattlerPositions[2] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToPlayerPartner;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_PLAYER_RIGHT;
- gBattlerControllerFuncs[3] = SetControllerToOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
}
gBattlersCount = MAX_BATTLERS_COUNT;
@@ -158,16 +158,16 @@ static void InitSinglePlayerBtlControllers(void)
gBattleMainFunc = BeginBattleIntro;
if (gBattleTypeFlags & BATTLE_TYPE_SAFARI)
- gBattlerControllerFuncs[0] = SetControllerToSafari;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToSafari;
else if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL)
- gBattlerControllerFuncs[0] = SetControllerToWally;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToWally;
else
- gBattlerControllerFuncs[0] = SetControllerToPlayer;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
gBattlersCount = 2;
@@ -179,32 +179,32 @@ static void InitSinglePlayerBtlControllers(void)
{
gBattleMainFunc = BeginBattleIntro;
- gBattlerControllerFuncs[0] = SetControllerToRecordedPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToRecordedOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToRecordedOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
gBattlersCount = 2;
}
else // see how the banks are switched
{
- gBattlerControllerFuncs[1] = SetControllerToRecordedPlayer;
- gBattlerPositions[1] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[0] = SetControllerToRecordedOpponent;
- gBattlerPositions[0] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToRecordedOpponent;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_OPPONENT_LEFT;
gBattlersCount = 2;
}
}
else
{
- gBattlerControllerFuncs[0] = SetControllerToRecordedPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
}
}
}
@@ -212,17 +212,17 @@ static void InitSinglePlayerBtlControllers(void)
{
gBattleMainFunc = BeginBattleIntro;
- gBattlerControllerFuncs[0] = SetControllerToPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToPlayer;
- gBattlerPositions[2] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_PLAYER_RIGHT;
- gBattlerControllerFuncs[3] = SetControllerToOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
gBattlersCount = MAX_BATTLERS_COUNT;
@@ -232,17 +232,17 @@ static void InitSinglePlayerBtlControllers(void)
{
gBattleMainFunc = BeginBattleIntro;
- gBattlerControllerFuncs[0] = SetControllerToRecordedPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToRecordedPlayer;
- gBattlerPositions[2] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_PLAYER_RIGHT;
- gBattlerControllerFuncs[3] = SetControllerToOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
gBattlersCount = MAX_BATTLERS_COUNT;
@@ -260,7 +260,7 @@ static void InitSinglePlayerBtlControllers(void)
{
u8 multiplayerId;
- for (multiplayerId = gRecordedBattleMultiplayerId, i = 0; i < MAX_BATTLERS_COUNT; i++)
+ for (multiplayerId = gRecordedBattleMultiplayerId, i = 0; i < MAX_LINK_PLAYERS; i++)
{
switch (gLinkPlayers[i].id)
{
@@ -330,52 +330,52 @@ static void InitSinglePlayerBtlControllers(void)
}
else if (gBattleTypeFlags & BATTLE_TYPE_IS_MASTER)
{
- gBattlerControllerFuncs[0] = SetControllerToRecordedPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToRecordedPlayer;
- gBattlerPositions[2] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_PLAYER_RIGHT;
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
{
- gBattlerControllerFuncs[1] = SetControllerToRecordedOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToRecordedOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[3] = SetControllerToRecordedOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToRecordedOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
}
else
{
- gBattlerControllerFuncs[1] = SetControllerToOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[3] = SetControllerToOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
}
}
else
{
- gBattlerControllerFuncs[1] = SetControllerToRecordedPlayer;
- gBattlerPositions[1] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[3] = SetControllerToRecordedPlayer;
- gBattlerPositions[3] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToRecordedPlayer;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_PLAYER_RIGHT;
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
{
- gBattlerControllerFuncs[0] = SetControllerToRecordedOpponent;
- gBattlerPositions[0] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToRecordedOpponent;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToRecordedOpponent;
- gBattlerPositions[2] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToRecordedOpponent;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_OPPONENT_RIGHT;
}
else
{
- gBattlerControllerFuncs[0] = SetControllerToOpponent;
- gBattlerPositions[0] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToOpponent;
- gBattlerPositions[2] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_OPPONENT_RIGHT;
}
}
}
@@ -393,21 +393,21 @@ static void InitLinkBtlControllers(void)
{
gBattleMainFunc = BeginBattleIntro;
- gBattlerControllerFuncs[0] = SetControllerToPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToLinkOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToLinkOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
gBattlersCount = 2;
}
else
{
- gBattlerControllerFuncs[1] = SetControllerToPlayer;
- gBattlerPositions[1] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[0] = SetControllerToLinkOpponent;
- gBattlerPositions[0] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToLinkOpponent;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_OPPONENT_LEFT;
gBattlersCount = 2;
}
@@ -418,33 +418,33 @@ static void InitLinkBtlControllers(void)
{
gBattleMainFunc = BeginBattleIntro;
- gBattlerControllerFuncs[0] = SetControllerToPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToLinkOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToLinkOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToPlayer;
- gBattlerPositions[2] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_PLAYER_RIGHT;
- gBattlerControllerFuncs[3] = SetControllerToLinkOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToLinkOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
gBattlersCount = MAX_BATTLERS_COUNT;
}
else
{
- gBattlerControllerFuncs[1] = SetControllerToPlayer;
- gBattlerPositions[1] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[0] = SetControllerToLinkOpponent;
- gBattlerPositions[0] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToLinkOpponent;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[3] = SetControllerToPlayer;
- gBattlerPositions[3] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_PLAYER_RIGHT;
- gBattlerControllerFuncs[2] = SetControllerToLinkOpponent;
- gBattlerPositions[2] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToLinkOpponent;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_OPPONENT_RIGHT;
gBattlersCount = MAX_BATTLERS_COUNT;
}
@@ -455,33 +455,33 @@ static void InitLinkBtlControllers(void)
{
gBattleMainFunc = BeginBattleIntro;
- gBattlerControllerFuncs[0] = SetControllerToPlayer;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToLinkPartner;
- gBattlerPositions[2] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToLinkPartner;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_PLAYER_RIGHT;
- gBattlerControllerFuncs[3] = SetControllerToOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
gBattlersCount = MAX_BATTLERS_COUNT;
}
else
{
- gBattlerControllerFuncs[0] = SetControllerToLinkPartner;
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_0] = SetControllerToLinkPartner;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
- gBattlerControllerFuncs[1] = SetControllerToLinkOpponent;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerControllerFuncs[B_BATTLER_1] = SetControllerToLinkOpponent;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
- gBattlerControllerFuncs[2] = SetControllerToPlayer;
- gBattlerPositions[2] = B_POSITION_PLAYER_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_2] = SetControllerToPlayer;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_PLAYER_RIGHT;
- gBattlerControllerFuncs[3] = SetControllerToLinkOpponent;
- gBattlerPositions[3] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerControllerFuncs[B_BATTLER_3] = SetControllerToLinkOpponent;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_OPPONENT_RIGHT;
gBattlersCount = MAX_BATTLERS_COUNT;
}
@@ -502,7 +502,7 @@ static void InitLinkBtlControllers(void)
if (gBattleTypeFlags & BATTLE_TYPE_IS_MASTER)
gBattleMainFunc = BeginBattleIntro;
- for (i = 0; i < MAX_BATTLERS_COUNT; i++)
+ for (i = 0; i < MAX_LINK_PLAYERS; i++)
{
switch (gLinkPlayers[i].id)
{
@@ -659,11 +659,11 @@ static void PrepareBufferDataTransfer(u8 bufferId, u8 *data, u16 size)
{
switch (bufferId)
{
- case BUFFER_A:
+ case B_COMM_TO_CONTROLLER:
for (i = 0; i < size; data++, i++)
gBattleBufferA[gActiveBattler][i] = *data;
break;
- case BUFFER_B:
+ case B_COMM_TO_ENGINE:
for (i = 0; i < size; data++, i++)
gBattleBufferB[gActiveBattler][i] = *data;
break;
@@ -671,20 +671,41 @@ static void PrepareBufferDataTransfer(u8 bufferId, u8 *data, u16 size)
}
}
+#define tInitialDelayTimer data[10]
+#define tState data[11]
+#define tCurrentBlock_WrapFrom data[12]
+#define tBlockSendDelayTimer data[13]
+#define tCurrentBlock_End data[14]
+#define tCurrentBlock_Start data[15]
+//
+// Inbound communications are stored in one buffer; outbound communications
+// in another. Both buffers work pretty similarly: the next message will be
+// written into the buffer after the previous message (with 4-byte alignment),
+// unless we're too close to the end of the buffer, in which case we jump back
+// to the start.
+//
+// Regarding the task variable names above: these variables are altered in-
+// place, so the precise operational definition of "current" depends on when
+// the variables are being accessed. When data is present in the send and
+// receive buffers, "current" refers to the most recently received message;
+// but when a message is actually being placed in the buffers, "current"
+// refers to the previous message, until such time that we finish updating it
+// to refer to the new message.
+
static void CreateTasksForSendRecvLinkBuffers(void)
{
sLinkSendTaskId = CreateTask(Task_HandleSendLinkBuffersData, 0);
- gTasks[sLinkSendTaskId].data[11] = 0;
- gTasks[sLinkSendTaskId].data[12] = 0;
- gTasks[sLinkSendTaskId].data[13] = 0;
- gTasks[sLinkSendTaskId].data[14] = 0;
- gTasks[sLinkSendTaskId].data[15] = 0;
+ gTasks[sLinkSendTaskId].tState = 0;
+ gTasks[sLinkSendTaskId].tCurrentBlock_WrapFrom = 0;
+ gTasks[sLinkSendTaskId].tBlockSendDelayTimer = 0;
+ gTasks[sLinkSendTaskId].tCurrentBlock_End = 0;
+ gTasks[sLinkSendTaskId].tCurrentBlock_Start = 0;
sLinkReceiveTaskId = CreateTask(Task_HandleCopyReceivedLinkBuffersData, 0);
- gTasks[sLinkReceiveTaskId].data[12] = 0;
- gTasks[sLinkReceiveTaskId].data[13] = 0;
- gTasks[sLinkReceiveTaskId].data[14] = 0;
- gTasks[sLinkReceiveTaskId].data[15] = 0;
+ gTasks[sLinkReceiveTaskId].tCurrentBlock_WrapFrom = 0;
+ gTasks[sLinkReceiveTaskId].tBlockSendDelayTimer = 0; // not used by "receive" task
+ gTasks[sLinkReceiveTaskId].tCurrentBlock_End = 0;
+ gTasks[sLinkReceiveTaskId].tCurrentBlock_Start = 0;
sUnused = 0;
}
@@ -702,52 +723,72 @@ enum
LINK_BUFF_DATA,
};
+// We want to send a message. Place it into the "send" buffer.
+// First argument is a BATTLELINKCOMMTYPE_...
void PrepareBufferDataTransferLink(u8 bufferId, u16 size, u8 *data)
{
s32 alignedSize;
s32 i;
alignedSize = size - size % 4 + 4;
- if (gTasks[sLinkSendTaskId].data[14] + alignedSize + LINK_BUFF_DATA + 1 > BATTLE_BUFFER_LINK_SIZE)
+ if (gTasks[sLinkSendTaskId].tCurrentBlock_End + alignedSize + LINK_BUFF_DATA + 1 > BATTLE_BUFFER_LINK_SIZE)
{
- gTasks[sLinkSendTaskId].data[12] = gTasks[sLinkSendTaskId].data[14];
- gTasks[sLinkSendTaskId].data[14] = 0;
+ gTasks[sLinkSendTaskId].tCurrentBlock_WrapFrom = gTasks[sLinkSendTaskId].tCurrentBlock_End;
+ gTasks[sLinkSendTaskId].tCurrentBlock_End = 0;
}
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_BUFFER_ID] = bufferId;
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_ACTIVE_BATTLER] = gActiveBattler;
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_ATTACKER] = gBattlerAttacker;
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_TARGET] = gBattlerTarget;
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_SIZE_LO] = alignedSize;
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_SIZE_HI] = (alignedSize & 0x0000FF00) >> 8;
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_ABSENT_BATTLER_FLAGS] = gAbsentBattlerFlags;
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_EFFECT_BATTLER] = gEffectBattler;
+
+ #define BYTE_TO_SEND(offset) \
+ gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].tCurrentBlock_End + offset]
+
+ BYTE_TO_SEND(LINK_BUFF_BUFFER_ID) = bufferId;
+ BYTE_TO_SEND(LINK_BUFF_ACTIVE_BATTLER) = gActiveBattler;
+ BYTE_TO_SEND(LINK_BUFF_ATTACKER) = gBattlerAttacker;
+ BYTE_TO_SEND(LINK_BUFF_TARGET) = gBattlerTarget;
+ BYTE_TO_SEND(LINK_BUFF_SIZE_LO) = alignedSize;
+ BYTE_TO_SEND(LINK_BUFF_SIZE_HI) = (alignedSize & 0x0000FF00) >> 8;
+ BYTE_TO_SEND(LINK_BUFF_ABSENT_BATTLER_FLAGS) = gAbsentBattlerFlags;
+ BYTE_TO_SEND(LINK_BUFF_EFFECT_BATTLER) = gEffectBattler;
for (i = 0; i < size; i++)
- gLinkBattleSendBuffer[gTasks[sLinkSendTaskId].data[14] + LINK_BUFF_DATA + i] = data[i];
+ BYTE_TO_SEND(LINK_BUFF_DATA + i) = data[i];
- gTasks[sLinkSendTaskId].data[14] = gTasks[sLinkSendTaskId].data[14] + alignedSize + LINK_BUFF_DATA;
+ #undef BYTE_TO_SEND
+
+ gTasks[sLinkSendTaskId].tCurrentBlock_End = gTasks[sLinkSendTaskId].tCurrentBlock_End + alignedSize + LINK_BUFF_DATA;
}
+enum {
+ SENDTASK_STATE_INITIALIZE = 0,
+ SENDTASK_STATE_INITIAL_DELAY = 1,
+ SENDTASK_STATE_COUNT_PLAYERS = 2,
+ SENDTASK_STATE_BEGIN_SEND_BLOCK = 3,
+ SENDTASK_STATE_FINISH_SEND_BLOCK = 4,
+ SENDTASK_STATE_UNUSED_STATE = 5,
+};
+
static void Task_HandleSendLinkBuffersData(u8 taskId)
{
u16 numPlayers;
u16 blockSize;
- switch (gTasks[taskId].data[11])
+ #define BYTE_TO_SEND(offset) \
+ gLinkBattleSendBuffer[gTasks[taskId].tCurrentBlock_Start + offset]
+
+ switch (gTasks[taskId].tState)
{
- case 0:
- gTasks[taskId].data[10] = 100;
- gTasks[taskId].data[11]++;
+ case SENDTASK_STATE_INITIALIZE:
+ gTasks[taskId].tInitialDelayTimer = 100;
+ gTasks[taskId].tState++;
break;
- case 1:
- gTasks[taskId].data[10]--;
- if (gTasks[taskId].data[10] == 0)
- gTasks[taskId].data[11]++;
+ case SENDTASK_STATE_INITIAL_DELAY:
+ gTasks[taskId].tInitialDelayTimer--;
+ if (gTasks[taskId].tInitialDelayTimer == 0)
+ gTasks[taskId].tState++;
break;
- case 2:
+ case SENDTASK_STATE_COUNT_PLAYERS:
if (gWirelessCommType)
{
- gTasks[taskId].data[11]++;
+ gTasks[taskId].tState++;
}
else
{
@@ -761,56 +802,66 @@ static void Task_HandleSendLinkBuffersData(u8 taskId)
if (IsLinkMaster())
{
CheckShouldAdvanceLinkState();
- gTasks[taskId].data[11]++;
+ gTasks[taskId].tState++;
}
else
{
- gTasks[taskId].data[11]++;
+ gTasks[taskId].tState++;
}
}
}
break;
- case 3:
- if (gTasks[taskId].data[15] != gTasks[taskId].data[14])
+ case SENDTASK_STATE_BEGIN_SEND_BLOCK:
+ if (gTasks[taskId].tCurrentBlock_Start != gTasks[taskId].tCurrentBlock_End)
{
- if (gTasks[taskId].data[13] == 0)
+ if (gTasks[taskId].tBlockSendDelayTimer == 0)
{
- if (gTasks[taskId].data[15] > gTasks[taskId].data[14]
- && gTasks[taskId].data[15] == gTasks[taskId].data[12])
+ if (gTasks[taskId].tCurrentBlock_Start > gTasks[taskId].tCurrentBlock_End
+ && gTasks[taskId].tCurrentBlock_Start == gTasks[taskId].tCurrentBlock_WrapFrom)
{
- gTasks[taskId].data[12] = 0;
- gTasks[taskId].data[15] = 0;
+ gTasks[taskId].tCurrentBlock_WrapFrom = 0;
+ gTasks[taskId].tCurrentBlock_Start = 0;
}
- blockSize = (gLinkBattleSendBuffer[gTasks[taskId].data[15] + LINK_BUFF_SIZE_LO] | (gLinkBattleSendBuffer[gTasks[taskId].data[15] + LINK_BUFF_SIZE_HI] << 8)) + LINK_BUFF_DATA;
- SendBlock(BitmaskAllOtherLinkPlayers(), &gLinkBattleSendBuffer[gTasks[taskId].data[15]], blockSize);
- gTasks[taskId].data[11]++;
+ blockSize = (BYTE_TO_SEND(LINK_BUFF_SIZE_LO) | (BYTE_TO_SEND(LINK_BUFF_SIZE_HI) << 8)) + LINK_BUFF_DATA;
+ SendBlock(BitmaskAllOtherLinkPlayers(), &BYTE_TO_SEND(0), blockSize);
+ gTasks[taskId].tState++;
}
else
{
- gTasks[taskId].data[13]--;
+ gTasks[taskId].tBlockSendDelayTimer--;
break;
}
}
break;
- case 4:
+ case SENDTASK_STATE_FINISH_SEND_BLOCK:
if (IsLinkTaskFinished())
{
- blockSize = gLinkBattleSendBuffer[gTasks[taskId].data[15] + LINK_BUFF_SIZE_LO] | (gLinkBattleSendBuffer[gTasks[taskId].data[15] + LINK_BUFF_SIZE_HI] << 8);
- gTasks[taskId].data[13] = 1;
- gTasks[taskId].data[15] = gTasks[taskId].data[15] + blockSize + LINK_BUFF_DATA;
- gTasks[taskId].data[11] = 3;
+ blockSize = BYTE_TO_SEND(LINK_BUFF_SIZE_LO) | (BYTE_TO_SEND(LINK_BUFF_SIZE_HI) << 8);
+ gTasks[taskId].tBlockSendDelayTimer = 1;
+ gTasks[taskId].tCurrentBlock_Start = gTasks[taskId].tCurrentBlock_Start + blockSize + LINK_BUFF_DATA;
+ gTasks[taskId].tState = SENDTASK_STATE_BEGIN_SEND_BLOCK;
}
break;
- case 5:
- if (--gTasks[taskId].data[13] == 0)
+ case SENDTASK_STATE_UNUSED_STATE:
+ if (--gTasks[taskId].tBlockSendDelayTimer == 0)
{
- gTasks[taskId].data[13] = 1;
- gTasks[taskId].data[11] = 3;
+ gTasks[taskId].tBlockSendDelayTimer = 1;
+ gTasks[taskId].tState = SENDTASK_STATE_BEGIN_SEND_BLOCK;
}
break;
}
+
+ #undef BYTE_TO_SEND
}
+// We have received a message. Place it into the "receive" buffer.
+//
+// Counterintuitively, we also "receive" the outbound messages that
+// we send to other players. The GBA basically stores communicated
+// data for all four players, so inbound and outbound data can be
+// handled uniformly unless a game specifically decides to do
+// otherwise. Pokemon, evidently, did not specifically decide to do
+// otherwise.
void TryReceiveLinkBattleData(void)
{
u8 i;
@@ -830,19 +881,19 @@ void TryReceiveLinkBattleData(void)
u8 *dest, *src;
u16 dataSize = gBlockRecvBuffer[i][2];
- if (gTasks[sLinkReceiveTaskId].data[14] + 9 + dataSize > 0x1000)
+ if (gTasks[sLinkReceiveTaskId].tCurrentBlock_End + 9 + dataSize > 0x1000)
{
- gTasks[sLinkReceiveTaskId].data[12] = gTasks[sLinkReceiveTaskId].data[14];
- gTasks[sLinkReceiveTaskId].data[14] = 0;
+ gTasks[sLinkReceiveTaskId].tCurrentBlock_WrapFrom = gTasks[sLinkReceiveTaskId].tCurrentBlock_End;
+ gTasks[sLinkReceiveTaskId].tCurrentBlock_End = 0;
}
- dest = &gLinkBattleRecvBuffer[gTasks[sLinkReceiveTaskId].data[14]];
+ dest = &gLinkBattleRecvBuffer[gTasks[sLinkReceiveTaskId].tCurrentBlock_End];
src = recvBuffer;
for (j = 0; j < dataSize + 8; j++)
dest[j] = src[j];
- gTasks[sLinkReceiveTaskId].data[14] = gTasks[sLinkReceiveTaskId].data[14] + dataSize + 8;
+ gTasks[sLinkReceiveTaskId].tCurrentBlock_End = gTasks[sLinkReceiveTaskId].tCurrentBlock_End + dataSize + 8;
}
}
}
@@ -852,50 +903,62 @@ void TryReceiveLinkBattleData(void)
static void Task_HandleCopyReceivedLinkBuffersData(u8 taskId)
{
u16 blockSize;
- u8 battlerId;
- u8 var;
+ u8 battler;
+ u8 playerId;
- if (gTasks[taskId].data[15] != gTasks[taskId].data[14])
+ #define BYTE_TO_RECEIVE(offset) \
+ gLinkBattleRecvBuffer[gTasks[taskId].tCurrentBlock_Start + offset]
+
+ if (gTasks[taskId].tCurrentBlock_Start != gTasks[taskId].tCurrentBlock_End)
{
- if (gTasks[taskId].data[15] > gTasks[taskId].data[14]
- && gTasks[taskId].data[15] == gTasks[taskId].data[12])
+ if (gTasks[taskId].tCurrentBlock_Start > gTasks[taskId].tCurrentBlock_End
+ && gTasks[taskId].tCurrentBlock_Start == gTasks[taskId].tCurrentBlock_WrapFrom)
{
- gTasks[taskId].data[12] = 0;
- gTasks[taskId].data[15] = 0;
+ gTasks[taskId].tCurrentBlock_WrapFrom = 0;
+ gTasks[taskId].tCurrentBlock_Start = 0;
}
- battlerId = gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_ACTIVE_BATTLER];
- blockSize = gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_SIZE_LO] | (gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_SIZE_HI] << 8);
+ battler = BYTE_TO_RECEIVE(LINK_BUFF_ACTIVE_BATTLER);
+ blockSize = BYTE_TO_RECEIVE(LINK_BUFF_SIZE_LO) | (BYTE_TO_RECEIVE(LINK_BUFF_SIZE_HI) << 8);
- switch (gLinkBattleRecvBuffer[gTasks[taskId].data[15] + 0])
+ switch (BYTE_TO_RECEIVE(0))
{
- case 0:
- if (gBattleControllerExecFlags & gBitTable[battlerId])
+ case B_COMM_TO_CONTROLLER:
+ if (IS_BATTLE_CONTROLLER_ACTIVE_ON_LOCAL(battler))
return;
- memcpy(gBattleBufferA[battlerId], &gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_DATA], blockSize);
- MarkBattlerReceivedLinkData(battlerId);
+ memcpy(gBattleBufferA[battler], &BYTE_TO_RECEIVE(LINK_BUFF_DATA), blockSize);
+ MarkBattlerReceivedLinkData(battler);
if (!(gBattleTypeFlags & BATTLE_TYPE_IS_MASTER))
{
- gBattlerAttacker = gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_ATTACKER];
- gBattlerTarget = gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_TARGET];
- gAbsentBattlerFlags = gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_ABSENT_BATTLER_FLAGS];
- gEffectBattler = gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_EFFECT_BATTLER];
+ gBattlerAttacker = BYTE_TO_RECEIVE(LINK_BUFF_ATTACKER);
+ gBattlerTarget = BYTE_TO_RECEIVE(LINK_BUFF_TARGET);
+ gAbsentBattlerFlags = BYTE_TO_RECEIVE(LINK_BUFF_ABSENT_BATTLER_FLAGS);
+ gEffectBattler = BYTE_TO_RECEIVE(LINK_BUFF_EFFECT_BATTLER);
}
break;
- case 1:
- memcpy(gBattleBufferB[battlerId], &gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_DATA], blockSize);
+ case B_COMM_TO_ENGINE:
+ memcpy(gBattleBufferB[battler], &gLinkBattleRecvBuffer[gTasks[taskId].tCurrentBlock_Start + LINK_BUFF_DATA], blockSize);
break;
- case 2:
- var = gLinkBattleRecvBuffer[gTasks[taskId].data[15] + LINK_BUFF_DATA];
- gBattleControllerExecFlags &= ~(gBitTable[battlerId] << (var * 4));
+ case B_COMM_CONTROLLER_IS_DONE:
+ playerId = BYTE_TO_RECEIVE(LINK_BUFF_DATA);
+ MARK_BATTLE_CONTROLLER_IDLE_FOR_PLAYER(battler, playerId);
break;
}
- gTasks[taskId].data[15] = gTasks[taskId].data[15] + blockSize + LINK_BUFF_DATA;
+ gTasks[taskId].tCurrentBlock_Start = gTasks[taskId].tCurrentBlock_Start + blockSize + LINK_BUFF_DATA;
}
+
+ #undef BYTE_TO_RECEIVE
}
+#undef tInitialDelayTimer
+#undef tState
+#undef tCurrentBlock_WrapFrom
+#undef tBlockSendDelayTimer
+#undef tCurrentBlock_End
+#undef tCurrentBlock_Start
+
void BtlController_EmitGetMonData(u8 bufferId, u8 requestId, u8 monToCheck)
{
sBattleBuffersTransferData[0] = CONTROLLER_GETMONDATA;
@@ -1065,15 +1128,15 @@ void BtlController_EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 m
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 16 + sizeof(struct DisableStruct));
}
-void BtlController_EmitPrintString(u8 bufferId, u16 stringID)
+void BtlController_EmitPrintString(u8 bufferId, u16 stringId)
{
s32 i;
struct BattleMsgData *stringInfo;
sBattleBuffersTransferData[0] = CONTROLLER_PRINTSTRING;
sBattleBuffersTransferData[1] = gBattleOutcome;
- sBattleBuffersTransferData[2] = stringID;
- sBattleBuffersTransferData[3] = (stringID & 0xFF00) >> 8;
+ sBattleBuffersTransferData[2] = stringId;
+ sBattleBuffersTransferData[3] = (stringId & 0xFF00) >> 8;
stringInfo = (struct BattleMsgData *)(&sBattleBuffersTransferData[4]);
stringInfo->currentMove = gCurrentMove;
@@ -1097,15 +1160,15 @@ void BtlController_EmitPrintString(u8 bufferId, u16 stringID)
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, sizeof(struct BattleMsgData) + 4);
}
-void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringID)
+void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringId)
{
s32 i;
struct BattleMsgData *stringInfo;
sBattleBuffersTransferData[0] = CONTROLLER_PRINTSTRINGPLAYERONLY;
sBattleBuffersTransferData[1] = CONTROLLER_PRINTSTRINGPLAYERONLY;
- sBattleBuffersTransferData[2] = stringID;
- sBattleBuffersTransferData[3] = (stringID & 0xFF00) >> 8;
+ sBattleBuffersTransferData[2] = stringId;
+ sBattleBuffersTransferData[3] = (stringId & 0xFF00) >> 8;
stringInfo = (struct BattleMsgData *)(&sBattleBuffersTransferData[4]);
stringInfo->currentMove = gCurrentMove;
@@ -1417,10 +1480,10 @@ void BtlController_EmitFaintingCry(u8 bufferId)
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
}
-void BtlController_EmitIntroSlide(u8 bufferId, u8 terrainId)
+void BtlController_EmitIntroSlide(u8 bufferId, u8 environmentId)
{
sBattleBuffersTransferData[0] = CONTROLLER_INTROSLIDE;
- sBattleBuffersTransferData[1] = terrainId;
+ sBattleBuffersTransferData[1] = environmentId;
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
}
@@ -1433,7 +1496,7 @@ void BtlController_EmitIntroTrainerBallThrow(u8 bufferId)
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
}
-void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* hpAndStatus, u8 flags)
+void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus *hpAndStatus, u8 flags)
{
s32 i;
diff --git a/src/battle_dome.c b/src/battle_dome.c
index 8364515e59..62ad04cedb 100644
--- a/src/battle_dome.c
+++ b/src/battle_dome.c
@@ -997,7 +997,7 @@ static const union AnimCmd sSpriteAnim_TourneyTreePokeballSelected[] =
ANIMCMD_END,
};
-static const union AnimCmd * const sSpriteAnimTable_TourneyTreePokeball[] =
+static const union AnimCmd *const sSpriteAnimTable_TourneyTreePokeball[] =
{
sSpriteAnim_TourneyTreePokeballNormal,
sSpriteAnim_TourneyTreePokeballSelected,
@@ -1027,7 +1027,7 @@ static const union AnimCmd sSpriteAnim_TourneyTreeCancelButtonSelected[] =
ANIMCMD_END,
};
-static const union AnimCmd * const sSpriteAnimTable_TourneyTreeCancelButton[] =
+static const union AnimCmd *const sSpriteAnimTable_TourneyTreeCancelButton[] =
{
sSpriteAnim_TourneyTreeCancelButtonNormal,
sSpriteAnim_TourneyTreeCancelButtonSelected,
@@ -1056,7 +1056,7 @@ static const union AnimCmd sSpriteAnim_TourneyTreeExitButtonSelected[] =
ANIMCMD_END,
};
-static const union AnimCmd * const sSpriteAnimTable_TourneyTreeExitButton[] =
+static const union AnimCmd *const sSpriteAnimTable_TourneyTreeExitButton[] =
{
sSpriteAnim_TourneyTreeExitButtonNormal,
sSpriteAnim_TourneyTreeExitButtonSelected,
@@ -1097,13 +1097,13 @@ static const union AnimCmd sSpriteAnim_RightArrow[] =
ANIMCMD_END,
};
-static const union AnimCmd * const sSpriteAnimTable_VerticalScrollArrow[] =
+static const union AnimCmd *const sSpriteAnimTable_VerticalScrollArrow[] =
{
sSpriteAnim_UpArrow,
sSpriteAnim_DownArrow,
};
-static const union AnimCmd * const sSpriteAnimTable_HorizontalScrollArrow[] =
+static const union AnimCmd *const sSpriteAnimTable_HorizontalScrollArrow[] =
{
sSpriteAnim_LeftArrow,
sSpriteAnim_RightArrow,
@@ -1134,7 +1134,7 @@ static const struct SpriteTemplate sVerticalScrollArrowSpriteTemplate =
// Organized by seed starting position, i.e. seed 0 battles seed 8 first
static const u8 sTourneyTreeTrainerIds[DOME_TOURNAMENT_TRAINERS_COUNT] = {0, 8, 12, 4, 7, 15, 11, 3, 2, 10, 14, 6, 5, 13, 9, 1};
-static void (* const sBattleDomeFunctions[])(void) =
+static void (*const sBattleDomeFunctions[])(void) =
{
[BATTLE_DOME_FUNC_INIT] = InitDomeChallenge,
[BATTLE_DOME_FUNC_GET_DATA] = GetDomeData,
@@ -2588,7 +2588,7 @@ static void CreateDomeOpponentMon(u8 monPartyId, u16 tournamentTrainerId, u8 tou
#ifdef BUGFIX
u8 fixedIv = GetDomeTrainerMonIvs(DOME_TRAINERS[tournamentTrainerId].trainerId);
#else
- u8 fixedIv = GetDomeTrainerMonIvs(tournamentTrainerId); // BUG: Using the wrong ID. As a result, all Pokemon have ivs of 3.
+ u8 fixedIv = GetDomeTrainerMonIvs(tournamentTrainerId); // BUG: Using the wrong ID. As a result, all Pokémon have ivs of 3.
#endif
u8 level = SetFacilityPtrsGetLevel();
CreateMonWithEVSpreadNatureOTID(&gEnemyParty[monPartyId],
@@ -2650,13 +2650,13 @@ static void CreateDomeOpponentMons(u16 tournamentTrainerId)
}
}
-// Returns a bitmask representing which 2 of the trainer's 3 pokemon to select.
+// Returns a bitmask representing which 2 of the trainer's 3 Pokémon to select.
// The choice is calculated solely depending on the type effectiveness of their
-// movesets against the player's pokemon.
+// movesets against the player's Pokémon.
// There is a 50% chance of either a "good" or "bad" selection mode being used.
// In the good mode movesets are preferred which are more effective against the
-// player, and in the bad mode the opposite is true. If all 3 pokemon tie, the
-// other mode will be tried. If they tie again, the pokemon selection is random.
+// player, and in the bad mode the opposite is true. If all 3 Pokémon tie, the
+// other mode will be tried. If they tie again, the Pokémon selection is random.
int GetDomeTrainerSelectedMons(u16 tournamentTrainerId)
{
int selectedMonBits;
@@ -2678,24 +2678,24 @@ int GetDomeTrainerSelectedMons(u16 tournamentTrainerId)
static int SelectOpponentMons_Good(u16 tournamentTrainerId, bool8 allowRandom)
{
- int i, moveId, playerMonId;
+ int i, moveIndex, playerMonId;
int partyMovePoints[FRONTIER_PARTY_SIZE];
for (i = 0; i < FRONTIER_PARTY_SIZE; i++)
{
partyMovePoints[i] = 0;
- for (moveId = 0; moveId < MAX_MON_MOVES; moveId++)
+ for (moveIndex = 0; moveIndex < MAX_MON_MOVES; moveIndex++)
{
for (playerMonId = 0; playerMonId < FRONTIER_PARTY_SIZE; playerMonId++)
{
if (DOME_TRAINERS[tournamentTrainerId].trainerId == TRAINER_FRONTIER_BRAIN)
{
- partyMovePoints[i] += GetTypeEffectivenessPoints(GetFrontierBrainMonMove(i, moveId),
+ partyMovePoints[i] += GetTypeEffectivenessPoints(GetFrontierBrainMonMove(i, moveIndex),
GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), EFFECTIVENESS_MODE_GOOD);
}
else
{
- partyMovePoints[i] += GetTypeEffectivenessPoints(gFacilityTrainerMons[DOME_MONS[tournamentTrainerId][i]].moves[moveId],
+ partyMovePoints[i] += GetTypeEffectivenessPoints(gFacilityTrainerMons[DOME_MONS[tournamentTrainerId][i]].moves[moveIndex],
GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), EFFECTIVENESS_MODE_GOOD);
}
}
@@ -2707,24 +2707,24 @@ static int SelectOpponentMons_Good(u16 tournamentTrainerId, bool8 allowRandom)
// Identical to function above, but uses EFFECTIVENESS_MODE_BAD
static int SelectOpponentMons_Bad(u16 tournamentTrainerId, bool8 allowRandom)
{
- int i, moveId, playerMonId;
+ int i, moveIndex, playerMonId;
int partyMovePoints[FRONTIER_PARTY_SIZE];
for (i = 0; i < FRONTIER_PARTY_SIZE; i++)
{
partyMovePoints[i] = 0;
- for (moveId = 0; moveId < MAX_MON_MOVES; moveId++)
+ for (moveIndex = 0; moveIndex < MAX_MON_MOVES; moveIndex++)
{
for (playerMonId = 0; playerMonId < FRONTIER_PARTY_SIZE; playerMonId++)
{
if (DOME_TRAINERS[tournamentTrainerId].trainerId == TRAINER_FRONTIER_BRAIN)
{
- partyMovePoints[i] += GetTypeEffectivenessPoints(GetFrontierBrainMonMove(i, moveId),
+ partyMovePoints[i] += GetTypeEffectivenessPoints(GetFrontierBrainMonMove(i, moveIndex),
GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), EFFECTIVENESS_MODE_BAD);
}
else
{
- partyMovePoints[i] += GetTypeEffectivenessPoints(gFacilityTrainerMons[DOME_MONS[tournamentTrainerId][i]].moves[moveId],
+ partyMovePoints[i] += GetTypeEffectivenessPoints(gFacilityTrainerMons[DOME_MONS[tournamentTrainerId][i]].moves[moveIndex],
GetMonData(&gPlayerParty[playerMonId], MON_DATA_SPECIES, NULL), EFFECTIVENESS_MODE_BAD);
}
}
@@ -4837,7 +4837,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo)
if (lost[1])
gSprites[sInfoCard->spriteIds[1 + arrId]].oam.paletteNum = 3;
- // Draw left trainer's pokemon icons.
+ // Draw left trainer's Pokémon icons.
for (i = 0; i < FRONTIER_PARTY_SIZE; i++)
{
if (trainerIds[0] == TRAINER_PLAYER)
@@ -4877,7 +4877,7 @@ static void DisplayMatchInfoOnCard(u8 flags, u8 matchNo)
}
}
- // Draw right trainer's pokemon icons.
+ // Draw right trainer's Pokémon icons.
for (i = 0; i < FRONTIER_PARTY_SIZE; i++)
{
if (trainerIds[1] == TRAINER_PLAYER)
@@ -5222,13 +5222,13 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun
{
int i, j, k;
int moveScores[MAX_MON_MOVES * FRONTIER_PARTY_SIZE];
- u16 moveIds[MAX_MON_MOVES * FRONTIER_PARTY_SIZE];
+ u16 moves[MAX_MON_MOVES * FRONTIER_PARTY_SIZE];
u16 bestScore = 0;
u16 bestId = 0;
int movePower = 0;
SetFacilityPtrsGetLevel();
- // Calc move points of all 4 moves for all 3 pokemon hitting all 3 target mons.
+ // Calc move points of all 4 moves for all 3 Pokémon hitting all 3 target mons.
for (i = 0; i < FRONTIER_PARTY_SIZE; i++)
{
for (j = 0; j < MAX_MON_MOVES; j++)
@@ -5236,17 +5236,17 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun
// TODO: Clean this up, looks like a different data structure (2D array)
moveScores[i * MAX_MON_MOVES + j] = 0;
if (DOME_TRAINERS[winnerTournamentId].trainerId == TRAINER_FRONTIER_BRAIN)
- moveIds[i * MAX_MON_MOVES + j] = GetFrontierBrainMonMove(i, j);
+ moves[i * MAX_MON_MOVES + j] = GetFrontierBrainMonMove(i, j);
else
- moveIds[i * MAX_MON_MOVES + j] = gFacilityTrainerMons[DOME_MONS[winnerTournamentId][i]].moves[j];
+ moves[i * MAX_MON_MOVES + j] = gFacilityTrainerMons[DOME_MONS[winnerTournamentId][i]].moves[j];
- movePower = gBattleMoves[moveIds[i * MAX_MON_MOVES + j]].power;
+ movePower = gBattleMoves[moves[i * MAX_MON_MOVES + j]].power;
if (movePower == 0)
movePower = 40;
else if (movePower == 1)
movePower = 60;
- else if (moveIds[i * MAX_MON_MOVES + j] == MOVE_SELF_DESTRUCT
- || moveIds[i * MAX_MON_MOVES + j] == MOVE_EXPLOSION)
+ else if (moves[i * MAX_MON_MOVES + j] == MOVE_SELF_DESTRUCT
+ || moves[i * MAX_MON_MOVES + j] == MOVE_EXPLOSION)
movePower /= 2;
for (k = 0; k < FRONTIER_PARTY_SIZE; k++)
@@ -5265,7 +5265,7 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun
else
targetAbility = gSpeciesInfo[targetSpecies].abilities[0];
- var = AI_TypeCalc(moveIds[i * MAX_MON_MOVES + j], targetSpecies, targetAbility);
+ var = AI_TypeCalc(moves[i * MAX_MON_MOVES + j], targetSpecies, targetAbility);
if (var & MOVE_RESULT_NOT_VERY_EFFECTIVE && var & MOVE_RESULT_SUPER_EFFECTIVE)
moveScores[i * MAX_MON_MOVES + j] += movePower;
else if (var & MOVE_RESULT_NO_EFFECT)
@@ -5285,7 +5285,7 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun
}
else if (bestScore == moveScores[i * MAX_MON_MOVES + j])
{
- if (moveIds[bestId] < moveIds[i * MAX_MON_MOVES + j]) // Why not use (Random() & 1) instead of promoting moves with a higher id?
+ if (moves[bestId] < moves[i * MAX_MON_MOVES + j]) // Why not use (Random() & 1) instead of promoting moves with a higher id?
bestId = i * MAX_MON_MOVES + j;
}
}
@@ -5296,7 +5296,7 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun
{
for (i = 0; i < roundId - 1; i++)
{
- if (gSaveBlock2Ptr->frontier.domeWinningMoves[GetOpposingNPCTournamentIdByRound(winnerTournamentId, i)] == moveIds[j])
+ if (gSaveBlock2Ptr->frontier.domeWinningMoves[GetOpposingNPCTournamentIdByRound(winnerTournamentId, i)] == moves[j])
break;
}
if (i != roundId - 1)
@@ -5316,7 +5316,7 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun
j = k;
bestScore = moveScores[k];
}
- else if (bestScore == moveScores[k] && moveIds[j] < moveIds[k]) // Yes, these conditions are redundant
+ else if (bestScore == moveScores[k] && moves[j] < moves[k]) // Yes, these conditions are redundant
{
j = k;
bestScore = moveScores[k];
@@ -5328,7 +5328,7 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun
if (moveScores[j] == 0)
j = bestId;
- return moveIds[j];
+ return moves[j];
}
static void Task_ShowTourneyTree(u8 taskId)
diff --git a/src/battle_factory.c b/src/battle_factory.c
index 0f4ed9816d..04961430a0 100644
--- a/src/battle_factory.c
+++ b/src/battle_factory.c
@@ -121,7 +121,7 @@ static const u16 *const sMoveStyles[FACTORY_NUM_STYLES - 1] =
[FACTORY_STYLE_WEATHER - 1] = sMoves_DependsOnTheBattlesFlow,
};
-static void (* const sBattleFactoryFunctions[])(void) =
+static void (*const sBattleFactoryFunctions[])(void) =
{
[BATTLE_FACTORY_FUNC_INIT] = InitFactoryChallenge,
[BATTLE_FACTORY_FUNC_GET_DATA] = GetBattleFactoryData,
@@ -337,7 +337,7 @@ static void GenerateOpponentMons(void)
if (gFacilityTrainerMons[monId].species == SPECIES_UNOWN)
continue;
- // Ensure none of the opponent's pokemon are the same as the potential rental pokemon for the player
+ // Ensure none of the opponent's Pokémon are the same as the potential rental Pokémon for the player
for (j = 0; j < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons); j++)
{
if (gFacilityTrainerMons[monId].species == gFacilityTrainerMons[gSaveBlock2Ptr->frontier.rentalMons[j].monId].species)
@@ -346,7 +346,7 @@ static void GenerateOpponentMons(void)
if (j != (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons))
continue;
- // "High tier" pokemon are only allowed on open level mode
+ // "High tier" Pokémon are only allowed on open level mode
if (lvlMode == FRONTIER_LVL_50 && monId > FRONTIER_MONS_HIGH_TIER)
continue;
@@ -554,7 +554,7 @@ static void GenerateInitialRentalMons(void)
i = 0;
while (i != PARTY_SIZE)
{
- if (i < rentalRank) // The more times the player has rented, the more initial rentals are generated from a better set of pokemon
+ if (i < rentalRank) // The more times the player has rented, the more initial rentals are generated from a better set of Pokémon
monId = GetFactoryMonId(factoryLvlMode, challengeNum, TRUE);
else
monId = GetFactoryMonId(factoryLvlMode, challengeNum, FALSE);
@@ -562,7 +562,7 @@ static void GenerateInitialRentalMons(void)
if (gFacilityTrainerMons[monId].species == SPECIES_UNOWN)
continue;
- // Cannot have two pokemon of the same species.
+ // Cannot have two Pokémon of the same species.
for (j = firstMonId; j < firstMonId + i; j++)
{
u16 existingMonId = monIds[j];
diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c
index a543e64c93..eea04b99d3 100644
--- a/src/battle_factory_screen.c
+++ b/src/battle_factory_screen.c
@@ -32,15 +32,15 @@
#include "constants/songs.h"
#include "constants/rgb.h"
-// Select_ refers to the first Pokemon selection screen where you choose your initial 3 rental Pokemon.
-// Swap_ refers to the subsequent selection screens where you can swap a Pokemon with one from the beaten trainer
+// Select_ refers to the first Pokémon selection screen where you choose your initial 3 rental Pokémon.
+// Swap_ refers to the subsequent selection screens where you can swap a Pokémon with one from the beaten trainer
// Note that, generally, "Action" will refer to the immediate actions that can be taken on each screen,
-// i.e. selecting a pokemon or selecting the Cancel button
+// i.e. selecting a Pokémon or selecting the Cancel button
// The "Options menu" will refer to the popup menu that shows when some actions have been selected
-#define SWAP_PLAYER_SCREEN 0 // The screen where the player selects which of their pokemon to swap away
-#define SWAP_ENEMY_SCREEN 1 // The screen where the player selects which new pokemon from the defeated party to swap for
+#define SWAP_PLAYER_SCREEN 0 // The screen where the player selects which of their Pokémon to swap away
+#define SWAP_ENEMY_SCREEN 1 // The screen where the player selects which new Pokémon from the defeated party to swap for
#define SELECTABLE_MONS_COUNT 6
@@ -89,7 +89,7 @@ struct FactorySelectableMon
{
u16 monId;
u16 ballSpriteId;
- u8 selectedId; // 0 - not selected, 1 - first pokemon, 2 - second pokemon, 3 - third pokemon
+ u8 selectedId; // 0 - not selected, 1 - first Pokémon, 2 - second Pokémon, 3 - third Pokémon
struct Pokemon monData;
};
@@ -256,7 +256,7 @@ static struct FactorySelectScreen *sFactorySelectScreen;
static void (*sSwap_CurrentOptionFunc)(u8 taskId);
static struct FactorySwapScreen *sFactorySwapScreen;
-u8 (*gFactorySelect_CurrentOptionFunc)(void);
+COMMON_DATA u8 (*gFactorySelect_CurrentOptionFunc)(void) = NULL;
static const u16 sPokeballGray_Pal[] = INCBIN_U16("graphics/battle_frontier/factory_screen/pokeball_gray.gbapal");
static const u16 sPokeballSelected_Pal[] = INCBIN_U16("graphics/battle_frontier/factory_screen/pokeball_selected.gbapal");
@@ -299,7 +299,7 @@ static const struct SpritePalette sSelect_SpritePalettes[] =
{},
};
-u8 static (* const sSelect_MenuOptionFuncs[])(void) =
+u8 static (*const sSelect_MenuOptionFuncs[])(void) =
{
Select_OptionSummary,
Select_OptionRentDeselect,
@@ -517,17 +517,17 @@ static const union AnimCmd sAnim_Select_Pokeball_Moving[] =
ANIMCMD_END,
};
-static const union AnimCmd * const sAnims_Select_Interface[] =
+static const union AnimCmd *const sAnims_Select_Interface[] =
{
sAnim_Select_Interface,
};
-static const union AnimCmd * const sAnims_Select_MonPicBgAnim[] =
+static const union AnimCmd *const sAnims_Select_MonPicBgAnim[] =
{
sAnim_Select_MonPicBgAnim,
};
-static const union AnimCmd * const sAnims_Select_Pokeball[] =
+static const union AnimCmd *const sAnims_Select_Pokeball[] =
{
sAnim_Select_Pokeball_Still,
sAnim_Select_Pokeball_Moving,
@@ -569,7 +569,7 @@ static const union AffineAnimCmd sAffineAnim_Select_MonPicBg_Open[] =
AFFINEANIMCMD_END,
};
-static const union AffineAnimCmd * const sAffineAnims_Select_MonPicBgAnim[] =
+static const union AffineAnimCmd *const sAffineAnims_Select_MonPicBgAnim[] =
{
sAffineAnim_Select_MonPicBg_Opening,
sAffineAnim_Select_MonPicBg_Closing,
@@ -772,17 +772,17 @@ static const union AnimCmd sAnim_Swap_Pokeball_Moving[] =
ANIMCMD_END,
};
-static const union AnimCmd * const sAnims_Swap_Interface[] =
+static const union AnimCmd *const sAnims_Swap_Interface[] =
{
sAnim_Swap_Interface,
};
-static const union AnimCmd * const sAnims_Swap_MonPicBgAnim[] =
+static const union AnimCmd *const sAnims_Swap_MonPicBgAnim[] =
{
sAnim_Swap_MonPicBgAnim,
};
-static const union AnimCmd * const sAnims_Swap_Pokeball[] =
+static const union AnimCmd *const sAnims_Swap_Pokeball[] =
{
sAnim_Swap_Pokeball_Still,
sAnim_Swap_Pokeball_Moving,
@@ -824,7 +824,7 @@ static const union AffineAnimCmd sAffineAnim_Swap_MonPicBg_Open[] =
AFFINEANIMCMD_END,
};
-static const union AffineAnimCmd * const sAffineAnims_Swap_MonPicBgAnim[] =
+static const union AffineAnimCmd *const sAffineAnims_Swap_MonPicBgAnim[] =
{
sAffineAnim_Swap_MonPicBg_Opening,
sAffineAnim_Swap_MonPicBg_Closing,
@@ -886,7 +886,7 @@ static const struct SpriteTemplate sSpriteTemplate_Swap_MonPicBgAnim =
.callback = SpriteCallbackDummy
};
-void static (* const sSwap_MenuOptionFuncs[])(u8 taskId) =
+void static (*const sSwap_MenuOptionFuncs[])(u8 taskId) =
{
Swap_OptionSummary,
Swap_OptionSwap,
@@ -1060,7 +1060,7 @@ static void SpriteCB_Pokeball(struct Sprite *sprite)
{
if (sprite->oam.paletteNum == IndexOfSpritePaletteTag(PALTAG_BALL_SELECTED))
{
- // Pokeball selected, do rocking animation
+ // Poké Ball selected, do rocking animation
if (sprite->animEnded)
{
if (sprite->data[0] != 0)
@@ -1084,7 +1084,7 @@ static void SpriteCB_Pokeball(struct Sprite *sprite)
}
else
{
- // Pokeball not selected, remain still
+ // Poké Ball not selected, remain still
StartSpriteAnimIfDifferent(sprite, 0);
}
}
@@ -1521,7 +1521,7 @@ static void Select_Task_Exit(u8 taskId)
}
}
-// Handles the Yes/No prompt when confirming the 3 selected rental pokemon
+// Handles the Yes/No prompt when confirming the 3 selected rental Pokémon
static void Select_Task_HandleYesNo(u8 taskId)
{
if (sFactorySelectScreen->monPicAnimating == TRUE)
@@ -1543,14 +1543,14 @@ static void Select_Task_HandleYesNo(u8 taskId)
PlaySE(SE_SELECT);
if (sFactorySelectScreen->yesNoCursorPos == 0)
{
- // Selected Yes, confirmed selected pokemon
+ // Selected Yes, confirmed selected Pokémon
Select_HideChosenMons();
gTasks[taskId].tState = 0;
gTasks[taskId].func = Select_Task_Exit;
}
else
{
- // Selected No, continue choosing pokemon
+ // Selected No, continue choosing Pokémon
Select_ErasePopupMenu(SELECT_WIN_YES_NO);
Select_DeclineChosenMons();
sFactorySelectScreen->fadeSpeciesNameActive = TRUE;
@@ -1560,7 +1560,7 @@ static void Select_Task_HandleYesNo(u8 taskId)
}
else if (JOY_NEW(B_BUTTON))
{
- // Pressed B, Continue choosing pokemon
+ // Pressed B, Continue choosing Pokémon
PlaySE(SE_SELECT);
Select_ErasePopupMenu(SELECT_WIN_YES_NO);
Select_DeclineChosenMons();
@@ -1582,7 +1582,7 @@ static void Select_Task_HandleYesNo(u8 taskId)
}
}
-// Handles the popup menu that shows when a pokemon is selected
+// Handles the popup menu that shows when a Pokémon is selected
static void Select_Task_HandleMenu(u8 taskId)
{
switch (gTasks[taskId].tState)
@@ -2415,7 +2415,7 @@ static void Swap_Task_Exit(u8 taskId)
{
case 0:
// Set return value for script
- // TRUE if player kept their current pokemon
+ // TRUE if player kept their current Pokémon
if (sFactorySwapScreen->monSwapped == TRUE)
{
gTasks[taskId].tState++;
@@ -2630,7 +2630,7 @@ static void Swap_Task_HandleMenu(u8 taskId)
}
}
-// Handles input on the two main swap screens (choosing a current pokeon to get rid of, and choosing a new pokemon to receive)
+// Handles input on the two main swap screens (choosing a current pokeon to get rid of, and choosing a new Pokémon to receive)
static void Swap_Task_HandleChooseMons(u8 taskId)
{
switch (gTasks[taskId].tState)
@@ -2645,7 +2645,7 @@ static void Swap_Task_HandleChooseMons(u8 taskId)
case STATE_CHOOSE_MONS_HANDLE_INPUT:
if (JOY_NEW(A_BUTTON))
{
- // Run whatever action is currently selected (a pokeball, the Cancel button, etc.)
+ // Run whatever action is currently selected (a Poké Ball, the Cancel button, etc.)
PlaySE(SE_SELECT);
sFactorySwapScreen->fadeSpeciesNameActive = FALSE;
Swap_PrintMonSpeciesAtFade();
@@ -3553,7 +3553,7 @@ static void Swap_HandleActionCursorChange(u8 cursorId)
{
if (cursorId < FRONTIER_PARTY_SIZE)
{
- // Cursor is on one of the pokemon
+ // Cursor is on one of the Pokémon
gSprites[sFactorySwapScreen->cursorSpriteId].invisible = FALSE;
Swap_HideActionButtonHighlights();
gSprites[sFactorySwapScreen->cursorSpriteId].x = gSprites[sFactorySwapScreen->ballSpriteIds[cursorId]].x;
diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c
index d4326860a9..7047aaabcc 100644
--- a/src/battle_gfx_sfx_util.c
+++ b/src/battle_gfx_sfx_util.c
@@ -27,8 +27,8 @@
#include "constants/battle_palace.h"
extern const u8 gBattlePalaceNatureToMoveTarget[];
-extern const u8 * const gBattleAnims_General[];
-extern const u8 * const gBattleAnims_Special[];
+extern const u8 *const gBattleAnims_General[];
+extern const u8 *const gBattleAnims_Special[];
extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow;
extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow;
@@ -105,7 +105,7 @@ void FreeBattleSpritesData(void)
FREE_AND_SET_NULL(gBattleSpritesDataPtr);
}
-// Pokemon chooses move to use in Battle Palace rather than player
+// Pokémon chooses move to use in Battle Palace rather than player
u16 ChooseMoveAndTargetInBattlePalace(void)
{
s32 i, var1, var2;
@@ -165,7 +165,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void)
chosenMoveId = BattleAI_ChooseMoveOrAction();
}
- // If no moves matched the selected group, pick a new move from groups the pokemon has
+ // If no moves matched the selected group, pick a new move from groups the Pokémon has
// In this case the AI is not checked again, so the choice may be worse
// If a move is chosen this way, there's a 50% chance that it will be unable to use it anyway
if (chosenMoveId == -1)
@@ -264,7 +264,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void)
if (moveInfo->moves[chosenMoveId] == MOVE_CURSE)
{
- if (moveInfo->monType1 != TYPE_GHOST && moveInfo->monType2 != TYPE_GHOST)
+ if (moveInfo->monTypes[0] != TYPE_GHOST && moveInfo->monTypes[1] != TYPE_GHOST)
moveTarget = MOVE_TARGET_USER;
else
moveTarget = MOVE_TARGET_SELECTED;
@@ -357,7 +357,7 @@ static u16 GetBattlePalaceTarget(void)
return BATTLE_OPPOSITE(gActiveBattler) << 8;
}
-// Wait for the pokemon to finish appearing out from the pokeball on send out
+// Wait for the Pokémon to finish appearing out from the Poké Ball on send out
void SpriteCB_WaitForBattlerBallReleaseAnim(struct Sprite *sprite)
{
u8 spriteId = sprite->data[1];
@@ -545,19 +545,19 @@ static void Task_ClearBitWhenSpecialAnimDone(u8 taskId)
#undef tBattlerId
// Great function to include newly added moves that don't have animation yet.
-bool8 IsMoveWithoutAnimation(u16 moveId, u8 animationTurn)
+bool8 IsMoveWithoutAnimation(u16 move, u8 animationTurn)
{
return FALSE;
}
// Check if SE has finished or 30 calls, whichever comes first
-bool8 IsBattleSEPlaying(u8 battlerId)
+bool8 IsBattleSEPlaying(u8 battler)
{
u8 zero = 0;
if (IsSEPlaying())
{
- gBattleSpritesDataPtr->healthBoxesData[battlerId].soundTimer++;
+ gBattleSpritesDataPtr->healthBoxesData[battler].soundTimer++;
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].soundTimer < 30)
return TRUE;
@@ -566,7 +566,7 @@ bool8 IsBattleSEPlaying(u8 battlerId)
}
if (zero == 0)
{
- gBattleSpritesDataPtr->healthBoxesData[battlerId].soundTimer = 0;
+ gBattleSpritesDataPtr->healthBoxesData[battler].soundTimer = 0;
return FALSE;
}
@@ -574,7 +574,7 @@ bool8 IsBattleSEPlaying(u8 battlerId)
return TRUE;
}
-void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId)
+void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battler)
{
u32 monsPersonality, currentPersonality, otId;
u16 species;
@@ -584,50 +584,50 @@ void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId)
monsPersonality = GetMonData(mon, MON_DATA_PERSONALITY);
- if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
+ if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies == SPECIES_NONE)
{
species = GetMonData(mon, MON_DATA_SPECIES);
currentPersonality = monsPersonality;
}
else
{
- species = gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies;
- currentPersonality = gTransformedPersonalities[battlerId];
+ species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies;
+ currentPersonality = gTransformedPersonalities[battler];
}
otId = GetMonData(mon, MON_DATA_OT_ID);
- position = GetBattlerPosition(battlerId);
+ position = GetBattlerPosition(battler);
HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species],
gMonSpritesGfxPtr->sprites.ptr[position],
species, currentPersonality);
- paletteOffset = OBJ_PLTT_ID(battlerId);
+ paletteOffset = OBJ_PLTT_ID(battler);
- if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
+ if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies == SPECIES_NONE)
lzPaletteData = GetMonFrontSpritePal(mon);
else
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality);
LZDecompressWram(lzPaletteData, gDecompressionBuffer);
LoadPalette(gDecompressionBuffer, paletteOffset, PLTT_SIZE_4BPP);
- LoadPalette(gDecompressionBuffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
+ LoadPalette(gDecompressionBuffer, BG_PLTT_ID(8) + BG_PLTT_ID(battler), PLTT_SIZE_4BPP);
if (species == SPECIES_CASTFORM)
{
- paletteOffset = OBJ_PLTT_ID(battlerId);
+ paletteOffset = OBJ_PLTT_ID(battler);
LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette);
- LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, PLTT_SIZE_4BPP);
+ LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battler]], paletteOffset, PLTT_SIZE_4BPP);
}
- // transform's pink color
- if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE)
+ // transform's white color
+ if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE)
{
BlendPalette(paletteOffset, 16, 6, RGB_WHITE);
CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZEOF(16));
}
}
-void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId)
+void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battler)
{
u32 monsPersonality, currentPersonality, otId;
u16 species;
@@ -637,21 +637,21 @@ void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId)
monsPersonality = GetMonData(mon, MON_DATA_PERSONALITY);
- if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
+ if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies == SPECIES_NONE)
{
species = GetMonData(mon, MON_DATA_SPECIES);
currentPersonality = monsPersonality;
}
else
{
- species = gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies;
- currentPersonality = gTransformedPersonalities[battlerId];
+ species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies;
+ currentPersonality = gTransformedPersonalities[battler];
}
otId = GetMonData(mon, MON_DATA_OT_ID);
- position = GetBattlerPosition(battlerId);
+ position = GetBattlerPosition(battler);
- if (ShouldIgnoreDeoxysForm(1, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE)
+ if (ShouldIgnoreDeoxysForm(1, battler) == TRUE || gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE)
{
HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species],
gMonSpritesGfxPtr->sprites.ptr[position],
@@ -664,26 +664,26 @@ void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId)
species, currentPersonality);
}
- paletteOffset = OBJ_PLTT_ID(battlerId);
+ paletteOffset = OBJ_PLTT_ID(battler);
- if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
+ if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies == SPECIES_NONE)
lzPaletteData = GetMonFrontSpritePal(mon);
else
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality);
LZDecompressWram(lzPaletteData, gDecompressionBuffer);
LoadPalette(gDecompressionBuffer, paletteOffset, PLTT_SIZE_4BPP);
- LoadPalette(gDecompressionBuffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
+ LoadPalette(gDecompressionBuffer, BG_PLTT_ID(8) + BG_PLTT_ID(battler), PLTT_SIZE_4BPP);
if (species == SPECIES_CASTFORM)
{
- paletteOffset = OBJ_PLTT_ID(battlerId);
+ paletteOffset = OBJ_PLTT_ID(battler);
LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette);
- LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, PLTT_SIZE_4BPP);
+ LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battler]], paletteOffset, PLTT_SIZE_4BPP);
}
// transform's pink color
- if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE)
+ if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE)
{
BlendPalette(paletteOffset, 16, 6, RGB_WHITE);
CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZEOF(16));
@@ -698,23 +698,23 @@ void BattleGfxSfxDummy2(u16 species)
{
}
-void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId)
+void DecompressTrainerFrontPic(u16 frontPicId, u8 battler)
{
- u8 position = GetBattlerPosition(battlerId);
+ u8 position = GetBattlerPosition(battler);
DecompressPicFromTable_2(&gTrainerFrontPicTable[frontPicId],
gMonSpritesGfxPtr->sprites.ptr[position],
SPECIES_NONE);
LoadCompressedSpritePalette(&gTrainerFrontPicPaletteTable[frontPicId]);
}
-void DecompressTrainerBackPic(u16 backPicId, u8 battlerId)
+void DecompressTrainerBackPic(u16 backPicId, u8 battler)
{
- u8 position = GetBattlerPosition(battlerId);
+ u8 position = GetBattlerPosition(battler);
DecompressPicFromTable_2(&gTrainerBackPicTable[backPicId],
gMonSpritesGfxPtr->sprites.ptr[position],
SPECIES_NONE);
LoadCompressedPalette(gTrainerBackPicPaletteTable[backPicId].data,
- OBJ_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
+ OBJ_PLTT_ID(battler), PLTT_SIZE_4BPP);
}
void BattleGfxSfxDummy3(u8 gender)
@@ -773,13 +773,21 @@ bool8 BattleLoadAllHealthBoxesGfx(u8 state)
LoadCompressedSpriteSheet(&sSpriteSheet_SinglesPlayerHealthbox);
}
else if (state == 3)
+ {
LoadCompressedSpriteSheet(&sSpriteSheet_SinglesOpponentHealthbox);
+ }
else if (state == 4)
- LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[0]]);
+ {
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[B_BATTLER_0]]);
+ }
else if (state == 5)
- LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[1]]);
+ {
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[B_BATTLER_1]]);
+ }
else
+ {
retVal = TRUE;
+ }
}
else
{
@@ -792,13 +800,13 @@ bool8 BattleLoadAllHealthBoxesGfx(u8 state)
else if (state == 5)
LoadCompressedSpriteSheet(&sSpriteSheets_DoublesOpponentHealthbox[1]);
else if (state == 6)
- LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[0]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[B_BATTLER_0]]);
else if (state == 7)
- LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[1]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[B_BATTLER_1]]);
else if (state == 8)
- LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[2]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[B_BATTLER_2]]);
else if (state == 9)
- LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[3]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[B_BATTLER_3]]);
else
retVal = TRUE;
}
@@ -812,7 +820,7 @@ void LoadBattleBarGfx(u8 unused)
LZDecompressWram(gBattleInterfaceGfx_BattleBar, gMonSpritesGfxPtr->barFontGfx);
}
-bool8 BattleInitAllSprites(u8 *state1, u8 *battlerId)
+bool8 BattleInitAllSprites(u8 *state1, u8 *battler)
{
bool8 retVal = FALSE;
@@ -823,13 +831,13 @@ bool8 BattleInitAllSprites(u8 *state1, u8 *battlerId)
(*state1)++;
break;
case 1:
- if (!BattleLoadAllHealthBoxesGfx(*battlerId))
+ if (!BattleLoadAllHealthBoxesGfx(*battler))
{
- (*battlerId)++;
+ (*battler)++;
}
else
{
- *battlerId = 0;
+ *battler = 0;
(*state1)++;
}
break;
@@ -837,47 +845,47 @@ bool8 BattleInitAllSprites(u8 *state1, u8 *battlerId)
(*state1)++;
break;
case 3:
- if ((gBattleTypeFlags & BATTLE_TYPE_SAFARI) && *battlerId == 0)
- gHealthboxSpriteIds[*battlerId] = CreateSafariPlayerHealthboxSprites();
+ if ((gBattleTypeFlags & BATTLE_TYPE_SAFARI) && *battler == 0)
+ gHealthboxSpriteIds[*battler] = CreateSafariPlayerHealthboxSprites();
else
- gHealthboxSpriteIds[*battlerId] = CreateBattlerHealthboxSprites(*battlerId);
+ gHealthboxSpriteIds[*battler] = CreateBattlerHealthboxSprites(*battler);
- (*battlerId)++;
- if (*battlerId == gBattlersCount)
+ (*battler)++;
+ if (*battler == gBattlersCount)
{
- *battlerId = 0;
+ *battler = 0;
(*state1)++;
}
break;
case 4:
- InitBattlerHealthboxCoords(*battlerId);
- if (gBattlerPositions[*battlerId] <= B_POSITION_OPPONENT_LEFT)
- DummyBattleInterfaceFunc(gHealthboxSpriteIds[*battlerId], FALSE);
+ InitBattlerHealthboxCoords(*battler);
+ if (gBattlerPositions[*battler] <= B_POSITION_OPPONENT_LEFT)
+ DummyBattleInterfaceFunc(gHealthboxSpriteIds[*battler], FALSE);
else
- DummyBattleInterfaceFunc(gHealthboxSpriteIds[*battlerId], TRUE);
+ DummyBattleInterfaceFunc(gHealthboxSpriteIds[*battler], TRUE);
- (*battlerId)++;
- if (*battlerId == gBattlersCount)
+ (*battler)++;
+ if (*battler == gBattlersCount)
{
- *battlerId = 0;
+ *battler = 0;
(*state1)++;
}
break;
case 5:
- if (GetBattlerSide(*battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(*battler) == B_SIDE_PLAYER)
{
if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI))
- UpdateHealthboxAttribute(gHealthboxSpriteIds[*battlerId], &gPlayerParty[gBattlerPartyIndexes[*battlerId]], HEALTHBOX_ALL);
+ UpdateHealthboxAttribute(gHealthboxSpriteIds[*battler], &gPlayerParty[gBattlerPartyIndexes[*battler]], HEALTHBOX_ALL);
}
else
{
- UpdateHealthboxAttribute(gHealthboxSpriteIds[*battlerId], &gEnemyParty[gBattlerPartyIndexes[*battlerId]], HEALTHBOX_ALL);
+ UpdateHealthboxAttribute(gHealthboxSpriteIds[*battler], &gEnemyParty[gBattlerPartyIndexes[*battler]], HEALTHBOX_ALL);
}
- SetHealthboxSpriteInvisible(gHealthboxSpriteIds[*battlerId]);
- (*battlerId)++;
- if (*battlerId == gBattlersCount)
+ SetHealthboxSpriteInvisible(gHealthboxSpriteIds[*battler]);
+ (*battler)++;
+ if (*battler == gBattlersCount)
{
- *battlerId = 0;
+ *battler = 0;
(*state1)++;
}
break;
@@ -911,9 +919,9 @@ void CopyAllBattleSpritesInvisibilities(void)
gBattleSpritesDataPtr->battlerData[i].invisible = gSprites[gBattlerSpriteIds[i]].invisible;
}
-void CopyBattleSpriteInvisibility(u8 battlerId)
+void CopyBattleSpriteInvisibility(u8 battler)
{
- gBattleSpritesDataPtr->battlerData[battlerId].invisible = gSprites[gBattlerSpriteIds[battlerId]].invisible;
+ gBattleSpritesDataPtr->battlerData[battler].invisible = gSprites[gBattlerSpriteIds[battler]].invisible;
}
void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 castform)
@@ -1015,7 +1023,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 castform)
}
}
-void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite)
+void BattleLoadSubstituteOrMonSpriteGfx(u8 battler, bool8 loadMonSprite)
{
s32 i, position, palOffset;
@@ -1024,11 +1032,11 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite)
if (IsContest())
position = B_POSITION_PLAYER_LEFT;
else
- position = GetBattlerPosition(battlerId);
+ position = GetBattlerPosition(battler);
if (IsContest())
LZDecompressVram(gSubstituteDollBackGfx, gMonSpritesGfxPtr->sprites.ptr[position]);
- else if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ else if (GetBattlerSide(battler) != B_SIDE_PLAYER)
LZDecompressVram(gSubstituteDollFrontGfx, gMonSpritesGfxPtr->sprites.ptr[position]);
else
LZDecompressVram(gSubstituteDollBackGfx, gMonSpritesGfxPtr->sprites.ptr[position]);
@@ -1038,66 +1046,66 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite)
Dma3CopyLarge32_(gMonSpritesGfxPtr->sprites.ptr[position], &gMonSpritesGfxPtr->sprites.byte[position][MON_PIC_SIZE * i], MON_PIC_SIZE);
}
- palOffset = OBJ_PLTT_ID(battlerId);
+ palOffset = OBJ_PLTT_ID(battler);
LoadCompressedPalette(gSubstituteDollPal, palOffset, PLTT_SIZE_4BPP);
}
else
{
if (!IsContest())
{
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
- BattleLoadOpponentMonSpriteGfx(&gEnemyParty[gBattlerPartyIndexes[battlerId]], battlerId);
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
+ BattleLoadOpponentMonSpriteGfx(&gEnemyParty[gBattlerPartyIndexes[battler]], battler);
else
- BattleLoadPlayerMonSpriteGfx(&gPlayerParty[gBattlerPartyIndexes[battlerId]], battlerId);
+ BattleLoadPlayerMonSpriteGfx(&gPlayerParty[gBattlerPartyIndexes[battler]], battler);
}
}
}
-void LoadBattleMonGfxAndAnimate(u8 battlerId, bool8 loadMonSprite, u8 spriteId)
+void LoadBattleMonGfxAndAnimate(u8 battler, bool8 loadMonSprite, u8 spriteId)
{
- BattleLoadSubstituteOrMonSpriteGfx(battlerId, loadMonSprite);
- StartSpriteAnim(&gSprites[spriteId], gBattleMonForms[battlerId]);
+ BattleLoadSubstituteOrMonSpriteGfx(battler, loadMonSprite);
+ StartSpriteAnim(&gSprites[spriteId], gBattleMonForms[battler]);
if (!loadMonSprite)
- gSprites[spriteId].y = GetSubstituteSpriteDefault_Y(battlerId);
+ gSprites[spriteId].y = GetSubstituteSpriteDefault_Y(battler);
else
- gSprites[spriteId].y = GetBattlerSpriteDefault_Y(battlerId);
+ gSprites[spriteId].y = GetBattlerSpriteDefault_Y(battler);
}
-void TrySetBehindSubstituteSpriteBit(u8 battlerId, u16 move)
+void TrySetBehindSubstituteSpriteBit(u8 battler, u16 move)
{
if (move == MOVE_SUBSTITUTE)
- gBattleSpritesDataPtr->battlerData[battlerId].behindSubstitute = 1;
+ gBattleSpritesDataPtr->battlerData[battler].behindSubstitute = 1;
}
-void ClearBehindSubstituteBit(u8 battlerId)
+void ClearBehindSubstituteBit(u8 battler)
{
- gBattleSpritesDataPtr->battlerData[battlerId].behindSubstitute = 0;
+ gBattleSpritesDataPtr->battlerData[battler].behindSubstitute = 0;
}
-void HandleLowHpMusicChange(struct Pokemon *mon, u8 battlerId)
+void HandleLowHpMusicChange(struct Pokemon *mon, u8 battler)
{
u16 hp = GetMonData(mon, MON_DATA_HP);
u16 maxHP = GetMonData(mon, MON_DATA_MAX_HP);
if (GetHPBarLevel(hp, maxHP) == HP_BAR_RED)
{
- if (!gBattleSpritesDataPtr->battlerData[battlerId].lowHpSong)
+ if (!gBattleSpritesDataPtr->battlerData[battler].lowHpSong)
{
- if (!gBattleSpritesDataPtr->battlerData[BATTLE_PARTNER(battlerId)].lowHpSong)
+ if (!gBattleSpritesDataPtr->battlerData[BATTLE_PARTNER(battler)].lowHpSong)
PlaySE(SE_LOW_HEALTH);
- gBattleSpritesDataPtr->battlerData[battlerId].lowHpSong = 1;
+ gBattleSpritesDataPtr->battlerData[battler].lowHpSong = 1;
}
}
else
{
- gBattleSpritesDataPtr->battlerData[battlerId].lowHpSong = 0;
+ gBattleSpritesDataPtr->battlerData[battler].lowHpSong = 0;
if (!IsDoubleBattle())
{
m4aSongNumStop(SE_LOW_HEALTH);
return;
}
- if (IsDoubleBattle() && !gBattleSpritesDataPtr->battlerData[BATTLE_PARTNER(battlerId)].lowHpSong)
+ if (IsDoubleBattle() && !gBattleSpritesDataPtr->battlerData[BATTLE_PARTNER(battler)].lowHpSong)
{
m4aSongNumStop(SE_LOW_HEALTH);
return;
@@ -1166,46 +1174,46 @@ void SetBattlerSpriteAffineMode(u8 affineMode)
void LoadAndCreateEnemyShadowSprites(void)
{
- u8 battlerId;
+ u8 battler;
LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow);
- battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
- gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X),
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 29,
+ battler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
+ gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow,
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X),
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + 29,
0xC8);
- gSprites[gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId].data[0] = battlerId;
+ gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].data[0] = battler;
if (IsDoubleBattle())
{
- battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT);
- gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow,
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X),
- GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 29,
+ battler = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT);
+ gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow,
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_X),
+ GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + 29,
0xC8);
- gSprites[gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId].data[0] = battlerId;
+ gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].data[0] = battler;
}
}
void SpriteCB_EnemyShadow(struct Sprite *shadowSprite)
{
bool8 invisible = FALSE;
- u8 battlerId = shadowSprite->tBattlerId;
- struct Sprite *battlerSprite = &gSprites[gBattlerSpriteIds[battlerId]];
+ u8 battler = shadowSprite->tBattlerId;
+ struct Sprite *battlerSprite = &gSprites[gBattlerSpriteIds[battler]];
- if (!battlerSprite->inUse || !IsBattlerSpritePresent(battlerId))
+ if (!battlerSprite->inUse || !IsBattlerSpritePresent(battler))
{
shadowSprite->callback = SpriteCB_SetInvisible;
return;
}
if (gAnimScriptActive || battlerSprite->invisible)
invisible = TRUE;
- else if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE
- && gEnemyMonElevation[gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies] == 0)
+ else if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE
+ && gEnemyMonElevation[gBattleSpritesDataPtr->battlerData[battler].transformSpecies] == 0)
invisible = TRUE;
- if (gBattleSpritesDataPtr->battlerData[battlerId].behindSubstitute)
+ if (gBattleSpritesDataPtr->battlerData[battler].behindSubstitute)
invisible = TRUE;
shadowSprite->x = battlerSprite->x;
@@ -1220,24 +1228,24 @@ void SpriteCB_SetInvisible(struct Sprite *sprite)
sprite->invisible = TRUE;
}
-void SetBattlerShadowSpriteCallback(u8 battlerId, u16 species)
+void SetBattlerShadowSpriteCallback(u8 battler, u16 species)
{
// The player's shadow is never seen.
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
return;
- if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE)
- species = gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies;
+ if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE)
+ species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies;
if (gEnemyMonElevation[species] != 0)
- gSprites[gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId].callback = SpriteCB_EnemyShadow;
+ gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_EnemyShadow;
else
- gSprites[gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId].callback = SpriteCB_SetInvisible;
+ gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_SetInvisible;
}
-void HideBattlerShadowSprite(u8 battlerId)
+void HideBattlerShadowSprite(u8 battler)
{
- gSprites[gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId].callback = SpriteCB_SetInvisible;
+ gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_SetInvisible;
}
// Color the background tiles surrounding the action selection and move windows
@@ -1264,12 +1272,12 @@ void FillAroundBattleWindows(void)
}
}
-void ClearTemporarySpeciesSpriteData(u8 battlerId, bool8 dontClearSubstitute)
+void ClearTemporarySpeciesSpriteData(u8 battler, bool8 dontClearSubstitute)
{
- gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies = SPECIES_NONE;
- gBattleMonForms[battlerId] = 0;
+ gBattleSpritesDataPtr->battlerData[battler].transformSpecies = SPECIES_NONE;
+ gBattleMonForms[battler] = 0;
if (!dontClearSubstitute)
- ClearBehindSubstituteBit(battlerId);
+ ClearBehindSubstituteBit(battler);
}
void AllocateMonSpritesGfx(void)
diff --git a/src/battle_interface.c b/src/battle_interface.c
index a417be4a72..4262ceeb93 100644
--- a/src/battle_interface.c
+++ b/src/battle_interface.c
@@ -866,7 +866,7 @@ static void UNUSED Debug_DrawNumberPair(s16 number1, s16 number2, u16 *dest)
#define hBar_HealthBoxSpriteId data[5]
#define hBar_Data6 data[6]
-u8 CreateBattlerHealthboxSprites(u8 battlerId)
+u8 CreateBattlerHealthboxSprites(u8 battler)
{
s16 data6 = 0;
u8 healthboxLeftSpriteId, healthboxRightSpriteId;
@@ -875,7 +875,7 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId)
if (!IsDoubleBattle())
{
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
{
healthboxLeftSpriteId = CreateSprite(&sHealthboxPlayerSpriteTemplates[0], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxPlayerSpriteTemplates[0], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
@@ -901,10 +901,10 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId)
}
else
{
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
{
- healthboxLeftSpriteId = CreateSprite(&sHealthboxPlayerSpriteTemplates[GetBattlerPosition(battlerId) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
- healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxPlayerSpriteTemplates[GetBattlerPosition(battlerId) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
+ healthboxLeftSpriteId = CreateSprite(&sHealthboxPlayerSpriteTemplates[GetBattlerPosition(battler) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
+ healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxPlayerSpriteTemplates[GetBattlerPosition(battler) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
gSprites[healthboxLeftSpriteId].oam.affineParam = healthboxRightSpriteId;
@@ -916,8 +916,8 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId)
}
else
{
- healthboxLeftSpriteId = CreateSprite(&sHealthboxOpponentSpriteTemplates[GetBattlerPosition(battlerId) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
- healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxOpponentSpriteTemplates[GetBattlerPosition(battlerId) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
+ healthboxLeftSpriteId = CreateSprite(&sHealthboxOpponentSpriteTemplates[GetBattlerPosition(battler) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
+ healthboxRightSpriteId = CreateSpriteAtEnd(&sHealthboxOpponentSpriteTemplates[GetBattlerPosition(battler) / 2], DISPLAY_WIDTH, DISPLAY_HEIGHT, 1);
gSprites[healthboxLeftSpriteId].oam.affineParam = healthboxRightSpriteId;
@@ -929,16 +929,16 @@ u8 CreateBattlerHealthboxSprites(u8 battlerId)
}
}
- healthbarSpriteId = CreateSpriteAtEnd(&sHealthbarSpriteTemplates[gBattlerPositions[battlerId]], 140, 60, 0);
+ healthbarSpriteId = CreateSpriteAtEnd(&sHealthbarSpriteTemplates[gBattlerPositions[battler]], 140, 60, 0);
healthBarSpritePtr = &gSprites[healthbarSpriteId];
- SetSubspriteTables(healthBarSpritePtr, &sHealthBar_SubspriteTables[GetBattlerSide(battlerId)]);
+ SetSubspriteTables(healthBarSpritePtr, &sHealthBar_SubspriteTables[GetBattlerSide(battler)]);
healthBarSpritePtr->subspriteMode = SUBSPRITES_IGNORE_PRIORITY;
healthBarSpritePtr->oam.priority = 1;
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_1), (void *)(OBJ_VRAM0 + healthBarSpritePtr->oam.tileNum * TILE_SIZE_4BPP), 64);
gSprites[healthboxLeftSpriteId].hMain_HealthBarSpriteId = healthbarSpriteId;
- gSprites[healthboxLeftSpriteId].hMain_Battler = battlerId;
+ gSprites[healthboxLeftSpriteId].hMain_Battler = battler;
gSprites[healthboxLeftSpriteId].invisible = TRUE;
gSprites[healthboxRightSpriteId].invisible = TRUE;
@@ -1012,13 +1012,13 @@ static void SpriteCB_HealthBoxOther(struct Sprite *sprite)
sprite->y2 = gSprites[healthboxMainSpriteId].y2;
}
-void SetBattleBarStruct(u8 battlerId, u8 healthboxSpriteId, s32 maxVal, s32 oldVal, s32 receivedValue)
+void SetBattleBarStruct(u8 battler, u8 healthboxSpriteId, s32 maxVal, s32 oldVal, s32 receivedValue)
{
- gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId = healthboxSpriteId;
- gBattleSpritesDataPtr->battleBars[battlerId].maxValue = maxVal;
- gBattleSpritesDataPtr->battleBars[battlerId].oldValue = oldVal;
- gBattleSpritesDataPtr->battleBars[battlerId].receivedValue = receivedValue;
- gBattleSpritesDataPtr->battleBars[battlerId].currValue = -32768;
+ gBattleSpritesDataPtr->battleBars[battler].healthboxSpriteId = healthboxSpriteId;
+ gBattleSpritesDataPtr->battleBars[battler].maxValue = maxVal;
+ gBattleSpritesDataPtr->battleBars[battler].oldValue = oldVal;
+ gBattleSpritesDataPtr->battleBars[battler].receivedValue = receivedValue;
+ gBattleSpritesDataPtr->battleBars[battler].currValue = -32768;
}
void SetHealthboxSpriteInvisible(u8 healthboxSpriteId)
@@ -1251,12 +1251,12 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8
}
else
{
- u8 battlerId;
+ u8 battler;
memcpy(text, sEmptyWhiteText_TransparentHighlight, sizeof(sEmptyWhiteText_TransparentHighlight));
- battlerId = gSprites[healthboxSpriteId].hMain_Battler;
+ battler = gSprites[healthboxSpriteId].hMain_Battler;
- if (gBattleSpritesDataPtr->battlerData[battlerId].hpNumbersNoBars) // don't print text if only bars are visible
+ if (gBattleSpritesDataPtr->battlerData[battler].hpNumbersNoBars) // don't print text if only bars are visible
{
u8 var = 4;
u8 r7;
@@ -1297,7 +1297,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8
}
else
{
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) // Impossible to reach part, because the battlerId is from the opponent's side.
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER) // Impossible to reach part, because the battler is from the opponent's side.
{
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_FRAME_END),
(void *)(OBJ_VRAM0) + ((gSprites[healthboxSpriteId].oam.tileNum + 52) * TILE_SIZE_4BPP),
@@ -1447,7 +1447,7 @@ void SwapHpBarsWithHpText(void)
#define tIsBattleStart data[10]
#define tBlend data[15]
-u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, bool8 skipPlayer, bool8 isBattleStart)
+u8 CreatePartyStatusSummarySprites(u8 battler, struct HpAndStatus *partyInfo, bool8 skipPlayer, bool8 isBattleStart)
{
bool8 isOpponent;
s16 bar_X, bar_Y, bar_pos2_X, bar_data0;
@@ -1456,9 +1456,9 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo,
u8 ballIconSpritesIds[PARTY_SIZE];
u8 taskId;
- if (!skipPlayer || GetBattlerPosition(battlerId) != B_POSITION_OPPONENT_RIGHT)
+ if (!skipPlayer || GetBattlerPosition(battler) != B_POSITION_OPPONENT_RIGHT)
{
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
{
isOpponent = FALSE;
bar_X = 136, bar_Y = 96;
@@ -1537,7 +1537,7 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo,
gSprites[ballIconSpritesIds[i]].data[2] = isOpponent;
}
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
{
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
{
@@ -1650,7 +1650,7 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo,
}
taskId = CreateTask(TaskDummy, 5);
- gTasks[taskId].tBattler = battlerId;
+ gTasks[taskId].tBattler = battler;
gTasks[taskId].tSummaryBarSpriteId = summaryBarSpriteId;
for (i = 0; i < PARTY_SIZE; i++)
@@ -1673,12 +1673,12 @@ void Task_HidePartyStatusSummary(u8 taskId)
u8 ballIconSpriteIds[PARTY_SIZE];
bool8 isBattleStart;
u8 summaryBarSpriteId;
- u8 battlerId;
+ u8 battler;
s32 i;
isBattleStart = gTasks[taskId].tIsBattleStart;
summaryBarSpriteId = gTasks[taskId].tSummaryBarSpriteId;
- battlerId = gTasks[taskId].tBattler;
+ battler = gTasks[taskId].tBattler;
for (i = 0; i < PARTY_SIZE; i++)
ballIconSpriteIds[i] = gTasks[taskId].tBallIconSpriteId(i);
@@ -1697,7 +1697,7 @@ void Task_HidePartyStatusSummary(u8 taskId)
{
for (i = 0; i < PARTY_SIZE; i++)
{
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
{
gSprites[ballIconSpriteIds[PARTY_SIZE - 1 - i]].data[1] = 7 * i;
gSprites[ballIconSpriteIds[PARTY_SIZE - 1 - i]].data[3] = 0;
@@ -1742,7 +1742,7 @@ static void Task_HidePartyStatusSummary_BattleStart_2(u8 taskId)
u8 ballIconSpriteIds[PARTY_SIZE];
s32 i;
- u8 battlerId = gTasks[taskId].tBattler;
+ u8 battler = gTasks[taskId].tBattler;
if (--gTasks[taskId].tBlend == -1)
{
u8 summaryBarSpriteId = gTasks[taskId].tSummaryBarSpriteId;
@@ -1769,7 +1769,7 @@ static void Task_HidePartyStatusSummary_BattleStart_2(u8 taskId)
}
else if (gTasks[taskId].tBlend == -3)
{
- gBattleSpritesDataPtr->healthBoxesData[battlerId].partyStatusSummaryShown = 0;
+ gBattleSpritesDataPtr->healthBoxesData[battler].partyStatusSummaryShown = 0;
SetGpuReg(REG_OFFSET_BLDCNT, 0);
SetGpuReg(REG_OFFSET_BLDALPHA, 0);
DestroyTask(taskId);
@@ -1780,7 +1780,7 @@ static void Task_HidePartyStatusSummary_DuringBattle(u8 taskId)
{
u8 ballIconSpriteIds[PARTY_SIZE];
s32 i;
- u8 battlerId = gTasks[taskId].tBattler;
+ u8 battler = gTasks[taskId].tBattler;
if (--gTasks[taskId].tBlend >= 0)
{
@@ -1801,7 +1801,7 @@ static void Task_HidePartyStatusSummary_DuringBattle(u8 taskId)
}
else if (gTasks[taskId].tBlend == -3)
{
- gBattleSpritesDataPtr->healthBoxesData[battlerId].partyStatusSummaryShown = 0;
+ gBattleSpritesDataPtr->healthBoxesData[battler].partyStatusSummaryShown = 0;
SetGpuReg(REG_OFFSET_BLDCNT, 0);
SetGpuReg(REG_OFFSET_BLDALPHA, 0);
DestroyTask(taskId);
@@ -1969,17 +1969,17 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon)
static void TryAddPokeballIconToHealthbox(u8 healthboxSpriteId, bool8 noStatus)
{
- u8 battlerId, healthBarSpriteId;
+ u8 battler, healthBarSpriteId;
if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL)
return;
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
return;
- battlerId = gSprites[healthboxSpriteId].hMain_Battler;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ battler = gSprites[healthboxSpriteId].hMain_Battler;
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
return;
- if (!GetSetPokedexFlag(SpeciesToNationalPokedexNum(GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES)), FLAG_GET_CAUGHT))
+ if (!GetSetPokedexFlag(SpeciesToNationalPokedexNum(GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES)), FLAG_GET_CAUGHT))
return;
healthBarSpriteId = gSprites[healthboxSpriteId].hMain_HealthBarSpriteId;
@@ -1993,17 +1993,17 @@ static void TryAddPokeballIconToHealthbox(u8 healthboxSpriteId, bool8 noStatus)
static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
{
s32 i;
- u8 battlerId, healthBarSpriteId;
+ u8 battler, healthBarSpriteId;
u32 status, pltAdder;
const u8 *statusGfxPtr;
s16 tileNumAdder;
u8 statusPalId;
- battlerId = gSprites[healthboxSpriteId].hMain_Battler;
+ battler = gSprites[healthboxSpriteId].hMain_Battler;
healthBarSpriteId = gSprites[healthboxSpriteId].hMain_HealthBarSpriteId;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
{
- status = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_STATUS);
+ status = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_STATUS);
if (!IsDoubleBattle())
tileNumAdder = 0x1A;
else
@@ -2011,33 +2011,33 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
}
else
{
- status = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_STATUS);
+ status = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_STATUS);
tileNumAdder = 0x11;
}
if (status & STATUS1_SLEEP)
{
- statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_SLP_BATTLER0, battlerId));
+ statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_SLP_BATTLER0, battler));
statusPalId = PAL_STATUS_SLP;
}
else if (status & STATUS1_PSN_ANY)
{
- statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_PSN_BATTLER0, battlerId));
+ statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_PSN_BATTLER0, battler));
statusPalId = PAL_STATUS_PSN;
}
else if (status & STATUS1_BURN)
{
- statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_BRN_BATTLER0, battlerId));
+ statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_BRN_BATTLER0, battler));
statusPalId = PAL_STATUS_BRN;
}
else if (status & STATUS1_FREEZE)
{
- statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_FRZ_BATTLER0, battlerId));
+ statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_FRZ_BATTLER0, battler));
statusPalId = PAL_STATUS_FRZ;
}
else if (status & STATUS1_PARALYSIS)
{
- statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_PRZ_BATTLER0, battlerId));
+ statusGfxPtr = GetHealthboxElementGfxPtr(GetStatusIconForBattlerId(HEALTHBOX_GFX_STATUS_PRZ_BATTLER0, battler));
statusPalId = PAL_STATUS_PAR;
}
else
@@ -2047,7 +2047,7 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
for (i = 0; i < 3; i++)
CpuCopy32(statusGfxPtr, (void *)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder + i) * TILE_SIZE_4BPP), 32);
- if (!gBattleSpritesDataPtr->battlerData[battlerId].hpNumbersNoBars)
+ if (!gBattleSpritesDataPtr->battlerData[battler].hpNumbersNoBars)
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_1), (void *)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 64);
TryAddPokeballIconToHealthbox(healthboxSpriteId, TRUE);
@@ -2055,14 +2055,14 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
}
pltAdder = PLTT_ID(gSprites[healthboxSpriteId].oam.paletteNum);
- pltAdder += battlerId + 12;
+ pltAdder += battler + 12;
FillPalette(sStatusIconColors[statusPalId], OBJ_PLTT_OFFSET + pltAdder, PLTT_SIZEOF(1));
CpuCopy16(&gPlttBufferUnfaded[OBJ_PLTT_OFFSET + pltAdder], (u16 *)OBJ_PLTT + pltAdder, PLTT_SIZEOF(1));
CpuCopy32(statusGfxPtr, (void *)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder) * TILE_SIZE_4BPP), 96);
- if (IsDoubleBattle() == TRUE || GetBattlerSide(battlerId) == B_SIDE_OPPONENT)
+ if (IsDoubleBattle() == TRUE || GetBattlerSide(battler) == B_SIDE_OPPONENT)
{
- if (!gBattleSpritesDataPtr->battlerData[battlerId].hpNumbersNoBars)
+ if (!gBattleSpritesDataPtr->battlerData[battler].hpNumbersNoBars)
{
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_0), (void *)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 32);
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_65), (void *)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 1) * TILE_SIZE_4BPP), 32);
@@ -2071,58 +2071,58 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
TryAddPokeballIconToHealthbox(healthboxSpriteId, FALSE);
}
-static u8 GetStatusIconForBattlerId(u8 statusElementId, u8 battlerId)
+static u8 GetStatusIconForBattlerId(u8 statusElementId, u8 battler)
{
u8 ret = statusElementId;
switch (statusElementId)
{
case HEALTHBOX_GFX_STATUS_PSN_BATTLER0:
- if (battlerId == 0)
+ if (battler == 0)
ret = HEALTHBOX_GFX_STATUS_PSN_BATTLER0;
- else if (battlerId == 1)
+ else if (battler == 1)
ret = HEALTHBOX_GFX_STATUS_PSN_BATTLER1;
- else if (battlerId == 2)
+ else if (battler == 2)
ret = HEALTHBOX_GFX_STATUS_PSN_BATTLER2;
else
ret = HEALTHBOX_GFX_STATUS_PSN_BATTLER3;
break;
case HEALTHBOX_GFX_STATUS_PRZ_BATTLER0:
- if (battlerId == 0)
+ if (battler == 0)
ret = HEALTHBOX_GFX_STATUS_PRZ_BATTLER0;
- else if (battlerId == 1)
+ else if (battler == 1)
ret = HEALTHBOX_GFX_STATUS_PRZ_BATTLER1;
- else if (battlerId == 2)
+ else if (battler == 2)
ret = HEALTHBOX_GFX_STATUS_PRZ_BATTLER2;
else
ret = HEALTHBOX_GFX_STATUS_PRZ_BATTLER3;
break;
case HEALTHBOX_GFX_STATUS_SLP_BATTLER0:
- if (battlerId == 0)
+ if (battler == 0)
ret = HEALTHBOX_GFX_STATUS_SLP_BATTLER0;
- else if (battlerId == 1)
+ else if (battler == 1)
ret = HEALTHBOX_GFX_STATUS_SLP_BATTLER1;
- else if (battlerId == 2)
+ else if (battler == 2)
ret = HEALTHBOX_GFX_STATUS_SLP_BATTLER2;
else
ret = HEALTHBOX_GFX_STATUS_SLP_BATTLER3;
break;
case HEALTHBOX_GFX_STATUS_FRZ_BATTLER0:
- if (battlerId == 0)
+ if (battler == 0)
ret = HEALTHBOX_GFX_STATUS_FRZ_BATTLER0;
- else if (battlerId == 1)
+ else if (battler == 1)
ret = HEALTHBOX_GFX_STATUS_FRZ_BATTLER1;
- else if (battlerId == 2)
+ else if (battler == 2)
ret = HEALTHBOX_GFX_STATUS_FRZ_BATTLER2;
else
ret = HEALTHBOX_GFX_STATUS_FRZ_BATTLER3;
break;
case HEALTHBOX_GFX_STATUS_BRN_BATTLER0:
- if (battlerId == 0)
+ if (battler == 0)
ret = HEALTHBOX_GFX_STATUS_BRN_BATTLER0;
- else if (battlerId == 1)
+ else if (battler == 1)
ret = HEALTHBOX_GFX_STATUS_BRN_BATTLER1;
- else if (battlerId == 2)
+ else if (battler == 2)
ret = HEALTHBOX_GFX_STATUS_BRN_BATTLER2;
else
ret = HEALTHBOX_GFX_STATUS_BRN_BATTLER3;
@@ -2163,10 +2163,10 @@ static void UpdateLeftNoOfBallsTextOnHealthbox(u8 healthboxSpriteId)
void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elementId)
{
s32 maxHp, currHp;
- u8 battlerId = gSprites[healthboxSpriteId].hMain_Battler;
+ u8 battler = gSprites[healthboxSpriteId].hMain_Battler;
if (elementId == HEALTHBOX_ALL && !IsDoubleBattle())
- GetBattlerSide(battlerId); // Pointless function call.
+ GetBattlerSide(battler); // Pointless function call.
if (GetBattlerSide(gSprites[healthboxSpriteId].hMain_Battler) == B_SIDE_PLAYER)
{
@@ -2183,8 +2183,8 @@ void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elem
LoadBattleBarGfx(0);
maxHp = GetMonData(mon, MON_DATA_MAX_HP);
currHp = GetMonData(mon, MON_DATA_HP);
- SetBattleBarStruct(battlerId, healthboxSpriteId, maxHp, currHp, 0);
- MoveBattleBar(battlerId, healthboxSpriteId, HEALTH_BAR, 0);
+ SetBattleBarStruct(battler, healthboxSpriteId, maxHp, currHp, 0);
+ MoveBattleBar(battler, healthboxSpriteId, HEALTH_BAR, 0);
}
isDoubles = IsDoubleBattle();
if (!isDoubles && (elementId == HEALTHBOX_EXP_BAR || elementId == HEALTHBOX_ALL))
@@ -2201,8 +2201,8 @@ void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elem
currLevelExp = gExperienceTables[gSpeciesInfo[species].growthRate][level];
currExpBarValue = exp - currLevelExp;
maxExpBarValue = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1] - currLevelExp;
- SetBattleBarStruct(battlerId, healthboxSpriteId, maxExpBarValue, currExpBarValue, isDoubles);
- MoveBattleBar(battlerId, healthboxSpriteId, EXP_BAR, 0);
+ SetBattleBarStruct(battler, healthboxSpriteId, maxExpBarValue, currExpBarValue, isDoubles);
+ MoveBattleBar(battler, healthboxSpriteId, EXP_BAR, 0);
}
if (elementId == HEALTHBOX_NICK || elementId == HEALTHBOX_ALL)
UpdateNickInHealthbox(healthboxSpriteId, mon);
@@ -2222,8 +2222,8 @@ void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elem
LoadBattleBarGfx(0);
maxHp = GetMonData(mon, MON_DATA_MAX_HP);
currHp = GetMonData(mon, MON_DATA_HP);
- SetBattleBarStruct(battlerId, healthboxSpriteId, maxHp, currHp, 0);
- MoveBattleBar(battlerId, healthboxSpriteId, HEALTH_BAR, 0);
+ SetBattleBarStruct(battler, healthboxSpriteId, maxHp, currHp, 0);
+ MoveBattleBar(battler, healthboxSpriteId, HEALTH_BAR, 0);
}
if (elementId == HEALTHBOX_NICK || elementId == HEALTHBOX_ALL)
UpdateNickInHealthbox(healthboxSpriteId, mon);
@@ -2235,44 +2235,44 @@ void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elem
#define B_EXPBAR_PIXELS 64
#define B_HEALTHBAR_PIXELS 48
-s32 MoveBattleBar(u8 battlerId, u8 healthboxSpriteId, u8 whichBar, u8 unused)
+s32 MoveBattleBar(u8 battler, u8 healthboxSpriteId, u8 whichBar, u8 unused)
{
s32 currentBarValue;
if (whichBar == HEALTH_BAR) // health bar
{
- currentBarValue = CalcNewBarValue(gBattleSpritesDataPtr->battleBars[battlerId].maxValue,
- gBattleSpritesDataPtr->battleBars[battlerId].oldValue,
- gBattleSpritesDataPtr->battleBars[battlerId].receivedValue,
- &gBattleSpritesDataPtr->battleBars[battlerId].currValue,
+ currentBarValue = CalcNewBarValue(gBattleSpritesDataPtr->battleBars[battler].maxValue,
+ gBattleSpritesDataPtr->battleBars[battler].oldValue,
+ gBattleSpritesDataPtr->battleBars[battler].receivedValue,
+ &gBattleSpritesDataPtr->battleBars[battler].currValue,
B_HEALTHBAR_PIXELS / 8, 1);
}
else // exp bar
{
- u16 expFraction = GetScaledExpFraction(gBattleSpritesDataPtr->battleBars[battlerId].oldValue,
- gBattleSpritesDataPtr->battleBars[battlerId].receivedValue,
- gBattleSpritesDataPtr->battleBars[battlerId].maxValue, 8);
+ u16 expFraction = GetScaledExpFraction(gBattleSpritesDataPtr->battleBars[battler].oldValue,
+ gBattleSpritesDataPtr->battleBars[battler].receivedValue,
+ gBattleSpritesDataPtr->battleBars[battler].maxValue, 8);
if (expFraction == 0)
expFraction = 1;
- expFraction = abs(gBattleSpritesDataPtr->battleBars[battlerId].receivedValue / expFraction);
+ expFraction = abs(gBattleSpritesDataPtr->battleBars[battler].receivedValue / expFraction);
- currentBarValue = CalcNewBarValue(gBattleSpritesDataPtr->battleBars[battlerId].maxValue,
- gBattleSpritesDataPtr->battleBars[battlerId].oldValue,
- gBattleSpritesDataPtr->battleBars[battlerId].receivedValue,
- &gBattleSpritesDataPtr->battleBars[battlerId].currValue,
+ currentBarValue = CalcNewBarValue(gBattleSpritesDataPtr->battleBars[battler].maxValue,
+ gBattleSpritesDataPtr->battleBars[battler].oldValue,
+ gBattleSpritesDataPtr->battleBars[battler].receivedValue,
+ &gBattleSpritesDataPtr->battleBars[battler].currValue,
B_EXPBAR_PIXELS / 8, expFraction);
}
- if (whichBar == EXP_BAR || (whichBar == HEALTH_BAR && !gBattleSpritesDataPtr->battlerData[battlerId].hpNumbersNoBars))
- MoveBattleBarGraphically(battlerId, whichBar);
+ if (whichBar == EXP_BAR || (whichBar == HEALTH_BAR && !gBattleSpritesDataPtr->battlerData[battler].hpNumbersNoBars))
+ MoveBattleBarGraphically(battler, whichBar);
if (currentBarValue == -1)
- gBattleSpritesDataPtr->battleBars[battlerId].currValue = 0;
+ gBattleSpritesDataPtr->battleBars[battler].currValue = 0;
return currentBarValue;
}
-static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar)
+static void MoveBattleBarGraphically(u8 battler, u8 whichBar)
{
u8 array[8];
u8 filledPixelsCount, level;
@@ -2282,10 +2282,10 @@ static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar)
switch (whichBar)
{
case HEALTH_BAR:
- filledPixelsCount = CalcBarFilledPixels(gBattleSpritesDataPtr->battleBars[battlerId].maxValue,
- gBattleSpritesDataPtr->battleBars[battlerId].oldValue,
- gBattleSpritesDataPtr->battleBars[battlerId].receivedValue,
- &gBattleSpritesDataPtr->battleBars[battlerId].currValue,
+ filledPixelsCount = CalcBarFilledPixels(gBattleSpritesDataPtr->battleBars[battler].maxValue,
+ gBattleSpritesDataPtr->battleBars[battler].oldValue,
+ gBattleSpritesDataPtr->battleBars[battler].receivedValue,
+ &gBattleSpritesDataPtr->battleBars[battler].currValue,
array, B_HEALTHBAR_PIXELS / 8);
if (filledPixelsCount > (B_HEALTHBAR_PIXELS * 50 / 100)) // more than 50 % hp
@@ -2297,7 +2297,7 @@ static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar)
for (i = 0; i < 6; i++)
{
- u8 healthbarSpriteId = gSprites[gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId].hMain_HealthBarSpriteId;
+ u8 healthbarSpriteId = gSprites[gBattleSpritesDataPtr->battleBars[battler].healthboxSpriteId].hMain_HealthBarSpriteId;
if (i < 2)
CpuCopy32(GetHealthboxElementGfxPtr(barElementId) + array[i] * 32,
(void *)(OBJ_VRAM0 + (gSprites[healthbarSpriteId].oam.tileNum + 2 + i) * TILE_SIZE_4BPP), 32);
@@ -2307,12 +2307,12 @@ static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar)
}
break;
case EXP_BAR:
- CalcBarFilledPixels(gBattleSpritesDataPtr->battleBars[battlerId].maxValue,
- gBattleSpritesDataPtr->battleBars[battlerId].oldValue,
- gBattleSpritesDataPtr->battleBars[battlerId].receivedValue,
- &gBattleSpritesDataPtr->battleBars[battlerId].currValue,
+ CalcBarFilledPixels(gBattleSpritesDataPtr->battleBars[battler].maxValue,
+ gBattleSpritesDataPtr->battleBars[battler].oldValue,
+ gBattleSpritesDataPtr->battleBars[battler].receivedValue,
+ &gBattleSpritesDataPtr->battleBars[battler].currValue,
array, B_EXPBAR_PIXELS / 8);
- level = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_LEVEL);
+ level = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_LEVEL);
if (level == MAX_LEVEL)
{
for (i = 0; i < 8; i++)
@@ -2322,10 +2322,10 @@ static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar)
{
if (i < 4)
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_12) + array[i] * 32,
- (void *)(OBJ_VRAM0 + (gSprites[gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId].oam.tileNum + 0x24 + i) * TILE_SIZE_4BPP), 32);
+ (void *)(OBJ_VRAM0 + (gSprites[gBattleSpritesDataPtr->battleBars[battler].healthboxSpriteId].oam.tileNum + 0x24 + i) * TILE_SIZE_4BPP), 32);
else
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_12) + array[i] * 32,
- (void *)(OBJ_VRAM0 + 0xB80 + (i + gSprites[gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32);
+ (void *)(OBJ_VRAM0 + 0xB80 + (i + gSprites[gBattleSpritesDataPtr->battleBars[battler].healthboxSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32);
}
break;
}
diff --git a/src/battle_intro.c b/src/battle_intro.c
index 5df697e3ae..0a0226c608 100644
--- a/src/battle_intro.c
+++ b/src/battle_intro.c
@@ -24,16 +24,16 @@ static void BattleIntroSlidePartner(u8);
static const TaskFunc sBattleIntroSlideFuncs[] =
{
- [BATTLE_TERRAIN_GRASS] = BattleIntroSlide1,
- [BATTLE_TERRAIN_LONG_GRASS] = BattleIntroSlide1,
- [BATTLE_TERRAIN_SAND] = BattleIntroSlide2,
- [BATTLE_TERRAIN_UNDERWATER] = BattleIntroSlide2,
- [BATTLE_TERRAIN_WATER] = BattleIntroSlide2,
- [BATTLE_TERRAIN_POND] = BattleIntroSlide1,
- [BATTLE_TERRAIN_MOUNTAIN] = BattleIntroSlide1,
- [BATTLE_TERRAIN_CAVE] = BattleIntroSlide1,
- [BATTLE_TERRAIN_BUILDING] = BattleIntroSlide3,
- [BATTLE_TERRAIN_PLAIN] = BattleIntroSlide3,
+ [BATTLE_ENVIRONMENT_GRASS] = BattleIntroSlide1,
+ [BATTLE_ENVIRONMENT_LONG_GRASS] = BattleIntroSlide1,
+ [BATTLE_ENVIRONMENT_SAND] = BattleIntroSlide2,
+ [BATTLE_ENVIRONMENT_UNDERWATER] = BattleIntroSlide2,
+ [BATTLE_ENVIRONMENT_WATER] = BattleIntroSlide2,
+ [BATTLE_ENVIRONMENT_POND] = BattleIntroSlide1,
+ [BATTLE_ENVIRONMENT_MOUNTAIN] = BattleIntroSlide1,
+ [BATTLE_ENVIRONMENT_CAVE] = BattleIntroSlide1,
+ [BATTLE_ENVIRONMENT_BUILDING] = BattleIntroSlide3,
+ [BATTLE_ENVIRONMENT_PLAIN] = BattleIntroSlide3,
};
void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value)
@@ -100,9 +100,9 @@ int GetAnimBgAttribute(u8 bgId, u8 attributeId)
}
#define tState data[0]
-#define tTerrain data[1]
+#define tEnvironment data[1]
-void HandleIntroSlide(u8 terrain)
+void HandleIntroSlide(u8 environment)
{
u8 taskId;
@@ -120,16 +120,16 @@ void HandleIntroSlide(u8 terrain)
}
else if ((gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON) && gGameVersion != VERSION_RUBY)
{
- terrain = BATTLE_TERRAIN_UNDERWATER;
+ environment = BATTLE_ENVIRONMENT_UNDERWATER;
taskId = CreateTask(BattleIntroSlide2, 0);
}
else
{
- taskId = CreateTask(sBattleIntroSlideFuncs[terrain], 0);
+ taskId = CreateTask(sBattleIntroSlideFuncs[environment], 0);
}
gTasks[taskId].tState = 0;
- gTasks[taskId].tTerrain = terrain;
+ gTasks[taskId].tEnvironment = environment;
gTasks[taskId].data[2] = 0;
gTasks[taskId].data[3] = 0;
gTasks[taskId].data[4] = 0;
@@ -194,14 +194,14 @@ static void BattleIntroSlide1(u8 taskId)
}
else
{
- if (gTasks[taskId].tTerrain == BATTLE_TERRAIN_LONG_GRASS)
+ if (gTasks[taskId].tEnvironment == BATTLE_ENVIRONMENT_LONG_GRASS)
{
- if (gBattle_BG1_Y != 0xFFB0)
+ if (gBattle_BG1_Y != (u16)(-80))
gBattle_BG1_Y -= 2;
}
else
{
- if (gBattle_BG1_Y != 0xFFC8)
+ if (gBattle_BG1_Y != (u16)(-56))
gBattle_BG1_Y -= 1;
}
}
@@ -240,18 +240,18 @@ static void BattleIntroSlide2(u8 taskId)
{
int i;
- switch (gTasks[taskId].tTerrain)
+ switch (gTasks[taskId].tEnvironment)
{
- case BATTLE_TERRAIN_SAND:
- case BATTLE_TERRAIN_WATER:
+ case BATTLE_ENVIRONMENT_SAND:
+ case BATTLE_ENVIRONMENT_WATER:
gBattle_BG1_X += 8;
break;
- case BATTLE_TERRAIN_UNDERWATER:
+ case BATTLE_ENVIRONMENT_UNDERWATER:
gBattle_BG1_X += 6;
break;
}
- if (gTasks[taskId].tTerrain == BATTLE_TERRAIN_WATER)
+ if (gTasks[taskId].tEnvironment == BATTLE_ENVIRONMENT_WATER)
{
gBattle_BG1_Y = Cos2(gTasks[taskId].data[6]) / 512 - 8;
if (gTasks[taskId].data[6] < 180)
diff --git a/src/battle_main.c b/src/battle_main.c
index c19089deb0..6aa9fc1902 100644
--- a/src/battle_main.c
+++ b/src/battle_main.c
@@ -144,10 +144,10 @@ EWRAM_DATA u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT] = {0};
// it will instead overflow into useful data.
EWRAM_DATA static u32 sFlickerArray[25] = {0};
EWRAM_DATA u32 gBattleTypeFlags = 0;
-EWRAM_DATA u8 gBattleTerrain = 0;
+EWRAM_DATA u8 gBattleEnvironment = 0;
EWRAM_DATA u32 gUnusedFirstBattleVar1 = 0; // Never read
EWRAM_DATA struct MultiPartnerMenuPokemon gMultiPartnerParty[MULTI_PARTY_SIZE] = {0};
-EWRAM_DATA static struct MultiPartnerMenuPokemon* sMultiPartnerPartyBuffer = NULL;
+EWRAM_DATA static struct MultiPartnerMenuPokemon *sMultiPartnerPartyBuffer = NULL;
EWRAM_DATA u8 *gBattleAnimBgTileBuffer = NULL;
EWRAM_DATA u8 *gBattleAnimBgTilemapBuffer = NULL;
EWRAM_DATA u8 gBattleBufferA[MAX_BATTLERS_COUNT][0x200] = {0};
@@ -237,15 +237,15 @@ EWRAM_DATA u16 gBattleMovePower = 0;
EWRAM_DATA u16 gMoveToLearn = 0;
EWRAM_DATA u8 gBattleMonForms[MAX_BATTLERS_COUNT] = {0};
-void (*gPreBattleCallback1)(void);
-void (*gBattleMainFunc)(void);
-struct BattleResults gBattleResults;
-u8 gLeveledUpInBattle;
-void (*gBattlerControllerFuncs[MAX_BATTLERS_COUNT])(void);
-u8 gHealthboxSpriteIds[MAX_BATTLERS_COUNT];
-u8 gMultiUsePlayerCursor;
-u8 gNumberOfMovesToChoose;
-u8 gBattleControllerData[MAX_BATTLERS_COUNT]; // Used by the battle controllers to store misc sprite/task IDs for each battler
+COMMON_DATA void (*gPreBattleCallback1)(void) = NULL;
+COMMON_DATA void (*gBattleMainFunc)(void) = NULL;
+COMMON_DATA struct BattleResults gBattleResults = {0};
+COMMON_DATA u8 gLeveledUpInBattle = 0;
+COMMON_DATA void (*gBattlerControllerFuncs[MAX_BATTLERS_COUNT])(void) = {0};
+COMMON_DATA u8 gHealthboxSpriteIds[MAX_BATTLERS_COUNT] = {0};
+COMMON_DATA u8 gMultiUsePlayerCursor = 0;
+COMMON_DATA u8 gNumberOfMovesToChoose = 0;
+COMMON_DATA u8 gBattleControllerData[MAX_BATTLERS_COUNT] = {0}; // Used by the battle controllers to store misc sprite/task IDs for each battler
static const struct ScanlineEffectParams sIntroScanlineParams16Bit =
{
@@ -533,7 +533,7 @@ const struct TrainerMoney gTrainerMoneyTable[] =
#include "data/text/abilities.h"
-static void (* const sTurnActionsFuncsTable[])(void) =
+static void (*const sTurnActionsFuncsTable[])(void) =
{
[B_ACTION_USE_MOVE] = HandleAction_UseMove,
[B_ACTION_USE_ITEM] = HandleAction_UseItem,
@@ -551,7 +551,7 @@ static void (* const sTurnActionsFuncsTable[])(void) =
[B_ACTION_NOTHING_FAINTED] = HandleAction_NothingIsFainted,
};
-static void (* const sEndTurnFuncsTable[])(void) =
+static void (*const sEndTurnFuncsTable[])(void) =
{
[0] = HandleEndTurn_ContinueBattle,
[B_OUTCOME_WON] = HandleEndTurn_BattleWon,
@@ -574,7 +574,7 @@ const u8 gStatusConditionString_IceJpn[] = _("こおり$$$$");
const u8 gStatusConditionString_ConfusionJpn[] = _("こんらん$$$");
const u8 gStatusConditionString_LoveJpn[] = _("メロメロ$$$");
-const u8 * const gStatusConditionStringsTable[][2] =
+const u8 *const gStatusConditionStringsTable[][2] =
{
{gStatusConditionString_PoisonJpn, gText_Poison},
{gStatusConditionString_SleepJpn, gText_Sleep},
@@ -669,9 +669,9 @@ static void CB2_InitBattleInternal(void)
gBattle_BG3_X = 0;
gBattle_BG3_Y = 0;
- gBattleTerrain = BattleSetup_GetTerrainId();
+ gBattleEnvironment = BattleSetup_GetEnvironmentId();
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED)
- gBattleTerrain = BATTLE_TERRAIN_BUILDING;
+ gBattleEnvironment = BATTLE_ENVIRONMENT_BUILDING;
InitBattleBgsVideo();
LoadBattleTextboxAndBackground();
@@ -839,7 +839,7 @@ static void SetAllPlayersBerryData(void)
{
s32 numPlayers;
struct BattleEnigmaBerry *src;
- u8 battlerId;
+ u8 battler;
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
{
@@ -851,17 +851,17 @@ static void SetAllPlayersBerryData(void)
for (i = 0; i < numPlayers; i++)
{
src = (struct BattleEnigmaBerry *)(gBlockRecvBuffer[i] + 2);
- battlerId = gLinkPlayers[i].id;
+ battler = gLinkPlayers[i].id;
for (j = 0; j < BERRY_NAME_LENGTH; j++)
- gEnigmaBerries[battlerId].name[j] = src->name[j];
- gEnigmaBerries[battlerId].name[j] = EOS;
+ gEnigmaBerries[battler].name[j] = src->name[j];
+ gEnigmaBerries[battler].name[j] = EOS;
for (j = 0; j < BERRY_ITEM_EFFECT_COUNT; j++)
- gEnigmaBerries[battlerId].itemEffect[j] = src->itemEffect[j];
+ gEnigmaBerries[battler].itemEffect[j] = src->itemEffect[j];
- gEnigmaBerries[battlerId].holdEffect = src->holdEffect;
- gEnigmaBerries[battlerId].holdEffectParam = src->holdEffectParam;
+ gEnigmaBerries[battler].holdEffect = src->holdEffect;
+ gEnigmaBerries[battler].holdEffectParam = src->holdEffectParam;
}
}
else
@@ -1654,7 +1654,9 @@ static void CB2_HandleStartMultiBattle(void)
gBattleCommunication[MULTIUSE_STATE]++;
}
else
+ {
break;
+ }
// fall through
case 3:
if (IsLinkTaskFinished())
@@ -3084,7 +3086,9 @@ static void BattleStartClearSetData(void)
gHitMarker |= HITMARKER_NO_ANIMATIONS;
}
else if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK)) && GetBattleSceneInRecordedBattle())
+ {
gHitMarker |= HITMARKER_NO_ANIMATIONS;
+ }
gBattleScripting.battleStyle = gSaveBlock2Ptr->optionsBattleStyle;
@@ -3343,8 +3347,8 @@ void FaintClearSetData(void)
gBattleResources->flags->flags[gActiveBattler] = 0;
- gBattleMons[gActiveBattler].type1 = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[0];
- gBattleMons[gActiveBattler].type2 = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[1];
+ gBattleMons[gActiveBattler].types[0] = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[0];
+ gBattleMons[gActiveBattler].types[1] = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[1];
ClearBattlerMoveHistory(gActiveBattler);
ClearBattlerAbilityHistory(gActiveBattler);
@@ -3356,7 +3360,7 @@ static void BattleIntroGetMonsData(void)
{
case 0:
gActiveBattler = gBattleCommunication[1];
- BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, 0);
+ BtlController_EmitGetMonData(B_COMM_TO_CONTROLLER, REQUEST_ALL_BATTLE, 0);
MarkBattlerForControllerExec(gActiveBattler);
gBattleCommunication[MULTIUSE_STATE]++;
break;
@@ -3378,7 +3382,7 @@ static void BattleIntroPrepareBackgroundSlide(void)
if (gBattleControllerExecFlags == 0)
{
gActiveBattler = GetBattlerAtPosition(0);
- BtlController_EmitIntroSlide(BUFFER_A, gBattleTerrain);
+ BtlController_EmitIntroSlide(B_COMM_TO_CONTROLLER, gBattleEnvironment);
MarkBattlerForControllerExec(gActiveBattler);
gBattleMainFunc = BattleIntroDrawTrainersOrMonsSprites;
gBattleCommunication[MULTIUSE_STATE] = 0;
@@ -3411,8 +3415,8 @@ static void BattleIntroDrawTrainersOrMonsSprites(void)
for (i = 0; i < sizeof(struct BattlePokemon); i++)
ptr[i] = gBattleBufferB[gActiveBattler][4 + i];
- gBattleMons[gActiveBattler].type1 = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[0];
- gBattleMons[gActiveBattler].type2 = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[1];
+ gBattleMons[gActiveBattler].types[0] = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[0];
+ gBattleMons[gActiveBattler].types[1] = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[1];
gBattleMons[gActiveBattler].ability = GetAbilityBySpecies(gBattleMons[gActiveBattler].species, gBattleMons[gActiveBattler].abilityNum);
hpOnSwitchout = &gBattleStruct->hpOnSwitchout[GetBattlerSide(gActiveBattler)];
*hpOnSwitchout = gBattleMons[gActiveBattler].hp;
@@ -3423,7 +3427,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void)
if (GetBattlerPosition(gActiveBattler) == B_POSITION_PLAYER_LEFT)
{
- BtlController_EmitDrawTrainerPic(BUFFER_A);
+ BtlController_EmitDrawTrainerPic(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
@@ -3431,7 +3435,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void)
{
if (GetBattlerPosition(gActiveBattler) == B_POSITION_OPPONENT_LEFT)
{
- BtlController_EmitDrawTrainerPic(BUFFER_A);
+ BtlController_EmitDrawTrainerPic(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
if (GetBattlerSide(gActiveBattler) == B_SIDE_OPPONENT
@@ -3456,7 +3460,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void)
{
HandleSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gActiveBattler].species), FLAG_SET_SEEN, gBattleMons[gActiveBattler].personality);
}
- BtlController_EmitLoadMonSprite(BUFFER_A);
+ BtlController_EmitLoadMonSprite(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
gBattleResults.lastOpponentSpecies = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES, NULL);
}
@@ -3467,14 +3471,14 @@ static void BattleIntroDrawTrainersOrMonsSprites(void)
if (GetBattlerPosition(gActiveBattler) == B_POSITION_PLAYER_RIGHT
|| GetBattlerPosition(gActiveBattler) == B_POSITION_OPPONENT_RIGHT)
{
- BtlController_EmitDrawTrainerPic(BUFFER_A);
+ BtlController_EmitDrawTrainerPic(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
}
if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS && GetBattlerPosition(gActiveBattler) == B_POSITION_OPPONENT_RIGHT)
{
- BtlController_EmitDrawTrainerPic(BUFFER_A);
+ BtlController_EmitDrawTrainerPic(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
@@ -3509,7 +3513,7 @@ static void BattleIntroDrawPartySummaryScreens(void)
}
}
gActiveBattler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
- BtlController_EmitDrawPartyStatusSummary(BUFFER_A, hpStatus, PARTY_SUMM_SKIP_DRAW_DELAY);
+ BtlController_EmitDrawPartyStatusSummary(B_COMM_TO_CONTROLLER, hpStatus, PARTY_SUMM_SKIP_DRAW_DELAY);
MarkBattlerForControllerExec(gActiveBattler);
for (i = 0; i < PARTY_SIZE; i++)
@@ -3527,7 +3531,7 @@ static void BattleIntroDrawPartySummaryScreens(void)
}
}
gActiveBattler = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT);
- BtlController_EmitDrawPartyStatusSummary(BUFFER_A, hpStatus, PARTY_SUMM_SKIP_DRAW_DELAY);
+ BtlController_EmitDrawPartyStatusSummary(B_COMM_TO_CONTROLLER, hpStatus, PARTY_SUMM_SKIP_DRAW_DELAY);
MarkBattlerForControllerExec(gActiveBattler);
gBattleMainFunc = BattleIntroPrintTrainerWantsToBattle;
@@ -3584,7 +3588,9 @@ static void BattleIntroPrintOpponentSendsOut(void)
return;
if (!(gBattleTypeFlags & BATTLE_TYPE_RECORDED))
+ {
position = B_POSITION_OPPONENT_LEFT;
+ }
else if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
{
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_IS_MASTER)
@@ -3593,7 +3599,9 @@ static void BattleIntroPrintOpponentSendsOut(void)
position = B_POSITION_PLAYER_LEFT;
}
else
+ {
position = B_POSITION_OPPONENT_LEFT;
+ }
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(position));
gBattleMainFunc = BattleIntroOpponent1SendsOutMonAnimation;
@@ -3604,7 +3612,9 @@ static void BattleIntroOpponent2SendsOutMonAnimation(void)
u32 position;
if (!(gBattleTypeFlags & BATTLE_TYPE_RECORDED))
+ {
position = B_POSITION_OPPONENT_RIGHT;
+ }
else if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
{
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_IS_MASTER)
@@ -3613,13 +3623,15 @@ static void BattleIntroOpponent2SendsOutMonAnimation(void)
position = B_POSITION_PLAYER_RIGHT;
}
else
+ {
position = B_POSITION_OPPONENT_RIGHT;
+ }
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; gActiveBattler++)
{
if (GetBattlerPosition(gActiveBattler) == position)
{
- BtlController_EmitIntroTrainerBallThrow(BUFFER_A);
+ BtlController_EmitIntroTrainerBallThrow(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -3641,10 +3653,14 @@ static void BattleIntroOpponent1SendsOutMonAnimation(void)
position = B_POSITION_PLAYER_LEFT;
}
else
+ {
position = B_POSITION_OPPONENT_LEFT;
+ }
}
else
+ {
position = B_POSITION_OPPONENT_LEFT;
+ }
if (gBattleControllerExecFlags)
return;
@@ -3653,7 +3669,7 @@ static void BattleIntroOpponent1SendsOutMonAnimation(void)
{
if (GetBattlerPosition(gActiveBattler) == position)
{
- BtlController_EmitIntroTrainerBallThrow(BUFFER_A);
+ BtlController_EmitIntroTrainerBallThrow(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
if (gBattleTypeFlags & (BATTLE_TYPE_MULTI | BATTLE_TYPE_TWO_OPPONENTS))
{
@@ -3699,7 +3715,9 @@ static void BattleIntroPrintPlayerSendsOut(void)
u8 position;
if (!(gBattleTypeFlags & BATTLE_TYPE_RECORDED))
+ {
position = B_POSITION_PLAYER_LEFT;
+ }
else if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
{
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_IS_MASTER)
@@ -3708,7 +3726,9 @@ static void BattleIntroPrintPlayerSendsOut(void)
position = B_POSITION_OPPONENT_LEFT;
}
else
+ {
position = B_POSITION_PLAYER_LEFT;
+ }
if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI))
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(position));
@@ -3722,7 +3742,9 @@ static void BattleIntroPlayer2SendsOutMonAnimation(void)
u32 position;
if (!(gBattleTypeFlags & BATTLE_TYPE_RECORDED))
+ {
position = B_POSITION_PLAYER_RIGHT;
+ }
else if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
{
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_IS_MASTER)
@@ -3731,13 +3753,15 @@ static void BattleIntroPlayer2SendsOutMonAnimation(void)
position = B_POSITION_OPPONENT_RIGHT;
}
else
+ {
position = B_POSITION_PLAYER_RIGHT;
+ }
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; gActiveBattler++)
{
if (GetBattlerPosition(gActiveBattler) == position)
{
- BtlController_EmitIntroTrainerBallThrow(BUFFER_A);
+ BtlController_EmitIntroTrainerBallThrow(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -3754,7 +3778,9 @@ static void BattleIntroPlayer1SendsOutMonAnimation(void)
u32 position;
if (!(gBattleTypeFlags & BATTLE_TYPE_RECORDED))
+ {
position = B_POSITION_PLAYER_LEFT;
+ }
else if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
{
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_IS_MASTER)
@@ -3763,7 +3789,9 @@ static void BattleIntroPlayer1SendsOutMonAnimation(void)
position = B_POSITION_OPPONENT_LEFT;
}
else
+ {
position = B_POSITION_PLAYER_LEFT;
+ }
if (gBattleControllerExecFlags)
return;
@@ -3772,7 +3800,7 @@ static void BattleIntroPlayer1SendsOutMonAnimation(void)
{
if (GetBattlerPosition(gActiveBattler) == position)
{
- BtlController_EmitIntroTrainerBallThrow(BUFFER_A);
+ BtlController_EmitIntroTrainerBallThrow(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
if (gBattleTypeFlags & (BATTLE_TYPE_MULTI))
{
@@ -3797,7 +3825,7 @@ static void UNUSED BattleIntroSwitchInPlayerMons(void)
{
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
{
- BtlController_EmitSwitchInAnim(BUFFER_A, gBattlerPartyIndexes[gActiveBattler], FALSE);
+ BtlController_EmitSwitchInAnim(B_COMM_TO_CONTROLLER, gBattlerPartyIndexes[gActiveBattler], FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -3999,7 +4027,7 @@ u8 IsRunningFromBattleImpossible(void)
if (gBattleMons[gActiveBattler].item == ITEM_ENIGMA_BERRY)
holdEffect = gEnigmaBerries[gActiveBattler].holdEffect;
else
- holdEffect = ItemId_GetHoldEffect(gBattleMons[gActiveBattler].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[gActiveBattler].item);
gPotentialItemEffectBattler = gActiveBattler;
@@ -4137,7 +4165,7 @@ static void HandleTurnActionSelectionState(void)
}
else
{
- BtlController_EmitChooseAction(BUFFER_A, gChosenActionByBattler[0], gBattleBufferB[0][1] | (gBattleBufferB[0][2] << 8));
+ BtlController_EmitChooseAction(B_COMM_TO_CONTROLLER, gChosenActionByBattler[0], gBattleBufferB[0][1] | (gBattleBufferB[0][2] << 8));
MarkBattlerForControllerExec(gActiveBattler);
gBattleCommunication[gActiveBattler]++;
}
@@ -4145,7 +4173,7 @@ static void HandleTurnActionSelectionState(void)
}
break;
case STATE_WAIT_ACTION_CHOSEN: // Try to perform an action.
- if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12))))
+ if (!IS_BATTLE_CONTROLLER_ACTIVE_OR_PENDING_SYNC_ANYWHERE(gActiveBattler))
{
RecordedBattle_SetBattlerAction(gActiveBattler, gBattleBufferB[gActiveBattler][1]);
gChosenActionByBattler[gActiveBattler] = gBattleBufferB[gActiveBattler][1];
@@ -4173,8 +4201,8 @@ static void HandleTurnActionSelectionState(void)
struct ChooseMoveStruct moveInfo;
moveInfo.species = gBattleMons[gActiveBattler].species;
- moveInfo.monType1 = gBattleMons[gActiveBattler].type1;
- moveInfo.monType2 = gBattleMons[gActiveBattler].type2;
+ moveInfo.monTypes[0] = gBattleMons[gActiveBattler].types[0];
+ moveInfo.monTypes[1] = gBattleMons[gActiveBattler].types[1];
for (i = 0; i < MAX_MON_MOVES; i++)
{
@@ -4186,7 +4214,7 @@ static void HandleTurnActionSelectionState(void)
i);
}
- BtlController_EmitChooseMove(BUFFER_A, (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) != 0, FALSE, &moveInfo);
+ BtlController_EmitChooseMove(B_COMM_TO_CONTROLLER, (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) != 0, FALSE, &moveInfo);
MarkBattlerForControllerExec(gActiveBattler);
}
break;
@@ -4205,7 +4233,7 @@ static void HandleTurnActionSelectionState(void)
}
else
{
- BtlController_EmitChooseItem(BUFFER_A, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChooseItem(B_COMM_TO_CONTROLLER, gBattleStruct->battlerPartyOrders[gActiveBattler]);
MarkBattlerForControllerExec(gActiveBattler);
}
break;
@@ -4215,7 +4243,7 @@ static void HandleTurnActionSelectionState(void)
|| gBattleTypeFlags & BATTLE_TYPE_ARENA
|| gStatuses3[gActiveBattler] & STATUS3_ROOTED)
{
- BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CANT_SWITCH, PARTY_SIZE, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChoosePokemon(B_COMM_TO_CONTROLLER, PARTY_ACTION_CANT_SWITCH, PARTY_SIZE, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
}
else if ((i = ABILITY_ON_OPPOSING_FIELD(gActiveBattler, ABILITY_SHADOW_TAG))
|| ((i = ABILITY_ON_OPPOSING_FIELD(gActiveBattler, ABILITY_ARENA_TRAP))
@@ -4224,16 +4252,16 @@ static void HandleTurnActionSelectionState(void)
|| ((i = AbilityBattleEffects(ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER, gActiveBattler, ABILITY_MAGNET_PULL, 0, 0))
&& IS_BATTLER_OF_TYPE(gActiveBattler, TYPE_STEEL)))
{
- BtlController_EmitChoosePokemon(BUFFER_A, ((i - 1) << 4) | PARTY_ACTION_ABILITY_PREVENTS, PARTY_SIZE, gLastUsedAbility, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChoosePokemon(B_COMM_TO_CONTROLLER, ((i - 1) << 4) | PARTY_ACTION_ABILITY_PREVENTS, PARTY_SIZE, gLastUsedAbility, gBattleStruct->battlerPartyOrders[gActiveBattler]);
}
else
{
if (gActiveBattler == 2 && gChosenActionByBattler[0] == B_ACTION_SWITCH)
- BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 0), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChoosePokemon(B_COMM_TO_CONTROLLER, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 0), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
else if (gActiveBattler == 3 && gChosenActionByBattler[1] == B_ACTION_SWITCH)
- BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 1), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChoosePokemon(B_COMM_TO_CONTROLLER, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 1), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
else
- BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, PARTY_SIZE, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChoosePokemon(B_COMM_TO_CONTROLLER, PARTY_ACTION_CHOOSE_MON, PARTY_SIZE, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
}
MarkBattlerForControllerExec(gActiveBattler);
break;
@@ -4248,7 +4276,7 @@ static void HandleTurnActionSelectionState(void)
}
break;
case B_ACTION_SAFARI_POKEBLOCK:
- BtlController_EmitChooseItem(BUFFER_A, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChooseItem(B_COMM_TO_CONTROLLER, gBattleStruct->battlerPartyOrders[gActiveBattler]);
MarkBattlerForControllerExec(gActiveBattler);
break;
case B_ACTION_CANCEL_PARTNER:
@@ -4258,7 +4286,7 @@ static void HandleTurnActionSelectionState(void)
if (gBattleMons[GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gActiveBattler)))].status2 & STATUS2_MULTIPLETURNS
|| gBattleMons[GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gActiveBattler)))].status2 & STATUS2_RECHARGE)
{
- BtlController_EmitEndBounceEffect(BUFFER_A);
+ BtlController_EmitEndBounceEffect(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
return;
}
@@ -4286,7 +4314,7 @@ static void HandleTurnActionSelectionState(void)
{
RecordedBattle_ClearBattlerAction(GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gActiveBattler))), 3);
}
- BtlController_EmitEndBounceEffect(BUFFER_A);
+ BtlController_EmitEndBounceEffect(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
return;
}
@@ -4324,7 +4352,7 @@ static void HandleTurnActionSelectionState(void)
}
break;
case STATE_WAIT_ACTION_CASE_CHOSEN:
- if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12))))
+ if (!IS_BATTLE_CONTROLLER_ACTIVE_OR_PENDING_SYNC_ANYWHERE(gActiveBattler))
{
switch (gChosenActionByBattler[gActiveBattler])
{
@@ -4428,11 +4456,7 @@ static void HandleTurnActionSelectionState(void)
}
break;
case STATE_WAIT_ACTION_CONFIRMED_STANDBY:
- if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler])
- | (0xF << 28)
- | (gBitTable[gActiveBattler] << 4)
- | (gBitTable[gActiveBattler] << 8)
- | (gBitTable[gActiveBattler] << 12))))
+ if (!IS_BATTLE_CONTROLLER_ACTIVE_OR_PENDING_SYNC_ANYWHERE(gActiveBattler))
{
if (AllAtActionConfirmed())
i = TRUE;
@@ -4443,18 +4467,18 @@ static void HandleTurnActionSelectionState(void)
|| (position & BIT_FLANK) != B_FLANK_LEFT
|| (*(&gBattleStruct->absentBattlerFlags) & gBitTable[GetBattlerAtPosition(BATTLE_PARTNER(position))]))
{
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_STOP_BOUNCE, i);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_STOP_BOUNCE, i);
}
else
{
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_STOP_BOUNCE_ONLY, i);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_STOP_BOUNCE_ONLY, i);
}
MarkBattlerForControllerExec(gActiveBattler);
gBattleCommunication[gActiveBattler]++;
}
break;
case STATE_WAIT_ACTION_CONFIRMED:
- if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12))))
+ if (!IS_BATTLE_CONTROLLER_ACTIVE_OR_PENDING_SYNC_ANYWHERE(gActiveBattler))
{
gBattleCommunication[ACTIONS_CONFIRMED_COUNT]++;
}
@@ -4468,7 +4492,7 @@ static void HandleTurnActionSelectionState(void)
{
gBattlerAttacker = gActiveBattler;
gBattlescriptCurrInstr = gSelectionBattleScripts[gActiveBattler];
- if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12))))
+ if (!IS_BATTLE_CONTROLLER_ACTIVE_OR_PENDING_SYNC_ANYWHERE(gActiveBattler))
{
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
}
@@ -4476,7 +4500,7 @@ static void HandleTurnActionSelectionState(void)
}
break;
case STATE_WAIT_SET_BEFORE_ACTION:
- if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12))))
+ if (!IS_BATTLE_CONTROLLER_ACTIVE_OR_PENDING_SYNC_ANYWHERE(gActiveBattler))
{
gBattleCommunication[gActiveBattler] = STATE_BEFORE_ACTION_CHOSEN;
}
@@ -4500,7 +4524,7 @@ static void HandleTurnActionSelectionState(void)
{
gBattlerAttacker = gActiveBattler;
gBattlescriptCurrInstr = gSelectionBattleScripts[gActiveBattler];
- if (!(gBattleControllerExecFlags & ((gBitTable[gActiveBattler]) | (0xF << 28) | (gBitTable[gActiveBattler] << 4) | (gBitTable[gActiveBattler] << 8) | (gBitTable[gActiveBattler] << 12))))
+ if (!IS_BATTLE_CONTROLLER_ACTIVE_OR_PENDING_SYNC_ANYWHERE(gActiveBattler))
{
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
}
@@ -4608,8 +4632,8 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
}
else
{
- holdEffect = ItemId_GetHoldEffect(gBattleMons[battler1].item);
- holdEffectParam = ItemId_GetHoldEffectParam(gBattleMons[battler1].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[battler1].item);
+ holdEffectParam = GetItemHoldEffectParam(gBattleMons[battler1].item);
}
// badge boost
@@ -4629,7 +4653,7 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
if (holdEffect == HOLD_EFFECT_QUICK_CLAW && gRandomTurnNumber < (0xFFFF * holdEffectParam) / 100)
speedBattler1 = UINT_MAX;
- // check second battlerId's speed
+ // check second battler's speed
speedBattler2 = (gBattleMons[battler2].speed * speedMultiplierBattler2)
* (gStatStageRatios[gBattleMons[battler2].statStages[STAT_SPEED]][0])
@@ -4642,8 +4666,8 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
}
else
{
- holdEffect = ItemId_GetHoldEffect(gBattleMons[battler2].item);
- holdEffectParam = ItemId_GetHoldEffectParam(gBattleMons[battler2].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[battler2].item);
+ holdEffectParam = GetItemHoldEffectParam(gBattleMons[battler2].item);
}
// badge boost
@@ -4678,7 +4702,9 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
moveBattler1 = gBattleMons[battler1].moves[*(gBattleStruct->chosenMovePositions + battler1)];
}
else
+ {
moveBattler1 = MOVE_NONE;
+ }
if (gChosenActionByBattler[battler2] == B_ACTION_USE_MOVE)
{
@@ -4688,7 +4714,9 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
moveBattler2 = gBattleMons[battler2].moves[*(gBattleStruct->chosenMovePositions + battler2)];
}
else
+ {
moveBattler2 = MOVE_NONE;
+ }
}
// both move priorities are different than 0
@@ -4705,7 +4733,9 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
// else battler1 has more speed
}
else if (gBattleMoves[moveBattler1].priority < gBattleMoves[moveBattler2].priority)
+ {
strikesFirst = 1; // battler2's move has greater priority
+ }
// else battler1's move has greater priority
}
@@ -4919,7 +4949,7 @@ static void RunTurnActionsFunctions(void)
}
else
{
- if (gBattleStruct->savedTurnActionNumber != gCurrentTurnActionNumber) // action turn has been done, clear hitmarker bits for another battlerId
+ if (gBattleStruct->savedTurnActionNumber != gCurrentTurnActionNumber) // action turn has been done, clear hitmarker bits for another battler
{
gHitMarker &= ~HITMARKER_NO_ATTACKSTRING;
gHitMarker &= ~HITMARKER_UNABLE_TO_USE_MOVE;
diff --git a/src/battle_message.c b/src/battle_message.c
index f005404ead..265859b02d 100644
--- a/src/battle_message.c
+++ b/src/battle_message.c
@@ -431,7 +431,7 @@ static const u8 sText_SpDef2[] = _("SP. DEF");
static const u8 sText_Accuracy[] = _("accuracy");
static const u8 sText_Evasiveness[] = _("evasiveness");
-const u8 * const gStatNamesTable[NUM_BATTLE_STATS] =
+const u8 *const gStatNamesTable[NUM_BATTLE_STATS] =
{
[STAT_HP] = sText_HP2,
[STAT_ATK] = sText_Attack2,
@@ -449,7 +449,7 @@ static const u8 sText_PokeblockWasTooSweet[] = _("was too sweet!");
static const u8 sText_PokeblockWasTooBitter[] = _("was too bitter!");
static const u8 sText_PokeblockWasTooSour[] = _("was too sour!");
-const u8 * const gPokeblockWasTooXStringTable[FLAVOR_COUNT] =
+const u8 *const gPokeblockWasTooXStringTable[FLAVOR_COUNT] =
{
[FLAVOR_SPICY] = sText_PokeblockWasTooSpicy,
[FLAVOR_DRY] = sText_PokeblockWasTooDry,
@@ -514,7 +514,7 @@ static const u8 sText_Trainer2WinText[];
static const u8 sText_TwoInGameTrainersDefeated[];
static const u8 sText_Trainer2LoseText[];
-const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT - BATTLESTRINGS_TABLE_START] =
+const u8 *const gBattleStringsTable[BATTLESTRINGS_COUNT - BATTLESTRINGS_TABLE_START] =
{
[STRINGID_TRAINER1LOSETEXT - BATTLESTRINGS_TABLE_START] = sText_Trainer1LoseText,
[STRINGID_PKMNGAINEDEXP - BATTLESTRINGS_TABLE_START] = sText_PkmnGainedEXP,
@@ -1293,7 +1293,7 @@ static const u8 sText_SpAtk[] = _("SP. ATK");
static const u8 sText_SpDef[] = _("SP. DEF");
// Unused
-static const u8 * const sStatNamesTable2[] =
+static const u8 *const sStatNamesTable2[] =
{
sText_HP, sText_SpAtk, sText_Attack,
sText_SpDef, sText_Defense, sText_Speed
@@ -1406,7 +1406,7 @@ static const u8 sText_LostToOpponentByReferee[] = _("{B_PLAYER_MON1_NAME} lost t
static const u8 sText_TiedOpponentByReferee[] = _("{B_PLAYER_MON1_NAME} tied the opponent\n{B_OPPONENT_MON1_NAME} in a REFEREE's decision!");
static const u8 sText_RefCommenceBattle[] = _("REFEREE: {B_PLAYER_MON1_NAME} VS {B_OPPONENT_MON1_NAME}!\nCommence battling!");
-const u8 * const gRefereeStringsTable[] =
+const u8 *const gRefereeStringsTable[] =
{
[B_MSG_REF_NOTHING_IS_DECIDED] = sText_RefIfNothingIsDecided,
[B_MSG_REF_THATS_IT] = sText_RefThatsIt,
@@ -2152,7 +2152,7 @@ void BufferStringBattle(u16 stringID)
}
}
break;
- case STRINGID_USEDMOVE: // pokemon used a move msg
+ case STRINGID_USEDMOVE: // Pokémon used a move msg
ChooseMoveUsedParticle(gBattleTextBuff1); // buff1 doesn't appear in the string, leftover from japanese move names
if (gBattleMsgDataPtr->currentMove >= MOVES_COUNT)
@@ -2283,8 +2283,8 @@ static const u8 *TryGetStatusString(u8 *src)
return NULL;
}
-#define HANDLE_NICKNAME_STRING_CASE(battlerId, monIndex) \
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER) \
+#define HANDLE_NICKNAME_STRING_CASE(battler, monIndex) \
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER) \
{ \
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) \
toCpy = sText_FoePkmnPrefix; \
@@ -2313,7 +2313,7 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst)
{
u32 dstID = 0; // if they used dstID, why not use srcID as well?
const u8 *toCpy = NULL;
- // This buffer may hold either the name of a trainer, pokemon, or item.
+ // This buffer may hold either the name of a trainer, Pokémon, or item.
u8 text[max(max(max(32, TRAINER_NAME_LENGTH + 1), POKEMON_NAME_LENGTH + 1), ITEM_NAME_LENGTH)];
u8 multiplayerId;
s32 i;
@@ -2350,7 +2350,9 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst)
toCpy = gStringVar2;
}
else
+ {
toCpy = gBattleTextBuff2;
+ }
break;
case B_TXT_BUFF3:
if (gBattleTextBuff3[0] == B_BUFF_PLACEHOLDER_BEGIN)
@@ -2359,7 +2361,9 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst)
toCpy = gStringVar3;
}
else
+ {
toCpy = gBattleTextBuff3;
+ }
break;
case B_TXT_COPY_VAR_1:
toCpy = gStringVar1;
@@ -2418,7 +2422,7 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst)
StringGet_Nickname(text);
toCpy = text;
break;
- case B_TXT_ATK_NAME_WITH_PREFIX_MON1: // attacker name with prefix, only battlerId 0/1
+ case B_TXT_ATK_NAME_WITH_PREFIX_MON1: // attacker name with prefix, only battler 0/1
HANDLE_NICKNAME_STRING_CASE(gBattlerAttacker,
gBattlerPartyIndexes[GetBattlerAtPosition(GET_BATTLER_SIDE(gBattlerAttacker))])
break;
@@ -2437,13 +2441,13 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst)
case B_TXT_DEF_NAME_WITH_PREFIX: // target name with prefix
HANDLE_NICKNAME_STRING_CASE(gBattlerTarget, gBattlerPartyIndexes[gBattlerTarget])
break;
- case B_TXT_EFF_NAME_WITH_PREFIX: // effect battlerId name with prefix
+ case B_TXT_EFF_NAME_WITH_PREFIX: // effect battler name with prefix
HANDLE_NICKNAME_STRING_CASE(gEffectBattler, gBattlerPartyIndexes[gEffectBattler])
break;
- case B_TXT_ACTIVE_NAME_WITH_PREFIX: // active battlerId name with prefix
+ case B_TXT_ACTIVE_NAME_WITH_PREFIX: // active battler name with prefix
HANDLE_NICKNAME_STRING_CASE(gActiveBattler, gBattlerPartyIndexes[gActiveBattler])
break;
- case B_TXT_SCR_ACTIVE_NAME_WITH_PREFIX: // scripting active battlerId name with prefix
+ case B_TXT_SCR_ACTIVE_NAME_WITH_PREFIX: // scripting active battler name with prefix
HANDLE_NICKNAME_STRING_CASE(gBattleScripting.battler, gBattlerPartyIndexes[gBattleScripting.battler])
break;
case B_TXT_CURRENT_MOVE: // current move name
@@ -2486,7 +2490,9 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst)
toCpy = text;
}
else
+ {
toCpy = sText_EnigmaBerry;
+ }
}
}
else
@@ -2513,7 +2519,7 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst)
case B_TXT_SCR_ACTIVE_ABILITY: // scripting active ability
toCpy = gAbilityNames[sBattlerAbilities[gBattleScripting.battler]];
break;
- case B_TXT_EFF_ABILITY: // effect battlerId ability
+ case B_TXT_EFF_ABILITY: // effect battler ability
toCpy = gAbilityNames[sBattlerAbilities[gEffectBattler]];
break;
case B_TXT_TRAINER1_CLASS: // trainer class name
diff --git a/src/battle_palace.c b/src/battle_palace.c
index a521acea2b..e7f8432d7e 100644
--- a/src/battle_palace.c
+++ b/src/battle_palace.c
@@ -26,7 +26,7 @@ static void SetRandomPalacePrize(void);
static void GivePalacePrize(void);
// Const rom data.
-static void (* const sBattlePalaceFunctions[])(void) =
+static void (*const sBattlePalaceFunctions[])(void) =
{
[BATTLE_PALACE_FUNC_INIT] = InitPalaceChallenge,
[BATTLE_PALACE_FUNC_GET_DATA] = GetPalaceData,
diff --git a/src/battle_pike.c b/src/battle_pike.c
index 7505621201..790c4088c1 100644
--- a/src/battle_pike.c
+++ b/src/battle_pike.c
@@ -476,7 +476,7 @@ static const u8 sFrontierBrainStreakAppearances[NUM_FRONTIER_FACILITIES][4] =
[FRONTIER_FACILITY_PYRAMID] = {21, 70, 35, 0},
};
-static void (* const sBattlePikeFunctions[])(void) =
+static void (*const sBattlePikeFunctions[])(void) =
{
[BATTLE_PIKE_FUNC_SET_ROOM_TYPE] = SetRoomType,
[BATTLE_PIKE_FUNC_GET_DATA] = GetBattlePikeData,
@@ -531,7 +531,7 @@ static const u8 sNumMonsToHealBeforePikeQueen[][3] =
{0, 1, 2},
};
-static bool8 (* const sStatusInflictionScreenFlashFuncs[])(struct Task *) =
+static bool8 (*const sStatusInflictionScreenFlashFuncs[])(struct Task *) =
{
StatusInflictionFadeOut, StatusInflictionFadeIn
};
@@ -1267,7 +1267,7 @@ static void TryHealMons(u8 healCount)
for (i = 0; i < FRONTIER_PARTY_SIZE; i++)
indices[i] = i;
- // Only 'healCount' number of pokemon will be healed.
+ // Only 'healCount' number of Pokémon will be healed.
// The order in which they're (attempted to be) healed is random,
// and determined by performing 10 random swaps to this index array.
for (k = 0; k < 10; k++)
diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c
index b4bb3cacca..d78cd38417 100644
--- a/src/battle_pyramid.c
+++ b/src/battle_pyramid.c
@@ -79,7 +79,7 @@ static void HidePyramidItem(void);
static void SetPyramidFacilityTrainers(void);
static void ShowPostBattleHintText(void);
static void UpdatePyramidWinStreak(void);
-static void GetInBattlePyramid(void);
+static void GetCurrentBattlePyramidLocation(void);
static void UpdatePyramidLightRadius(void);
static void ClearPyramidPartyHeldItems(void);
static void SetPyramidFloorPalette(void);
@@ -784,7 +784,7 @@ static const u8 sHintTextTypes[] =
HINT_EXIT_SHORT_REMAINING_ITEMS,
};
-static void (* const sBattlePyramidFunctions[])(void) =
+static void (*const sBattlePyramidFunctions[])(void) =
{
[BATTLE_PYRAMID_FUNC_INIT] = InitPyramidChallenge,
[BATTLE_PYRAMID_FUNC_GET_DATA] = GetBattlePyramidData,
@@ -798,7 +798,7 @@ static void (* const sBattlePyramidFunctions[])(void) =
[BATTLE_PYRAMID_FUNC_SET_TRAINERS] = SetPyramidFacilityTrainers,
[BATTLE_PYRAMID_FUNC_SHOW_HINT_TEXT] = ShowPostBattleHintText,
[BATTLE_PYRAMID_FUNC_UPDATE_STREAK] = UpdatePyramidWinStreak,
- [BATTLE_PYRAMID_FUNC_IS_IN] = GetInBattlePyramid,
+ [BATTLE_PYRAMID_FUNC_CURRENT_LOCATION] = GetCurrentBattlePyramidLocation,
[BATTLE_PYRAMID_FUNC_UPDATE_LIGHT] = UpdatePyramidLightRadius,
[BATTLE_PYRAMID_FUNC_CLEAR_HELD_ITEMS] = ClearPyramidPartyHeldItems,
[BATTLE_PYRAMID_FUNC_SET_FLOOR_PALETTE] = SetPyramidFloorPalette,
@@ -1023,7 +1023,7 @@ static void HidePyramidItem(void)
break;
}
i++;
- if (events[i].localId == 0)
+ if (events[i].localId == LOCALID_NONE)
break;
}
}
@@ -1113,9 +1113,9 @@ static void UpdatePyramidWinStreak(void)
gSaveBlock2Ptr->frontier.pyramidRecordStreaks[lvlMode] = gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode];
}
-static void GetInBattlePyramid(void)
+static void GetCurrentBattlePyramidLocation(void)
{
- gSpecialVar_Result = InBattlePyramid();
+ gSpecialVar_Result = CurrentBattlePyramidLocation();
}
static void UpdatePyramidLightRadius(void)
@@ -1419,14 +1419,14 @@ u8 GetPyramidRunMultiplier(void)
return sPyramidFloorTemplates[id].runMultiplier;
}
-u8 InBattlePyramid(void)
+u8 CurrentBattlePyramidLocation(void)
{
if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR)
- return 1;
+ return PYRAMID_LOCATION_FLOOR;
else if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP)
- return 2;
+ return PYRAMID_LOCATION_TOP;
else
- return FALSE;
+ return PYRAMID_LOCATION_NONE;
}
bool8 InBattlePyramid_(void)
@@ -1437,7 +1437,7 @@ bool8 InBattlePyramid_(void)
void PausePyramidChallenge(void)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
RestorePyramidPlayerParty();
gSaveBlock2Ptr->frontier.challengeStatus = CHALLENGE_STATUS_PAUSED;
@@ -1448,7 +1448,7 @@ void PausePyramidChallenge(void)
void SoftResetInBattlePyramid(void)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
DoSoftReset();
}
@@ -1857,7 +1857,7 @@ static bool8 TrySetPyramidObjectEventPositionAtCoords(u8 objType, u8 x, u8 y, u8
const struct MapHeader *mapHeader;
struct ObjectEventTemplate *floorEvents = gSaveBlock1Ptr->objectEventTemplates;
- mapHeader = Overworld_GetMapHeaderByGroupAndId(MAP_GROUP(BATTLE_PYRAMID_SQUARE01), floorLayoutOffsets[squareId] + MAP_NUM(BATTLE_PYRAMID_SQUARE01));
+ mapHeader = Overworld_GetMapHeaderByGroupAndId(MAP_GROUP(MAP_BATTLE_PYRAMID_SQUARE01), floorLayoutOffsets[squareId] + MAP_NUM(MAP_BATTLE_PYRAMID_SQUARE01));
for (i = 0; i < mapHeader->events->objectEventCount; i++)
{
if (mapHeader->events->objectEvents[i].x != x || mapHeader->events->objectEvents[i].y != y)
@@ -1934,7 +1934,7 @@ u8 GetNumBattlePyramidObjectEvents(void)
for (i = 0; i < OBJECT_EVENTS_COUNT; i++)
{
- if (events[i].localId == 0)
+ if (events[i].localId == LOCALID_NONE)
break;
}
diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c
index bf9a7704b1..e131508928 100644
--- a/src/battle_pyramid_bag.c
+++ b/src/battle_pyramid_bag.c
@@ -327,7 +327,7 @@ static const union AnimCmd sAnim_PyramidBag[] =
ANIMCMD_END,
};
-static const union AnimCmd * const sAnims_PyramidBag[] =
+static const union AnimCmd *const sAnims_PyramidBag[] =
{
sAnim_PyramidBag,
};
@@ -352,7 +352,7 @@ enum {
ANIM_BAG_SHAKE,
};
-static const union AffineAnimCmd * const sAffineAnims_PyramidBag[] =
+static const union AffineAnimCmd *const sAffineAnims_PyramidBag[] =
{
[ANIM_BAG_STILL] = sAffineAnim_PyramidBag_Still,
[ANIM_BAG_SHAKE] = sAffineAnim_PyramidBag_Shake,
@@ -620,7 +620,7 @@ static void SetBagItemsListTemplate(void)
static void CopyBagItemName(u8 *dst, u16 itemId)
{
- if (ItemId_GetPocket(itemId) == POCKET_BERRIES)
+ if (GetItemPocket(itemId) == POCKET_BERRIES)
{
ConvertIntToDecimalStringN(gStringVar1, ITEM_TO_BERRY(itemId), STR_CONV_MODE_LEADING_ZEROS, 2);
CopyItemName(itemId, gStringVar2);
@@ -681,7 +681,7 @@ static void PrintItemDescription(s32 listMenuId)
const u8 *desc;
if (listMenuId != LIST_CANCEL)
{
- desc = ItemId_GetDescription(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][listMenuId]);
+ desc = GetItemDescription(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][listMenuId]);
}
else
{
@@ -942,7 +942,7 @@ static void OpenContextMenu(u8 taskId)
gPyramidBagMenu->menuActionsCount = ARRAY_COUNT(sMenuActionIds_Field);
break;
case PYRAMIDBAG_LOC_BATTLE:
- if (ItemId_GetBattleUsage(gSpecialVar_ItemId))
+ if (GetItemBattleUsage(gSpecialVar_ItemId))
{
gPyramidBagMenu->menuActionIds = sMenuActionIds_Battle;
gPyramidBagMenu->menuActionsCount = ARRAY_COUNT(sMenuActionIds_Battle);
@@ -1085,7 +1085,7 @@ static void CloseMenuActionWindow(void)
static void BagAction_UseOnField(u8 taskId)
{
- u8 pocketId = ItemId_GetPocket(gSpecialVar_ItemId);
+ u8 pocketId = GetItemPocket(gSpecialVar_ItemId);
if (pocketId == POCKET_KEY_ITEMS
|| pocketId == POCKET_POKE_BALLS
@@ -1095,12 +1095,12 @@ static void BagAction_UseOnField(u8 taskId)
CloseMenuActionWindow();
DisplayItemMessageInBattlePyramid(taskId, gText_DadsAdvice, Task_CloseBattlePyramidBagMessage);
}
- else if (ItemId_GetFieldFunc(gSpecialVar_ItemId) != NULL)
+ else if (GetItemFieldFunc(gSpecialVar_ItemId) != NULL)
{
CloseMenuActionWindow();
FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0));
ScheduleBgCopyTilemapToVram(0);
- ItemId_GetFieldFunc(gSpecialVar_ItemId)(taskId);
+ GetItemFieldFunc(gSpecialVar_ItemId)(taskId);
}
}
@@ -1250,7 +1250,7 @@ static void BagAction_Give(u8 taskId)
{
DisplayItemMessageInBattlePyramid(taskId, gText_CantWriteMail, Task_WaitCloseErrorMessage);
}
- else if (!ItemId_GetImportance(gSpecialVar_ItemId))
+ else if (!GetItemImportance(gSpecialVar_ItemId))
{
gPyramidBagMenu->newScreenCallback = CB2_ChooseMonToGiveItem;
CloseBattlePyramidBag(taskId);
@@ -1291,7 +1291,7 @@ static void TryCloseBagToGiveItem(u8 taskId)
{
if (!IsWritingMailAllowed(gSpecialVar_ItemId))
DisplayItemMessageInBattlePyramid(taskId, gText_CantWriteMail, Task_WaitCloseErrorMessage);
- else if (!ItemId_GetImportance(gSpecialVar_ItemId))
+ else if (!GetItemImportance(gSpecialVar_ItemId))
CloseBattlePyramidBag(taskId);
else
ShowCantHoldMessage(taskId);
@@ -1299,10 +1299,10 @@ static void TryCloseBagToGiveItem(u8 taskId)
static void BagAction_UseInBattle(u8 taskId)
{
- if (ItemId_GetBattleFunc(gSpecialVar_ItemId) != NULL)
+ if (GetItemBattleFunc(gSpecialVar_ItemId) != NULL)
{
CloseMenuActionWindow();
- ItemId_GetBattleFunc(gSpecialVar_ItemId)(taskId);
+ GetItemBattleFunc(gSpecialVar_ItemId)(taskId);
}
}
@@ -1312,7 +1312,7 @@ static void Task_BeginItemSwap(u8 taskId)
tListPos = gPyramidBagMenuState.scrollPosition + gPyramidBagMenuState.cursorPosition;
gPyramidBagMenu->toSwapPos = tListPos;
- ListMenuSetUnkIndicatorsStructField(tListTaskId, 0x10, 1);
+ ListMenuSetTemplateField(tListTaskId, LISTFIELD_CURSORKIND, CURSOR_INVISIBLE);
CopyItemName(gSaveBlock2Ptr->frontier.pyramidBag.itemId[gSaveBlock2Ptr->frontier.lvlMode][tListPos], gStringVar1);
StringExpandPlaceholders(gStringVar4, gText_MoveVar1Where);
FillWindowPixelBuffer(WIN_INFO, PIXEL_FILL(0));
diff --git a/src/battle_records.c b/src/battle_records.c
index edc48d8202..0ea61b79b8 100644
--- a/src/battle_records.c
+++ b/src/battle_records.c
@@ -201,7 +201,7 @@ static void UpdateLinkBattleGameStats(s32 battleOutcome)
IncrementGameStat(stat);
}
-static void UpdateLinkBattleRecords(struct LinkBattleRecords *records, const u8 *name, u16 trainerId, s32 battleOutcome, u8 battlerId)
+static void UpdateLinkBattleRecords(struct LinkBattleRecords *records, const u8 *name, u16 trainerId, s32 battleOutcome, u8 battler)
{
s32 index;
@@ -214,7 +214,7 @@ static void UpdateLinkBattleRecords(struct LinkBattleRecords *records, const u8
ClearLinkBattleRecord(&records->entries[index]);
StringCopyN(records->entries[index].name, name, PLAYER_NAME_LENGTH);
records->entries[index].trainerId = trainerId;
- records->languages[index] = gLinkPlayers[battlerId].language;
+ records->languages[index] = gLinkPlayers[battler].language;
}
UpdateLinkBattleRecord(&records->entries[index], battleOutcome);
SortLinkBattleRecords(records);
@@ -225,48 +225,48 @@ void ClearPlayerLinkBattleRecords(void)
ClearLinkBattleRecords(gSaveBlock1Ptr->linkBattleRecords.entries);
}
-static void IncTrainerCardWins(s32 battlerId)
+static void IncTrainerCardWins(s32 battler)
{
- u16 *wins = &gTrainerCards[battlerId].linkBattleWins;
+ u16 *wins = &gTrainerCards[battler].linkBattleWins;
(*wins)++;
if (*wins > 9999)
*wins = 9999;
}
-static void IncTrainerCardLosses(s32 battlerId)
+static void IncTrainerCardLosses(s32 battler)
{
- u16 *losses = &gTrainerCards[battlerId].linkBattleLosses;
+ u16 *losses = &gTrainerCards[battler].linkBattleLosses;
(*losses)++;
if (*losses > 9999)
*losses = 9999;
}
-static void UpdateTrainerCardWinsLosses(s32 battlerId)
+static void UpdateTrainerCardWinsLosses(s32 battler)
{
switch (gBattleOutcome)
{
case B_OUTCOME_WON:
- IncTrainerCardWins(BATTLE_OPPOSITE(battlerId));
- IncTrainerCardLosses(battlerId);
+ IncTrainerCardWins(BATTLE_OPPOSITE(battler));
+ IncTrainerCardLosses(battler);
break;
case B_OUTCOME_LOST:
- IncTrainerCardLosses(BATTLE_OPPOSITE(battlerId));
- IncTrainerCardWins(battlerId);
+ IncTrainerCardLosses(BATTLE_OPPOSITE(battler));
+ IncTrainerCardWins(battler);
break;
}
}
-void UpdatePlayerLinkBattleRecords(s32 battlerId)
+void UpdatePlayerLinkBattleRecords(s32 battler)
{
if (InUnionRoom() != TRUE)
{
- UpdateTrainerCardWinsLosses(battlerId);
+ UpdateTrainerCardWinsLosses(battler);
UpdateLinkBattleRecords(
&gSaveBlock1Ptr->linkBattleRecords,
- gTrainerCards[battlerId].playerName,
- gTrainerCards[battlerId].trainerId,
+ gTrainerCards[battler].playerName,
+ gTrainerCards[battler].trainerId,
gBattleOutcome,
- battlerId);
+ battler);
}
}
diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c
index 96ae0e68a3..f69126cf72 100644
--- a/src/battle_script_commands.c
+++ b/src/battle_script_commands.c
@@ -63,7 +63,7 @@ extern const u8 *const gBattleScriptsForMoveEffects[];
static bool8 IsTwoTurnsMove(u16 move);
static void TrySetDestinyBondToHappen(void);
-static u8 AttacksThisTurn(u8 battlerId, u16 move); // Note: returns 1 if it's a charging turn, otherwise 2.
+static u8 AttacksThisTurn(u8 battler, u16 move); // Note: returns 1 if it's a charging turn, otherwise 2.
static void CheckWonderGuardAndLevitate(void);
static u8 ChangeStatBuffs(s8 statValue, u8 statId, u8, const u8 *BS_ptr);
static bool32 IsMonGettingExpSentOut(void);
@@ -280,7 +280,7 @@ static void Cmd_sethail(void);
static void Cmd_trymemento(void);
static void Cmd_setforcedtarget(void);
static void Cmd_setcharge(void);
-static void Cmd_callterrainattack(void);
+static void Cmd_callenvironmentattack(void);
static void Cmd_cureifburnedparalysedorpoisoned(void);
static void Cmd_settorment(void);
static void Cmd_jumpifnodamage(void);
@@ -311,7 +311,7 @@ static void Cmd_trycastformdatachange(void);
static void Cmd_settypebasedhalvers(void);
static void Cmd_setweatherballtype(void);
static void Cmd_tryrecycleitem(void);
-static void Cmd_settypetoterrain(void);
+static void Cmd_settypetoenvironment(void);
static void Cmd_pursuitdoubles(void);
static void Cmd_snatchsetbattlers(void);
static void Cmd_removelightscreenreflect(void);
@@ -326,7 +326,7 @@ static void Cmd_finishaction(void);
static void Cmd_finishturn(void);
static void Cmd_trainerslideout(void);
-void (* const gBattleScriptingCommandsTable[])(void) =
+void (*const gBattleScriptingCommandsTable[])(void) =
{
Cmd_attackcanceler, //0x0
Cmd_accuracycheck, //0x1
@@ -532,7 +532,7 @@ void (* const gBattleScriptingCommandsTable[])(void) =
Cmd_trymemento, //0xC9
Cmd_setforcedtarget, //0xCA
Cmd_setcharge, //0xCB
- Cmd_callterrainattack, //0xCC
+ Cmd_callenvironmentattack, //0xCC
Cmd_cureifburnedparalysedorpoisoned, //0xCD
Cmd_settorment, //0xCE
Cmd_jumpifnodamage, //0xCF
@@ -563,7 +563,7 @@ void (* const gBattleScriptingCommandsTable[])(void) =
Cmd_settypebasedhalvers, //0xE8
Cmd_setweatherballtype, //0xE9
Cmd_tryrecycleitem, //0xEA
- Cmd_settypetoterrain, //0xEB
+ Cmd_settypetoenvironment, //0xEB
Cmd_pursuitdoubles, //0xEC
Cmd_snatchsetbattlers, //0xED
Cmd_removelightscreenreflect, //0xEE
@@ -758,16 +758,16 @@ static const u8 sFlailHpScaleToPowerTable[] =
static const u16 sNaturePowerMoves[] =
{
- [BATTLE_TERRAIN_GRASS] = MOVE_STUN_SPORE,
- [BATTLE_TERRAIN_LONG_GRASS] = MOVE_RAZOR_LEAF,
- [BATTLE_TERRAIN_SAND] = MOVE_EARTHQUAKE,
- [BATTLE_TERRAIN_UNDERWATER] = MOVE_HYDRO_PUMP,
- [BATTLE_TERRAIN_WATER] = MOVE_SURF,
- [BATTLE_TERRAIN_POND] = MOVE_BUBBLE_BEAM,
- [BATTLE_TERRAIN_MOUNTAIN] = MOVE_ROCK_SLIDE,
- [BATTLE_TERRAIN_CAVE] = MOVE_SHADOW_BALL,
- [BATTLE_TERRAIN_BUILDING] = MOVE_SWIFT,
- [BATTLE_TERRAIN_PLAIN] = MOVE_SWIFT
+ [BATTLE_ENVIRONMENT_GRASS] = MOVE_STUN_SPORE,
+ [BATTLE_ENVIRONMENT_LONG_GRASS] = MOVE_RAZOR_LEAF,
+ [BATTLE_ENVIRONMENT_SAND] = MOVE_EARTHQUAKE,
+ [BATTLE_ENVIRONMENT_UNDERWATER] = MOVE_HYDRO_PUMP,
+ [BATTLE_ENVIRONMENT_WATER] = MOVE_SURF,
+ [BATTLE_ENVIRONMENT_POND] = MOVE_BUBBLE_BEAM,
+ [BATTLE_ENVIRONMENT_MOUNTAIN] = MOVE_ROCK_SLIDE,
+ [BATTLE_ENVIRONMENT_CAVE] = MOVE_SHADOW_BALL,
+ [BATTLE_ENVIRONMENT_BUILDING] = MOVE_SWIFT,
+ [BATTLE_ENVIRONMENT_PLAIN] = MOVE_SWIFT
};
// format: min. weight (hectograms), base power
@@ -823,18 +823,18 @@ static const u8 sPickupProbabilities[] =
30, 40, 50, 60, 70, 80, 90, 94, 98
};
-static const u8 sTerrainToType[] =
+static const u8 sEnvironmentToType[] =
{
- [BATTLE_TERRAIN_GRASS] = TYPE_GRASS,
- [BATTLE_TERRAIN_LONG_GRASS] = TYPE_GRASS,
- [BATTLE_TERRAIN_SAND] = TYPE_GROUND,
- [BATTLE_TERRAIN_UNDERWATER] = TYPE_WATER,
- [BATTLE_TERRAIN_WATER] = TYPE_WATER,
- [BATTLE_TERRAIN_POND] = TYPE_WATER,
- [BATTLE_TERRAIN_MOUNTAIN] = TYPE_ROCK,
- [BATTLE_TERRAIN_CAVE] = TYPE_ROCK,
- [BATTLE_TERRAIN_BUILDING] = TYPE_NORMAL,
- [BATTLE_TERRAIN_PLAIN] = TYPE_NORMAL,
+ [BATTLE_ENVIRONMENT_GRASS] = TYPE_GRASS,
+ [BATTLE_ENVIRONMENT_LONG_GRASS] = TYPE_GRASS,
+ [BATTLE_ENVIRONMENT_SAND] = TYPE_GROUND,
+ [BATTLE_ENVIRONMENT_UNDERWATER] = TYPE_WATER,
+ [BATTLE_ENVIRONMENT_WATER] = TYPE_WATER,
+ [BATTLE_ENVIRONMENT_POND] = TYPE_WATER,
+ [BATTLE_ENVIRONMENT_MOUNTAIN] = TYPE_ROCK,
+ [BATTLE_ENVIRONMENT_CAVE] = TYPE_ROCK,
+ [BATTLE_ENVIRONMENT_BUILDING] = TYPE_NORMAL,
+ [BATTLE_ENVIRONMENT_PLAIN] = TYPE_NORMAL,
};
// - ITEM_ULTRA_BALL skips Master Ball and ITEM_NONE
@@ -1163,8 +1163,8 @@ static void Cmd_accuracycheck(void)
}
else
{
- holdEffect = ItemId_GetHoldEffect(gBattleMons[gBattlerTarget].item);
- param = ItemId_GetHoldEffectParam(gBattleMons[gBattlerTarget].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[gBattlerTarget].item);
+ param = GetItemHoldEffectParam(gBattleMons[gBattlerTarget].item);
}
gPotentialItemEffectBattler = gBattlerTarget;
@@ -1239,7 +1239,7 @@ static void Cmd_ppreduce(void)
if (MOVE_IS_PERMANENT(gBattlerAttacker, gCurrMovePos))
{
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + gCurrMovePos, 0,
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_PPMOVE1_BATTLE + gCurrMovePos, 0,
sizeof(gBattleMons[gBattlerAttacker].pp[gCurrMovePos]),
&gBattleMons[gBattlerAttacker].pp[gCurrMovePos]);
MarkBattlerForControllerExec(gBattlerAttacker);
@@ -1260,7 +1260,7 @@ static void Cmd_critcalc(void)
if (item == ITEM_ENIGMA_BERRY)
holdEffect = gEnigmaBerries[gBattlerAttacker].holdEffect;
else
- holdEffect = ItemId_GetHoldEffect(item);
+ holdEffect = GetItemHoldEffect(item);
gPotentialItemEffectBattler = gBattlerAttacker;
@@ -1395,11 +1395,11 @@ static void Cmd_typecalc(void)
else if (TYPE_EFFECT_ATK_TYPE(i) == moveType)
{
// check type1
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type1)
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[0])
ModulateDmgByType(TYPE_EFFECT_MULTIPLIER(i));
// check type2
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type2 &&
- gBattleMons[gBattlerTarget].type1 != gBattleMons[gBattlerTarget].type2)
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[1] &&
+ gBattleMons[gBattlerTarget].types[0] != gBattleMons[gBattlerTarget].types[1])
ModulateDmgByType(TYPE_EFFECT_MULTIPLIER(i));
}
i += 3;
@@ -1454,14 +1454,14 @@ static void CheckWonderGuardAndLevitate(void)
if (TYPE_EFFECT_ATK_TYPE(i) == moveType)
{
// check no effect
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type1
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[0]
&& TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_NO_EFFECT)
{
gMoveResultFlags |= MOVE_RESULT_DOESNT_AFFECT_FOE;
gProtectStructs[gBattlerAttacker].targetNotAffected = 1;
}
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type2 &&
- gBattleMons[gBattlerTarget].type1 != gBattleMons[gBattlerTarget].type2 &&
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[1] &&
+ gBattleMons[gBattlerTarget].types[0] != gBattleMons[gBattlerTarget].types[1] &&
TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_NO_EFFECT)
{
gMoveResultFlags |= MOVE_RESULT_DOESNT_AFFECT_FOE;
@@ -1469,18 +1469,18 @@ static void CheckWonderGuardAndLevitate(void)
}
// check super effective
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type1 && TYPE_EFFECT_MULTIPLIER(i) == 20)
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[0] && TYPE_EFFECT_MULTIPLIER(i) == 20)
flags |= 1;
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type2
- && gBattleMons[gBattlerTarget].type1 != gBattleMons[gBattlerTarget].type2
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[1]
+ && gBattleMons[gBattlerTarget].types[0] != gBattleMons[gBattlerTarget].types[1]
&& TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_SUPER_EFFECTIVE)
flags |= 1;
// check not very effective
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type1 && TYPE_EFFECT_MULTIPLIER(i) == 5)
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[0] && TYPE_EFFECT_MULTIPLIER(i) == 5)
flags |= 2;
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type2
- && gBattleMons[gBattlerTarget].type1 != gBattleMons[gBattlerTarget].type2
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[1]
+ && gBattleMons[gBattlerTarget].types[0] != gBattleMons[gBattlerTarget].types[1]
&& TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_NOT_EFFECTIVE)
flags |= 2;
}
@@ -1570,11 +1570,11 @@ u8 TypeCalc(u16 move, u8 attacker, u8 defender)
else if (TYPE_EFFECT_ATK_TYPE(i) == moveType)
{
// check type1
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[defender].type1)
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[defender].types[0])
ModulateDmgByType2(TYPE_EFFECT_MULTIPLIER(i), move, &flags);
// check type2
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[defender].type2 &&
- gBattleMons[defender].type1 != gBattleMons[defender].type2)
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[defender].types[1] &&
+ gBattleMons[defender].types[0] != gBattleMons[defender].types[1])
ModulateDmgByType2(TYPE_EFFECT_MULTIPLIER(i), move, &flags);
}
i += 3;
@@ -1668,8 +1668,8 @@ static void Cmd_adjustnormaldamage(void)
}
else
{
- holdEffect = ItemId_GetHoldEffect(gBattleMons[gBattlerTarget].item);
- param = ItemId_GetHoldEffectParam(gBattleMons[gBattlerTarget].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[gBattlerTarget].item);
+ param = GetItemHoldEffectParam(gBattleMons[gBattlerTarget].item);
}
gPotentialItemEffectBattler = gBattlerTarget;
@@ -1711,8 +1711,8 @@ static void Cmd_adjustnormaldamage2(void)
}
else
{
- holdEffect = ItemId_GetHoldEffect(gBattleMons[gBattlerTarget].item);
- param = ItemId_GetHoldEffectParam(gBattleMons[gBattlerTarget].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[gBattlerTarget].item);
+ param = GetItemHoldEffectParam(gBattleMons[gBattlerTarget].item);
}
gPotentialItemEffectBattler = gBattlerTarget;
@@ -1769,7 +1769,9 @@ static void Cmd_attackanimation(void)
gActiveBattler = gBattlerAttacker;
if (gBattleMons[gBattlerTarget].status2 & STATUS2_SUBSTITUTE)
+ {
multihit = gMultiHitCounter;
+ }
else if (gMultiHitCounter != 0 && gMultiHitCounter != 1)
{
if (gBattleMons[gBattlerTarget].hp <= gBattleMoveDamage)
@@ -1778,9 +1780,11 @@ static void Cmd_attackanimation(void)
multihit = gMultiHitCounter;
}
else
+ {
multihit = gMultiHitCounter;
+ }
- BtlController_EmitMoveAnimation(BUFFER_A, gCurrentMove, gBattleScripting.animTurn, gBattleMovePower, gBattleMoveDamage, gBattleMons[gBattlerAttacker].friendship, &gDisableStructs[gBattlerAttacker], multihit);
+ BtlController_EmitMoveAnimation(B_COMM_TO_CONTROLLER, gCurrentMove, gBattleScripting.animTurn, gBattleMovePower, gBattleMoveDamage, gBattleMons[gBattlerAttacker].friendship, &gDisableStructs[gBattlerAttacker], multihit);
gBattleScripting.animTurn++;
gBattleScripting.animTargetsHit++;
MarkBattlerForControllerExec(gBattlerAttacker);
@@ -1825,7 +1829,7 @@ static void Cmd_healthbarupdate(void)
else
healthValue = maxPossibleDmgValue;
- BtlController_EmitHealthBarUpdate(BUFFER_A, healthValue);
+ BtlController_EmitHealthBarUpdate(B_COMM_TO_CONTROLLER, healthValue);
MarkBattlerForControllerExec(gActiveBattler);
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER && gBattleMoveDamage > 0)
@@ -1967,7 +1971,7 @@ static void Cmd_datahpupdate(void)
gHitMarker &= ~HITMARKER_PASSIVE_DAMAGE;
// Send updated HP
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_HP_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].hp), &gBattleMons[gActiveBattler].hp);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_HP_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].hp), &gBattleMons[gActiveBattler].hp);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -2005,11 +2009,11 @@ static void Cmd_effectivenesssound(void)
switch (gMoveResultFlags & (u8)(~MOVE_RESULT_MISSED))
{
case MOVE_RESULT_SUPER_EFFECTIVE:
- BtlController_EmitPlaySE(BUFFER_A, SE_SUPER_EFFECTIVE);
+ BtlController_EmitPlaySE(B_COMM_TO_CONTROLLER, SE_SUPER_EFFECTIVE);
MarkBattlerForControllerExec(gActiveBattler);
break;
case MOVE_RESULT_NOT_VERY_EFFECTIVE:
- BtlController_EmitPlaySE(BUFFER_A, SE_NOT_EFFECTIVE);
+ BtlController_EmitPlaySE(B_COMM_TO_CONTROLLER, SE_NOT_EFFECTIVE);
MarkBattlerForControllerExec(gActiveBattler);
break;
case MOVE_RESULT_DOESNT_AFFECT_FOE:
@@ -2022,17 +2026,17 @@ static void Cmd_effectivenesssound(void)
default:
if (gMoveResultFlags & MOVE_RESULT_SUPER_EFFECTIVE)
{
- BtlController_EmitPlaySE(BUFFER_A, SE_SUPER_EFFECTIVE);
+ BtlController_EmitPlaySE(B_COMM_TO_CONTROLLER, SE_SUPER_EFFECTIVE);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (gMoveResultFlags & MOVE_RESULT_NOT_VERY_EFFECTIVE)
{
- BtlController_EmitPlaySE(BUFFER_A, SE_NOT_EFFECTIVE);
+ BtlController_EmitPlaySE(B_COMM_TO_CONTROLLER, SE_NOT_EFFECTIVE);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (!(gMoveResultFlags & (MOVE_RESULT_DOESNT_AFFECT_FOE | MOVE_RESULT_FAILED)))
{
- BtlController_EmitPlaySE(BUFFER_A, SE_EFFECTIVE);
+ BtlController_EmitPlaySE(B_COMM_TO_CONTROLLER, SE_EFFECTIVE);
MarkBattlerForControllerExec(gActiveBattler);
}
break;
@@ -2145,7 +2149,7 @@ static void Cmd_printselectionstring(void)
{
gActiveBattler = gBattlerAttacker;
- BtlController_EmitPrintSelectionString(BUFFER_A, T2_READ_16(gBattlescriptCurrInstr + 1));
+ BtlController_EmitPrintSelectionString(B_COMM_TO_CONTROLLER, T2_READ_16(gBattlescriptCurrInstr + 1));
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 3;
@@ -2195,7 +2199,7 @@ static void Cmd_printselectionstringfromtable(void)
ptr += gBattleCommunication[MULTISTRING_CHOOSER];
gActiveBattler = gBattlerAttacker;
- BtlController_EmitPrintSelectionString(BUFFER_A, *ptr);
+ BtlController_EmitPrintSelectionString(B_COMM_TO_CONTROLLER, *ptr);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 5;
@@ -2203,12 +2207,12 @@ static void Cmd_printselectionstringfromtable(void)
}
}
-u8 GetBattlerTurnOrderNum(u8 battlerId)
+u8 GetBattlerTurnOrderNum(u8 battler)
{
s32 i;
for (i = 0; i < gBattlersCount; i++)
{
- if (gBattlerByTurnOrder[i] == battlerId)
+ if (gBattlerByTurnOrder[i] == battler)
break;
}
return i;
@@ -2235,7 +2239,7 @@ void SetMoveEffect(bool8 primary, u8 certain)
if (gBattleCommunication[MOVE_EFFECT_BYTE] & MOVE_EFFECT_AFFECTS_USER)
{
- gEffectBattler = gBattlerAttacker; // battlerId that effects get applied on
+ gEffectBattler = gBattlerAttacker; // battler that effects get applied on
gBattleCommunication[MOVE_EFFECT_BYTE] &= ~MOVE_EFFECT_AFFECTS_USER;
affectsUser = MOVE_EFFECT_AFFECTS_USER;
gBattleScripting.battler = gBattlerTarget; // theoretically the attacker
@@ -2246,11 +2250,11 @@ void SetMoveEffect(bool8 primary, u8 certain)
gBattleScripting.battler = gBattlerAttacker;
}
- if (gBattleMons[gEffectBattler].ability == ABILITY_SHIELD_DUST && !(gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ if (gBattleMons[gEffectBattler].ability == ABILITY_SHIELD_DUST && !(gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
&& !primary && gBattleCommunication[MOVE_EFFECT_BYTE] <= 9)
INCREMENT_RESET_RETURN
- if (gSideStatuses[GET_BATTLER_SIDE(gEffectBattler)] & SIDE_STATUS_SAFEGUARD && !(gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ if (gSideStatuses[GET_BATTLER_SIDE(gEffectBattler)] & SIDE_STATUS_SAFEGUARD && !(gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
&& !primary && gBattleCommunication[MOVE_EFFECT_BYTE] <= 7)
INCREMENT_RESET_RETURN
@@ -2276,7 +2280,9 @@ void SetMoveEffect(bool8 primary, u8 certain)
{}
}
else
+ {
gActiveBattler = gBattlersCount;
+ }
if (gBattleMons[gEffectBattler].status1)
break;
@@ -2300,10 +2306,10 @@ void SetMoveEffect(bool8 primary, u8 certain)
BattleScriptPush(gBattlescriptCurrInstr + 1);
gBattlescriptCurrInstr = BattleScript_PSNPrevention;
- if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ if (gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
{
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS;
- gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker &= ~HITMARKER_STATUS_ABILITY_EFFECT;
}
else
{
@@ -2312,7 +2318,7 @@ void SetMoveEffect(bool8 primary, u8 certain)
RESET_RETURN
}
if ((IS_BATTLER_OF_TYPE(gEffectBattler, TYPE_POISON) || IS_BATTLER_OF_TYPE(gEffectBattler, TYPE_STEEL))
- && (gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ && (gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
&& (primary == TRUE || certain == MOVE_EFFECT_CERTAIN))
{
BattleScriptPush(gBattlescriptCurrInstr + 1);
@@ -2341,10 +2347,10 @@ void SetMoveEffect(bool8 primary, u8 certain)
BattleScriptPush(gBattlescriptCurrInstr + 1);
gBattlescriptCurrInstr = BattleScript_BRNPrevention;
- if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ if (gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
{
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS;
- gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker &= ~HITMARKER_STATUS_ABILITY_EFFECT;
}
else
{
@@ -2353,7 +2359,7 @@ void SetMoveEffect(bool8 primary, u8 certain)
RESET_RETURN
}
if (IS_BATTLER_OF_TYPE(gEffectBattler, TYPE_FIRE)
- && (gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ && (gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
&& (primary == TRUE || certain == MOVE_EFFECT_CERTAIN))
{
BattleScriptPush(gBattlescriptCurrInstr + 1);
@@ -2397,10 +2403,10 @@ void SetMoveEffect(bool8 primary, u8 certain)
BattleScriptPush(gBattlescriptCurrInstr + 1);
gBattlescriptCurrInstr = BattleScript_PRLZPrevention;
- if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ if (gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
{
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS;
- gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker &= ~HITMARKER_STATUS_ABILITY_EFFECT;
}
else
{
@@ -2409,7 +2415,9 @@ void SetMoveEffect(bool8 primary, u8 certain)
RESET_RETURN
}
else
+ {
break;
+ }
}
if (gBattleMons[gEffectBattler].status1)
break;
@@ -2425,10 +2433,10 @@ void SetMoveEffect(bool8 primary, u8 certain)
BattleScriptPush(gBattlescriptCurrInstr + 1);
gBattlescriptCurrInstr = BattleScript_PSNPrevention;
- if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ if (gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
{
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABILITY_PREVENTS_ABILITY_STATUS;
- gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker &= ~HITMARKER_STATUS_ABILITY_EFFECT;
}
else
{
@@ -2437,7 +2445,7 @@ void SetMoveEffect(bool8 primary, u8 certain)
RESET_RETURN
}
if ((IS_BATTLER_OF_TYPE(gEffectBattler, TYPE_POISON) || IS_BATTLER_OF_TYPE(gEffectBattler, TYPE_STEEL))
- && (gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ && (gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
&& (primary == TRUE || certain == MOVE_EFFECT_CERTAIN))
{
BattleScriptPush(gBattlescriptCurrInstr + 1);
@@ -2477,13 +2485,13 @@ void SetMoveEffect(bool8 primary, u8 certain)
gBattlescriptCurrInstr = sMoveEffectBS_Ptrs[gBattleCommunication[MOVE_EFFECT_BYTE]];
gActiveBattler = gEffectBattler;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gEffectBattler].status1), &gBattleMons[gEffectBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gEffectBattler].status1), &gBattleMons[gEffectBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
- if (gHitMarker & HITMARKER_IGNORE_SAFEGUARD)
+ if (gHitMarker & HITMARKER_STATUS_ABILITY_EFFECT)
{
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_STATUSED_BY_ABILITY;
- gHitMarker &= ~HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker &= ~HITMARKER_STATUS_ABILITY_EFFECT;
}
else
{
@@ -2779,11 +2787,11 @@ void SetMoveEffect(bool8 primary, u8 certain)
gBattleMons[gBattlerTarget].item = ITEM_NONE;
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gLastUsedItem), &gLastUsedItem);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_HELDITEM_BATTLE, 0, sizeof(gLastUsedItem), &gLastUsedItem);
MarkBattlerForControllerExec(gBattlerAttacker);
gActiveBattler = gBattlerTarget;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].item), &gBattleMons[gBattlerTarget].item);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].item), &gBattleMons[gBattlerTarget].item);
MarkBattlerForControllerExec(gBattlerTarget);
BattleScriptPush(gBattlescriptCurrInstr + 1);
@@ -2821,7 +2829,7 @@ void SetMoveEffect(bool8 primary, u8 certain)
gBattleMons[gBattlerTarget].status1 &= ~STATUS1_PARALYSIS;
gActiveBattler = gBattlerTarget;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
BattleScriptPush(gBattlescriptCurrInstr + 1);
@@ -2976,18 +2984,18 @@ static void Cmd_tryfaintmon(void)
}
else
{
- u8 battlerId;
+ u8 battler;
if (gBattlescriptCurrInstr[1] == BS_ATTACKER)
{
gActiveBattler = gBattlerAttacker;
- battlerId = gBattlerTarget;
+ battler = gBattlerTarget;
BS_ptr = BattleScript_FaintAttacker;
}
else
{
gActiveBattler = gBattlerTarget;
- battlerId = gBattlerAttacker;
+ battler = gBattlerAttacker;
BS_ptr = BattleScript_FaintTarget;
}
if (!(gAbsentBattlerFlags & gBitTable[gActiveBattler])
@@ -3013,7 +3021,7 @@ static void Cmd_tryfaintmon(void)
{
gHitMarker &= ~HITMARKER_DESTINYBOND;
BattleScriptPush(gBattlescriptCurrInstr);
- gBattleMoveDamage = gBattleMons[battlerId].hp;
+ gBattleMoveDamage = gBattleMons[battler].hp;
gBattlescriptCurrInstr = BattleScript_DestinyBondTakesLife;
}
if ((gStatuses3[gBattlerTarget] & STATUS3_GRUDGE)
@@ -3028,7 +3036,7 @@ static void Cmd_tryfaintmon(void)
BattleScriptPush(gBattlescriptCurrInstr);
gBattlescriptCurrInstr = BattleScript_GrudgeTakesPp;
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSetMonData(BUFFER_A, moveIndex + REQUEST_PPMOVE1_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].pp[moveIndex]), &gBattleMons[gActiveBattler].pp[moveIndex]);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, moveIndex + REQUEST_PPMOVE1_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].pp[moveIndex]), &gBattleMons[gActiveBattler].pp[moveIndex]);
MarkBattlerForControllerExec(gActiveBattler);
PREPARE_MOVE_BUFFER(gBattleTextBuff1, gBattleMons[gBattlerAttacker].moves[moveIndex])
@@ -3046,7 +3054,7 @@ static void Cmd_dofaintanimation(void)
if (gBattleControllerExecFlags == 0)
{
gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- BtlController_EmitFaintAnimation(BUFFER_A);
+ BtlController_EmitFaintAnimation(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
}
@@ -3061,7 +3069,7 @@ static void Cmd_cleareffectsonfaint(void)
if (!(gBattleTypeFlags & BATTLE_TYPE_ARENA) || gBattleMons[gActiveBattler].hp == 0)
{
gBattleMons[gActiveBattler].status1 = 0;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
}
@@ -3072,11 +3080,11 @@ static void Cmd_cleareffectsonfaint(void)
static void Cmd_jumpifstatus(void)
{
- u8 battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
+ u8 battler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
u32 flags = T2_READ_32(gBattlescriptCurrInstr + 2);
const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6);
- if (gBattleMons[battlerId].status1 & flags && gBattleMons[battlerId].hp != 0)
+ if (gBattleMons[battler].status1 & flags && gBattleMons[battler].hp != 0)
gBattlescriptCurrInstr = jumpPtr;
else
gBattlescriptCurrInstr += 10;
@@ -3084,11 +3092,11 @@ static void Cmd_jumpifstatus(void)
static void Cmd_jumpifstatus2(void)
{
- u8 battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
+ u8 battler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
u32 flags = T2_READ_32(gBattlescriptCurrInstr + 2);
const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 6);
- if (gBattleMons[battlerId].status2 & flags && gBattleMons[battlerId].hp != 0)
+ if (gBattleMons[battler].status2 & flags && gBattleMons[battler].hp != 0)
gBattlescriptCurrInstr = jumpPtr;
else
gBattlescriptCurrInstr += 10;
@@ -3096,48 +3104,54 @@ static void Cmd_jumpifstatus2(void)
static void Cmd_jumpifability(void)
{
- u8 battlerId;
+ u8 battler;
u8 ability = gBattlescriptCurrInstr[2];
const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 3);
if (gBattlescriptCurrInstr[1] == BS_ATTACKER_SIDE)
{
- battlerId = AbilityBattleEffects(ABILITYEFFECT_CHECK_BATTLER_SIDE, gBattlerAttacker, ability, 0, 0);
- if (battlerId)
+ battler = AbilityBattleEffects(ABILITYEFFECT_CHECK_BATTLER_SIDE, gBattlerAttacker, ability, 0, 0);
+ if (battler)
{
gLastUsedAbility = ability;
gBattlescriptCurrInstr = jumpPtr;
- RecordAbilityBattle(battlerId - 1, gLastUsedAbility);
- gBattleScripting.battlerWithAbility = battlerId - 1;
+ RecordAbilityBattle(battler - 1, gLastUsedAbility);
+ gBattleScripting.battlerWithAbility = battler - 1;
}
else
+ {
gBattlescriptCurrInstr += 7;
+ }
}
else if (gBattlescriptCurrInstr[1] == BS_NOT_ATTACKER_SIDE)
{
- battlerId = AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, gBattlerAttacker, ability, 0, 0);
- if (battlerId)
+ battler = AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, gBattlerAttacker, ability, 0, 0);
+ if (battler)
{
gLastUsedAbility = ability;
gBattlescriptCurrInstr = jumpPtr;
- RecordAbilityBattle(battlerId - 1, gLastUsedAbility);
- gBattleScripting.battlerWithAbility = battlerId - 1;
+ RecordAbilityBattle(battler - 1, gLastUsedAbility);
+ gBattleScripting.battlerWithAbility = battler - 1;
}
else
+ {
gBattlescriptCurrInstr += 7;
+ }
}
else
{
- battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- if (gBattleMons[battlerId].ability == ability)
+ battler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
+ if (gBattleMons[battler].ability == ability)
{
gLastUsedAbility = ability;
gBattlescriptCurrInstr = jumpPtr;
- RecordAbilityBattle(battlerId, gLastUsedAbility);
- gBattleScripting.battlerWithAbility = battlerId;
+ RecordAbilityBattle(battler, gLastUsedAbility);
+ gBattleScripting.battlerWithAbility = battler;
}
else
+ {
gBattlescriptCurrInstr += 7;
+ }
}
}
@@ -3164,8 +3178,8 @@ static void Cmd_jumpifsideaffecting(void)
static void Cmd_jumpifstat(void)
{
u8 ret = 0;
- u8 battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- u8 value = gBattleMons[battlerId].statStages[gBattlescriptCurrInstr[3]];
+ u8 battler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
+ u8 value = gBattleMons[battler].statStages[gBattlescriptCurrInstr[3]];
switch (gBattlescriptCurrInstr[2])
{
@@ -3228,11 +3242,11 @@ static void Cmd_jumpifstatus3condition(void)
static void Cmd_jumpiftype(void)
{
- u8 battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
+ u8 battler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
u8 type = gBattlescriptCurrInstr[2];
const u8 *jumpPtr = T2_READ_PTR(gBattlescriptCurrInstr + 3);
- if (IS_BATTLER_OF_TYPE(battlerId, type))
+ if (IS_BATTLER_OF_TYPE(battler, type))
gBattlescriptCurrInstr = jumpPtr;
else
gBattlescriptCurrInstr += 7;
@@ -3287,7 +3301,7 @@ static void Cmd_getexp(void)
if (item == ITEM_ENIGMA_BERRY)
holdEffect = gSaveBlock1Ptr->enigmaBerry.holdEffect;
else
- holdEffect = ItemId_GetHoldEffect(item);
+ holdEffect = GetItemHoldEffect(item);
if (holdEffect == HOLD_EFFECT_EXP_SHARE)
viaExpShare++;
@@ -3326,7 +3340,7 @@ static void Cmd_getexp(void)
if (item == ITEM_ENIGMA_BERRY)
holdEffect = gSaveBlock1Ptr->enigmaBerry.holdEffect;
else
- holdEffect = ItemId_GetHoldEffect(item);
+ holdEffect = GetItemHoldEffect(item);
if (holdEffect != HOLD_EFFECT_EXP_SHARE && !(gBattleStruct->sentInPokes & 1))
{
@@ -3366,7 +3380,7 @@ static void Cmd_getexp(void)
if (IsTradedMon(&gPlayerParty[gBattleStruct->expGetterMonId]))
{
- // check if the pokemon doesn't belong to the player
+ // check if the Pokémon doesn't belong to the player
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && gBattleStruct->expGetterMonId >= 3)
{
i = STRINGID_EMPTYSTRING4;
@@ -3382,18 +3396,15 @@ static void Cmd_getexp(void)
i = STRINGID_EMPTYSTRING4;
}
- // get exp getter battlerId
+ // get exp getter battler
if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
{
if (gBattlerPartyIndexes[2] == gBattleStruct->expGetterMonId && !(gAbsentBattlerFlags & gBitTable[2]))
gBattleStruct->expGetterBattlerId = 2;
+ else if (!(gAbsentBattlerFlags & gBitTable[0]))
+ gBattleStruct->expGetterBattlerId = 0;
else
- {
- if (!(gAbsentBattlerFlags & gBitTable[0]))
- gBattleStruct->expGetterBattlerId = 0;
- else
- gBattleStruct->expGetterBattlerId = 2;
- }
+ gBattleStruct->expGetterBattlerId = 2;
}
else
{
@@ -3427,7 +3438,7 @@ static void Cmd_getexp(void)
gBattleResources->beforeLvlUp->stats[STAT_SPDEF] = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_SPDEF);
gActiveBattler = gBattleStruct->expGetterBattlerId;
- BtlController_EmitExpUpdate(BUFFER_A, gBattleStruct->expGetterMonId, gBattleMoveDamage);
+ BtlController_EmitExpUpdate(B_COMM_TO_CONTROLLER, gBattleStruct->expGetterMonId, gBattleMoveDamage);
MarkBattlerForControllerExec(gActiveBattler);
}
gBattleScripting.getexpState++;
@@ -3926,7 +3937,7 @@ static void Cmd_healthbar_update(void)
else
gActiveBattler = gBattlerAttacker;
- BtlController_EmitHealthBarUpdate(BUFFER_A, gBattleMoveDamage);
+ BtlController_EmitHealthBarUpdate(B_COMM_TO_CONTROLLER, gBattleMoveDamage);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
}
@@ -3969,9 +3980,9 @@ static void Cmd_call(void)
static void Cmd_jumpiftype2(void)
{
- u8 battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
+ u8 battler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- if (gBattlescriptCurrInstr[2] == gBattleMons[battlerId].type1 || gBattlescriptCurrInstr[2] == gBattleMons[battlerId].type2)
+ if (gBattlescriptCurrInstr[2] == gBattleMons[battler].types[0] || gBattlescriptCurrInstr[2] == gBattleMons[battler].types[1])
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 3);
else
gBattlescriptCurrInstr += 7;
@@ -4001,7 +4012,7 @@ static void Cmd_playanimation(void)
|| gBattlescriptCurrInstr[2] == B_ANIM_SNATCH_MOVE
|| gBattlescriptCurrInstr[2] == B_ANIM_SUBSTITUTE_FADE)
{
- BtlController_EmitBattleAnimation(BUFFER_A, gBattlescriptCurrInstr[2], *argumentPtr);
+ BtlController_EmitBattleAnimation(B_COMM_TO_CONTROLLER, gBattlescriptCurrInstr[2], *argumentPtr);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 7;
}
@@ -4015,7 +4026,7 @@ static void Cmd_playanimation(void)
|| gBattlescriptCurrInstr[2] == B_ANIM_SANDSTORM_CONTINUES
|| gBattlescriptCurrInstr[2] == B_ANIM_HAIL_CONTINUES)
{
- BtlController_EmitBattleAnimation(BUFFER_A, gBattlescriptCurrInstr[2], *argumentPtr);
+ BtlController_EmitBattleAnimation(B_COMM_TO_CONTROLLER, gBattlescriptCurrInstr[2], *argumentPtr);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 7;
}
@@ -4025,7 +4036,7 @@ static void Cmd_playanimation(void)
}
else
{
- BtlController_EmitBattleAnimation(BUFFER_A, gBattlescriptCurrInstr[2], *argumentPtr);
+ BtlController_EmitBattleAnimation(B_COMM_TO_CONTROLLER, gBattlescriptCurrInstr[2], *argumentPtr);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 7;
}
@@ -4045,7 +4056,7 @@ static void Cmd_playanimation_var(void)
|| *animationIdPtr == B_ANIM_SNATCH_MOVE
|| *animationIdPtr == B_ANIM_SUBSTITUTE_FADE)
{
- BtlController_EmitBattleAnimation(BUFFER_A, *animationIdPtr, *argumentPtr);
+ BtlController_EmitBattleAnimation(B_COMM_TO_CONTROLLER, *animationIdPtr, *argumentPtr);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 10;
}
@@ -4058,7 +4069,7 @@ static void Cmd_playanimation_var(void)
|| *animationIdPtr == B_ANIM_SANDSTORM_CONTINUES
|| *animationIdPtr == B_ANIM_HAIL_CONTINUES)
{
- BtlController_EmitBattleAnimation(BUFFER_A, *animationIdPtr, *argumentPtr);
+ BtlController_EmitBattleAnimation(B_COMM_TO_CONTROLLER, *animationIdPtr, *argumentPtr);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 10;
}
@@ -4068,7 +4079,7 @@ static void Cmd_playanimation_var(void)
}
else
{
- BtlController_EmitBattleAnimation(BUFFER_A, *animationIdPtr, *argumentPtr);
+ BtlController_EmitBattleAnimation(B_COMM_TO_CONTROLLER, *animationIdPtr, *argumentPtr);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 10;
}
@@ -4184,7 +4195,7 @@ static void Cmd_playstatchangeanimation(void)
}
else if (changeableStatsCount != 0 && !gBattleScripting.statAnimPlayed)
{
- BtlController_EmitBattleAnimation(BUFFER_A, B_ANIM_STATS_CHANGE, statAnimId);
+ BtlController_EmitBattleAnimation(B_COMM_TO_CONTROLLER, B_ANIM_STATS_CHANGE, statAnimId);
MarkBattlerForControllerExec(gActiveBattler);
if (gBattlescriptCurrInstr[3] & STAT_CHANGE_MULTIPLE_STATS && changeableStatsCount > 1)
gBattleScripting.statAnimPlayed = TRUE;
@@ -4217,7 +4228,7 @@ static void Cmd_moveend(void)
if (gBattleMons[gBattlerAttacker].item == ITEM_ENIGMA_BERRY)
holdEffectAtk = gEnigmaBerries[gBattlerAttacker].holdEffect;
else
- holdEffectAtk = ItemId_GetHoldEffect(gBattleMons[gBattlerAttacker].item);
+ holdEffectAtk = GetItemHoldEffect(gBattleMons[gBattlerAttacker].item);
choicedMoveAtk = &gBattleStruct->choicedMove[gBattlerAttacker];
GET_MOVE_TYPE(gCurrentMove, moveType);
@@ -4253,7 +4264,7 @@ static void Cmd_moveend(void)
{
gBattleMons[gBattlerTarget].status1 &= ~STATUS1_FREEZE;
gActiveBattler = gBattlerTarget;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].status1), &gBattleMons[gBattlerTarget].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].status1), &gBattleMons[gBattlerTarget].status1);
MarkBattlerForControllerExec(gActiveBattler);
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_DefrostedViaFireMove;
@@ -4332,7 +4343,7 @@ static void Cmd_moveend(void)
&& gHitMarker & HITMARKER_NO_ANIMATIONS)
{
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSpriteInvisibility(BUFFER_A, TRUE);
+ BtlController_EmitSpriteInvisibility(B_COMM_TO_CONTROLLER, TRUE);
MarkBattlerForControllerExec(gActiveBattler);
gBattleScripting.moveendState++;
return;
@@ -4345,7 +4356,7 @@ static void Cmd_moveend(void)
|| WasUnableToUseMove(gBattlerAttacker))
{
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSpriteInvisibility(BUFFER_A, FALSE);
+ BtlController_EmitSpriteInvisibility(B_COMM_TO_CONTROLLER, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
gStatuses3[gBattlerAttacker] &= ~STATUS3_SEMI_INVULNERABLE;
gSpecialStatuses[gBattlerAttacker].restoredBattlerSprite = 1;
@@ -4359,7 +4370,7 @@ static void Cmd_moveend(void)
&& !(gStatuses3[gBattlerTarget] & STATUS3_SEMI_INVULNERABLE))
{
gActiveBattler = gBattlerTarget;
- BtlController_EmitSpriteInvisibility(BUFFER_A, FALSE);
+ BtlController_EmitSpriteInvisibility(B_COMM_TO_CONTROLLER, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
gStatuses3[gBattlerTarget] &= ~STATUS3_SEMI_INVULNERABLE;
gBattleScripting.moveendState++;
@@ -4448,15 +4459,15 @@ static void Cmd_moveend(void)
}
gBattleScripting.moveendState++;
break;
- case MOVEEND_NEXT_TARGET: // For moves hitting two opposing Pokemon.
+ case MOVEEND_NEXT_TARGET: // For moves hitting two opposing Pokémon.
if (!(gHitMarker & HITMARKER_UNABLE_TO_USE_MOVE) && gBattleTypeFlags & BATTLE_TYPE_DOUBLE
&& !gProtectStructs[gBattlerAttacker].chargingTurn && gBattleMoves[gCurrentMove].target == MOVE_TARGET_BOTH
&& !(gHitMarker & HITMARKER_NO_ATTACKSTRING))
{
- u8 battlerId = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget)));
- if (gBattleMons[battlerId].hp != 0)
+ u8 battler = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerTarget)));
+ if (gBattleMons[battler].hp != 0)
{
- gBattlerTarget = battlerId;
+ gBattlerTarget = battler;
gHitMarker |= HITMARKER_NO_ATTACKSTRING;
gBattleScripting.moveendState = 0;
MoveValuesCleanUp();
@@ -4520,7 +4531,7 @@ static void Cmd_typecalc2(void)
if (TYPE_EFFECT_ATK_TYPE(i) == moveType)
{
// check type1
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type1)
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[0])
{
if (TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_NO_EFFECT)
{
@@ -4537,22 +4548,22 @@ static void Cmd_typecalc2(void)
}
}
// check type2
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type2)
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[1])
{
- if (gBattleMons[gBattlerTarget].type1 != gBattleMons[gBattlerTarget].type2
+ if (gBattleMons[gBattlerTarget].types[0] != gBattleMons[gBattlerTarget].types[1]
&& TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_NO_EFFECT)
{
gMoveResultFlags |= MOVE_RESULT_DOESNT_AFFECT_FOE;
break;
}
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type2
- && gBattleMons[gBattlerTarget].type1 != gBattleMons[gBattlerTarget].type2
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[1]
+ && gBattleMons[gBattlerTarget].types[0] != gBattleMons[gBattlerTarget].types[1]
&& TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_NOT_EFFECTIVE)
{
flags |= MOVE_RESULT_NOT_VERY_EFFECTIVE;
}
- if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].type2
- && gBattleMons[gBattlerTarget].type1 != gBattleMons[gBattlerTarget].type2
+ if (TYPE_EFFECT_DEF_TYPE(i) == gBattleMons[gBattlerTarget].types[1]
+ && gBattleMons[gBattlerTarget].types[0] != gBattleMons[gBattlerTarget].types[1]
&& TYPE_EFFECT_MULTIPLIER(i) == TYPE_MUL_SUPER_EFFECTIVE)
{
flags |= MOVE_RESULT_SUPER_EFFECTIVE;
@@ -4586,7 +4597,7 @@ static void Cmd_returnatktoball(void)
gActiveBattler = gBattlerAttacker;
if (!(gHitMarker & HITMARKER_FAINTED(gActiveBattler)))
{
- BtlController_EmitReturnMonToBall(BUFFER_A, FALSE);
+ BtlController_EmitReturnMonToBall(B_COMM_TO_CONTROLLER, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
gBattlescriptCurrInstr++;
@@ -4601,7 +4612,7 @@ static void Cmd_getswitchedmondata(void)
gBattlerPartyIndexes[gActiveBattler] = *(gBattleStruct->monToSwitchIntoId + gActiveBattler);
- BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, gBitTable[gBattlerPartyIndexes[gActiveBattler]]);
+ BtlController_EmitGetMonData(B_COMM_TO_CONTROLLER, REQUEST_ALL_BATTLE, gBitTable[gBattlerPartyIndexes[gActiveBattler]]);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
@@ -4623,8 +4634,8 @@ static void Cmd_switchindataupdate(void)
for (i = 0; i < sizeof(struct BattlePokemon); i++)
monData[i] = gBattleBufferB[gActiveBattler][4 + i];
- gBattleMons[gActiveBattler].type1 = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[0];
- gBattleMons[gActiveBattler].type2 = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[1];
+ gBattleMons[gActiveBattler].types[0] = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[0];
+ gBattleMons[gActiveBattler].types[1] = gSpeciesInfo[gBattleMons[gActiveBattler].species].types[1];
gBattleMons[gActiveBattler].ability = GetAbilityBySpecies(gBattleMons[gActiveBattler].species, gBattleMons[gActiveBattler].abilityNum);
// check knocked off item
@@ -4677,7 +4688,7 @@ static void Cmd_switchinanim(void)
gAbsentBattlerFlags &= ~(gBitTable[gActiveBattler]);
- BtlController_EmitSwitchInAnim(BUFFER_A, gBattlerPartyIndexes[gActiveBattler], gBattlescriptCurrInstr[2]);
+ BtlController_EmitSwitchInAnim(B_COMM_TO_CONTROLLER, gBattlerPartyIndexes[gActiveBattler], gBattlescriptCurrInstr[2]);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 3;
@@ -4847,7 +4858,7 @@ static void ChooseMonToSendOut(u8 slotId)
*(gBattleStruct->monToSwitchIntoId + gActiveBattler) = PARTY_SIZE;
gBattleStruct->field_93 &= ~(gBitTable[gActiveBattler]);
- BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_SEND_OUT, slotId, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChoosePokemon(B_COMM_TO_CONTROLLER, PARTY_ACTION_SEND_OUT, slotId, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
MarkBattlerForControllerExec(gActiveBattler);
}
@@ -4855,10 +4866,10 @@ static void Cmd_openpartyscreen(void)
{
u32 flags;
u8 hitmarkerFaintBits;
- u8 battlerId;
+ u8 battler;
const u8 *jumpPtr;
- battlerId = 0;
+ battler = 0;
flags = 0;
jumpPtr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
@@ -4874,7 +4885,7 @@ static void Cmd_openpartyscreen(void)
{
gAbsentBattlerFlags |= gBitTable[gActiveBattler];
gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler);
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement)
@@ -4885,7 +4896,7 @@ static void Cmd_openpartyscreen(void)
}
else
{
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -4903,7 +4914,7 @@ static void Cmd_openpartyscreen(void)
{
gAbsentBattlerFlags |= gBitTable[gActiveBattler];
gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler);
- BtlController_EmitCantSwitch(BUFFER_A);
+ BtlController_EmitCantSwitch(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement)
@@ -4913,7 +4924,7 @@ static void Cmd_openpartyscreen(void)
}
else
{
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
flags |= 1;
}
@@ -4925,7 +4936,7 @@ static void Cmd_openpartyscreen(void)
{
gAbsentBattlerFlags |= gBitTable[gActiveBattler];
gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler);
- BtlController_EmitCantSwitch(BUFFER_A);
+ BtlController_EmitCantSwitch(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement)
@@ -4935,7 +4946,7 @@ static void Cmd_openpartyscreen(void)
}
else if (!(flags & 1))
{
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -4946,7 +4957,7 @@ static void Cmd_openpartyscreen(void)
{
gAbsentBattlerFlags |= gBitTable[gActiveBattler];
gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler);
- BtlController_EmitCantSwitch(BUFFER_A);
+ BtlController_EmitCantSwitch(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement)
@@ -4956,7 +4967,7 @@ static void Cmd_openpartyscreen(void)
}
else
{
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
flags |= 2;
}
@@ -4968,7 +4979,7 @@ static void Cmd_openpartyscreen(void)
{
gAbsentBattlerFlags |= gBitTable[gActiveBattler];
gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler);
- BtlController_EmitCantSwitch(BUFFER_A);
+ BtlController_EmitCantSwitch(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement)
@@ -4978,7 +4989,7 @@ static void Cmd_openpartyscreen(void)
}
else if (!(flags & 2))
{
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -4994,7 +5005,7 @@ static void Cmd_openpartyscreen(void)
else
gActiveBattler = 0;
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
@@ -5010,7 +5021,7 @@ static void Cmd_openpartyscreen(void)
else
gActiveBattler = 1;
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -5031,7 +5042,7 @@ static void Cmd_openpartyscreen(void)
{
gAbsentBattlerFlags |= gBitTable[gActiveBattler];
gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler);
- BtlController_EmitCantSwitch(BUFFER_A);
+ BtlController_EmitCantSwitch(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement)
@@ -5047,7 +5058,7 @@ static void Cmd_openpartyscreen(void)
{
gAbsentBattlerFlags |= gBitTable[gActiveBattler];
gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler);
- BtlController_EmitCantSwitch(BUFFER_A);
+ BtlController_EmitCantSwitch(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
}
else if (!gSpecialStatuses[gActiveBattler].faintedHasReplacement)
@@ -5087,26 +5098,26 @@ static void Cmd_openpartyscreen(void)
else
hitmarkerFaintBits = PARTY_ACTION_SEND_OUT;
- battlerId = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~PARTY_SCREEN_OPTIONAL);
- if (gSpecialStatuses[battlerId].faintedHasReplacement)
+ battler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1] & ~PARTY_SCREEN_OPTIONAL);
+ if (gSpecialStatuses[battler].faintedHasReplacement)
{
gBattlescriptCurrInstr += 6;
}
- else if (HasNoMonsToSwitch(battlerId, PARTY_SIZE, PARTY_SIZE))
+ else if (HasNoMonsToSwitch(battler, PARTY_SIZE, PARTY_SIZE))
{
- gActiveBattler = battlerId;
+ gActiveBattler = battler;
gAbsentBattlerFlags |= gBitTable[gActiveBattler];
gHitMarker &= ~HITMARKER_FAINTED(gActiveBattler);
gBattlescriptCurrInstr = jumpPtr;
}
else
{
- gActiveBattler = battlerId;
+ gActiveBattler = battler;
*(gBattleStruct->battlerPartyIndexes + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler];
*(gBattleStruct->monToSwitchIntoId + gActiveBattler) = PARTY_SIZE;
gBattleStruct->field_93 &= ~(gBitTable[gActiveBattler]);
- BtlController_EmitChoosePokemon(BUFFER_A, hitmarkerFaintBits, *(gBattleStruct->monToSwitchIntoId + BATTLE_PARTNER(gActiveBattler)), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
+ BtlController_EmitChoosePokemon(B_COMM_TO_CONTROLLER, hitmarkerFaintBits, *(gBattleStruct->monToSwitchIntoId + BATTLE_PARTNER(gActiveBattler)), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 6;
@@ -5118,20 +5129,20 @@ static void Cmd_openpartyscreen(void)
{
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; gActiveBattler++)
{
- if (gActiveBattler != battlerId)
+ if (gActiveBattler != battler)
{
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
}
}
else
{
- gActiveBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(battlerId)));
+ gActiveBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(battler)));
if (gAbsentBattlerFlags & gBitTable[gActiveBattler])
gActiveBattler ^= BIT_FLANK;
- BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_ONLY, FALSE);
+ BtlController_EmitLinkStandbyMsg(B_COMM_TO_CONTROLLER, LINK_STANDBY_MSG_ONLY, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -5290,7 +5301,7 @@ static void Cmd_switchineffects(void)
static void Cmd_trainerslidein(void)
{
gActiveBattler = GetBattlerAtPosition(gBattlescriptCurrInstr[1]);
- BtlController_EmitTrainerSlide(BUFFER_A);
+ BtlController_EmitTrainerSlide(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
@@ -5299,7 +5310,7 @@ static void Cmd_trainerslidein(void)
static void Cmd_playse(void)
{
gActiveBattler = gBattlerAttacker;
- BtlController_EmitPlaySE(BUFFER_A, T2_READ_16(gBattlescriptCurrInstr + 1));
+ BtlController_EmitPlaySE(B_COMM_TO_CONTROLLER, T2_READ_16(gBattlescriptCurrInstr + 1));
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 3;
@@ -5308,7 +5319,7 @@ static void Cmd_playse(void)
static void Cmd_fanfare(void)
{
gActiveBattler = gBattlerAttacker;
- BtlController_EmitPlayFanfareOrBGM(BUFFER_A, T2_READ_16(gBattlescriptCurrInstr + 1), FALSE);
+ BtlController_EmitPlayFanfareOrBGM(B_COMM_TO_CONTROLLER, T2_READ_16(gBattlescriptCurrInstr + 1), FALSE);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 3;
@@ -5317,7 +5328,7 @@ static void Cmd_fanfare(void)
static void Cmd_playfaintcry(void)
{
gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- BtlController_EmitFaintingCry(BUFFER_A);
+ BtlController_EmitFaintingCry(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
@@ -5326,7 +5337,7 @@ static void Cmd_playfaintcry(void)
static void Cmd_endlinkbattle(void)
{
gActiveBattler = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT);
- BtlController_EmitEndLinkBattle(BUFFER_A, gBattleOutcome);
+ BtlController_EmitEndLinkBattle(B_COMM_TO_CONTROLLER, gBattleOutcome);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 1;
@@ -5335,7 +5346,7 @@ static void Cmd_endlinkbattle(void)
static void Cmd_returntoball(void)
{
gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- BtlController_EmitReturnMonToBall(BUFFER_A, TRUE);
+ BtlController_EmitReturnMonToBall(B_COMM_TO_CONTROLLER, TRUE);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
@@ -5453,8 +5464,8 @@ static void Cmd_yesnoboxlearnmove(void)
}
else
{
- u16 moveId = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_MOVE1 + movePosition);
- if (IsHMMove2(moveId))
+ u16 move = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_MOVE1 + movePosition);
+ if (IsHMMove2(move))
{
PrepareStringBattle(STRINGID_HMMOVESCANTBEFORGOTTEN, gActiveBattler);
gBattleScripting.learnMoveState = 6;
@@ -5463,7 +5474,7 @@ static void Cmd_yesnoboxlearnmove(void)
{
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
- PREPARE_MOVE_BUFFER(gBattleTextBuff2, moveId)
+ PREPARE_MOVE_BUFFER(gBattleTextBuff2, move)
RemoveMonPPBonus(&gPlayerParty[gBattleStruct->expGetterMonId], movePosition);
SetMonMoveSlot(&gPlayerParty[gBattleStruct->expGetterMonId], gMoveToLearn, movePosition);
@@ -5554,7 +5565,7 @@ static void Cmd_hitanimation(void)
}
else if (!(gHitMarker & HITMARKER_IGNORE_SUBSTITUTE) || !(gBattleMons[gActiveBattler].status2 & STATUS2_SUBSTITUTE) || gDisableStructs[gActiveBattler].substituteHP == 0)
{
- BtlController_EmitHitAnimation(BUFFER_A);
+ BtlController_EmitHitAnimation(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
}
@@ -5641,7 +5652,7 @@ static void Cmd_updatebattlermoves(void)
switch (gBattleCommunication[0])
{
case 0:
- BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, 0);
+ BtlController_EmitGetMonData(B_COMM_TO_CONTROLLER, REQUEST_ALL_BATTLE, 0);
MarkBattlerForControllerExec(gActiveBattler);
gBattleCommunication[0]++;
break;
@@ -5714,7 +5725,7 @@ static void Cmd_drawpartystatussummary(void)
}
}
- BtlController_EmitDrawPartyStatusSummary(BUFFER_A, hpStatuses, 1);
+ BtlController_EmitDrawPartyStatusSummary(B_COMM_TO_CONTROLLER, hpStatuses, 1);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
@@ -5723,7 +5734,7 @@ static void Cmd_drawpartystatussummary(void)
static void Cmd_hidepartystatussummary(void)
{
gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- BtlController_EmitHidePartyStatusSummary(BUFFER_A);
+ BtlController_EmitHidePartyStatusSummary(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
@@ -5748,7 +5759,7 @@ static void Cmd_statusanimation(void)
&& gDisableStructs[gActiveBattler].substituteHP == 0
&& !(gHitMarker & HITMARKER_NO_ANIMATIONS))
{
- BtlController_EmitStatusAnimation(BUFFER_A, FALSE, gBattleMons[gActiveBattler].status1);
+ BtlController_EmitStatusAnimation(B_COMM_TO_CONTROLLER, FALSE, gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
}
gBattlescriptCurrInstr += 2;
@@ -5767,7 +5778,7 @@ static void Cmd_status2animation(void)
&& gDisableStructs[gActiveBattler].substituteHP == 0
&& !(gHitMarker & HITMARKER_NO_ANIMATIONS))
{
- BtlController_EmitStatusAnimation(BUFFER_A, TRUE, gBattleMons[gActiveBattler].status2 & wantedToAnimate);
+ BtlController_EmitStatusAnimation(B_COMM_TO_CONTROLLER, TRUE, gBattleMons[gActiveBattler].status2 & wantedToAnimate);
MarkBattlerForControllerExec(gActiveBattler);
}
gBattlescriptCurrInstr += 6;
@@ -5786,7 +5797,7 @@ static void Cmd_chosenstatusanimation(void)
&& gDisableStructs[gActiveBattler].substituteHP == 0
&& !(gHitMarker & HITMARKER_NO_ANIMATIONS))
{
- BtlController_EmitStatusAnimation(BUFFER_A, gBattlescriptCurrInstr[2], wantedStatus);
+ BtlController_EmitStatusAnimation(B_COMM_TO_CONTROLLER, gBattlescriptCurrInstr[2], wantedStatus);
MarkBattlerForControllerExec(gActiveBattler);
}
gBattlescriptCurrInstr += 7;
@@ -5858,8 +5869,8 @@ static void Cmd_adjustsetdamage(void)
}
else
{
- holdEffect = ItemId_GetHoldEffect(gBattleMons[gBattlerTarget].item);
- param = ItemId_GetHoldEffectParam(gBattleMons[gBattlerTarget].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[gBattlerTarget].item);
+ param = GetItemHoldEffectParam(gBattleMons[gBattlerTarget].item);
}
gPotentialItemEffectBattler = gBattlerTarget;
@@ -5897,7 +5908,7 @@ static void Cmd_removeitem(void)
*usedHeldItem = gBattleMons[gActiveBattler].item;
gBattleMons[gActiveBattler].item = ITEM_NONE;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].item), &gBattleMons[gActiveBattler].item);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].item), &gBattleMons[gActiveBattler].item);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
@@ -6206,7 +6217,7 @@ static void Cmd_setatktoplayer0(void)
static void Cmd_makevisible(void)
{
gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- BtlController_EmitSpriteInvisibility(BUFFER_A, FALSE);
+ BtlController_EmitSpriteInvisibility(B_COMM_TO_CONTROLLER, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
@@ -6420,7 +6431,7 @@ static void Cmd_various(void)
gDisableStructs[1].truantSwitchInHack = 1;
break;
case VARIOUS_EMIT_YESNOBOX:
- BtlController_EmitYesNoBox(BUFFER_A);
+ BtlController_EmitYesNoBox(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
break;
case VARIOUS_DRAW_ARENA_REF_TEXT_BOX:
@@ -6445,7 +6456,7 @@ static void Cmd_various(void)
gActiveBattler = 1;
if (gBattleMons[gActiveBattler].hp != 0)
{
- BtlController_EmitReturnMonToBall(BUFFER_A, FALSE);
+ BtlController_EmitReturnMonToBall(B_COMM_TO_CONTROLLER, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
break;
@@ -6455,7 +6466,7 @@ static void Cmd_various(void)
gActiveBattler = 3;
if (gBattleMons[gActiveBattler].hp != 0)
{
- BtlController_EmitReturnMonToBall(BUFFER_A, FALSE);
+ BtlController_EmitReturnMonToBall(B_COMM_TO_CONTROLLER, FALSE);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -6480,7 +6491,7 @@ static void Cmd_various(void)
gBattleOutcome = B_OUTCOME_MON_TELEPORTED;
break;
case VARIOUS_PLAY_TRAINER_DEFEATED_MUSIC:
- BtlController_EmitPlayFanfareOrBGM(BUFFER_A, MUS_VICTORY_TRAINER, TRUE);
+ BtlController_EmitPlayFanfareOrBGM(B_COMM_TO_CONTROLLER, MUS_VICTORY_TRAINER, TRUE);
MarkBattlerForControllerExec(gActiveBattler);
break;
}
@@ -6541,7 +6552,7 @@ static void Cmd_tryexplosion(void)
// Success, no battlers with Damp. Drop user's HP bar to 0
gActiveBattler = gBattlerAttacker;
gBattleMoveDamage = gBattleMons[gActiveBattler].hp;
- BtlController_EmitHealthBarUpdate(BUFFER_A, INSTANT_HP_BAR_DROP);
+ BtlController_EmitHealthBarUpdate(B_COMM_TO_CONTROLLER, INSTANT_HP_BAR_DROP);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr++;
@@ -6570,7 +6581,7 @@ static void Cmd_setatkhptozero(void)
gActiveBattler = gBattlerAttacker;
gBattleMons[gActiveBattler].hp = 0;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_HP_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].hp), &gBattleMons[gActiveBattler].hp);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_HP_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].hp), &gBattleMons[gActiveBattler].hp);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr++;
@@ -6766,7 +6777,7 @@ static void Cmd_trysetrest(void)
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_REST;
gBattleMons[gBattlerTarget].status1 = STATUS1_SLEEP_TURN(3);
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 5;
}
@@ -6787,13 +6798,13 @@ static void Cmd_nop(void)
gBattlescriptCurrInstr++;
}
-bool8 UproarWakeUpCheck(u8 battlerId)
+bool8 UproarWakeUpCheck(u8 battler)
{
s32 i;
for (i = 0; i < gBattlersCount; i++)
{
- if (!(gBattleMons[i].status2 & STATUS2_UPROAR) || gBattleMons[battlerId].ability == ABILITY_SOUNDPROOF)
+ if (!(gBattleMons[i].status2 & STATUS2_UPROAR) || gBattleMons[battler].ability == ABILITY_SOUNDPROOF)
continue;
gBattleScripting.battler = i;
@@ -7178,7 +7189,7 @@ static void Cmd_forcerandomswitch(void)
s32 battler2PartyId = 0;
s32 firstMonId;
- s32 lastMonId = 0; // + 1
+ s32 lastMonId = 0;
s32 monsCount;
struct Pokemon *party = NULL;
s32 validMons = 0;
@@ -7198,12 +7209,20 @@ static void Cmd_forcerandomswitch(void)
if ((gBattlerTarget & BIT_FLANK) != B_FLANK_LEFT)
{
firstMonId = PARTY_SIZE / 2;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE - 1;
+ #else
lastMonId = PARTY_SIZE;
+ #endif
}
else
{
firstMonId = 0;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE / 2 - 1;
+ #else
lastMonId = PARTY_SIZE / 2;
+ #endif
}
monsCount = PARTY_SIZE / 2;
minNeeded = 1;
@@ -7216,12 +7235,20 @@ static void Cmd_forcerandomswitch(void)
if (GetLinkTrainerFlankId(GetBattlerMultiplayerId(gBattlerTarget)) == B_FLANK_RIGHT)
{
firstMonId = PARTY_SIZE / 2;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE - 1;
+ #else
lastMonId = PARTY_SIZE;
+ #endif
}
else
{
firstMonId = 0;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE / 2 - 1;
+ #else
lastMonId = PARTY_SIZE / 2;
+ #endif
}
monsCount = PARTY_SIZE / 2;
minNeeded = 1;
@@ -7233,7 +7260,11 @@ static void Cmd_forcerandomswitch(void)
if (GetBattlerSide(gBattlerTarget) == B_SIDE_PLAYER)
{
firstMonId = 0;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE - 1;
+ #else
lastMonId = PARTY_SIZE;
+ #endif
monsCount = PARTY_SIZE;
minNeeded = 2; // since there are two opponents, it has to be a double battle
}
@@ -7242,12 +7273,20 @@ static void Cmd_forcerandomswitch(void)
if ((gBattlerTarget & BIT_FLANK) != B_FLANK_LEFT)
{
firstMonId = PARTY_SIZE / 2;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE - 1;
+ #else
lastMonId = PARTY_SIZE;
+ #endif
}
else
{
firstMonId = 0;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE / 2 - 1;
+ #else
lastMonId = PARTY_SIZE / 2;
+ #endif
}
monsCount = PARTY_SIZE / 2;
minNeeded = 1;
@@ -7258,7 +7297,11 @@ static void Cmd_forcerandomswitch(void)
else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
{
firstMonId = 0;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE - 1;
+ #else
lastMonId = PARTY_SIZE;
+ #endif
monsCount = PARTY_SIZE;
minNeeded = 2;
battler2PartyId = gBattlerPartyIndexes[gBattlerTarget];
@@ -7267,10 +7310,14 @@ static void Cmd_forcerandomswitch(void)
else
{
firstMonId = 0;
+ #ifdef BUGFIX
+ lastMonId = PARTY_SIZE - 1;
+ #else
lastMonId = PARTY_SIZE;
+ #endif
monsCount = PARTY_SIZE;
minNeeded = 1;
- battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; // there is only one pokemon out in single battles
+ battler2PartyId = gBattlerPartyIndexes[gBattlerTarget]; // there is only one Pokémon out in single battles
battler1PartyId = gBattlerPartyIndexes[gBattlerTarget];
}
@@ -7290,6 +7337,38 @@ static void Cmd_forcerandomswitch(void)
}
else
{
+ #ifdef BUGFIX
+ if (TryDoForceSwitchOut())
+ {
+ do
+ {
+ do
+ {
+ i = Random() % monsCount;
+ i += firstMonId;
+ }
+ while (i == battler2PartyId || i == battler1PartyId);
+ } while (GetMonData(&party[i], MON_DATA_SPECIES) == SPECIES_NONE
+ || GetMonData(&party[i], MON_DATA_IS_EGG) == TRUE
+ || GetMonData(&party[i], MON_DATA_HP) == 0); //should be one while loop, but that doesn't match.
+ *(gBattleStruct->monToSwitchIntoId + gBattlerTarget) = i;
+
+ if (!IsMultiBattle())
+ SwitchPartyOrder(gBattlerTarget);
+
+ if ((gBattleTypeFlags & BATTLE_TYPE_LINK && gBattleTypeFlags & BATTLE_TYPE_BATTLE_TOWER)
+ || (gBattleTypeFlags & BATTLE_TYPE_LINK && gBattleTypeFlags & BATTLE_TYPE_MULTI)
+ || (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK && gBattleTypeFlags & BATTLE_TYPE_BATTLE_TOWER)
+ || (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK && gBattleTypeFlags & BATTLE_TYPE_MULTI))
+ {
+ SwitchPartyOrderLinkMulti(gBattlerTarget, i, 0);
+ SwitchPartyOrderLinkMulti(BATTLE_PARTNER(gBattlerTarget), i, 1);
+ }
+
+ if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
+ SwitchPartyOrderInGameMulti(gBattlerTarget, i);
+ }
+ #else
if (TryDoForceSwitchOut())
{
do
@@ -7320,6 +7399,7 @@ static void Cmd_forcerandomswitch(void)
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
SwitchPartyOrderInGameMulti(gBattlerTarget, i);
+ #endif
}
}
else
@@ -7354,8 +7434,8 @@ static void Cmd_tryconversiontypechange(void)
else
moveType = TYPE_NORMAL;
}
- if (moveType != gBattleMons[gBattlerAttacker].type1
- && moveType != gBattleMons[gBattlerAttacker].type2)
+ if (moveType != gBattleMons[gBattlerAttacker].types[0]
+ && moveType != gBattleMons[gBattlerAttacker].types[1])
{
break;
}
@@ -7381,7 +7461,7 @@ static void Cmd_tryconversiontypechange(void)
moveType = TYPE_NORMAL;
}
}
- while (moveType == gBattleMons[gBattlerAttacker].type1 || moveType == gBattleMons[gBattlerAttacker].type2);
+ while (moveType == gBattleMons[gBattlerAttacker].types[0] || moveType == gBattleMons[gBattlerAttacker].types[1]);
SET_BATTLER_TYPE(gBattlerAttacker, moveType);
PREPARE_TYPE_BUFFER(gBattleTextBuff1, moveType);
@@ -7441,8 +7521,8 @@ static void Cmd_tryKO(void)
}
else
{
- holdEffect = ItemId_GetHoldEffect(gBattleMons[gBattlerTarget].item);
- param = ItemId_GetHoldEffectParam(gBattleMons[gBattlerTarget].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[gBattlerTarget].item);
+ param = GetItemHoldEffectParam(gBattleMons[gBattlerTarget].item);
}
gPotentialItemEffectBattler = gBattlerTarget;
@@ -7548,12 +7628,12 @@ static void Cmd_weatherdamage(void)
{
if (gBattleWeather & B_WEATHER_SANDSTORM)
{
- if (gBattleMons[gBattlerAttacker].type1 != TYPE_ROCK
- && gBattleMons[gBattlerAttacker].type1 != TYPE_STEEL
- && gBattleMons[gBattlerAttacker].type1 != TYPE_GROUND
- && gBattleMons[gBattlerAttacker].type2 != TYPE_ROCK
- && gBattleMons[gBattlerAttacker].type2 != TYPE_STEEL
- && gBattleMons[gBattlerAttacker].type2 != TYPE_GROUND
+ if (gBattleMons[gBattlerAttacker].types[0] != TYPE_ROCK
+ && gBattleMons[gBattlerAttacker].types[0] != TYPE_STEEL
+ && gBattleMons[gBattlerAttacker].types[0] != TYPE_GROUND
+ && gBattleMons[gBattlerAttacker].types[1] != TYPE_ROCK
+ && gBattleMons[gBattlerAttacker].types[1] != TYPE_STEEL
+ && gBattleMons[gBattlerAttacker].types[1] != TYPE_GROUND
&& gBattleMons[gBattlerAttacker].ability != ABILITY_SAND_VEIL
&& !(gStatuses3[gBattlerAttacker] & STATUS3_UNDERGROUND)
&& !(gStatuses3[gBattlerAttacker] & STATUS3_UNDERWATER))
@@ -7647,7 +7727,7 @@ static void Cmd_updatestatusicon(void)
if (gBattlescriptCurrInstr[1] != BS_ATTACKER_WITH_PARTNER)
{
gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]);
- BtlController_EmitStatusIconUpdate(BUFFER_A, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2);
+ BtlController_EmitStatusIconUpdate(B_COMM_TO_CONTROLLER, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
}
@@ -7656,7 +7736,7 @@ static void Cmd_updatestatusicon(void)
gActiveBattler = gBattlerAttacker;
if (!(gAbsentBattlerFlags & gBitTable[gActiveBattler]))
{
- BtlController_EmitStatusIconUpdate(BUFFER_A, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2);
+ BtlController_EmitStatusIconUpdate(B_COMM_TO_CONTROLLER, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2);
MarkBattlerForControllerExec(gActiveBattler);
}
if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
@@ -7664,7 +7744,7 @@ static void Cmd_updatestatusicon(void)
gActiveBattler = GetBattlerAtPosition(BATTLE_PARTNER(GetBattlerPosition(gBattlerAttacker)));
if (!(gAbsentBattlerFlags & gBitTable[gActiveBattler]))
{
- BtlController_EmitStatusIconUpdate(BUFFER_A, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2);
+ BtlController_EmitStatusIconUpdate(B_COMM_TO_CONTROLLER, gBattleMons[gActiveBattler].status1, gBattleMons[gActiveBattler].status2);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -7742,7 +7822,7 @@ static void Cmd_transformdataexecution(void)
}
gActiveBattler = gBattlerAttacker;
- BtlController_EmitResetActionMoveSelection(BUFFER_A, RESET_MOVE_SELECTION);
+ BtlController_EmitResetActionMoveSelection(B_COMM_TO_CONTROLLER, RESET_MOVE_SELECTION);
MarkBattlerForControllerExec(gActiveBattler);
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_TRANSFORMED;
}
@@ -7761,7 +7841,7 @@ static void Cmd_setsubstitute(void)
}
else
{
- gBattleMoveDamage = gBattleMons[gBattlerAttacker].maxHP / 4; // one bit value will only work for pokemon which max hp can go to 1020(which is more than possible in games)
+ gBattleMoveDamage = gBattleMons[gBattlerAttacker].maxHP / 4; // one bit value will only work for Pokémon which max hp can go to 1020(which is more than possible in games)
if (gBattleMoveDamage == 0)
gBattleMoveDamage = 1;
@@ -8122,7 +8202,7 @@ static void Cmd_copymovepermanently(void)
}
movePpData.ppBonuses = gBattleMons[gBattlerAttacker].ppBonuses;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_MOVES_PP_BATTLE, 0, sizeof(movePpData), &movePpData);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_MOVES_PP_BATTLE, 0, sizeof(movePpData), &movePpData);
MarkBattlerForControllerExec(gActiveBattler);
PREPARE_MOVE_BUFFER(gBattleTextBuff1, gLastPrintedMoves[gBattlerTarget])
@@ -8161,7 +8241,7 @@ static bool8 IsInvalidForSleepTalkOrAssist(u16 move)
return FALSE;
}
-static u8 AttacksThisTurn(u8 battlerId, u16 move) // Note: returns 1 if it's a charging turn, otherwise 2
+static u8 AttacksThisTurn(u8 battler, u16 move) // Note: returns 1 if it's a charging turn, otherwise 2
{
// first argument is unused
if (gBattleMoves[move].effect == EFFECT_SOLAR_BEAM
@@ -8290,7 +8370,7 @@ static void Cmd_tryspiteppreduce(void)
if (!(gDisableStructs[gActiveBattler].mimickedMoves & gBitTable[i])
&& !(gBattleMons[gActiveBattler].status2 & STATUS2_TRANSFORMED))
{
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + i, 0, sizeof(gBattleMons[gActiveBattler].pp[i]), &gBattleMons[gActiveBattler].pp[i]);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_PPMOVE1_BATTLE + i, 0, sizeof(gBattleMons[gActiveBattler].pp[i]), &gBattleMons[gActiveBattler].pp[i]);
MarkBattlerForControllerExec(gActiveBattler);
}
@@ -8401,7 +8481,7 @@ static void Cmd_healpartystatus(void)
if (toHeal)
{
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, toHeal, sizeof(zero), &zero);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, toHeal, sizeof(zero), &zero);
MarkBattlerForControllerExec(gActiveBattler);
}
@@ -8558,11 +8638,17 @@ static void Cmd_presentdamagecalculation(void)
s32 rand = Random() & 0xFF;
if (rand < 102)
+ {
gDynamicBasePower = 40;
+ }
else if (rand < 178)
+ {
gDynamicBasePower = 80;
+ }
else if (rand < 204)
+ {
gDynamicBasePower = 120;
+ }
else
{
gBattleMoveDamage = gBattleMons[gBattlerTarget].maxHP / 4;
@@ -8570,10 +8656,15 @@ static void Cmd_presentdamagecalculation(void)
gBattleMoveDamage = 1;
gBattleMoveDamage *= -1;
}
+
if (rand < 204)
+ {
gBattlescriptCurrInstr = BattleScript_HitFromCritCalc;
+ }
else if (gBattleMons[gBattlerTarget].maxHP == gBattleMons[gBattlerTarget].hp)
+ {
gBattlescriptCurrInstr = BattleScript_AlreadyAtFullHp;
+ }
else
{
gMoveResultFlags &= ~MOVE_RESULT_DOESNT_AFFECT_FOE;
@@ -8910,6 +9001,7 @@ static void Cmd_trydobeatup(void)
&& !GetMonData(&party[gBattleCommunication[0]], MON_DATA_STATUS))
break;
}
+
if (gBattleCommunication[0] < PARTY_SIZE)
{
PREPARE_MON_NICK_WITH_PREFIX_BUFFER(gBattleTextBuff1, gBattlerAttacker, gBattleCommunication[0])
@@ -8927,9 +9019,13 @@ static void Cmd_trydobeatup(void)
gBattleCommunication[0]++;
}
else if (beforeLoop != 0)
+ {
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
+ }
else
+ {
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 5);
+ }
}
}
@@ -9010,7 +9106,7 @@ static void Cmd_trymemento(void)
// Success, drop user's HP bar to 0
gActiveBattler = gBattlerAttacker;
gBattleMoveDamage = gBattleMons[gActiveBattler].hp;
- BtlController_EmitHealthBarUpdate(BUFFER_A, INSTANT_HP_BAR_DROP);
+ BtlController_EmitHealthBarUpdate(B_COMM_TO_CONTROLLER, INSTANT_HP_BAR_DROP);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 5;
}
@@ -9033,10 +9129,10 @@ static void Cmd_setcharge(void)
}
// Nature Power
-static void Cmd_callterrainattack(void)
+static void Cmd_callenvironmentattack(void)
{
gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED;
- gCurrentMove = sNaturePowerMoves[gBattleTerrain];
+ gCurrentMove = sNaturePowerMoves[gBattleEnvironment];
gBattlerTarget = GetMoveTarget(gCurrentMove, NO_TARGET_OVERRIDE);
BattleScriptPush(gBattleScriptsForMoveEffects[gBattleMoves[gCurrentMove].effect]);
gBattlescriptCurrInstr++;
@@ -9050,7 +9146,7 @@ static void Cmd_cureifburnedparalysedorpoisoned(void)
gBattleMons[gBattlerAttacker].status1 = 0;
gBattlescriptCurrInstr += 5;
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].status1), &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
}
else
@@ -9142,7 +9238,7 @@ static void Cmd_tryswapitems(void)
{
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
- // can't swap if two pokemon don't have an item
+ // can't swap if two Pokémon don't have an item
// or if either of them is an enigma berry or a mail
else if ((gBattleMons[gBattlerAttacker].item == ITEM_NONE && gBattleMons[gBattlerTarget].item == ITEM_NONE)
|| gBattleMons[gBattlerAttacker].item == ITEM_ENIGMA_BERRY
@@ -9172,11 +9268,11 @@ static void Cmd_tryswapitems(void)
gBattleMons[gBattlerTarget].item = oldItemAtk;
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(*newItemAtk), newItemAtk);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_HELDITEM_BATTLE, 0, sizeof(*newItemAtk), newItemAtk);
MarkBattlerForControllerExec(gBattlerAttacker);
gActiveBattler = gBattlerTarget;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].item), &gBattleMons[gBattlerTarget].item);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gBattlerTarget].item), &gBattleMons[gBattlerTarget].item);
MarkBattlerForControllerExec(gBattlerTarget);
*(u8 *)((u8 *)(&gBattleStruct->choicedMove[gBattlerTarget]) + 0) = 0;
@@ -9344,13 +9440,13 @@ static void Cmd_tryimprison(void)
}
else
{
- u8 battlerId, sideAttacker;
+ u8 battler, sideAttacker;
sideAttacker = GetBattlerSide(gBattlerAttacker);
PressurePPLoseOnUsingImprison(gBattlerAttacker);
- for (battlerId = 0; battlerId < gBattlersCount; battlerId++)
+ for (battler = 0; battler < gBattlersCount; battler++)
{
- if (sideAttacker != GetBattlerSide(battlerId))
+ if (sideAttacker != GetBattlerSide(battler))
{
s32 attackerMoveId;
for (attackerMoveId = 0; attackerMoveId < MAX_MON_MOVES; attackerMoveId++)
@@ -9358,7 +9454,7 @@ static void Cmd_tryimprison(void)
s32 i;
for (i = 0; i < MAX_MON_MOVES; i++)
{
- if (gBattleMons[gBattlerAttacker].moves[attackerMoveId] == gBattleMons[battlerId].moves[i]
+ if (gBattleMons[gBattlerAttacker].moves[attackerMoveId] == gBattleMons[battler].moves[i]
&& gBattleMons[gBattlerAttacker].moves[attackerMoveId] != MOVE_NONE)
break;
}
@@ -9373,7 +9469,7 @@ static void Cmd_tryimprison(void)
}
}
}
- if (battlerId == gBattlersCount) // In Generation 3 games, Imprison fails if the user doesn't share any moves with any of the foes
+ if (battler == gBattlersCount) // In Generation 3 games, Imprison fails if the user doesn't share any moves with any of the foes
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -9412,7 +9508,7 @@ static void Cmd_assistattackselect(void)
{
s32 chooseableMovesNo = 0;
struct Pokemon *party;
- s32 monId, moveId;
+ s32 monId, moveIndex;
u16 *validMoves = gBattleStruct->assistPossibleMoves;
if (GET_BATTLER_SIDE(gBattlerAttacker) != B_SIDE_PLAYER)
@@ -9429,10 +9525,10 @@ static void Cmd_assistattackselect(void)
if (GetMonData(&party[monId], MON_DATA_SPECIES_OR_EGG) == SPECIES_EGG)
continue;
- for (moveId = 0; moveId < MAX_MON_MOVES; moveId++)
+ for (moveIndex = 0; moveIndex < MAX_MON_MOVES; moveIndex++)
{
s32 i = 0;
- u16 move = GetMonData(&party[monId], MON_DATA_MOVE1 + moveId);
+ u16 move = GetMonData(&party[monId], MON_DATA_MOVE1 + moveIndex);
if (IsInvalidForSleepTalkOrAssist(move))
continue;
@@ -9522,7 +9618,7 @@ static void Cmd_switchoutabilities(void)
{
case ABILITY_NATURAL_CURE:
gBattleMons[gActiveBattler].status1 = 0;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE,
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE,
gBitTable[*(gBattleStruct->battlerPartyIndexes + gActiveBattler)],
sizeof(gBattleMons[gActiveBattler].status1),
&gBattleMons[gActiveBattler].status1);
@@ -9545,30 +9641,30 @@ static void Cmd_jumpifhasnohp(void)
static void Cmd_getsecretpowereffect(void)
{
- switch (gBattleTerrain)
+ switch (gBattleEnvironment)
{
- case BATTLE_TERRAIN_GRASS:
+ case BATTLE_ENVIRONMENT_GRASS:
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_POISON;
break;
- case BATTLE_TERRAIN_LONG_GRASS:
+ case BATTLE_ENVIRONMENT_LONG_GRASS:
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_SLEEP;
break;
- case BATTLE_TERRAIN_SAND:
+ case BATTLE_ENVIRONMENT_SAND:
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_ACC_MINUS_1;
break;
- case BATTLE_TERRAIN_UNDERWATER:
+ case BATTLE_ENVIRONMENT_UNDERWATER:
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_DEF_MINUS_1;
break;
- case BATTLE_TERRAIN_WATER:
+ case BATTLE_ENVIRONMENT_WATER:
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_ATK_MINUS_1;
break;
- case BATTLE_TERRAIN_POND:
+ case BATTLE_ENVIRONMENT_POND:
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_SPD_MINUS_1;
break;
- case BATTLE_TERRAIN_MOUNTAIN:
+ case BATTLE_ENVIRONMENT_MOUNTAIN:
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_CONFUSION;
break;
- case BATTLE_TERRAIN_CAVE:
+ case BATTLE_ENVIRONMENT_CAVE:
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_FLINCH;
break;
default:
@@ -9588,7 +9684,7 @@ static void Cmd_pickup(void)
{
}
- else if (InBattlePyramid())
+ else if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
for (i = 0; i < PARTY_SIZE; i++)
{
@@ -9662,7 +9758,7 @@ static void Cmd_docastformchangeanimation(void)
if (gBattleMons[gActiveBattler].status2 & STATUS2_SUBSTITUTE)
*(&gBattleStruct->formToChangeInto) |= CASTFORM_SUBSTITUTE;
- BtlController_EmitBattleAnimation(BUFFER_A, B_ANIM_CASTFORM_CHANGE, gBattleStruct->formToChangeInto);
+ BtlController_EmitBattleAnimation(B_COMM_TO_CONTROLLER, B_ANIM_CASTFORM_CHANGE, gBattleStruct->formToChangeInto);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr++;
@@ -9744,7 +9840,7 @@ static void Cmd_tryrecycleitem(void)
*usedHeldItem = ITEM_NONE;
gBattleMons[gActiveBattler].item = gLastUsedItem;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].item), &gBattleMons[gActiveBattler].item);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gActiveBattler].item), &gBattleMons[gActiveBattler].item);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 5;
@@ -9755,12 +9851,12 @@ static void Cmd_tryrecycleitem(void)
}
}
-static void Cmd_settypetoterrain(void)
+static void Cmd_settypetoenvironment(void)
{
- if (!IS_BATTLER_OF_TYPE(gBattlerAttacker, sTerrainToType[gBattleTerrain]))
+ if (!IS_BATTLER_OF_TYPE(gBattlerAttacker, sEnvironmentToType[gBattleEnvironment]))
{
- SET_BATTLER_TYPE(gBattlerAttacker, sTerrainToType[gBattleTerrain]);
- PREPARE_TYPE_BUFFER(gBattleTextBuff1, sTerrainToType[gBattleTerrain]);
+ SET_BATTLER_TYPE(gBattlerAttacker, sEnvironmentToType[gBattleEnvironment]);
+ PREPARE_TYPE_BUFFER(gBattleTextBuff1, sEnvironmentToType[gBattleEnvironment]);
gBattlescriptCurrInstr += 5;
}
@@ -9841,13 +9937,13 @@ static void Cmd_handleballthrow(void)
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
{
- BtlController_EmitBallThrowAnim(BUFFER_A, BALL_TRAINER_BLOCK);
+ BtlController_EmitBallThrowAnim(B_COMM_TO_CONTROLLER, BALL_TRAINER_BLOCK);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr = BattleScript_TrainerBallBlock;
}
else if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL)
{
- BtlController_EmitBallThrowAnim(BUFFER_A, BALL_3_SHAKES_SUCCESS);
+ BtlController_EmitBallThrowAnim(B_COMM_TO_CONTROLLER, BALL_3_SHAKES_SUCCESS);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr = BattleScript_WallyBallThrow;
}
@@ -9907,7 +10003,9 @@ static void Cmd_handleballthrow(void)
}
}
else
+ {
ballMultiplier = sBallCatchBonuses[gLastUsedItem - ITEM_ULTRA_BALL];
+ }
odds = (catchRate * ballMultiplier / 10)
* (gBattleMons[gBattlerTarget].maxHP * 3 - gBattleMons[gBattlerTarget].hp * 2)
@@ -9933,7 +10031,7 @@ static void Cmd_handleballthrow(void)
if (odds > 254) // mon caught
{
- BtlController_EmitBallThrowAnim(BUFFER_A, BALL_3_SHAKES_SUCCESS);
+ BtlController_EmitBallThrowAnim(B_COMM_TO_CONTROLLER, BALL_3_SHAKES_SUCCESS);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr = BattleScript_SuccessBallThrow;
SetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerTarget]], MON_DATA_POKEBALL, &gLastUsedItem);
@@ -9955,7 +10053,7 @@ static void Cmd_handleballthrow(void)
if (gLastUsedItem == ITEM_MASTER_BALL)
shakes = BALL_3_SHAKES_SUCCESS; // why calculate the shakes before that check?
- BtlController_EmitBallThrowAnim(BUFFER_A, shakes);
+ BtlController_EmitBallThrowAnim(B_COMM_TO_CONTROLLER, shakes);
MarkBattlerForControllerExec(gActiveBattler);
if (shakes == BALL_3_SHAKES_SUCCESS) // mon caught, copy of the code above
@@ -10244,7 +10342,7 @@ static void Cmd_finishturn(void)
static void Cmd_trainerslideout(void)
{
gActiveBattler = GetBattlerAtPosition(gBattlescriptCurrInstr[1]);
- BtlController_EmitTrainerSlideBack(BUFFER_A);
+ BtlController_EmitTrainerSlideBack(B_COMM_TO_CONTROLLER);
MarkBattlerForControllerExec(gActiveBattler);
gBattlescriptCurrInstr += 2;
diff --git a/src/battle_setup.c b/src/battle_setup.c
index a9cfc48ffb..41026de725 100644
--- a/src/battle_setup.c
+++ b/src/battle_setup.c
@@ -39,6 +39,7 @@
#include "data.h"
#include "constants/battle_frontier.h"
#include "constants/battle_setup.h"
+#include "constants/event_objects.h"
#include "constants/game_stat.h"
#include "constants/items.h"
#include "constants/songs.h"
@@ -108,7 +109,7 @@ EWRAM_DATA static u8 *sTrainerBBattleScriptRetAddr = NULL;
EWRAM_DATA static bool8 sShouldCheckTrainerBScript = FALSE;
EWRAM_DATA static u8 sNoOfPossibleTrainerRetScripts = 0;
-// The first transition is used if the enemy pokemon are lower level than our pokemon.
+// The first transition is used if the enemy Pokémon are lower level than our Pokémon.
// Otherwise, the second transition is used.
static const u8 sBattleTransitionTable_Wild[][2] =
{
@@ -258,84 +259,84 @@ static const struct TrainerBattleParameter sTrainerBContinueScriptBattleParams[]
const struct RematchTrainer gRematchTable[REMATCH_TABLE_ENTRIES] =
{
- [REMATCH_ROSE] = REMATCH(TRAINER_ROSE_1, TRAINER_ROSE_2, TRAINER_ROSE_3, TRAINER_ROSE_4, TRAINER_ROSE_5, ROUTE118),
- [REMATCH_ANDRES] = REMATCH(TRAINER_ANDRES_1, TRAINER_ANDRES_2, TRAINER_ANDRES_3, TRAINER_ANDRES_4, TRAINER_ANDRES_5, ROUTE105),
- [REMATCH_DUSTY] = REMATCH(TRAINER_DUSTY_1, TRAINER_DUSTY_2, TRAINER_DUSTY_3, TRAINER_DUSTY_4, TRAINER_DUSTY_5, ROUTE111),
- [REMATCH_LOLA] = REMATCH(TRAINER_LOLA_1, TRAINER_LOLA_2, TRAINER_LOLA_3, TRAINER_LOLA_4, TRAINER_LOLA_5, ROUTE109),
- [REMATCH_RICKY] = REMATCH(TRAINER_RICKY_1, TRAINER_RICKY_2, TRAINER_RICKY_3, TRAINER_RICKY_4, TRAINER_RICKY_5, ROUTE109),
- [REMATCH_LILA_AND_ROY] = REMATCH(TRAINER_LILA_AND_ROY_1, TRAINER_LILA_AND_ROY_2, TRAINER_LILA_AND_ROY_3, TRAINER_LILA_AND_ROY_4, TRAINER_LILA_AND_ROY_5, ROUTE124),
- [REMATCH_CRISTIN] = REMATCH(TRAINER_CRISTIN_1, TRAINER_CRISTIN_2, TRAINER_CRISTIN_3, TRAINER_CRISTIN_4, TRAINER_CRISTIN_5, ROUTE121),
- [REMATCH_BROOKE] = REMATCH(TRAINER_BROOKE_1, TRAINER_BROOKE_2, TRAINER_BROOKE_3, TRAINER_BROOKE_4, TRAINER_BROOKE_5, ROUTE111),
- [REMATCH_WILTON] = REMATCH(TRAINER_WILTON_1, TRAINER_WILTON_2, TRAINER_WILTON_3, TRAINER_WILTON_4, TRAINER_WILTON_5, ROUTE111),
- [REMATCH_VALERIE] = REMATCH(TRAINER_VALERIE_1, TRAINER_VALERIE_2, TRAINER_VALERIE_3, TRAINER_VALERIE_4, TRAINER_VALERIE_5, MT_PYRE_6F),
- [REMATCH_CINDY] = REMATCH(TRAINER_CINDY_1, TRAINER_CINDY_3, TRAINER_CINDY_4, TRAINER_CINDY_5, TRAINER_CINDY_6, ROUTE104),
- [REMATCH_THALIA] = REMATCH(TRAINER_THALIA_1, TRAINER_THALIA_2, TRAINER_THALIA_3, TRAINER_THALIA_4, TRAINER_THALIA_5, ABANDONED_SHIP_ROOMS_1F),
- [REMATCH_JESSICA] = REMATCH(TRAINER_JESSICA_1, TRAINER_JESSICA_2, TRAINER_JESSICA_3, TRAINER_JESSICA_4, TRAINER_JESSICA_5, ROUTE121),
- [REMATCH_WINSTON] = REMATCH(TRAINER_WINSTON_1, TRAINER_WINSTON_2, TRAINER_WINSTON_3, TRAINER_WINSTON_4, TRAINER_WINSTON_5, ROUTE104),
- [REMATCH_STEVE] = REMATCH(TRAINER_STEVE_1, TRAINER_STEVE_2, TRAINER_STEVE_3, TRAINER_STEVE_4, TRAINER_STEVE_5, ROUTE114),
- [REMATCH_TONY] = REMATCH(TRAINER_TONY_1, TRAINER_TONY_2, TRAINER_TONY_3, TRAINER_TONY_4, TRAINER_TONY_5, ROUTE107),
- [REMATCH_NOB] = REMATCH(TRAINER_NOB_1, TRAINER_NOB_2, TRAINER_NOB_3, TRAINER_NOB_4, TRAINER_NOB_5, ROUTE115),
- [REMATCH_KOJI] = REMATCH(TRAINER_KOJI_1, TRAINER_KOJI_2, TRAINER_KOJI_3, TRAINER_KOJI_4, TRAINER_KOJI_5, ROUTE127),
- [REMATCH_FERNANDO] = REMATCH(TRAINER_FERNANDO_1, TRAINER_FERNANDO_2, TRAINER_FERNANDO_3, TRAINER_FERNANDO_4, TRAINER_FERNANDO_5, ROUTE123),
- [REMATCH_DALTON] = REMATCH(TRAINER_DALTON_1, TRAINER_DALTON_2, TRAINER_DALTON_3, TRAINER_DALTON_4, TRAINER_DALTON_5, ROUTE118),
- [REMATCH_BERNIE] = REMATCH(TRAINER_BERNIE_1, TRAINER_BERNIE_2, TRAINER_BERNIE_3, TRAINER_BERNIE_4, TRAINER_BERNIE_5, ROUTE114),
- [REMATCH_ETHAN] = REMATCH(TRAINER_ETHAN_1, TRAINER_ETHAN_2, TRAINER_ETHAN_3, TRAINER_ETHAN_4, TRAINER_ETHAN_5, JAGGED_PASS),
- [REMATCH_JOHN_AND_JAY] = REMATCH(TRAINER_JOHN_AND_JAY_1, TRAINER_JOHN_AND_JAY_2, TRAINER_JOHN_AND_JAY_3, TRAINER_JOHN_AND_JAY_4, TRAINER_JOHN_AND_JAY_5, METEOR_FALLS_1F_2R),
- [REMATCH_JEFFREY] = REMATCH(TRAINER_JEFFREY_1, TRAINER_JEFFREY_2, TRAINER_JEFFREY_3, TRAINER_JEFFREY_4, TRAINER_JEFFREY_5, ROUTE120),
- [REMATCH_CAMERON] = REMATCH(TRAINER_CAMERON_1, TRAINER_CAMERON_2, TRAINER_CAMERON_3, TRAINER_CAMERON_4, TRAINER_CAMERON_5, ROUTE123),
- [REMATCH_JACKI] = REMATCH(TRAINER_JACKI_1, TRAINER_JACKI_2, TRAINER_JACKI_3, TRAINER_JACKI_4, TRAINER_JACKI_5, ROUTE123),
- [REMATCH_WALTER] = REMATCH(TRAINER_WALTER_1, TRAINER_WALTER_2, TRAINER_WALTER_3, TRAINER_WALTER_4, TRAINER_WALTER_5, ROUTE121),
- [REMATCH_KAREN] = REMATCH(TRAINER_KAREN_1, TRAINER_KAREN_2, TRAINER_KAREN_3, TRAINER_KAREN_4, TRAINER_KAREN_5, ROUTE116),
- [REMATCH_JERRY] = REMATCH(TRAINER_JERRY_1, TRAINER_JERRY_2, TRAINER_JERRY_3, TRAINER_JERRY_4, TRAINER_JERRY_5, ROUTE116),
- [REMATCH_ANNA_AND_MEG] = REMATCH(TRAINER_ANNA_AND_MEG_1, TRAINER_ANNA_AND_MEG_2, TRAINER_ANNA_AND_MEG_3, TRAINER_ANNA_AND_MEG_4, TRAINER_ANNA_AND_MEG_5, ROUTE117),
- [REMATCH_ISABEL] = REMATCH(TRAINER_ISABEL_1, TRAINER_ISABEL_2, TRAINER_ISABEL_3, TRAINER_ISABEL_4, TRAINER_ISABEL_5, ROUTE110),
- [REMATCH_MIGUEL] = REMATCH(TRAINER_MIGUEL_1, TRAINER_MIGUEL_2, TRAINER_MIGUEL_3, TRAINER_MIGUEL_4, TRAINER_MIGUEL_5, ROUTE103),
- [REMATCH_TIMOTHY] = REMATCH(TRAINER_TIMOTHY_1, TRAINER_TIMOTHY_2, TRAINER_TIMOTHY_3, TRAINER_TIMOTHY_4, TRAINER_TIMOTHY_5, ROUTE115),
- [REMATCH_SHELBY] = REMATCH(TRAINER_SHELBY_1, TRAINER_SHELBY_2, TRAINER_SHELBY_3, TRAINER_SHELBY_4, TRAINER_SHELBY_5, MT_CHIMNEY),
- [REMATCH_CALVIN] = REMATCH(TRAINER_CALVIN_1, TRAINER_CALVIN_2, TRAINER_CALVIN_3, TRAINER_CALVIN_4, TRAINER_CALVIN_5, ROUTE102),
- [REMATCH_ELLIOT] = REMATCH(TRAINER_ELLIOT_1, TRAINER_ELLIOT_2, TRAINER_ELLIOT_3, TRAINER_ELLIOT_4, TRAINER_ELLIOT_5, ROUTE106),
- [REMATCH_ISAIAH] = REMATCH(TRAINER_ISAIAH_1, TRAINER_ISAIAH_2, TRAINER_ISAIAH_3, TRAINER_ISAIAH_4, TRAINER_ISAIAH_5, ROUTE128),
- [REMATCH_MARIA] = REMATCH(TRAINER_MARIA_1, TRAINER_MARIA_2, TRAINER_MARIA_3, TRAINER_MARIA_4, TRAINER_MARIA_5, ROUTE117),
- [REMATCH_ABIGAIL] = REMATCH(TRAINER_ABIGAIL_1, TRAINER_ABIGAIL_2, TRAINER_ABIGAIL_3, TRAINER_ABIGAIL_4, TRAINER_ABIGAIL_5, ROUTE110),
- [REMATCH_DYLAN] = REMATCH(TRAINER_DYLAN_1, TRAINER_DYLAN_2, TRAINER_DYLAN_3, TRAINER_DYLAN_4, TRAINER_DYLAN_5, ROUTE117),
- [REMATCH_KATELYN] = REMATCH(TRAINER_KATELYN_1, TRAINER_KATELYN_2, TRAINER_KATELYN_3, TRAINER_KATELYN_4, TRAINER_KATELYN_5, ROUTE128),
- [REMATCH_BENJAMIN] = REMATCH(TRAINER_BENJAMIN_1, TRAINER_BENJAMIN_2, TRAINER_BENJAMIN_3, TRAINER_BENJAMIN_4, TRAINER_BENJAMIN_5, ROUTE110),
- [REMATCH_PABLO] = REMATCH(TRAINER_PABLO_1, TRAINER_PABLO_2, TRAINER_PABLO_3, TRAINER_PABLO_4, TRAINER_PABLO_5, ROUTE126),
- [REMATCH_NICOLAS] = REMATCH(TRAINER_NICOLAS_1, TRAINER_NICOLAS_2, TRAINER_NICOLAS_3, TRAINER_NICOLAS_4, TRAINER_NICOLAS_5, METEOR_FALLS_1F_2R),
- [REMATCH_ROBERT] = REMATCH(TRAINER_ROBERT_1, TRAINER_ROBERT_2, TRAINER_ROBERT_3, TRAINER_ROBERT_4, TRAINER_ROBERT_5, ROUTE120),
- [REMATCH_LAO] = REMATCH(TRAINER_LAO_1, TRAINER_LAO_2, TRAINER_LAO_3, TRAINER_LAO_4, TRAINER_LAO_5, ROUTE113),
- [REMATCH_CYNDY] = REMATCH(TRAINER_CYNDY_1, TRAINER_CYNDY_2, TRAINER_CYNDY_3, TRAINER_CYNDY_4, TRAINER_CYNDY_5, ROUTE115),
- [REMATCH_MADELINE] = REMATCH(TRAINER_MADELINE_1, TRAINER_MADELINE_2, TRAINER_MADELINE_3, TRAINER_MADELINE_4, TRAINER_MADELINE_5, ROUTE113),
- [REMATCH_JENNY] = REMATCH(TRAINER_JENNY_1, TRAINER_JENNY_2, TRAINER_JENNY_3, TRAINER_JENNY_4, TRAINER_JENNY_5, ROUTE124),
- [REMATCH_DIANA] = REMATCH(TRAINER_DIANA_1, TRAINER_DIANA_2, TRAINER_DIANA_3, TRAINER_DIANA_4, TRAINER_DIANA_5, JAGGED_PASS),
- [REMATCH_AMY_AND_LIV] = REMATCH(TRAINER_AMY_AND_LIV_1, TRAINER_AMY_AND_LIV_2, TRAINER_AMY_AND_LIV_4, TRAINER_AMY_AND_LIV_5, TRAINER_AMY_AND_LIV_6, ROUTE103),
- [REMATCH_ERNEST] = REMATCH(TRAINER_ERNEST_1, TRAINER_ERNEST_2, TRAINER_ERNEST_3, TRAINER_ERNEST_4, TRAINER_ERNEST_5, ROUTE125),
- [REMATCH_CORY] = REMATCH(TRAINER_CORY_1, TRAINER_CORY_2, TRAINER_CORY_3, TRAINER_CORY_4, TRAINER_CORY_5, ROUTE108),
- [REMATCH_EDWIN] = REMATCH(TRAINER_EDWIN_1, TRAINER_EDWIN_2, TRAINER_EDWIN_3, TRAINER_EDWIN_4, TRAINER_EDWIN_5, ROUTE110),
- [REMATCH_LYDIA] = REMATCH(TRAINER_LYDIA_1, TRAINER_LYDIA_2, TRAINER_LYDIA_3, TRAINER_LYDIA_4, TRAINER_LYDIA_5, ROUTE117),
- [REMATCH_ISAAC] = REMATCH(TRAINER_ISAAC_1, TRAINER_ISAAC_2, TRAINER_ISAAC_3, TRAINER_ISAAC_4, TRAINER_ISAAC_5, ROUTE117),
- [REMATCH_GABRIELLE] = REMATCH(TRAINER_GABRIELLE_1, TRAINER_GABRIELLE_2, TRAINER_GABRIELLE_3, TRAINER_GABRIELLE_4, TRAINER_GABRIELLE_5, MT_PYRE_3F),
- [REMATCH_CATHERINE] = REMATCH(TRAINER_CATHERINE_1, TRAINER_CATHERINE_2, TRAINER_CATHERINE_3, TRAINER_CATHERINE_4, TRAINER_CATHERINE_5, ROUTE119),
- [REMATCH_JACKSON] = REMATCH(TRAINER_JACKSON_1, TRAINER_JACKSON_2, TRAINER_JACKSON_3, TRAINER_JACKSON_4, TRAINER_JACKSON_5, ROUTE119),
- [REMATCH_HALEY] = REMATCH(TRAINER_HALEY_1, TRAINER_HALEY_2, TRAINER_HALEY_3, TRAINER_HALEY_4, TRAINER_HALEY_5, ROUTE104),
- [REMATCH_JAMES] = REMATCH(TRAINER_JAMES_1, TRAINER_JAMES_2, TRAINER_JAMES_3, TRAINER_JAMES_4, TRAINER_JAMES_5, PETALBURG_WOODS),
- [REMATCH_TRENT] = REMATCH(TRAINER_TRENT_1, TRAINER_TRENT_2, TRAINER_TRENT_3, TRAINER_TRENT_4, TRAINER_TRENT_5, ROUTE112),
- [REMATCH_SAWYER] = REMATCH(TRAINER_SAWYER_1, TRAINER_SAWYER_2, TRAINER_SAWYER_3, TRAINER_SAWYER_4, TRAINER_SAWYER_5, MT_CHIMNEY),
- [REMATCH_KIRA_AND_DAN] = REMATCH(TRAINER_KIRA_AND_DAN_1, TRAINER_KIRA_AND_DAN_2, TRAINER_KIRA_AND_DAN_3, TRAINER_KIRA_AND_DAN_4, TRAINER_KIRA_AND_DAN_5, ABANDONED_SHIP_ROOMS2_1F),
- [REMATCH_WALLY_VR] = REMATCH(TRAINER_WALLY_VR_2, TRAINER_WALLY_VR_3, TRAINER_WALLY_VR_4, TRAINER_WALLY_VR_5, TRAINER_WALLY_VR_5, VICTORY_ROAD_1F),
- [REMATCH_ROXANNE] = REMATCH(TRAINER_ROXANNE_1, TRAINER_ROXANNE_2, TRAINER_ROXANNE_3, TRAINER_ROXANNE_4, TRAINER_ROXANNE_5, RUSTBORO_CITY),
- [REMATCH_BRAWLY] = REMATCH(TRAINER_BRAWLY_1, TRAINER_BRAWLY_2, TRAINER_BRAWLY_3, TRAINER_BRAWLY_4, TRAINER_BRAWLY_5, DEWFORD_TOWN),
- [REMATCH_WATTSON] = REMATCH(TRAINER_WATTSON_1, TRAINER_WATTSON_2, TRAINER_WATTSON_3, TRAINER_WATTSON_4, TRAINER_WATTSON_5, MAUVILLE_CITY),
- [REMATCH_FLANNERY] = REMATCH(TRAINER_FLANNERY_1, TRAINER_FLANNERY_2, TRAINER_FLANNERY_3, TRAINER_FLANNERY_4, TRAINER_FLANNERY_5, LAVARIDGE_TOWN),
- [REMATCH_NORMAN] = REMATCH(TRAINER_NORMAN_1, TRAINER_NORMAN_2, TRAINER_NORMAN_3, TRAINER_NORMAN_4, TRAINER_NORMAN_5, PETALBURG_CITY),
- [REMATCH_WINONA] = REMATCH(TRAINER_WINONA_1, TRAINER_WINONA_2, TRAINER_WINONA_3, TRAINER_WINONA_4, TRAINER_WINONA_5, FORTREE_CITY),
- [REMATCH_TATE_AND_LIZA] = REMATCH(TRAINER_TATE_AND_LIZA_1, TRAINER_TATE_AND_LIZA_2, TRAINER_TATE_AND_LIZA_3, TRAINER_TATE_AND_LIZA_4, TRAINER_TATE_AND_LIZA_5, MOSSDEEP_CITY),
- [REMATCH_JUAN] = REMATCH(TRAINER_JUAN_1, TRAINER_JUAN_2, TRAINER_JUAN_3, TRAINER_JUAN_4, TRAINER_JUAN_5, SOOTOPOLIS_CITY),
- [REMATCH_SIDNEY] = REMATCH(TRAINER_SIDNEY, TRAINER_SIDNEY, TRAINER_SIDNEY, TRAINER_SIDNEY, TRAINER_SIDNEY, EVER_GRANDE_CITY),
- [REMATCH_PHOEBE] = REMATCH(TRAINER_PHOEBE, TRAINER_PHOEBE, TRAINER_PHOEBE, TRAINER_PHOEBE, TRAINER_PHOEBE, EVER_GRANDE_CITY),
- [REMATCH_GLACIA] = REMATCH(TRAINER_GLACIA, TRAINER_GLACIA, TRAINER_GLACIA, TRAINER_GLACIA, TRAINER_GLACIA, EVER_GRANDE_CITY),
- [REMATCH_DRAKE] = REMATCH(TRAINER_DRAKE, TRAINER_DRAKE, TRAINER_DRAKE, TRAINER_DRAKE, TRAINER_DRAKE, EVER_GRANDE_CITY),
- [REMATCH_WALLACE] = REMATCH(TRAINER_WALLACE, TRAINER_WALLACE, TRAINER_WALLACE, TRAINER_WALLACE, TRAINER_WALLACE, EVER_GRANDE_CITY),
+ [REMATCH_ROSE] = REMATCH(TRAINER_ROSE_1, TRAINER_ROSE_2, TRAINER_ROSE_3, TRAINER_ROSE_4, TRAINER_ROSE_5, MAP_ROUTE118),
+ [REMATCH_ANDRES] = REMATCH(TRAINER_ANDRES_1, TRAINER_ANDRES_2, TRAINER_ANDRES_3, TRAINER_ANDRES_4, TRAINER_ANDRES_5, MAP_ROUTE105),
+ [REMATCH_DUSTY] = REMATCH(TRAINER_DUSTY_1, TRAINER_DUSTY_2, TRAINER_DUSTY_3, TRAINER_DUSTY_4, TRAINER_DUSTY_5, MAP_ROUTE111),
+ [REMATCH_LOLA] = REMATCH(TRAINER_LOLA_1, TRAINER_LOLA_2, TRAINER_LOLA_3, TRAINER_LOLA_4, TRAINER_LOLA_5, MAP_ROUTE109),
+ [REMATCH_RICKY] = REMATCH(TRAINER_RICKY_1, TRAINER_RICKY_2, TRAINER_RICKY_3, TRAINER_RICKY_4, TRAINER_RICKY_5, MAP_ROUTE109),
+ [REMATCH_LILA_AND_ROY] = REMATCH(TRAINER_LILA_AND_ROY_1, TRAINER_LILA_AND_ROY_2, TRAINER_LILA_AND_ROY_3, TRAINER_LILA_AND_ROY_4, TRAINER_LILA_AND_ROY_5, MAP_ROUTE124),
+ [REMATCH_CRISTIN] = REMATCH(TRAINER_CRISTIN_1, TRAINER_CRISTIN_2, TRAINER_CRISTIN_3, TRAINER_CRISTIN_4, TRAINER_CRISTIN_5, MAP_ROUTE121),
+ [REMATCH_BROOKE] = REMATCH(TRAINER_BROOKE_1, TRAINER_BROOKE_2, TRAINER_BROOKE_3, TRAINER_BROOKE_4, TRAINER_BROOKE_5, MAP_ROUTE111),
+ [REMATCH_WILTON] = REMATCH(TRAINER_WILTON_1, TRAINER_WILTON_2, TRAINER_WILTON_3, TRAINER_WILTON_4, TRAINER_WILTON_5, MAP_ROUTE111),
+ [REMATCH_VALERIE] = REMATCH(TRAINER_VALERIE_1, TRAINER_VALERIE_2, TRAINER_VALERIE_3, TRAINER_VALERIE_4, TRAINER_VALERIE_5, MAP_MT_PYRE_6F),
+ [REMATCH_CINDY] = REMATCH(TRAINER_CINDY_1, TRAINER_CINDY_3, TRAINER_CINDY_4, TRAINER_CINDY_5, TRAINER_CINDY_6, MAP_ROUTE104),
+ [REMATCH_THALIA] = REMATCH(TRAINER_THALIA_1, TRAINER_THALIA_2, TRAINER_THALIA_3, TRAINER_THALIA_4, TRAINER_THALIA_5, MAP_ABANDONED_SHIP_ROOMS_1F),
+ [REMATCH_JESSICA] = REMATCH(TRAINER_JESSICA_1, TRAINER_JESSICA_2, TRAINER_JESSICA_3, TRAINER_JESSICA_4, TRAINER_JESSICA_5, MAP_ROUTE121),
+ [REMATCH_WINSTON] = REMATCH(TRAINER_WINSTON_1, TRAINER_WINSTON_2, TRAINER_WINSTON_3, TRAINER_WINSTON_4, TRAINER_WINSTON_5, MAP_ROUTE104),
+ [REMATCH_STEVE] = REMATCH(TRAINER_STEVE_1, TRAINER_STEVE_2, TRAINER_STEVE_3, TRAINER_STEVE_4, TRAINER_STEVE_5, MAP_ROUTE114),
+ [REMATCH_TONY] = REMATCH(TRAINER_TONY_1, TRAINER_TONY_2, TRAINER_TONY_3, TRAINER_TONY_4, TRAINER_TONY_5, MAP_ROUTE107),
+ [REMATCH_NOB] = REMATCH(TRAINER_NOB_1, TRAINER_NOB_2, TRAINER_NOB_3, TRAINER_NOB_4, TRAINER_NOB_5, MAP_ROUTE115),
+ [REMATCH_KOJI] = REMATCH(TRAINER_KOJI_1, TRAINER_KOJI_2, TRAINER_KOJI_3, TRAINER_KOJI_4, TRAINER_KOJI_5, MAP_ROUTE127),
+ [REMATCH_FERNANDO] = REMATCH(TRAINER_FERNANDO_1, TRAINER_FERNANDO_2, TRAINER_FERNANDO_3, TRAINER_FERNANDO_4, TRAINER_FERNANDO_5, MAP_ROUTE123),
+ [REMATCH_DALTON] = REMATCH(TRAINER_DALTON_1, TRAINER_DALTON_2, TRAINER_DALTON_3, TRAINER_DALTON_4, TRAINER_DALTON_5, MAP_ROUTE118),
+ [REMATCH_BERNIE] = REMATCH(TRAINER_BERNIE_1, TRAINER_BERNIE_2, TRAINER_BERNIE_3, TRAINER_BERNIE_4, TRAINER_BERNIE_5, MAP_ROUTE114),
+ [REMATCH_ETHAN] = REMATCH(TRAINER_ETHAN_1, TRAINER_ETHAN_2, TRAINER_ETHAN_3, TRAINER_ETHAN_4, TRAINER_ETHAN_5, MAP_JAGGED_PASS),
+ [REMATCH_JOHN_AND_JAY] = REMATCH(TRAINER_JOHN_AND_JAY_1, TRAINER_JOHN_AND_JAY_2, TRAINER_JOHN_AND_JAY_3, TRAINER_JOHN_AND_JAY_4, TRAINER_JOHN_AND_JAY_5, MAP_METEOR_FALLS_1F_2R),
+ [REMATCH_JEFFREY] = REMATCH(TRAINER_JEFFREY_1, TRAINER_JEFFREY_2, TRAINER_JEFFREY_3, TRAINER_JEFFREY_4, TRAINER_JEFFREY_5, MAP_ROUTE120),
+ [REMATCH_CAMERON] = REMATCH(TRAINER_CAMERON_1, TRAINER_CAMERON_2, TRAINER_CAMERON_3, TRAINER_CAMERON_4, TRAINER_CAMERON_5, MAP_ROUTE123),
+ [REMATCH_JACKI] = REMATCH(TRAINER_JACKI_1, TRAINER_JACKI_2, TRAINER_JACKI_3, TRAINER_JACKI_4, TRAINER_JACKI_5, MAP_ROUTE123),
+ [REMATCH_WALTER] = REMATCH(TRAINER_WALTER_1, TRAINER_WALTER_2, TRAINER_WALTER_3, TRAINER_WALTER_4, TRAINER_WALTER_5, MAP_ROUTE121),
+ [REMATCH_KAREN] = REMATCH(TRAINER_KAREN_1, TRAINER_KAREN_2, TRAINER_KAREN_3, TRAINER_KAREN_4, TRAINER_KAREN_5, MAP_ROUTE116),
+ [REMATCH_JERRY] = REMATCH(TRAINER_JERRY_1, TRAINER_JERRY_2, TRAINER_JERRY_3, TRAINER_JERRY_4, TRAINER_JERRY_5, MAP_ROUTE116),
+ [REMATCH_ANNA_AND_MEG] = REMATCH(TRAINER_ANNA_AND_MEG_1, TRAINER_ANNA_AND_MEG_2, TRAINER_ANNA_AND_MEG_3, TRAINER_ANNA_AND_MEG_4, TRAINER_ANNA_AND_MEG_5, MAP_ROUTE117),
+ [REMATCH_ISABEL] = REMATCH(TRAINER_ISABEL_1, TRAINER_ISABEL_2, TRAINER_ISABEL_3, TRAINER_ISABEL_4, TRAINER_ISABEL_5, MAP_ROUTE110),
+ [REMATCH_MIGUEL] = REMATCH(TRAINER_MIGUEL_1, TRAINER_MIGUEL_2, TRAINER_MIGUEL_3, TRAINER_MIGUEL_4, TRAINER_MIGUEL_5, MAP_ROUTE103),
+ [REMATCH_TIMOTHY] = REMATCH(TRAINER_TIMOTHY_1, TRAINER_TIMOTHY_2, TRAINER_TIMOTHY_3, TRAINER_TIMOTHY_4, TRAINER_TIMOTHY_5, MAP_ROUTE115),
+ [REMATCH_SHELBY] = REMATCH(TRAINER_SHELBY_1, TRAINER_SHELBY_2, TRAINER_SHELBY_3, TRAINER_SHELBY_4, TRAINER_SHELBY_5, MAP_MT_CHIMNEY),
+ [REMATCH_CALVIN] = REMATCH(TRAINER_CALVIN_1, TRAINER_CALVIN_2, TRAINER_CALVIN_3, TRAINER_CALVIN_4, TRAINER_CALVIN_5, MAP_ROUTE102),
+ [REMATCH_ELLIOT] = REMATCH(TRAINER_ELLIOT_1, TRAINER_ELLIOT_2, TRAINER_ELLIOT_3, TRAINER_ELLIOT_4, TRAINER_ELLIOT_5, MAP_ROUTE106),
+ [REMATCH_ISAIAH] = REMATCH(TRAINER_ISAIAH_1, TRAINER_ISAIAH_2, TRAINER_ISAIAH_3, TRAINER_ISAIAH_4, TRAINER_ISAIAH_5, MAP_ROUTE128),
+ [REMATCH_MARIA] = REMATCH(TRAINER_MARIA_1, TRAINER_MARIA_2, TRAINER_MARIA_3, TRAINER_MARIA_4, TRAINER_MARIA_5, MAP_ROUTE117),
+ [REMATCH_ABIGAIL] = REMATCH(TRAINER_ABIGAIL_1, TRAINER_ABIGAIL_2, TRAINER_ABIGAIL_3, TRAINER_ABIGAIL_4, TRAINER_ABIGAIL_5, MAP_ROUTE110),
+ [REMATCH_DYLAN] = REMATCH(TRAINER_DYLAN_1, TRAINER_DYLAN_2, TRAINER_DYLAN_3, TRAINER_DYLAN_4, TRAINER_DYLAN_5, MAP_ROUTE117),
+ [REMATCH_KATELYN] = REMATCH(TRAINER_KATELYN_1, TRAINER_KATELYN_2, TRAINER_KATELYN_3, TRAINER_KATELYN_4, TRAINER_KATELYN_5, MAP_ROUTE128),
+ [REMATCH_BENJAMIN] = REMATCH(TRAINER_BENJAMIN_1, TRAINER_BENJAMIN_2, TRAINER_BENJAMIN_3, TRAINER_BENJAMIN_4, TRAINER_BENJAMIN_5, MAP_ROUTE110),
+ [REMATCH_PABLO] = REMATCH(TRAINER_PABLO_1, TRAINER_PABLO_2, TRAINER_PABLO_3, TRAINER_PABLO_4, TRAINER_PABLO_5, MAP_ROUTE126),
+ [REMATCH_NICOLAS] = REMATCH(TRAINER_NICOLAS_1, TRAINER_NICOLAS_2, TRAINER_NICOLAS_3, TRAINER_NICOLAS_4, TRAINER_NICOLAS_5, MAP_METEOR_FALLS_1F_2R),
+ [REMATCH_ROBERT] = REMATCH(TRAINER_ROBERT_1, TRAINER_ROBERT_2, TRAINER_ROBERT_3, TRAINER_ROBERT_4, TRAINER_ROBERT_5, MAP_ROUTE120),
+ [REMATCH_LAO] = REMATCH(TRAINER_LAO_1, TRAINER_LAO_2, TRAINER_LAO_3, TRAINER_LAO_4, TRAINER_LAO_5, MAP_ROUTE113),
+ [REMATCH_CYNDY] = REMATCH(TRAINER_CYNDY_1, TRAINER_CYNDY_2, TRAINER_CYNDY_3, TRAINER_CYNDY_4, TRAINER_CYNDY_5, MAP_ROUTE115),
+ [REMATCH_MADELINE] = REMATCH(TRAINER_MADELINE_1, TRAINER_MADELINE_2, TRAINER_MADELINE_3, TRAINER_MADELINE_4, TRAINER_MADELINE_5, MAP_ROUTE113),
+ [REMATCH_JENNY] = REMATCH(TRAINER_JENNY_1, TRAINER_JENNY_2, TRAINER_JENNY_3, TRAINER_JENNY_4, TRAINER_JENNY_5, MAP_ROUTE124),
+ [REMATCH_DIANA] = REMATCH(TRAINER_DIANA_1, TRAINER_DIANA_2, TRAINER_DIANA_3, TRAINER_DIANA_4, TRAINER_DIANA_5, MAP_JAGGED_PASS),
+ [REMATCH_AMY_AND_LIV] = REMATCH(TRAINER_AMY_AND_LIV_1, TRAINER_AMY_AND_LIV_2, TRAINER_AMY_AND_LIV_4, TRAINER_AMY_AND_LIV_5, TRAINER_AMY_AND_LIV_6, MAP_ROUTE103),
+ [REMATCH_ERNEST] = REMATCH(TRAINER_ERNEST_1, TRAINER_ERNEST_2, TRAINER_ERNEST_3, TRAINER_ERNEST_4, TRAINER_ERNEST_5, MAP_ROUTE125),
+ [REMATCH_CORY] = REMATCH(TRAINER_CORY_1, TRAINER_CORY_2, TRAINER_CORY_3, TRAINER_CORY_4, TRAINER_CORY_5, MAP_ROUTE108),
+ [REMATCH_EDWIN] = REMATCH(TRAINER_EDWIN_1, TRAINER_EDWIN_2, TRAINER_EDWIN_3, TRAINER_EDWIN_4, TRAINER_EDWIN_5, MAP_ROUTE110),
+ [REMATCH_LYDIA] = REMATCH(TRAINER_LYDIA_1, TRAINER_LYDIA_2, TRAINER_LYDIA_3, TRAINER_LYDIA_4, TRAINER_LYDIA_5, MAP_ROUTE117),
+ [REMATCH_ISAAC] = REMATCH(TRAINER_ISAAC_1, TRAINER_ISAAC_2, TRAINER_ISAAC_3, TRAINER_ISAAC_4, TRAINER_ISAAC_5, MAP_ROUTE117),
+ [REMATCH_GABRIELLE] = REMATCH(TRAINER_GABRIELLE_1, TRAINER_GABRIELLE_2, TRAINER_GABRIELLE_3, TRAINER_GABRIELLE_4, TRAINER_GABRIELLE_5, MAP_MT_PYRE_3F),
+ [REMATCH_CATHERINE] = REMATCH(TRAINER_CATHERINE_1, TRAINER_CATHERINE_2, TRAINER_CATHERINE_3, TRAINER_CATHERINE_4, TRAINER_CATHERINE_5, MAP_ROUTE119),
+ [REMATCH_JACKSON] = REMATCH(TRAINER_JACKSON_1, TRAINER_JACKSON_2, TRAINER_JACKSON_3, TRAINER_JACKSON_4, TRAINER_JACKSON_5, MAP_ROUTE119),
+ [REMATCH_HALEY] = REMATCH(TRAINER_HALEY_1, TRAINER_HALEY_2, TRAINER_HALEY_3, TRAINER_HALEY_4, TRAINER_HALEY_5, MAP_ROUTE104),
+ [REMATCH_JAMES] = REMATCH(TRAINER_JAMES_1, TRAINER_JAMES_2, TRAINER_JAMES_3, TRAINER_JAMES_4, TRAINER_JAMES_5, MAP_PETALBURG_WOODS),
+ [REMATCH_TRENT] = REMATCH(TRAINER_TRENT_1, TRAINER_TRENT_2, TRAINER_TRENT_3, TRAINER_TRENT_4, TRAINER_TRENT_5, MAP_ROUTE112),
+ [REMATCH_SAWYER] = REMATCH(TRAINER_SAWYER_1, TRAINER_SAWYER_2, TRAINER_SAWYER_3, TRAINER_SAWYER_4, TRAINER_SAWYER_5, MAP_MT_CHIMNEY),
+ [REMATCH_KIRA_AND_DAN] = REMATCH(TRAINER_KIRA_AND_DAN_1, TRAINER_KIRA_AND_DAN_2, TRAINER_KIRA_AND_DAN_3, TRAINER_KIRA_AND_DAN_4, TRAINER_KIRA_AND_DAN_5, MAP_ABANDONED_SHIP_ROOMS2_1F),
+ [REMATCH_WALLY_VR] = REMATCH(TRAINER_WALLY_VR_2, TRAINER_WALLY_VR_3, TRAINER_WALLY_VR_4, TRAINER_WALLY_VR_5, TRAINER_WALLY_VR_5, MAP_VICTORY_ROAD_1F),
+ [REMATCH_ROXANNE] = REMATCH(TRAINER_ROXANNE_1, TRAINER_ROXANNE_2, TRAINER_ROXANNE_3, TRAINER_ROXANNE_4, TRAINER_ROXANNE_5, MAP_RUSTBORO_CITY),
+ [REMATCH_BRAWLY] = REMATCH(TRAINER_BRAWLY_1, TRAINER_BRAWLY_2, TRAINER_BRAWLY_3, TRAINER_BRAWLY_4, TRAINER_BRAWLY_5, MAP_DEWFORD_TOWN),
+ [REMATCH_WATTSON] = REMATCH(TRAINER_WATTSON_1, TRAINER_WATTSON_2, TRAINER_WATTSON_3, TRAINER_WATTSON_4, TRAINER_WATTSON_5, MAP_MAUVILLE_CITY),
+ [REMATCH_FLANNERY] = REMATCH(TRAINER_FLANNERY_1, TRAINER_FLANNERY_2, TRAINER_FLANNERY_3, TRAINER_FLANNERY_4, TRAINER_FLANNERY_5, MAP_LAVARIDGE_TOWN),
+ [REMATCH_NORMAN] = REMATCH(TRAINER_NORMAN_1, TRAINER_NORMAN_2, TRAINER_NORMAN_3, TRAINER_NORMAN_4, TRAINER_NORMAN_5, MAP_PETALBURG_CITY),
+ [REMATCH_WINONA] = REMATCH(TRAINER_WINONA_1, TRAINER_WINONA_2, TRAINER_WINONA_3, TRAINER_WINONA_4, TRAINER_WINONA_5, MAP_FORTREE_CITY),
+ [REMATCH_TATE_AND_LIZA] = REMATCH(TRAINER_TATE_AND_LIZA_1, TRAINER_TATE_AND_LIZA_2, TRAINER_TATE_AND_LIZA_3, TRAINER_TATE_AND_LIZA_4, TRAINER_TATE_AND_LIZA_5, MAP_MOSSDEEP_CITY),
+ [REMATCH_JUAN] = REMATCH(TRAINER_JUAN_1, TRAINER_JUAN_2, TRAINER_JUAN_3, TRAINER_JUAN_4, TRAINER_JUAN_5, MAP_SOOTOPOLIS_CITY),
+ [REMATCH_SIDNEY] = REMATCH(TRAINER_SIDNEY, TRAINER_SIDNEY, TRAINER_SIDNEY, TRAINER_SIDNEY, TRAINER_SIDNEY, MAP_EVER_GRANDE_CITY),
+ [REMATCH_PHOEBE] = REMATCH(TRAINER_PHOEBE, TRAINER_PHOEBE, TRAINER_PHOEBE, TRAINER_PHOEBE, TRAINER_PHOEBE, MAP_EVER_GRANDE_CITY),
+ [REMATCH_GLACIA] = REMATCH(TRAINER_GLACIA, TRAINER_GLACIA, TRAINER_GLACIA, TRAINER_GLACIA, TRAINER_GLACIA, MAP_EVER_GRANDE_CITY),
+ [REMATCH_DRAKE] = REMATCH(TRAINER_DRAKE, TRAINER_DRAKE, TRAINER_DRAKE, TRAINER_DRAKE, TRAINER_DRAKE, MAP_EVER_GRANDE_CITY),
+ [REMATCH_WALLACE] = REMATCH(TRAINER_WALLACE, TRAINER_WALLACE, TRAINER_WALLACE, TRAINER_WALLACE, TRAINER_WALLACE, MAP_EVER_GRANDE_CITY),
};
static const u16 sBadgeFlags[NUM_BADGES] =
@@ -405,7 +406,7 @@ static void DoStandardWildBattle(void)
StopPlayerAvatar();
gMain.savedCallback = CB2_EndWildBattle;
gBattleTypeFlags = 0;
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
VarSet(VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0);
gBattleTypeFlags |= BATTLE_TYPE_PYRAMID;
@@ -465,7 +466,7 @@ static void DoTrainerBattle(void)
static void DoBattlePyramidTrainerHillBattle(void)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
CreateBattleStartTask(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_PYRAMID), 0);
else
CreateBattleStartTask(GetSpecialBattleTransition(B_TRANSITION_GROUP_TRAINER_HILL), 0);
@@ -603,7 +604,7 @@ static void CB2_EndWildBattle(void)
CpuFill16(0, (void *)(BG_PLTT), BG_PLTT_SIZE);
ResetOamRange(0, 128);
- if (IsPlayerDefeated(gBattleOutcome) == TRUE && !InBattlePyramid() && !InBattlePike())
+ if (IsPlayerDefeated(gBattleOutcome) == TRUE && CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE && !InBattlePike())
{
SetMainCallback2(CB2_WhiteOut);
}
@@ -621,7 +622,7 @@ static void CB2_EndScriptedWildBattle(void)
if (IsPlayerDefeated(gBattleOutcome) == TRUE)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
else
SetMainCallback2(CB2_WhiteOut);
@@ -632,7 +633,7 @@ static void CB2_EndScriptedWildBattle(void)
}
}
-u8 BattleSetup_GetTerrainId(void)
+u8 BattleSetup_GetEnvironmentId(void)
{
u16 tileBehavior;
s16 x, y;
@@ -641,11 +642,11 @@ u8 BattleSetup_GetTerrainId(void)
tileBehavior = MapGridGetMetatileBehaviorAt(x, y);
if (MetatileBehavior_IsTallGrass(tileBehavior))
- return BATTLE_TERRAIN_GRASS;
+ return BATTLE_ENVIRONMENT_GRASS;
if (MetatileBehavior_IsLongGrass(tileBehavior))
- return BATTLE_TERRAIN_LONG_GRASS;
+ return BATTLE_ENVIRONMENT_LONG_GRASS;
if (MetatileBehavior_IsSandOrDeepSand(tileBehavior))
- return BATTLE_TERRAIN_SAND;
+ return BATTLE_ENVIRONMENT_SAND;
switch (gMapHeader.mapType)
{
@@ -655,41 +656,41 @@ u8 BattleSetup_GetTerrainId(void)
break;
case MAP_TYPE_UNDERGROUND:
if (MetatileBehavior_IsIndoorEncounter(tileBehavior))
- return BATTLE_TERRAIN_BUILDING;
+ return BATTLE_ENVIRONMENT_BUILDING;
if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior))
- return BATTLE_TERRAIN_POND;
- return BATTLE_TERRAIN_CAVE;
+ return BATTLE_ENVIRONMENT_POND;
+ return BATTLE_ENVIRONMENT_CAVE;
case MAP_TYPE_INDOOR:
case MAP_TYPE_SECRET_BASE:
- return BATTLE_TERRAIN_BUILDING;
+ return BATTLE_ENVIRONMENT_BUILDING;
case MAP_TYPE_UNDERWATER:
- return BATTLE_TERRAIN_UNDERWATER;
+ return BATTLE_ENVIRONMENT_UNDERWATER;
case MAP_TYPE_OCEAN_ROUTE:
if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior))
- return BATTLE_TERRAIN_WATER;
- return BATTLE_TERRAIN_PLAIN;
+ return BATTLE_ENVIRONMENT_WATER;
+ return BATTLE_ENVIRONMENT_PLAIN;
}
if (MetatileBehavior_IsDeepOrOceanWater(tileBehavior))
- return BATTLE_TERRAIN_WATER;
+ return BATTLE_ENVIRONMENT_WATER;
if (MetatileBehavior_IsSurfableWaterOrUnderwater(tileBehavior))
- return BATTLE_TERRAIN_POND;
+ return BATTLE_ENVIRONMENT_POND;
if (MetatileBehavior_IsMountain(tileBehavior))
- return BATTLE_TERRAIN_MOUNTAIN;
+ return BATTLE_ENVIRONMENT_MOUNTAIN;
if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING))
{
// Is BRIDGE_TYPE_POND_*?
if (MetatileBehavior_GetBridgeType(tileBehavior) != BRIDGE_TYPE_OCEAN)
- return BATTLE_TERRAIN_POND;
+ return BATTLE_ENVIRONMENT_POND;
if (MetatileBehavior_IsBridgeOverWater(tileBehavior) == TRUE)
- return BATTLE_TERRAIN_WATER;
+ return BATTLE_ENVIRONMENT_WATER;
}
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE113) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE113))
- return BATTLE_TERRAIN_SAND;
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ROUTE113) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ROUTE113))
+ return BATTLE_ENVIRONMENT_SAND;
if (GetSavedWeather() == WEATHER_SANDSTORM)
- return BATTLE_TERRAIN_SAND;
+ return BATTLE_ENVIRONMENT_SAND;
- return BATTLE_TERRAIN_PLAIN;
+ return BATTLE_ENVIRONMENT_PLAIN;
}
static u8 GetBattleTransitionTypeByMap(void)
@@ -794,14 +795,14 @@ static u8 GetWildBattleTransition(void)
if (enemyLevel < playerLevel)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
return B_TRANSITION_BLUR;
else
return sBattleTransitionTable_Wild[transitionType][0];
}
else
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
return B_TRANSITION_GRID_SQUARES;
else
return sBattleTransitionTable_Wild[transitionType][1];
@@ -845,7 +846,7 @@ static u8 GetTrainerBattleTransition(void)
return B_TRANSITION_AQUA;
if (gTrainers[gTrainerBattleOpponent_A].doubleBattle == TRUE)
- minPartyCount = 2; // double battles always at least have 2 pokemon.
+ minPartyCount = 2; // double battles always at least have 2 Pokémon.
else
minPartyCount = 1;
@@ -859,7 +860,7 @@ static u8 GetTrainerBattleTransition(void)
return sBattleTransitionTable_Trainer[transitionType][1];
}
-#define RANDOM_TRANSITION(table)(table[Random() % ARRAY_COUNT(table)])
+#define RANDOM_TRANSITION(table) (table[Random() % ARRAY_COUNT(table)])
u8 GetSpecialBattleTransition(s32 id)
{
u16 var;
@@ -1092,7 +1093,7 @@ static void TrainerBattleLoadArgs(const struct TrainerBattleParameter *specs, co
void SetMapVarsToTrainer(void)
{
- if (sTrainerObjectEventLocalId != 0)
+ if (sTrainerObjectEventLocalId != LOCALID_NONE)
{
gSpecialVar_LastTalked = sTrainerObjectEventLocalId;
gSelectedObjectEvent = GetObjectEventIdByLocalIdAndMap(sTrainerObjectEventLocalId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
@@ -1233,7 +1234,7 @@ u8 GetTrainerBattleMode(void)
bool8 GetTrainerFlag(void)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
return GetBattlePyramidTrainerFlag(gSelectedObjectEvent);
else if (InTrainerHill())
return GetHillTrainerFlag(gSelectedObjectEvent);
@@ -1275,7 +1276,7 @@ void BattleSetup_StartTrainerBattle(void)
else
gBattleTypeFlags = (BATTLE_TYPE_TRAINER);
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
VarSet(VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0);
gBattleTypeFlags |= BATTLE_TYPE_PYRAMID;
@@ -1315,7 +1316,7 @@ void BattleSetup_StartTrainerBattle(void)
gWhichTrainerToFaceAfterBattle = 0;
gMain.savedCallback = CB2_EndTrainerBattle;
- if (InBattlePyramid() || InTrainerHillChallenge())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || InTrainerHillChallenge())
DoBattlePyramidTrainerHillBattle();
else
DoTrainerBattle();
@@ -1331,7 +1332,7 @@ static void CB2_EndTrainerBattle(void)
}
else if (IsPlayerDefeated(gBattleOutcome) == TRUE)
{
- if (InBattlePyramid() || InTrainerHillChallenge())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || InTrainerHillChallenge())
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
else
SetMainCallback2(CB2_WhiteOut);
@@ -1339,7 +1340,7 @@ static void CB2_EndTrainerBattle(void)
else
{
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
- if (!InBattlePyramid() && !InTrainerHillChallenge())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE && !InTrainerHillChallenge())
{
RegisterTrainerInMatchCall();
SetBattledTrainersFlags();
@@ -1376,7 +1377,7 @@ void BattleSetup_StartRematchBattle(void)
void ShowTrainerIntroSpeech(void)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
if (gNoOfApproachingTrainers == 0 || gNoOfApproachingTrainers == 1)
CopyPyramidTrainerSpeechBefore(LocalIdToPyramidTrainerId(gSpecialVar_LastTalked));
@@ -1615,7 +1616,7 @@ static bool32 UpdateRandomTrainerRematches(const struct RematchTrainer *table, u
// Trainer already wants a rematch. Don't bother updating it.
ret = TRUE;
}
- else if (FlagGet(FLAG_MATCH_CALL_REGISTERED + i)
+ else if (FlagGet(TRAINER_REGISTERED_FLAGS_START + i)
&& (Random() % 100) <= 30) // 31% chance of getting a rematch.
{
SetRematchIdForTrainer(table, i);
@@ -1744,7 +1745,7 @@ static u32 GetTrainerMatchCallFlag(u32 trainerId)
for (i = 0; i < REMATCH_TABLE_ENTRIES; i++)
{
if (gRematchTable[i].trainerIds[0] == trainerId)
- return FLAG_MATCH_CALL_REGISTERED + i;
+ return TRAINER_REGISTERED_FLAGS_START + i;
}
return 0xFFFF;
diff --git a/src/battle_tent.c b/src/battle_tent.c
index b7a9daecba..c003affebe 100644
--- a/src/battle_tent.c
+++ b/src/battle_tent.c
@@ -309,7 +309,7 @@ static void GenerateInitialRentalMons(void)
i = 0;
while (i != PARTY_SIZE)
{
- // Cannot have two pokemon of the same species.
+ // Cannot have two Pokémon of the same species.
monSetId = Random() % NUM_SLATEPORT_TENT_MONS;
for (j = firstMonId; j < firstMonId + i; j++)
{
@@ -390,7 +390,7 @@ static void GenerateOpponentMons(void)
{
sRandMonId = monSet[Random() % numMons];
- // Ensure none of the opponent's pokemon are the same as the potential rental pokemon for the player
+ // Ensure none of the opponent's Pokémon are the same as the potential rental Pokémon for the player
for (j = 0; j < (int)ARRAY_COUNT(gSaveBlock2Ptr->frontier.rentalMons); j++)
{
if (gFacilityTrainerMons[sRandMonId].species == gFacilityTrainerMons[gSaveBlock2Ptr->frontier.rentalMons[j].monId].species)
diff --git a/src/battle_tower.c b/src/battle_tower.c
index 15509a7dcf..35852a1f00 100644
--- a/src/battle_tower.c
+++ b/src/battle_tower.c
@@ -45,7 +45,7 @@ EWRAM_DATA const struct BattleFrontierTrainer *gFacilityTrainers = NULL;
EWRAM_DATA const struct FacilityMon *gFacilityTrainerMons = NULL;
// IWRAM common
-u16 gFrontierTempParty[MAX_FRONTIER_PARTY_SIZE];
+COMMON_DATA u16 gFrontierTempParty[MAX_FRONTIER_PARTY_SIZE] = {0};
// This file's functions.
static void InitTowerChallenge(void);
@@ -799,7 +799,7 @@ struct
#include "data/battle_frontier/battle_tent.h"
-static void (* const sBattleTowerFuncs[])(void) =
+static void (*const sBattleTowerFuncs[])(void) =
{
[BATTLE_TOWER_FUNC_INIT] = InitTowerChallenge,
[BATTLE_TOWER_FUNC_GET_DATA] = GetTowerData,
@@ -1680,8 +1680,8 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount)
}
// Regular battle frontier trainer.
- // Attempt to fill the trainer's party with random Pokemon until 3 have been
- // successfully chosen. The trainer's party may not have duplicate pokemon species
+ // Attempt to fill the trainer's party with random Pokémon until 3 have been
+ // successfully chosen. The trainer's party may not have duplicate Pokémon species
// or duplicate held items.
for (bfMonCount = 0; monSet[bfMonCount] != 0xFFFF; bfMonCount++)
;
@@ -1691,12 +1691,12 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount)
{
u16 monId = monSet[Random() % bfMonCount];
- // "High tier" pokemon are only allowed on open level mode
+ // "High tier" Pokémon are only allowed on open level mode
// 20 is not a possible value for level here
if ((level == FRONTIER_MAX_LEVEL_50 || level == 20) && monId > FRONTIER_MONS_HIGH_TIER)
continue;
- // Ensure this pokemon species isn't a duplicate.
+ // Ensure this Pokémon species isn't a duplicate.
for (j = 0; j < i + firstMonId; j++)
{
if (GetMonData(&gEnemyParty[j], MON_DATA_SPECIES, NULL) == gFacilityTrainerMons[monId].species)
@@ -1715,7 +1715,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount)
if (j != i + firstMonId)
continue;
- // Ensure this exact pokemon index isn't a duplicate. This check doesn't seem necessary
+ // Ensure this exact Pokémon index isn't a duplicate. This check doesn't seem necessary
// because the species and held items were already checked directly above.
for (j = 0; j < i; j++)
{
@@ -1727,7 +1727,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount)
chosenMonIndices[i] = monId;
- // Place the chosen pokemon into the trainer's party.
+ // Place the chosen Pokémon into the trainer's party.
CreateMonWithEVSpreadNatureOTID(&gEnemyParty[i + firstMonId],
gFacilityTrainerMons[monId].species,
level,
@@ -1737,7 +1737,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount)
otID);
friendship = MAX_FRIENDSHIP;
- // Give the chosen pokemon its specified moves.
+ // Give the chosen Pokémon its specified moves.
for (j = 0; j < MAX_MON_MOVES; j++)
{
SetMonMoveSlot(&gEnemyParty[i + firstMonId], gFacilityTrainerMons[monId].moves[j], j);
@@ -1748,7 +1748,7 @@ static void FillTrainerParty(u16 trainerId, u8 firstMonId, u8 monCount)
SetMonData(&gEnemyParty[i + firstMonId], MON_DATA_FRIENDSHIP, &friendship);
SetMonData(&gEnemyParty[i + firstMonId], MON_DATA_HELD_ITEM, &gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]);
- // The pokemon was successfully added to the trainer's party, so it's safe to move on to
+ // The Pokémon was successfully added to the trainer's party, so it's safe to move on to
// the next party slot.
i++;
}
@@ -1804,7 +1804,7 @@ u16 GetRandomFrontierMonFromSet(u16 trainerId)
do
{
- // "High tier" pokemon are only allowed on open level mode
+ // "High tier" Pokémon are only allowed on open level mode
// 20 is not a possible value for level here
monId = monSet[Random() % numMons];
} while((level == FRONTIER_MAX_LEVEL_50 || level == 20) && monId > FRONTIER_MONS_HIGH_TIER);
@@ -2417,7 +2417,7 @@ static void LoadMultiPartnerCandidatesData(void)
static void GetPotentialPartnerMoveAndSpecies(u16 trainerId, u16 monId)
{
- u16 move = 0;
+ u16 move = MOVE_NONE;
u16 species = 0;
SetFacilityPtrsGetLevel();
@@ -2454,8 +2454,8 @@ static void GetPotentialPartnerMoveAndSpecies(u16 trainerId, u16 monId)
// These partners can be an NPC or a former/record-mixed Apprentice
// When talked to, their response consists of:
// PARTNER_MSGID_INTRO - A greeting
-// PARTNER_MSGID_MON1 - Naming one pokemon on their team, and a move it has
-// PARTNER_MSGID_MON2_ASK - Naming a second pokemon on their team, a move it has, and asking if they'd like to be their partner
+// PARTNER_MSGID_MON1 - Naming one Pokémon on their team, and a move it has
+// PARTNER_MSGID_MON2_ASK - Naming a second Pokémon on their team, a move it has, and asking if they'd like to be their partner
// PARTNER_MSGID_ACCEPT - If the player agrees to be their partner
// PARTNER_MSGID_REJECT - If the player declines to be their partner
static void ShowPartnerCandidateMessage(void)
@@ -2773,7 +2773,7 @@ static void AwardBattleTowerRibbons(void)
#ifdef BUGFIX
struct RibbonCounter ribbons[MAX_FRONTIER_PARTY_SIZE];
#else
- struct RibbonCounter ribbons[3]; // BUG: 4 Pokemon can receive ribbons in a double battle mode.
+ struct RibbonCounter ribbons[3]; // BUG: 4 Pokémon can receive ribbons in a double battle mode.
#endif
u8 ribbonType = 0;
u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
@@ -2982,7 +2982,7 @@ static void FillPartnerParty(u16 trainerId)
#ifdef BUGFIX
j,
#else
- i, // BUG: personality was stored in the 'j' variable. As a result, Steven's pokemon do not have the intended natures.
+ i, // BUG: personality was stored in the 'j' variable. As a result, Steven's Pokémon do not have the intended natures.
#endif
OT_ID_PRESET, STEVEN_OTID);
for (j = 0; j < PARTY_SIZE; j++)
@@ -3409,7 +3409,7 @@ static void FillTentTrainerParty_(u16 trainerId, u8 firstMonId, u8 monCount)
{
u16 monId = monSet[Random() % bfMonCount];
- // Ensure this pokemon species isn't a duplicate.
+ // Ensure this Pokémon species isn't a duplicate.
for (j = 0; j < i + firstMonId; j++)
{
if (GetMonData(&gEnemyParty[j], MON_DATA_SPECIES, NULL) == gFacilityTrainerMons[monId].species)
@@ -3428,7 +3428,7 @@ static void FillTentTrainerParty_(u16 trainerId, u8 firstMonId, u8 monCount)
if (j != i + firstMonId)
continue;
- // Ensure this exact pokemon index isn't a duplicate. This check doesn't seem necessary
+ // Ensure this exact Pokémon index isn't a duplicate. This check doesn't seem necessary
// because the species and held items were already checked directly above.
for (j = 0; j < i; j++)
{
@@ -3440,7 +3440,7 @@ static void FillTentTrainerParty_(u16 trainerId, u8 firstMonId, u8 monCount)
chosenMonIndices[i] = monId;
- // Place the chosen pokemon into the trainer's party.
+ // Place the chosen Pokémon into the trainer's party.
CreateMonWithEVSpreadNatureOTID(&gEnemyParty[i + firstMonId],
gFacilityTrainerMons[monId].species,
level,
@@ -3450,7 +3450,7 @@ static void FillTentTrainerParty_(u16 trainerId, u8 firstMonId, u8 monCount)
otID);
friendship = MAX_FRIENDSHIP;
- // Give the chosen pokemon its specified moves.
+ // Give the chosen Pokémon its specified moves.
for (j = 0; j < MAX_MON_MOVES; j++)
{
SetMonMoveSlot(&gEnemyParty[i + firstMonId], gFacilityTrainerMons[monId].moves[j], j);
@@ -3461,7 +3461,7 @@ static void FillTentTrainerParty_(u16 trainerId, u8 firstMonId, u8 monCount)
SetMonData(&gEnemyParty[i + firstMonId], MON_DATA_FRIENDSHIP, &friendship);
SetMonData(&gEnemyParty[i + firstMonId], MON_DATA_HELD_ITEM, &gBattleFrontierHeldItems[gFacilityTrainerMons[monId].itemTableId]);
- // The pokemon was successfully added to the trainer's party, so it's safe to move on to
+ // The Pokémon was successfully added to the trainer's party, so it's safe to move on to
// the next party slot.
i++;
}
diff --git a/src/battle_transition.c b/src/battle_transition.c
index 11f9cddf4b..03ed10c5f4 100644
--- a/src/battle_transition.c
+++ b/src/battle_transition.c
@@ -79,7 +79,7 @@ struct RectangularSpiralLine
{
u8 state;
s16 position;
- u8 moveIdx;
+ u8 moveIndex;
s16 reboundPosition;
bool8 outward;
};
@@ -278,7 +278,7 @@ static s16 IsTrainerPicSlideDone(s16);
static bool8 TransitionIntro_FadeToGray(struct Task *);
static bool8 TransitionIntro_FadeFromGray(struct Task *);
static bool8 IsIntroTaskDone(void);
-static bool16 UpdateRectangularSpiralLine(const s16 * const *, struct RectangularSpiralLine *);
+static bool16 UpdateRectangularSpiralLine(const s16 *const *, struct RectangularSpiralLine *);
static void SpriteCB_FldEffPokeballTrail(struct Sprite *);
static void SpriteCB_MugshotTrainerPic(struct Sprite *);
static void SpriteCB_WhiteBarFade(struct Sprite *);
@@ -1907,7 +1907,11 @@ static bool8 ClockwiseWipe_TopRight(struct Task *task)
{
sTransitionData->VBlank_DMA = FALSE;
+#ifdef UBFIX
+ InitBlackWipe(sTransitionData->data, DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sTransitionData->tWipeEndX, 0, 1, 1);
+#else
InitBlackWipe(sTransitionData->data, DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sTransitionData->tWipeEndX, -1, 1, 1);
+#endif
do
{
gScanlineEffectRegBuffers[0][sTransitionData->tWipeCurrY] = (sTransitionData->tWipeCurrX + 1) | ((DISPLAY_WIDTH / 2) << 8);
@@ -3200,28 +3204,28 @@ static bool8 RectangularSpiral_Init(struct Task *task)
// Line starting in top left
sRectangularSpiralLines[0].state = SPIRAL_INWARD_START;
sRectangularSpiralLines[0].position = -1;
- sRectangularSpiralLines[0].moveIdx = 1;
+ sRectangularSpiralLines[0].moveIndex = 1;
sRectangularSpiralLines[0].reboundPosition = 308;
sRectangularSpiralLines[0].outward = FALSE;
// Line starting in bottom right
sRectangularSpiralLines[1].state = SPIRAL_INWARD_START;
sRectangularSpiralLines[1].position = -1;
- sRectangularSpiralLines[1].moveIdx = 1;
+ sRectangularSpiralLines[1].moveIndex = 1;
sRectangularSpiralLines[1].reboundPosition = 308;
sRectangularSpiralLines[1].outward = FALSE;
// Line starting in top right
sRectangularSpiralLines[2].state = SPIRAL_INWARD_START;
sRectangularSpiralLines[2].position = -3;
- sRectangularSpiralLines[2].moveIdx = 1;
+ sRectangularSpiralLines[2].moveIndex = 1;
sRectangularSpiralLines[2].reboundPosition = 307;
sRectangularSpiralLines[2].outward = FALSE;
// Line starting in bottom left
sRectangularSpiralLines[3].state = SPIRAL_INWARD_START;
sRectangularSpiralLines[3].position = -3;
- sRectangularSpiralLines[3].moveIdx = 1;
+ sRectangularSpiralLines[3].moveIndex = 1;
sRectangularSpiralLines[3].reboundPosition = 307;
sRectangularSpiralLines[3].outward = FALSE;
@@ -3277,14 +3281,14 @@ static bool8 RectangularSpiral_End(struct Task *task)
}
// Returns TRUE if a tile should be drawn, FALSE otherwise
-static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, struct RectangularSpiralLine *line)
+static bool16 UpdateRectangularSpiralLine(const s16 *const *moveDataTable, struct RectangularSpiralLine *line)
{
const s16 *moveData = moveDataTable[line->state];
// Has spiral finished?
// Note that most move data arrays endsin SPIRAL_END but it is
// only ever reached on the final array of spiraling outward.
- if (moveData[line->moveIdx] == SPIRAL_END)
+ if (moveData[line->moveIndex] == SPIRAL_END)
return FALSE;
// Presumably saving data for debug.
@@ -3315,21 +3319,21 @@ static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, stru
// Below check is never true.
// SPIRAL_END was already checked, and position is never >= 640
- if (line->position >= 640 || moveData[line->moveIdx] == SPIRAL_END)
+ if (line->position >= 640 || moveData[line->moveIndex] == SPIRAL_END)
return FALSE;
- if (!line->outward && moveData[line->moveIdx] == SPIRAL_REBOUND)
+ if (!line->outward && moveData[line->moveIndex] == SPIRAL_REBOUND)
{
// Line has reached the final point of spiraling inward.
// Time to flip and start spiraling outward.
line->outward = TRUE;
- line->moveIdx = 1;
+ line->moveIndex = 1;
line->position = line->reboundPosition;
line->state = SPIRAL_OUTWARD_START;
}
// Reached move target, advance to next movement.
- if (line->position == moveData[line->moveIdx])
+ if (line->position == moveData[line->moveIndex])
{
line->state++;
if (line->outward == TRUE)
@@ -3339,7 +3343,7 @@ static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, stru
// Still spiraling outward, loop back to the first state
// but use the second set of move targets.
// For example, the 28 in sRectangularSpiral_Major_OutwardUp
- line->moveIdx++;
+ line->moveIndex++;
line->state = SPIRAL_OUTWARD_START;
}
}
@@ -3350,7 +3354,7 @@ static bool16 UpdateRectangularSpiralLine(const s16 * const *moveDataTable, stru
// Still spiraling inward, loop back to the first state
// but use the second set of move targets.
// For example, the 275 in sRectangularSpiral_Major_InwardRight
- line->moveIdx++;
+ line->moveIndex++;
line->state = SPIRAL_INWARD_START;
}
}
diff --git a/src/battle_tv.c b/src/battle_tv.c
index b9008b47a7..bf31f18f47 100644
--- a/src/battle_tv.c
+++ b/src/battle_tv.c
@@ -15,8 +15,8 @@ static bool8 IsNotSpecialBattleString(u16 stringId);
static void AddMovePoints(u8 caseId, u16 arg1, u8 arg2, u8 arg3);
static void TrySetBattleSeminarShow(void);
static void AddPointsOnFainting(bool8 targetFainted);
-static void AddPointsBasedOnWeather(u16 weatherFlags, u16 moveId, u8 moveSlot);
-static bool8 ShouldCalculateDamage(u16 moveId, s32 *dmg, u16 *powerOverride);
+static void AddPointsBasedOnWeather(u16 weatherFlags, u16 move, u8 moveSlot);
+static bool8 ShouldCalculateDamage(u16 move, s32 *dmg, u16 *powerOverride);
#define TABLE_END ((u16)-1)
@@ -526,7 +526,7 @@ static const u16 *const sPointsArray[] =
};
// Points will always be calculated for these messages
-// even if current pokemon does not have corresponding move
+// even if current Pokémon does not have corresponding move
static const u16 sSpecialBattleStrings[] =
{
STRINGID_PKMNPERISHCOUNTFELL, STRINGID_PKMNWISHCAMETRUE, STRINGID_PKMNLOSTPPGRUDGE,
@@ -1056,7 +1056,7 @@ void TryPutLinkBattleTvShowOnAir(void)
u8 countPlayer = 0, countOpponent = 0;
s16 sum = 0;
u16 species = 0;
- u16 moveId = 0;
+ u16 move = MOVE_NONE;
s32 i, j;
int zero = 0, one = 1; //needed for matching
@@ -1124,8 +1124,8 @@ void TryPutLinkBattleTvShowOnAir(void)
}
}
- moveId = GetMonData(&gPlayerParty[playerBestMonId], MON_DATA_MOVE1 + i, NULL);
- if (playerBestSum == 0 || moveId == 0)
+ move = GetMonData(&gPlayerParty[playerBestMonId], MON_DATA_MOVE1 + i, NULL);
+ if (playerBestSum == 0 || move == MOVE_NONE)
return;
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
@@ -1134,12 +1134,12 @@ void TryPutLinkBattleTvShowOnAir(void)
|| (playerBestMonId >= MULTI_PARTY_SIZE && GetLinkTrainerFlankId(gBattleScripting.multiplayerId)))
{
j = (opponentBestMonId < MULTI_PARTY_SIZE) ? FALSE : TRUE;
- PutBattleUpdateOnTheAir(GetOpposingLinkMultiBattlerId(j, gBattleScripting.multiplayerId), moveId, playerBestSpecies, opponentBestSpecies);
+ PutBattleUpdateOnTheAir(GetOpposingLinkMultiBattlerId(j, gBattleScripting.multiplayerId), move, playerBestSpecies, opponentBestSpecies);
}
}
else
{
- PutBattleUpdateOnTheAir(gBattleScripting.multiplayerId ^ 1, moveId, playerBestSpecies, opponentBestSpecies);
+ PutBattleUpdateOnTheAir(gBattleScripting.multiplayerId ^ 1, move, playerBestSpecies, opponentBestSpecies);
}
}
@@ -1505,9 +1505,9 @@ static void TrySetBattleSeminarShow(void)
gCurrentMove = currMoveSaved;
}
-static bool8 ShouldCalculateDamage(u16 moveId, s32 *dmg, u16 *powerOverride)
+static bool8 ShouldCalculateDamage(u16 move, s32 *dmg, u16 *powerOverride)
{
- if (gBattleMoves[moveId].power == 0)
+ if (gBattleMoves[move].power == 0)
{
*dmg = 0;
return FALSE;
@@ -1517,7 +1517,7 @@ static bool8 ShouldCalculateDamage(u16 moveId, s32 *dmg, u16 *powerOverride)
s32 i = 0;
do
{
- if (moveId == sVariableDmgMoves[i])
+ if (move == sVariableDmgMoves[i])
break;
i++;
} while (sVariableDmgMoves[i] != TABLE_END);
@@ -1527,13 +1527,13 @@ static bool8 ShouldCalculateDamage(u16 moveId, s32 *dmg, u16 *powerOverride)
*dmg = 0;
return FALSE;
}
- else if (moveId == MOVE_PSYWAVE)
+ else if (move == MOVE_PSYWAVE)
{
*dmg = gBattleMons[gBattlerAttacker].level;
*dmg /= 2;
return FALSE;
}
- else if (moveId == MOVE_MAGNITUDE)
+ else if (move == MOVE_MAGNITUDE)
{
*powerOverride = 10;
return TRUE;
@@ -1568,12 +1568,12 @@ void BattleTv_ClearExplosionFaintCause(void)
}
}
-u8 GetBattlerMoveSlotId(u8 battlerId, u16 moveId)
+u8 GetBattlerMoveSlotId(u8 battler, u16 move)
{
s32 i;
struct Pokemon *party;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
party = gPlayerParty;
else
party = gEnemyParty;
@@ -1583,7 +1583,7 @@ u8 GetBattlerMoveSlotId(u8 battlerId, u16 moveId)
{
if (i >= MAX_MON_MOVES)
break;
- if (GetMonData(&party[gBattlerPartyIndexes[battlerId]], MON_DATA_MOVE1 + i, NULL) == moveId)
+ if (GetMonData(&party[gBattlerPartyIndexes[battler]], MON_DATA_MOVE1 + i, NULL) == move)
break;
i++;
}
@@ -1591,14 +1591,14 @@ u8 GetBattlerMoveSlotId(u8 battlerId, u16 moveId)
return i;
}
-static void AddPointsBasedOnWeather(u16 weatherFlags, u16 moveId, u8 moveSlot)
+static void AddPointsBasedOnWeather(u16 weatherFlags, u16 move, u8 moveSlot)
{
if (weatherFlags & B_WEATHER_RAIN)
- AddMovePoints(PTS_RAIN, moveId, moveSlot, 0);
+ AddMovePoints(PTS_RAIN, move, moveSlot, 0);
else if (weatherFlags & B_WEATHER_SUN)
- AddMovePoints(PTS_SUN, moveId, moveSlot, 0);
+ AddMovePoints(PTS_SUN, move, moveSlot, 0);
else if (weatherFlags & B_WEATHER_SANDSTORM)
- AddMovePoints(PTS_SANDSTORM, moveId, moveSlot, 0);
+ AddMovePoints(PTS_SANDSTORM, move, moveSlot, 0);
else if (weatherFlags & B_WEATHER_HAIL)
- AddMovePoints(PTS_HAIL, moveId, moveSlot, 0);
+ AddMovePoints(PTS_HAIL, move, moveSlot, 0);
}
diff --git a/src/battle_util.c b/src/battle_util.c
index 5a2b6392f0..7a9786b67f 100644
--- a/src/battle_util.c
+++ b/src/battle_util.c
@@ -414,7 +414,7 @@ bool8 TryRunFromBattle(u8 battler)
if (gBattleMons[battler].item == ITEM_ENIGMA_BERRY)
holdEffect = gEnigmaBerries[battler].holdEffect;
else
- holdEffect = ItemId_GetHoldEffect(gBattleMons[battler].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[battler].item);
gPotentialItemEffectBattler = battler;
@@ -426,7 +426,7 @@ bool8 TryRunFromBattle(u8 battler)
}
else if (gBattleMons[battler].ability == ABILITY_RUN_AWAY)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
gBattleStruct->runTries++;
pyramidMultiplier = GetPyramidRunMultiplier();
@@ -453,7 +453,7 @@ bool8 TryRunFromBattle(u8 battler)
{
if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
pyramidMultiplier = GetPyramidRunMultiplier();
speedVar = (gBattleMons[battler].speed * pyramidMultiplier) / (gBattleMons[BATTLE_OPPOSITE(battler)].speed) + (gBattleStruct->runTries * 30);
@@ -649,7 +649,7 @@ void HandleAction_NothingIsFainted(void)
gCurrentTurnActionNumber++;
gCurrentActionFuncId = gActionsByTurnOrder[gCurrentTurnActionNumber];
gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED
- | HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR
+ | HITMARKER_NO_PPDEDUCT | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_IGNORE_ON_AIR
| HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE
| HITMARKER_OBEYS | HITMARKER_WAKE_UP_CLEAR | HITMARKER_SYNCHRONISE_EFFECT
| HITMARKER_CHARGING | HITMARKER_NEVER_SET);
@@ -662,7 +662,7 @@ void HandleAction_ActionFinished(void)
gCurrentActionFuncId = gActionsByTurnOrder[gCurrentTurnActionNumber];
SpecialStatusesClear();
gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED
- | HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR
+ | HITMARKER_NO_PPDEDUCT | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_IGNORE_ON_AIR
| HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE
| HITMARKER_OBEYS | HITMARKER_WAKE_UP_CLEAR | HITMARKER_SYNCHRONISE_EFFECT
| HITMARKER_CHARGING | HITMARKER_NEVER_SET);
@@ -759,7 +759,7 @@ void PressurePPLose(u8 target, u8 attacker, u16 move)
if (MOVE_IS_PERMANENT(attacker, moveIndex))
{
gActiveBattler = attacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + moveIndex, 0, 1, &gBattleMons[gActiveBattler].pp[moveIndex]);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_PPMOVE1_BATTLE + moveIndex, 0, 1, &gBattleMons[gActiveBattler].pp[moveIndex]);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -791,7 +791,7 @@ void PressurePPLoseOnUsingImprison(u8 attacker)
if (imprisonPos != MAX_MON_MOVES && MOVE_IS_PERMANENT(attacker, imprisonPos))
{
gActiveBattler = attacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + imprisonPos, 0, 1, &gBattleMons[gActiveBattler].pp[imprisonPos]);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_PPMOVE1_BATTLE + imprisonPos, 0, 1, &gBattleMons[gActiveBattler].pp[imprisonPos]);
MarkBattlerForControllerExec(gActiveBattler);
}
}
@@ -822,11 +822,12 @@ void PressurePPLoseOnUsingPerishSong(u8 attacker)
if (perishSongPos != MAX_MON_MOVES && MOVE_IS_PERMANENT(attacker, perishSongPos))
{
gActiveBattler = attacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_PPMOVE1_BATTLE + perishSongPos, 0, 1, &gBattleMons[gActiveBattler].pp[perishSongPos]);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_PPMOVE1_BATTLE + perishSongPos, 0, 1, &gBattleMons[gActiveBattler].pp[perishSongPos]);
MarkBattlerForControllerExec(gActiveBattler);
}
}
+// See comments for MarkBattlerForControllerExec.
static void UNUSED MarkAllBattlersForControllerExec(void)
{
int i;
@@ -834,31 +835,43 @@ static void UNUSED MarkAllBattlersForControllerExec(void)
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
{
for (i = 0; i < gBattlersCount; i++)
- gBattleControllerExecFlags |= gBitTable[i] << (32 - MAX_BATTLERS_COUNT);
+ MARK_BATTLE_CONTROLLER_MESSAGE_OUTBOUND_OVER_LINK(i);
}
else
{
for (i = 0; i < gBattlersCount; i++)
- gBattleControllerExecFlags |= gBitTable[i];
+ MARK_BATTLE_CONTROLLER_ACTIVE_ON_LOCAL(i);
}
}
-void MarkBattlerForControllerExec(u8 battlerId)
+// Called when the battle engine dispatches a message to a battle controller.
+//
+// During a singleplayer battle, we just immediately mark the controller as
+// active. During a multiplayer link, we do things a little differently. We
+// set a bit indicating that we're sending a message over the link. That
+// message will be received by all other players... *and* by us, the player
+// sending it, at which point we'll invoke MarkBattlerReceivedLinkData,
+// below, to clear the "we're sending a message" bit and set the "controller
+// is now active" bit.
+void MarkBattlerForControllerExec(u8 battler)
{
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
- gBattleControllerExecFlags |= gBitTable[battlerId] << (32 - MAX_BATTLERS_COUNT);
+ MARK_BATTLE_CONTROLLER_MESSAGE_OUTBOUND_OVER_LINK(battler);
else
- gBattleControllerExecFlags |= gBitTable[battlerId];
+ MARK_BATTLE_CONTROLLER_ACTIVE_ON_LOCAL(battler);
}
-void MarkBattlerReceivedLinkData(u8 battlerId)
+// Called when a message dispatched from the battle engine to a battle
+// controller is received over link communications. All players assume
+// that if they've received the message, everyone else has as well.
+void MarkBattlerReceivedLinkData(u8 battler)
{
s32 i;
for (i = 0; i < GetLinkPlayerCount(); i++)
- gBattleControllerExecFlags |= gBitTable[battlerId] << (i << 2);
+ MARK_BATTLE_CONTROLLER_ACTIVE_FOR_PLAYER(battler, i);
- gBattleControllerExecFlags &= ~((1 << 28) << battlerId);
+ MARK_BATTLE_CONTROLLER_MESSAGE_SYNCHRONIZED_OVER_LINK(battler);
}
void CancelMultiTurnMoves(u8 battler)
@@ -893,7 +906,7 @@ bool8 WasUnableToUseMove(u8 battler)
void PrepareStringBattle(u16 stringId, u8 battler)
{
gActiveBattler = battler;
- BtlController_EmitPrintString(BUFFER_A, stringId);
+ BtlController_EmitPrintString(B_COMM_TO_CONTROLLER, stringId);
MarkBattlerForControllerExec(gActiveBattler);
}
@@ -1031,7 +1044,7 @@ u8 TrySetCantSelectMoveBattleScript(void)
if (gBattleMons[gActiveBattler].item == ITEM_ENIGMA_BERRY)
holdEffect = gEnigmaBerries[gActiveBattler].holdEffect;
else
- holdEffect = ItemId_GetHoldEffect(gBattleMons[gActiveBattler].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[gActiveBattler].item);
gPotentialItemEffectBattler = gActiveBattler;
@@ -1066,44 +1079,44 @@ u8 TrySetCantSelectMoveBattleScript(void)
return limitations;
}
-u8 CheckMoveLimitations(u8 battlerId, u8 unusableMoves, u8 check)
+u8 CheckMoveLimitations(u8 battler, u8 unusableMoves, u8 check)
{
u8 holdEffect;
- u16 *choicedMove = &gBattleStruct->choicedMove[battlerId];
+ u16 *choicedMove = &gBattleStruct->choicedMove[battler];
s32 i;
- if (gBattleMons[battlerId].item == ITEM_ENIGMA_BERRY)
- holdEffect = gEnigmaBerries[battlerId].holdEffect;
+ if (gBattleMons[battler].item == ITEM_ENIGMA_BERRY)
+ holdEffect = gEnigmaBerries[battler].holdEffect;
else
- holdEffect = ItemId_GetHoldEffect(gBattleMons[battlerId].item);
+ holdEffect = GetItemHoldEffect(gBattleMons[battler].item);
- gPotentialItemEffectBattler = battlerId;
+ gPotentialItemEffectBattler = battler;
for (i = 0; i < MAX_MON_MOVES; i++)
{
// No move
- if (gBattleMons[battlerId].moves[i] == MOVE_NONE && check & MOVE_LIMITATION_ZEROMOVE)
+ if (gBattleMons[battler].moves[i] == MOVE_NONE && check & MOVE_LIMITATION_ZEROMOVE)
unusableMoves |= gBitTable[i];
// No PP
- if (gBattleMons[battlerId].pp[i] == 0 && check & MOVE_LIMITATION_PP)
+ if (gBattleMons[battler].pp[i] == 0 && check & MOVE_LIMITATION_PP)
unusableMoves |= gBitTable[i];
// Disable
- if (gBattleMons[battlerId].moves[i] == gDisableStructs[battlerId].disabledMove && check & MOVE_LIMITATION_DISABLED)
+ if (gBattleMons[battler].moves[i] == gDisableStructs[battler].disabledMove && check & MOVE_LIMITATION_DISABLED)
unusableMoves |= gBitTable[i];
// Torment
- if (gBattleMons[battlerId].moves[i] == gLastMoves[battlerId] && check & MOVE_LIMITATION_TORMENTED && gBattleMons[battlerId].status2 & STATUS2_TORMENT)
+ if (gBattleMons[battler].moves[i] == gLastMoves[battler] && check & MOVE_LIMITATION_TORMENTED && gBattleMons[battler].status2 & STATUS2_TORMENT)
unusableMoves |= gBitTable[i];
// Taunt
- if (gDisableStructs[battlerId].tauntTimer && check & MOVE_LIMITATION_TAUNT && gBattleMoves[gBattleMons[battlerId].moves[i]].power == 0)
+ if (gDisableStructs[battler].tauntTimer && check & MOVE_LIMITATION_TAUNT && gBattleMoves[gBattleMons[battler].moves[i]].power == 0)
unusableMoves |= gBitTable[i];
// Imprison
- if (GetImprisonedMovesCount(battlerId, gBattleMons[battlerId].moves[i]) && check & MOVE_LIMITATION_IMPRISON)
+ if (GetImprisonedMovesCount(battler, gBattleMons[battler].moves[i]) && check & MOVE_LIMITATION_IMPRISON)
unusableMoves |= gBitTable[i];
// Encore
- if (gDisableStructs[battlerId].encoreTimer && gDisableStructs[battlerId].encoredMove != gBattleMons[battlerId].moves[i])
+ if (gDisableStructs[battler].encoreTimer && gDisableStructs[battler].encoredMove != gBattleMons[battler].moves[i])
unusableMoves |= gBitTable[i];
// Choice Band
- if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != MOVE_NONE && *choicedMove != MOVE_UNAVAILABLE && *choicedMove != gBattleMons[battlerId].moves[i])
+ if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != MOVE_NONE && *choicedMove != MOVE_UNAVAILABLE && *choicedMove != gBattleMons[battler].moves[i])
unusableMoves |= gBitTable[i];
}
return unusableMoves;
@@ -1126,11 +1139,11 @@ bool8 AreAllMovesUnusable(void)
return (unusable == ALL_MOVES_MASK);
}
-u8 GetImprisonedMovesCount(u8 battlerId, u16 move)
+u8 GetImprisonedMovesCount(u8 battler, u16 move)
{
s32 i;
u8 imprisonedMoves = 0;
- u8 battlerSide = GetBattlerSide(battlerId);
+ u8 battlerSide = GetBattlerSide(battler);
for (i = 0; i < gBattlersCount; i++)
{
@@ -1336,9 +1349,13 @@ u8 DoFieldEndTurnEffects(void)
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_RAIN_STOPPED;
}
else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR)
+ {
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DOWNPOUR_CONTINUES;
+ }
else
+ {
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_RAIN_CONTINUES;
+ }
}
else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR)
{
@@ -1545,7 +1562,7 @@ u8 DoBattlerEndTurnEffects(void)
if ((gBattleMons[gActiveBattler].status2 & STATUS2_NIGHTMARE) && gBattleMons[gActiveBattler].hp != 0)
{
// R/S does not perform this sleep check, which causes the nightmare effect to
- // persist even after the affected Pokemon has been awakened by Shed Skin.
+ // persist even after the affected Pokémon has been awakened by Shed Skin.
if (gBattleMons[gActiveBattler].status1 & STATUS1_SLEEP)
{
gBattleMoveDamage = gBattleMons[gActiveBattler].maxHP / 4;
@@ -1618,14 +1635,14 @@ u8 DoBattlerEndTurnEffects(void)
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
BattleScriptExecute(BattleScript_MonWokeUpInUproar);
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
break;
}
}
if (gBattlerAttacker != gBattlersCount)
{
- effect = 2; // a pokemon was awaken
+ effect = 2; // a Pokémon was awaken
break;
}
else
@@ -1685,7 +1702,7 @@ u8 DoBattlerEndTurnEffects(void)
if (gDisableStructs[gActiveBattler].disabledMove == gBattleMons[gActiveBattler].moves[i])
break;
}
- if (i == MAX_MON_MOVES) // pokemon does not have the disabled move anymore
+ if (i == MAX_MON_MOVES) // Pokémon does not have the disabled move anymore
{
gDisableStructs[gActiveBattler].disabledMove = MOVE_NONE;
gDisableStructs[gActiveBattler].disableTimer = 0;
@@ -1702,7 +1719,7 @@ u8 DoBattlerEndTurnEffects(void)
case ENDTURN_ENCORE: // encore
if (gDisableStructs[gActiveBattler].encoreTimer != 0)
{
- if (gBattleMons[gActiveBattler].moves[gDisableStructs[gActiveBattler].encoredMovePos] != gDisableStructs[gActiveBattler].encoredMove) // pokemon does not have the encored move anymore
+ if (gBattleMons[gActiveBattler].moves[gDisableStructs[gActiveBattler].encoredMovePos] != gDisableStructs[gActiveBattler].encoredMove) // Pokémon does not have the encored move anymore
{
gDisableStructs[gActiveBattler].encoredMove = MOVE_NONE;
gDisableStructs[gActiveBattler].encoreTimer = 0;
@@ -1743,7 +1760,7 @@ u8 DoBattlerEndTurnEffects(void)
{
CancelMultiTurnMoves(gActiveBattler);
gBattleMons[gActiveBattler].status1 |= STATUS1_SLEEP_TURN((Random() & 3) + 2); // 2-5 turns of sleep
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
gEffectBattler = gActiveBattler;
BattleScriptExecute(BattleScript_YawnMakesAsleep);
@@ -2253,7 +2270,7 @@ u8 AtkCanceller_UnableToUseMove(void)
if (effect == 2)
{
gActiveBattler = gBattlerAttacker;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
}
return effect;
@@ -2617,7 +2634,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
gBattleMons[battler].status2 &= ~STATUS2_NIGHTMARE; // fix nightmare glitch
gBattleScripting.battler = gActiveBattler = battler;
BattleScriptPushCursorAndCallback(BattleScript_ShedSkinActivates);
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battler].status1);
MarkBattlerForControllerExec(gActiveBattler);
effect++;
}
@@ -2782,7 +2799,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
gBattleCommunication[MOVE_EFFECT_BYTE] += MOVE_EFFECT_AFFECTS_USER;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_ApplySecondaryEffect;
- gHitMarker |= HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker |= HITMARKER_STATUS_ABILITY_EFFECT;
effect++;
}
break;
@@ -2797,7 +2814,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_POISON;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_ApplySecondaryEffect;
- gHitMarker |= HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker |= HITMARKER_STATUS_ABILITY_EFFECT;
effect++;
}
break;
@@ -2812,7 +2829,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_PARALYSIS;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_ApplySecondaryEffect;
- gHitMarker |= HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker |= HITMARKER_STATUS_ABILITY_EFFECT;
effect++;
}
break;
@@ -2827,7 +2844,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_BURN;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_ApplySecondaryEffect;
- gHitMarker |= HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker |= HITMARKER_STATUS_ABILITY_EFFECT;
effect++;
}
break;
@@ -2929,7 +2946,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
gBattlescriptCurrInstr = BattleScript_AbilityCuredStatus;
gBattleScripting.battler = battler;
gActiveBattler = battler;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
return effect;
}
@@ -2963,7 +2980,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
gBattleScripting.battler = gBattlerTarget;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_SynchronizeActivates;
- gHitMarker |= HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker |= HITMARKER_STATUS_ABILITY_EFFECT;
effect++;
}
break;
@@ -2979,7 +2996,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
gBattleScripting.battler = gBattlerAttacker;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_SynchronizeActivates;
- gHitMarker |= HITMARKER_IGNORE_SAFEGUARD;
+ gHitMarker |= HITMARKER_STATUS_ABILITY_EFFECT;
effect++;
}
break;
@@ -3003,7 +3020,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
if (gBattleMons[i].ability == ABILITY_TRACE && (gStatuses3[i] & STATUS3_TRACE))
{
u8 target2;
- side = BATTLE_OPPOSITE(GetBattlerPosition(i)) & BIT_SIDE; // side of the opposing pokemon
+ side = BATTLE_OPPOSITE(GetBattlerPosition(i)) & BIT_SIDE; // side of the opposing Pokémon
target1 = GetBattlerAtPosition(side);
target2 = GetBattlerAtPosition(side + BIT_FLANK);
if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
@@ -3208,16 +3225,16 @@ enum
};
#define TRY_EAT_CONFUSE_BERRY(flavor) \
- if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / 2 && !moveTurn) \
+ if (gBattleMons[battler].hp <= gBattleMons[battler].maxHP / 2 && !moveTurn) \
{ \
PREPARE_FLAVOR_BUFFER(gBattleTextBuff1, flavor); \
- gBattleMoveDamage = gBattleMons[battlerId].maxHP / battlerHoldEffectParam; \
+ gBattleMoveDamage = gBattleMons[battler].maxHP / battlerHoldEffectParam; \
if (gBattleMoveDamage == 0) \
gBattleMoveDamage = 1; \
- if (gBattleMons[battlerId].hp + gBattleMoveDamage > gBattleMons[battlerId].maxHP) \
- gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp; \
+ if (gBattleMons[battler].hp + gBattleMoveDamage > gBattleMons[battler].maxHP) \
+ gBattleMoveDamage = gBattleMons[battler].maxHP - gBattleMons[battler].hp; \
gBattleMoveDamage *= -1; \
- if (GetFlavorRelationByPersonality(gBattleMons[battlerId].personality, flavor) < 0) \
+ if (GetFlavorRelationByPersonality(gBattleMons[battler].personality, flavor) < 0) \
BattleScriptExecute(BattleScript_BerryConfuseHealEnd2); \
else \
BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem); \
@@ -3225,11 +3242,11 @@ enum
}
#define TRY_EAT_STAT_UP_BERRY(stat) \
- if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam \
- && !moveTurn && gBattleMons[battlerId].statStages[stat] < MAX_STAT_STAGE) \
+ if (gBattleMons[battler].hp <= gBattleMons[battler].maxHP / battlerHoldEffectParam \
+ && !moveTurn && gBattleMons[battler].statStages[stat] < MAX_STAT_STAGE) \
{ \
PREPARE_STAT_BUFFER(gBattleTextBuff1, stat); \
- gEffectBattler = battlerId; \
+ gEffectBattler = battler; \
SET_STATCHANGER(stat, 1, FALSE); \
gBattleScripting.animArg1 = STAT_ANIM_PLUS1 + (stat); \
gBattleScripting.animArg2 = 0; \
@@ -3237,7 +3254,7 @@ enum
effect = ITEM_STATS_CHANGE; \
}
-u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
+u8 ItemBattleEffects(u8 caseID, u8 battler, bool8 moveTurn)
{
int i = 0;
u8 effect = ITEM_NO_EFFECT;
@@ -3246,16 +3263,16 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
u8 battlerHoldEffectParam, atkHoldEffectParam, UNUSED defHoldEffectParam;
u16 atkItem, defItem;
- gLastUsedItem = gBattleMons[battlerId].item;
+ gLastUsedItem = gBattleMons[battler].item;
if (gLastUsedItem == ITEM_ENIGMA_BERRY)
{
- battlerHoldEffect = gEnigmaBerries[battlerId].holdEffect;
- battlerHoldEffectParam = gEnigmaBerries[battlerId].holdEffectParam;
+ battlerHoldEffect = gEnigmaBerries[battler].holdEffect;
+ battlerHoldEffectParam = gEnigmaBerries[battler].holdEffectParam;
}
else
{
- battlerHoldEffect = ItemId_GetHoldEffect(gLastUsedItem);
- battlerHoldEffectParam = ItemId_GetHoldEffectParam(gLastUsedItem);
+ battlerHoldEffect = GetItemHoldEffect(gLastUsedItem);
+ battlerHoldEffectParam = GetItemHoldEffectParam(gLastUsedItem);
}
atkItem = gBattleMons[gBattlerAttacker].item;
@@ -3266,8 +3283,8 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
}
else
{
- atkHoldEffect = ItemId_GetHoldEffect(atkItem);
- atkHoldEffectParam = ItemId_GetHoldEffectParam(atkItem);
+ atkHoldEffect = GetItemHoldEffect(atkItem);
+ atkHoldEffectParam = GetItemHoldEffectParam(atkItem);
}
// def variables are unused
@@ -3279,8 +3296,8 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
}
else
{
- defHoldEffect = ItemId_GetHoldEffect(defItem);
- defHoldEffectParam = ItemId_GetHoldEffectParam(defItem);
+ defHoldEffect = GetItemHoldEffect(defItem);
+ defHoldEffectParam = GetItemHoldEffectParam(defItem);
}
switch (caseID)
@@ -3289,39 +3306,39 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
switch (battlerHoldEffect)
{
case HOLD_EFFECT_DOUBLE_PRIZE:
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
gBattleStruct->moneyMultiplier = 2;
break;
case HOLD_EFFECT_RESTORE_STATS:
for (i = 0; i < NUM_BATTLE_STATS; i++)
{
- if (gBattleMons[battlerId].statStages[i] < DEFAULT_STAT_STAGE)
+ if (gBattleMons[battler].statStages[i] < DEFAULT_STAT_STAGE)
{
- gBattleMons[battlerId].statStages[i] = DEFAULT_STAT_STAGE;
+ gBattleMons[battler].statStages[i] = DEFAULT_STAT_STAGE;
effect = ITEM_STATS_CHANGE;
}
}
if (effect != 0)
{
- gBattleScripting.battler = battlerId;
- gPotentialItemEffectBattler = battlerId;
- gActiveBattler = gBattlerAttacker = battlerId;
+ gBattleScripting.battler = battler;
+ gPotentialItemEffectBattler = battler;
+ gActiveBattler = gBattlerAttacker = battler;
BattleScriptExecute(BattleScript_WhiteHerbEnd2);
}
break;
}
break;
case ITEMEFFECT_NORMAL:
- if (gBattleMons[battlerId].hp)
+ if (gBattleMons[battler].hp)
{
switch (battlerHoldEffect)
{
case HOLD_EFFECT_RESTORE_HP:
- if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / 2 && !moveTurn)
+ if (gBattleMons[battler].hp <= gBattleMons[battler].maxHP / 2 && !moveTurn)
{
gBattleMoveDamage = battlerHoldEffectParam;
- if (gBattleMons[battlerId].hp + battlerHoldEffectParam > gBattleMons[battlerId].maxHP)
- gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp;
+ if (gBattleMons[battler].hp + battlerHoldEffectParam > gBattleMons[battler].maxHP)
+ gBattleMoveDamage = gBattleMons[battler].maxHP - gBattleMons[battler].hp;
gBattleMoveDamage *= -1;
BattleScriptExecute(BattleScript_ItemHealHP_RemoveItem);
effect = ITEM_HP_CHANGE;
@@ -3334,10 +3351,10 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
u8 ppBonuses;
u16 move;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
- mon = &gPlayerParty[gBattlerPartyIndexes[battlerId]];
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
+ mon = &gPlayerParty[gBattlerPartyIndexes[battler]];
else
- mon = &gEnemyParty[gBattlerPartyIndexes[battlerId]];
+ mon = &gEnemyParty[gBattlerPartyIndexes[battler]];
for (i = 0; i < MAX_MON_MOVES; i++)
{
move = GetMonData(mon, MON_DATA_MOVE1 + i);
@@ -3357,7 +3374,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
PREPARE_MOVE_BUFFER(gBattleTextBuff1, move);
BattleScriptExecute(BattleScript_BerryPPHealEnd2);
- BtlController_EmitSetMonData(BUFFER_A, i + REQUEST_PPMOVE1_BATTLE, 0, 1, &changedPP);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, i + REQUEST_PPMOVE1_BATTLE, 0, 1, &changedPP);
MarkBattlerForControllerExec(gActiveBattler);
effect = ITEM_PP_CHANGE;
}
@@ -3366,32 +3383,32 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
case HOLD_EFFECT_RESTORE_STATS:
for (i = 0; i < NUM_BATTLE_STATS; i++)
{
- if (gBattleMons[battlerId].statStages[i] < DEFAULT_STAT_STAGE)
+ if (gBattleMons[battler].statStages[i] < DEFAULT_STAT_STAGE)
{
- gBattleMons[battlerId].statStages[i] = DEFAULT_STAT_STAGE;
+ gBattleMons[battler].statStages[i] = DEFAULT_STAT_STAGE;
effect = ITEM_STATS_CHANGE;
}
}
if (effect != 0)
{
- gBattleScripting.battler = battlerId;
- gPotentialItemEffectBattler = battlerId;
- gActiveBattler = gBattlerAttacker = battlerId;
+ gBattleScripting.battler = battler;
+ gPotentialItemEffectBattler = battler;
+ gActiveBattler = gBattlerAttacker = battler;
BattleScriptExecute(BattleScript_WhiteHerbEnd2);
}
break;
case HOLD_EFFECT_LEFTOVERS:
- if (gBattleMons[battlerId].hp < gBattleMons[battlerId].maxHP && !moveTurn)
+ if (gBattleMons[battler].hp < gBattleMons[battler].maxHP && !moveTurn)
{
- gBattleMoveDamage = gBattleMons[battlerId].maxHP / 16;
+ gBattleMoveDamage = gBattleMons[battler].maxHP / 16;
if (gBattleMoveDamage == 0)
gBattleMoveDamage = 1;
- if (gBattleMons[battlerId].hp + gBattleMoveDamage > gBattleMons[battlerId].maxHP)
- gBattleMoveDamage = gBattleMons[battlerId].maxHP - gBattleMons[battlerId].hp;
+ if (gBattleMons[battler].hp + gBattleMoveDamage > gBattleMons[battler].maxHP)
+ gBattleMoveDamage = gBattleMons[battler].maxHP - gBattleMons[battler].hp;
gBattleMoveDamage *= -1;
BattleScriptExecute(BattleScript_ItemHealHP_End2);
effect = ITEM_HP_CHANGE;
- RecordItemEffectBattle(battlerId, battlerHoldEffect);
+ RecordItemEffectBattle(battler, battlerHoldEffect);
}
break;
case HOLD_EFFECT_CONFUSE_SPICY:
@@ -3410,12 +3427,12 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
TRY_EAT_CONFUSE_BERRY(FLAVOR_SOUR);
break;
case HOLD_EFFECT_ATTACK_UP:
- if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam
- && !moveTurn && gBattleMons[battlerId].statStages[STAT_ATK] < MAX_STAT_STAGE)
+ if (gBattleMons[battler].hp <= gBattleMons[battler].maxHP / battlerHoldEffectParam
+ && !moveTurn && gBattleMons[battler].statStages[STAT_ATK] < MAX_STAT_STAGE)
{
PREPARE_STAT_BUFFER(gBattleTextBuff1, STAT_ATK);
PREPARE_STRING_BUFFER(gBattleTextBuff2, STRINGID_STATROSE); // Only the Attack stat-up berry has this
- gEffectBattler = battlerId;
+ gEffectBattler = battler;
SET_STATCHANGER(STAT_ATK, 1, FALSE);
gBattleScripting.animArg1 = STAT_ANIM_PLUS1 + STAT_ATK;
gBattleScripting.animArg2 = 0;
@@ -3436,20 +3453,20 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
TRY_EAT_STAT_UP_BERRY(STAT_SPDEF);
break;
case HOLD_EFFECT_CRITICAL_UP:
- if (gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam && !moveTurn
- && !(gBattleMons[battlerId].status2 & STATUS2_FOCUS_ENERGY))
+ if (gBattleMons[battler].hp <= gBattleMons[battler].maxHP / battlerHoldEffectParam && !moveTurn
+ && !(gBattleMons[battler].status2 & STATUS2_FOCUS_ENERGY))
{
- gBattleMons[battlerId].status2 |= STATUS2_FOCUS_ENERGY;
+ gBattleMons[battler].status2 |= STATUS2_FOCUS_ENERGY;
BattleScriptExecute(BattleScript_BerryFocusEnergyEnd2);
effect = ITEM_EFFECT_OTHER;
}
break;
case HOLD_EFFECT_RANDOM_STAT_UP:
- if (!moveTurn && gBattleMons[battlerId].hp <= gBattleMons[battlerId].maxHP / battlerHoldEffectParam)
+ if (!moveTurn && gBattleMons[battler].hp <= gBattleMons[battler].maxHP / battlerHoldEffectParam)
{
for (i = 0; i < NUM_STATS - 1; i++)
{
- if (gBattleMons[battlerId].statStages[STAT_ATK + i] < MAX_STAT_STAGE)
+ if (gBattleMons[battler].statStages[STAT_ATK + i] < MAX_STAT_STAGE)
break;
}
if (i != NUM_STATS - 1)
@@ -3457,7 +3474,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
do
{
i = Random() % (NUM_STATS - 1);
- } while (gBattleMons[battlerId].statStages[STAT_ATK + i] == MAX_STAT_STAGE);
+ } while (gBattleMons[battler].statStages[STAT_ATK + i] == MAX_STAT_STAGE);
PREPARE_STAT_BUFFER(gBattleTextBuff1, i + 1);
@@ -3470,7 +3487,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
gBattleTextBuff2[6] = STRINGID_STATROSE >> 8;
gBattleTextBuff2[7] = EOS;
- gEffectBattler = battlerId;
+ gEffectBattler = battler;
SET_STATCHANGER(i + 1, 2, FALSE);
gBattleScripting.animArg1 = STAT_ANIM_PLUS2 + (i + 1);
gBattleScripting.animArg2 = 0;
@@ -3480,85 +3497,85 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
}
break;
case HOLD_EFFECT_CURE_PAR:
- if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS)
+ if (gBattleMons[battler].status1 & STATUS1_PARALYSIS)
{
- gBattleMons[battlerId].status1 &= ~STATUS1_PARALYSIS;
+ gBattleMons[battler].status1 &= ~STATUS1_PARALYSIS;
BattleScriptExecute(BattleScript_BerryCurePrlzEnd2);
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_PSN:
- if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY)
+ if (gBattleMons[battler].status1 & STATUS1_PSN_ANY)
{
- gBattleMons[battlerId].status1 &= ~(STATUS1_PSN_ANY | STATUS1_TOXIC_COUNTER);
+ gBattleMons[battler].status1 &= ~(STATUS1_PSN_ANY | STATUS1_TOXIC_COUNTER);
BattleScriptExecute(BattleScript_BerryCurePsnEnd2);
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_BRN:
- if (gBattleMons[battlerId].status1 & STATUS1_BURN)
+ if (gBattleMons[battler].status1 & STATUS1_BURN)
{
- gBattleMons[battlerId].status1 &= ~STATUS1_BURN;
+ gBattleMons[battler].status1 &= ~STATUS1_BURN;
BattleScriptExecute(BattleScript_BerryCureBrnEnd2);
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_FRZ:
- if (gBattleMons[battlerId].status1 & STATUS1_FREEZE)
+ if (gBattleMons[battler].status1 & STATUS1_FREEZE)
{
- gBattleMons[battlerId].status1 &= ~STATUS1_FREEZE;
+ gBattleMons[battler].status1 &= ~STATUS1_FREEZE;
BattleScriptExecute(BattleScript_BerryCureFrzEnd2);
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_SLP:
- if (gBattleMons[battlerId].status1 & STATUS1_SLEEP)
+ if (gBattleMons[battler].status1 & STATUS1_SLEEP)
{
- gBattleMons[battlerId].status1 &= ~STATUS1_SLEEP;
- gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE;
+ gBattleMons[battler].status1 &= ~STATUS1_SLEEP;
+ gBattleMons[battler].status2 &= ~STATUS2_NIGHTMARE;
BattleScriptExecute(BattleScript_BerryCureSlpEnd2);
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_CONFUSION:
- if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION)
+ if (gBattleMons[battler].status2 & STATUS2_CONFUSION)
{
- gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION;
+ gBattleMons[battler].status2 &= ~STATUS2_CONFUSION;
BattleScriptExecute(BattleScript_BerryCureConfusionEnd2);
effect = ITEM_EFFECT_OTHER;
}
break;
case HOLD_EFFECT_CURE_STATUS:
- if (gBattleMons[battlerId].status1 & STATUS1_ANY || gBattleMons[battlerId].status2 & STATUS2_CONFUSION)
+ if (gBattleMons[battler].status1 & STATUS1_ANY || gBattleMons[battler].status2 & STATUS2_CONFUSION)
{
i = 0;
- if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY)
+ if (gBattleMons[battler].status1 & STATUS1_PSN_ANY)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_PoisonJpn);
i++;
}
- if (gBattleMons[battlerId].status1 & STATUS1_SLEEP)
+ if (gBattleMons[battler].status1 & STATUS1_SLEEP)
{
- gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE;
+ gBattleMons[battler].status2 &= ~STATUS2_NIGHTMARE;
StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn);
i++;
}
- if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS)
+ if (gBattleMons[battler].status1 & STATUS1_PARALYSIS)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_ParalysisJpn);
i++;
}
- if (gBattleMons[battlerId].status1 & STATUS1_BURN)
+ if (gBattleMons[battler].status1 & STATUS1_BURN)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_BurnJpn);
i++;
}
- if (gBattleMons[battlerId].status1 & STATUS1_FREEZE)
+ if (gBattleMons[battler].status1 & STATUS1_FREEZE)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_IceJpn);
i++;
}
- if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION)
+ if (gBattleMons[battler].status2 & STATUS2_CONFUSION)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_ConfusionJpn);
i++;
@@ -3567,16 +3584,16 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM;
else
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_NORMALIZED_STATUS;
- gBattleMons[battlerId].status1 = 0;
- gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION;
+ gBattleMons[battler].status1 = 0;
+ gBattleMons[battler].status2 &= ~STATUS2_CONFUSION;
BattleScriptExecute(BattleScript_BerryCureChosenStatusEnd2);
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_ATTRACT:
- if (gBattleMons[battlerId].status2 & STATUS2_INFATUATION)
+ if (gBattleMons[battler].status2 & STATUS2_INFATUATION)
{
- gBattleMons[battlerId].status2 &= ~STATUS2_INFATUATION;
+ gBattleMons[battler].status2 &= ~STATUS2_INFATUATION;
StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn);
BattleScriptExecute(BattleScript_BerryCureChosenStatusEnd2);
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM;
@@ -3586,18 +3603,18 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
}
if (effect != 0)
{
- gBattleScripting.battler = battlerId;
- gPotentialItemEffectBattler = battlerId;
- gActiveBattler = gBattlerAttacker = battlerId;
+ gBattleScripting.battler = battler;
+ gPotentialItemEffectBattler = battler;
+ gActiveBattler = gBattlerAttacker = battler;
switch (effect)
{
case ITEM_STATUS_CHANGE:
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battlerId].status1);
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[battler].status1);
MarkBattlerForControllerExec(gActiveBattler);
break;
case ITEM_PP_CHANGE:
- if (MOVE_IS_PERMANENT(battlerId, i))
- gBattleMons[battlerId].pp[i] = changedPP;
+ if (MOVE_IS_PERMANENT(battler, i))
+ gBattleMons[battler].pp[i] = changedPP;
break;
}
}
@@ -3606,80 +3623,80 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
case ITEMEFFECT_DUMMY:
break;
case ITEMEFFECT_MOVE_END:
- for (battlerId = 0; battlerId < gBattlersCount; battlerId++)
+ for (battler = 0; battler < gBattlersCount; battler++)
{
- gLastUsedItem = gBattleMons[battlerId].item;
- if (gBattleMons[battlerId].item == ITEM_ENIGMA_BERRY)
+ gLastUsedItem = gBattleMons[battler].item;
+ if (gBattleMons[battler].item == ITEM_ENIGMA_BERRY)
{
- battlerHoldEffect = gEnigmaBerries[battlerId].holdEffect;
- battlerHoldEffectParam = gEnigmaBerries[battlerId].holdEffectParam;
+ battlerHoldEffect = gEnigmaBerries[battler].holdEffect;
+ battlerHoldEffectParam = gEnigmaBerries[battler].holdEffectParam;
}
else
{
- battlerHoldEffect = ItemId_GetHoldEffect(gLastUsedItem);
- battlerHoldEffectParam = ItemId_GetHoldEffectParam(gLastUsedItem);
+ battlerHoldEffect = GetItemHoldEffect(gLastUsedItem);
+ battlerHoldEffectParam = GetItemHoldEffectParam(gLastUsedItem);
}
switch (battlerHoldEffect)
{
case HOLD_EFFECT_CURE_PAR:
- if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS)
+ if (gBattleMons[battler].status1 & STATUS1_PARALYSIS)
{
- gBattleMons[battlerId].status1 &= ~STATUS1_PARALYSIS;
+ gBattleMons[battler].status1 &= ~STATUS1_PARALYSIS;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_BerryCureParRet;
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_PSN:
- if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY)
+ if (gBattleMons[battler].status1 & STATUS1_PSN_ANY)
{
- gBattleMons[battlerId].status1 &= ~(STATUS1_PSN_ANY | STATUS1_TOXIC_COUNTER);
+ gBattleMons[battler].status1 &= ~(STATUS1_PSN_ANY | STATUS1_TOXIC_COUNTER);
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_BerryCurePsnRet;
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_BRN:
- if (gBattleMons[battlerId].status1 & STATUS1_BURN)
+ if (gBattleMons[battler].status1 & STATUS1_BURN)
{
- gBattleMons[battlerId].status1 &= ~STATUS1_BURN;
+ gBattleMons[battler].status1 &= ~STATUS1_BURN;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_BerryCureBrnRet;
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_FRZ:
- if (gBattleMons[battlerId].status1 & STATUS1_FREEZE)
+ if (gBattleMons[battler].status1 & STATUS1_FREEZE)
{
- gBattleMons[battlerId].status1 &= ~STATUS1_FREEZE;
+ gBattleMons[battler].status1 &= ~STATUS1_FREEZE;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_BerryCureFrzRet;
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_SLP:
- if (gBattleMons[battlerId].status1 & STATUS1_SLEEP)
+ if (gBattleMons[battler].status1 & STATUS1_SLEEP)
{
- gBattleMons[battlerId].status1 &= ~STATUS1_SLEEP;
- gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE;
+ gBattleMons[battler].status1 &= ~STATUS1_SLEEP;
+ gBattleMons[battler].status2 &= ~STATUS2_NIGHTMARE;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_BerryCureSlpRet;
effect = ITEM_STATUS_CHANGE;
}
break;
case HOLD_EFFECT_CURE_CONFUSION:
- if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION)
+ if (gBattleMons[battler].status2 & STATUS2_CONFUSION)
{
- gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION;
+ gBattleMons[battler].status2 &= ~STATUS2_CONFUSION;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_BerryCureConfusionRet;
effect = ITEM_EFFECT_OTHER;
}
break;
case HOLD_EFFECT_CURE_ATTRACT:
- if (gBattleMons[battlerId].status2 & STATUS2_INFATUATION)
+ if (gBattleMons[battler].status2 & STATUS2_INFATUATION)
{
- gBattleMons[battlerId].status2 &= ~STATUS2_INFATUATION;
+ gBattleMons[battler].status2 &= ~STATUS2_INFATUATION;
StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn);
BattleScriptPushCursor();
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM;
@@ -3688,31 +3705,31 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
}
break;
case HOLD_EFFECT_CURE_STATUS:
- if (gBattleMons[battlerId].status1 & STATUS1_ANY || gBattleMons[battlerId].status2 & STATUS2_CONFUSION)
+ if (gBattleMons[battler].status1 & STATUS1_ANY || gBattleMons[battler].status2 & STATUS2_CONFUSION)
{
- if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY)
+ if (gBattleMons[battler].status1 & STATUS1_PSN_ANY)
StringCopy(gBattleTextBuff1, gStatusConditionString_PoisonJpn);
- if (gBattleMons[battlerId].status1 & STATUS1_SLEEP)
+ if (gBattleMons[battler].status1 & STATUS1_SLEEP)
{
- gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE;
+ gBattleMons[battler].status2 &= ~STATUS2_NIGHTMARE;
StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn);
}
- if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS)
+ if (gBattleMons[battler].status1 & STATUS1_PARALYSIS)
StringCopy(gBattleTextBuff1, gStatusConditionString_ParalysisJpn);
- if (gBattleMons[battlerId].status1 & STATUS1_BURN)
+ if (gBattleMons[battler].status1 & STATUS1_BURN)
StringCopy(gBattleTextBuff1, gStatusConditionString_BurnJpn);
- if (gBattleMons[battlerId].status1 & STATUS1_FREEZE)
+ if (gBattleMons[battler].status1 & STATUS1_FREEZE)
StringCopy(gBattleTextBuff1, gStatusConditionString_IceJpn);
- if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION)
+ if (gBattleMons[battler].status2 & STATUS2_CONFUSION)
StringCopy(gBattleTextBuff1, gStatusConditionString_ConfusionJpn);
- gBattleMons[battlerId].status1 = 0;
- gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION;
+ gBattleMons[battler].status1 = 0;
+ gBattleMons[battler].status2 &= ~STATUS2_CONFUSION;
BattleScriptPushCursor();
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM;
gBattlescriptCurrInstr = BattleScript_BerryCureChosenStatusRet;
@@ -3722,16 +3739,16 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
case HOLD_EFFECT_RESTORE_STATS:
for (i = 0; i < NUM_BATTLE_STATS; i++)
{
- if (gBattleMons[battlerId].statStages[i] < DEFAULT_STAT_STAGE)
+ if (gBattleMons[battler].statStages[i] < DEFAULT_STAT_STAGE)
{
- gBattleMons[battlerId].statStages[i] = DEFAULT_STAT_STAGE;
+ gBattleMons[battler].statStages[i] = DEFAULT_STAT_STAGE;
effect = ITEM_STATS_CHANGE;
}
}
if (effect != 0)
{
- gBattleScripting.battler = battlerId;
- gPotentialItemEffectBattler = battlerId;
+ gBattleScripting.battler = battler;
+ gPotentialItemEffectBattler = battler;
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_WhiteHerbRet;
return effect;
@@ -3740,10 +3757,10 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
}
if (effect != 0)
{
- gBattleScripting.battler = battlerId;
- gPotentialItemEffectBattler = battlerId;
- gActiveBattler = battlerId;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
+ gBattleScripting.battler = battler;
+ gPotentialItemEffectBattler = battler;
+ gActiveBattler = battler;
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
break;
}
@@ -3795,11 +3812,11 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
return effect;
}
-void ClearFuryCutterDestinyBondGrudge(u8 battlerId)
+void ClearFuryCutterDestinyBondGrudge(u8 battler)
{
- gDisableStructs[battlerId].furyCutterCounter = 0;
- gBattleMons[battlerId].status2 &= ~STATUS2_DESTINY_BOND;
- gStatuses3[battlerId] &= ~STATUS3_GRUDGE;
+ gDisableStructs[battler].furyCutterCounter = 0;
+ gBattleMons[battler].status2 &= ~STATUS2_DESTINY_BOND;
+ gStatuses3[battler] &= ~STATUS3_GRUDGE;
}
void HandleAction_RunBattleScript(void) // identical to RunBattleScriptCommands
@@ -3824,7 +3841,9 @@ u8 GetMoveTarget(u16 move, u8 setTarget)
case MOVE_TARGET_SELECTED:
side = BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker));
if (gSideTimers[side].followmeTimer && gBattleMons[gSideTimers[side].followmeTarget].hp)
+ {
targetBattler = gSideTimers[side].followmeTarget;
+ }
else
{
side = GetBattlerSide(gBattlerAttacker);
@@ -3853,7 +3872,9 @@ u8 GetMoveTarget(u16 move, u8 setTarget)
case MOVE_TARGET_RANDOM:
side = BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker));
if (gSideTimers[side].followmeTimer && gBattleMons[gSideTimers[side].followmeTarget].hp)
+ {
targetBattler = gSideTimers[side].followmeTarget;
+ }
else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && moveTarget & MOVE_TARGET_RANDOM)
{
if (GetBattlerSide(gBattlerAttacker) == B_SIDE_PLAYER)
@@ -3874,7 +3895,9 @@ u8 GetMoveTarget(u16 move, u8 setTarget)
targetBattler ^= BIT_FLANK;
}
else
+ {
targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gBattlerAttacker)));
+ }
break;
case MOVE_TARGET_USER_OR_SELECTED:
case MOVE_TARGET_USER:
@@ -3887,14 +3910,14 @@ u8 GetMoveTarget(u16 move, u8 setTarget)
return targetBattler;
}
-static bool32 IsBattlerModernFatefulEncounter(u8 battlerId)
+static bool32 IsBattlerModernFatefulEncounter(u8 battler)
{
- if (GetBattlerSide(battlerId) == B_SIDE_OPPONENT)
+ if (GetBattlerSide(battler) == B_SIDE_OPPONENT)
return TRUE;
- if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES, NULL) != SPECIES_DEOXYS
- && GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES, NULL) != SPECIES_MEW)
+ if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES, NULL) != SPECIES_DEOXYS
+ && GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES, NULL) != SPECIES_MEW)
return TRUE;
- return GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_MODERN_FATEFUL_ENCOUNTER, NULL);
+ return GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_MODERN_FATEFUL_ENCOUNTER, NULL);
}
u8 IsMonDisobedient(void)
diff --git a/src/battle_util2.c b/src/battle_util2.c
index 8a202c9867..3b5a376c6b 100644
--- a/src/battle_util2.c
+++ b/src/battle_util2.c
@@ -71,7 +71,7 @@ void FreeBattleResources(void)
}
}
-void AdjustFriendshipOnBattleFaint(u8 battlerId)
+void AdjustFriendshipOnBattleFaint(u8 battler)
{
u8 opposingBattlerId;
@@ -90,37 +90,37 @@ void AdjustFriendshipOnBattleFaint(u8 battlerId)
opposingBattlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
}
- if (gBattleMons[opposingBattlerId].level > gBattleMons[battlerId].level)
+ if (gBattleMons[opposingBattlerId].level > gBattleMons[battler].level)
{
- if (gBattleMons[opposingBattlerId].level - gBattleMons[battlerId].level > 29)
- AdjustFriendship(&gPlayerParty[gBattlerPartyIndexes[battlerId]], FRIENDSHIP_EVENT_FAINT_LARGE);
+ if (gBattleMons[opposingBattlerId].level - gBattleMons[battler].level > 29)
+ AdjustFriendship(&gPlayerParty[gBattlerPartyIndexes[battler]], FRIENDSHIP_EVENT_FAINT_LARGE);
else
- AdjustFriendship(&gPlayerParty[gBattlerPartyIndexes[battlerId]], FRIENDSHIP_EVENT_FAINT_SMALL);
+ AdjustFriendship(&gPlayerParty[gBattlerPartyIndexes[battler]], FRIENDSHIP_EVENT_FAINT_SMALL);
}
else
{
- AdjustFriendship(&gPlayerParty[gBattlerPartyIndexes[battlerId]], FRIENDSHIP_EVENT_FAINT_SMALL);
+ AdjustFriendship(&gPlayerParty[gBattlerPartyIndexes[battler]], FRIENDSHIP_EVENT_FAINT_SMALL);
}
}
-void SwitchPartyOrderInGameMulti(u8 battlerId, u8 arg1)
+void SwitchPartyOrderInGameMulti(u8 battler, u8 arg1)
{
- if (GetBattlerSide(battlerId) != B_SIDE_OPPONENT)
+ if (GetBattlerSide(battler) != B_SIDE_OPPONENT)
{
s32 i;
for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++)
- gBattlePartyCurrentOrder[i] = *(0 * 3 + i + (u8 *)(gBattleStruct->battlerPartyOrders));
+ gBattlePartyCurrentOrder[i] = *(i + (u8 *)(gBattleStruct->battlerPartyOrders));
- SwitchPartyMonSlots(GetPartyIdFromBattlePartyId(gBattlerPartyIndexes[battlerId]), GetPartyIdFromBattlePartyId(arg1));
+ SwitchPartyMonSlots(GetPartyIdFromBattlePartyId(gBattlerPartyIndexes[battler]), GetPartyIdFromBattlePartyId(arg1));
for (i = 0; i < (int)ARRAY_COUNT(gBattlePartyCurrentOrder); i++)
- *(0 * 3 + i + (u8 *)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i];
+ *(i + (u8 *)(gBattleStruct->battlerPartyOrders)) = gBattlePartyCurrentOrder[i];
}
}
// Called when a Pokémon is unable to attack during a Battle Palace battle.
// Check if it was because they are frozen/asleep, and if so try to cure the status.
-u32 BattlePalace_TryEscapeStatus(u8 battlerId)
+u32 BattlePalace_TryEscapeStatus(u8 battler)
{
u32 effect = 0;
@@ -129,13 +129,13 @@ u32 BattlePalace_TryEscapeStatus(u8 battlerId)
switch (gBattleCommunication[MULTIUSE_STATE])
{
case 0:
- if (gBattleMons[battlerId].status1 & STATUS1_SLEEP)
+ if (gBattleMons[battler].status1 & STATUS1_SLEEP)
{
- if (UproarWakeUpCheck(battlerId))
+ if (UproarWakeUpCheck(battler))
{
// Wake up from Uproar
- gBattleMons[battlerId].status1 &= ~(STATUS1_SLEEP);
- gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE);
+ gBattleMons[battler].status1 &= ~(STATUS1_SLEEP);
+ gBattleMons[battler].status2 &= ~(STATUS2_NIGHTMARE);
BattleScriptPushCursor();
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP_UPROAR;
gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp;
@@ -145,18 +145,18 @@ u32 BattlePalace_TryEscapeStatus(u8 battlerId)
{
u32 toSub;
- if (gBattleMons[battlerId].ability == ABILITY_EARLY_BIRD)
+ if (gBattleMons[battler].ability == ABILITY_EARLY_BIRD)
toSub = 2;
else
toSub = 1;
// Reduce number of sleep turns
- if ((gBattleMons[battlerId].status1 & STATUS1_SLEEP) < toSub)
- gBattleMons[battlerId].status1 &= ~(STATUS1_SLEEP);
+ if ((gBattleMons[battler].status1 & STATUS1_SLEEP) < toSub)
+ gBattleMons[battler].status1 &= ~(STATUS1_SLEEP);
else
- gBattleMons[battlerId].status1 -= toSub;
+ gBattleMons[battler].status1 -= toSub;
- if (gBattleMons[battlerId].status1 & STATUS1_SLEEP)
+ if (gBattleMons[battler].status1 & STATUS1_SLEEP)
{
// Still asleep
gBattlescriptCurrInstr = BattleScript_MoveUsedIsAsleep;
@@ -165,7 +165,7 @@ u32 BattlePalace_TryEscapeStatus(u8 battlerId)
else
{
// Wake up
- gBattleMons[battlerId].status2 &= ~(STATUS2_NIGHTMARE);
+ gBattleMons[battler].status2 &= ~(STATUS2_NIGHTMARE);
BattleScriptPushCursor();
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_WOKE_UP;
gBattlescriptCurrInstr = BattleScript_MoveUsedWokeUp;
@@ -176,7 +176,7 @@ u32 BattlePalace_TryEscapeStatus(u8 battlerId)
gBattleCommunication[MULTIUSE_STATE]++;
break;
case 1:
- if (gBattleMons[battlerId].status1 & STATUS1_FREEZE)
+ if (gBattleMons[battler].status1 & STATUS1_FREEZE)
{
if (Random() % 5 != 0)
{
@@ -186,7 +186,7 @@ u32 BattlePalace_TryEscapeStatus(u8 battlerId)
else
{
// Unfreeze
- gBattleMons[battlerId].status1 &= ~(STATUS1_FREEZE);
+ gBattleMons[battler].status1 &= ~(STATUS1_FREEZE);
BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_MoveUsedUnfroze;
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_DEFROSTED;
@@ -203,8 +203,8 @@ u32 BattlePalace_TryEscapeStatus(u8 battlerId)
if (effect == 2)
{
- gActiveBattler = battlerId;
- BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
+ gActiveBattler = battler;
+ BtlController_EmitSetMonData(B_COMM_TO_CONTROLLER, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1);
MarkBattlerForControllerExec(gActiveBattler);
}
diff --git a/src/berry.c b/src/berry.c
index 389a09a106..c56b91ff03 100644
--- a/src/berry.c
+++ b/src/berry.c
@@ -980,7 +980,9 @@ bool32 IsEnigmaBerryValid(void)
const struct Berry *GetBerryInfo(u8 berry)
{
if (berry == ITEM_TO_BERRY(ITEM_ENIGMA_BERRY) && IsEnigmaBerryValid())
+ {
return (struct Berry *)(&gSaveBlock1Ptr->enigmaBerry.berry);
+ }
else
{
if (berry == BERRY_NONE || berry > ITEM_TO_BERRY(LAST_BERRY_INDEX))
@@ -1202,15 +1204,9 @@ static u8 GetNumStagesWateredByBerryTreeId(u8 id)
return BerryTreeGetNumStagesWatered(GetBerryTreeInfo(id));
}
-// Berries can be watered at 4 stages of growth. This function is likely meant
-// to divide the berry yield range equally into quartiles. If you watered the
-// tree n times, your yield is a random number in the nth quartile.
-//
-// However, this function actually skews towards higher berry yields, because
-// it rounds `extraYield` to the nearest whole number.
-//
-// See resulting yields: https://gist.github.com/hondew/2a099dbe54aa91414decdbfaa524327d,
-// and bug fix: https://gist.github.com/hondew/0f0164e5b9dadfd72d24f30f2c049a0b.
+// Berries can be watered at 4 stages of growth. The distribution is largely
+// even but slightly prefers middle berry yields, since it uniformly draws from
+// a subset of the total yield range.
static u8 CalcBerryYieldInternal(u16 max, u16 min, u8 water)
{
u32 randMin;
@@ -1219,7 +1215,9 @@ static u8 CalcBerryYieldInternal(u16 max, u16 min, u8 water)
u32 extraYield;
if (water == 0)
+ {
return min;
+ }
else
{
randMin = (max - min) * (water - 1);
diff --git a/src/berry_blender.c b/src/berry_blender.c
index 97262a4e2f..6a9b196440 100644
--- a/src/berry_blender.c
+++ b/src/berry_blender.c
@@ -246,7 +246,7 @@ static s16 sPokeblockPresentFlavors[FLAVOR_COUNT + 1];
static s16 sDebug_MaxRPMStage;
static s16 sDebug_GameTimeStage;
-u8 gInGameOpponentsNo;
+COMMON_DATA u8 gInGameOpponentsNo = 0;
static const u16 sBlenderCenter_Pal[] = INCBIN_U16("graphics/berry_blender/center.gbapal");
static const u8 sBlenderCenter_Tilemap[] = INCBIN_U8("graphics/berry_blender/center_map.bin");
@@ -916,14 +916,14 @@ static const u8 sBlackPokeblockFlavorFlags[] = {
(1 << FLAVOR_SOUR) | (1 << FLAVOR_SWEET) | (1 << FLAVOR_SPICY),
};
-static const u8 sUnused[] =
-{
- 0xfe, 0x02, 0x02, 0xce, 0xd0, 0x37, 0x44, 0x07, 0x1f, 0x0c, 0x10,
- 0x00, 0xff, 0xfe, 0x91, 0x72, 0xce, 0xd0, 0x37, 0x44, 0x07, 0x1f,
- 0x0c, 0x10, 0x00, 0xff, 0x06, 0x27, 0x02, 0xff, 0x00, 0x0c, 0x48,
- 0x02, 0xff, 0x00, 0x01, 0x1f, 0x02, 0xff, 0x00, 0x16, 0x37, 0x02,
- 0xff, 0x00, 0x0d, 0x50, 0x4b, 0x02, 0xff, 0x06, 0x06, 0x06, 0x06,
- 0x05, 0x03, 0x03, 0x03, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x02
+static const u8 sJPText_GoodTvReady[] = _("\nいいTVができました "); // Unused
+static const u8 sJPText_BadTvReady[] = _("\nダメTVができました "); // Unused
+static const u8 sJPText_Flavors[][5] = {_("からい"), _("しぶい"), _("あまい"), _("にがい"), _("すっぱい")}; // Unused
+
+static const u8 sUnused[] = {
+ 6, 6, 6, 6, 5,
+ 3, 3, 3, 2, 2,
+ 3, 3, 3, 3, 2
};
static const struct WindowTemplate sBlenderRecordWindowTemplate =
@@ -1207,7 +1207,7 @@ static void CreateBerrySprite(u16 itemId, u8 playerId)
sBerrySpriteData[playerId][4]);
}
-static void ConvertItemToBlenderBerry(struct BlenderBerry* berry, u16 itemId)
+static void ConvertItemToBlenderBerry(struct BlenderBerry *berry, u16 itemId)
{
const struct Berry *berryInfo = GetBerryInfo(ITEM_TO_BERRY(itemId));
@@ -1539,7 +1539,7 @@ static u8 GetArrowProximity(u16 arrowPos, u8 playerId)
return PROXIMITY_MISS;
}
-static void SetOpponentsBerryData(u16 playerBerryItemId, u8 playersNum, struct BlenderBerry* playerBerry)
+static void SetOpponentsBerryData(u16 playerBerryItemId, u8 playersNum, struct BlenderBerry *playerBerry)
{
u16 opponentSetId = 0;
u16 opponentBerryId;
@@ -1908,7 +1908,7 @@ static void Task_HandleOpponent1(u8 taskId)
static void Task_HandleOpponent2(u8 taskId)
{
u32 var1 = (sBerryBlender->arrowPos + 0x1800) & 0xFFFF;
- u32 arrowId = sBerryBlender->playerIdToArrowId[2] & 0xFF;
+ u8 arrowId = sBerryBlender->playerIdToArrowId[2];
if ((var1 >> 8) > sArrowHitRangeStart[arrowId] + 20 && (var1 >> 8) < sArrowHitRangeStart[arrowId] + 40)
{
if (!gTasks[taskId].tDidInput)
@@ -1925,11 +1925,9 @@ static void Task_HandleOpponent2(u8 taskId)
}
else
{
- u8 value;
if (rand > 65)
gRecvCmds[2][BLENDER_COMM_SCORE] = LINKCMD_BLENDER_SCORE_BEST;
- value = rand - 41;
- if (value < 25)
+ if (rand > 40 && rand <= 65)
gRecvCmds[2][BLENDER_COMM_SCORE] = LINKCMD_BLENDER_SCORE_GOOD;
if (rand < 10)
CreateOpponentMissTask(2, 5);
@@ -1953,7 +1951,7 @@ static void Task_HandleOpponent2(u8 taskId)
static void Task_HandleOpponent3(u8 taskId)
{
u32 var1 = (sBerryBlender->arrowPos + 0x1800) & 0xFFFF;
- u32 arrowId = sBerryBlender->playerIdToArrowId[3] & 0xFF;
+ u8 arrowId = sBerryBlender->playerIdToArrowId[3];
if ((var1 >> 8) > sArrowHitRangeStart[arrowId] + 20 && (var1 >> 8) < sArrowHitRangeStart[arrowId] + 40)
{
if (gTasks[taskId].data[0] == 0)
@@ -1971,16 +1969,9 @@ static void Task_HandleOpponent3(u8 taskId)
else
{
if (rand > 60)
- {
gRecvCmds[3][BLENDER_COMM_SCORE] = LINKCMD_BLENDER_SCORE_BEST;
- }
- else
- {
- s8 value = rand - 56; // makes me wonder what the original code was
- u8 value2 = value;
- if (value2 < 5)
- gRecvCmds[3][BLENDER_COMM_SCORE] = LINKCMD_BLENDER_SCORE_GOOD;
- }
+ else if (rand > 55 && rand <= 60)
+ gRecvCmds[3][BLENDER_COMM_SCORE] = LINKCMD_BLENDER_SCORE_GOOD;
if (rand < 5)
CreateOpponentMissTask(3, 5);
}
@@ -2050,7 +2041,8 @@ static void UpdateSpeedFromHit(u16 cmd)
switch (cmd)
{
case LINKCMD_BLENDER_SCORE_BEST:
- if (sBerryBlender->speed < 1500) {
+ if (sBerryBlender->speed < 1500)
+ {
sBerryBlender->speed += (384 / sNumPlayersToSpeedDivisor[sBerryBlender->numPlayers]);
}
else
@@ -2251,7 +2243,7 @@ static void Blender_DummiedOutFunc(s16 bgX, s16 bgY)
}
-static bool8 AreBlenderBerriesSame(struct BlenderBerry* berries, u8 a, u8 b)
+static bool8 AreBlenderBerriesSame(struct BlenderBerry *berries, u8 a, u8 b)
{
// First check to itemId is pointless (and wrong anyway?), always false when this is called
// Only used to determine if two enigma berries are equivalent
@@ -2268,7 +2260,7 @@ static bool8 AreBlenderBerriesSame(struct BlenderBerry* berries, u8 a, u8 b)
return FALSE;
}
-static u32 CalculatePokeblockColor(struct BlenderBerry* berries, s16 *_flavors, u8 numPlayers, u8 negativeFlavors)
+static u32 CalculatePokeblockColor(struct BlenderBerry *berries, s16 *_flavors, u8 numPlayers, u8 negativeFlavors)
{
s16 flavors[FLAVOR_COUNT + 1];
s32 i, j;
@@ -2499,7 +2491,7 @@ static void CalculatePokeblock(struct BlenderBerry *berries, struct Pokeblock *p
flavors[i] = sPokeblockFlavors[i];
}
-static void UNUSED Debug_CalculatePokeblock(struct BlenderBerry* berries, struct Pokeblock* pokeblock, u8 numPlayers, u8 *flavors, u16 maxRPM)
+static void UNUSED Debug_CalculatePokeblock(struct BlenderBerry *berries, struct Pokeblock *pokeblock, u8 numPlayers, u8 *flavors, u16 maxRPM)
{
CalculatePokeblock(berries, pokeblock, numPlayers, flavors, maxRPM);
}
diff --git a/src/berry_crush.c b/src/berry_crush.c
old mode 100755
new mode 100644
index 4e789f27a4..b116fc21f2
--- a/src/berry_crush.c
+++ b/src/berry_crush.c
@@ -914,7 +914,7 @@ static const u8 *const sResultsTexts[] =
[RESULTS_PAGE_POWER + NUM_RESULTS_PAGES] = gText_PressingPowerRankings,
};
-static u32 (*const sBerryCrushCommands[])(struct BerryCrushGame * game, u8 * data) =
+static u32 (*const sBerryCrushCommands[])(struct BerryCrushGame *game, u8 *data) =
{
[CMD_NONE] = NULL,
[CMD_FADE] = Cmd_BeginNormalPaletteFade,
@@ -1373,7 +1373,6 @@ static void CreateBerrySprites(struct BerryCrushGame *game, struct BerryCrushGam
u8 spriteId;
s16 distance, var1;
s16 *data;
- s32 amplitude;
s16 speed;
u32 var2;
@@ -1395,11 +1394,7 @@ static void CreateBerrySprites(struct BerryCrushGame *game, struct BerryCrushGam
sYAccel = 32;
sBitfield = 112; // Setting bits in MASK_TARGET_Y
distance = gfx->playerCoords[i]->berryXDest - gfx->playerCoords[i]->berryXOffset;
- amplitude = distance;
- if (distance < 0)
- amplitude += 3;
-
- sAmplitude = amplitude >> 2;
+ sAmplitude = distance / 4;
distance *= 128;
var2 = speed + 32;
var2 = var2 / 2;
@@ -1595,14 +1590,14 @@ static void PrintTextCentered(u8 windowId, u8 left, u8 colorId, const u8 *string
AddTextPrinterParameterized3(windowId, FONT_SHORT, left, 0, sTextColorTable[colorId], 0, string);
}
-static void PrintResultsText(struct BerryCrushGame * game, u8 page, u8 sp14, u8 baseY)
+static void PrintResultsText(struct BerryCrushGame *game, u8 page, u8 sp14, u8 baseY)
{
u8 i, j;
u8 playerId = 0;
u8 ranking = 0;
s32 x;
u8 stat;
- struct BerryCrushGame_Results * results = &game->results;
+ struct BerryCrushGame_Results *results = &game->results;
u32 xOffset;
s32 y;
@@ -1947,7 +1942,7 @@ static void DrawPlayerNameWindows(struct BerryCrushGame *game)
static void CopyPlayerNameWindowGfxToBg(struct BerryCrushGame *game)
{
u8 i = 0;
- u8 * windowGfx;
+ u8 *windowGfx;
LZ77UnCompWram(gBerryCrush_TextWindows_Tilemap, gDecompressionBuffer);
@@ -3403,7 +3398,9 @@ static u32 Cmd_StopGame(struct BerryCrushGame *game, u8 *args)
break;
case 2:
if (game->gfx.counter != 0)
+ {
game->gfx.counter--;
+ }
else
{
RunOrScheduleCommand(CMD_CLOSE_LINK, SCHEDULE_CMD, NULL);
diff --git a/src/berry_fix_program.c b/src/berry_fix_program.c
index 5900cb298a..98938c78b5 100644
--- a/src/berry_fix_program.c
+++ b/src/berry_fix_program.c
@@ -26,7 +26,7 @@ struct {
u8 curScene;
u16 timer;
struct MultiBootParam mb;
-} static * sBerryFix;
+} static *sBerryFix;
static void BerryFix_Main(void);
static void BerryFix_GpuSet(void);
diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c
index 415f22e59e..4c6058ec3d 100644
--- a/src/berry_tag_screen.c
+++ b/src/berry_tag_screen.c
@@ -331,7 +331,7 @@ static bool8 LoadBerryTagGfx(void)
}
break;
case 2:
- LZDecompressWram(gBerryTag_Pal, sBerryTag->tilemapBuffers[2]);
+ LZDecompressWram(gBerryTag_Tilemap, sBerryTag->tilemapBuffers[2]);
sBerryTag->gfxState++;
break;
case 3:
diff --git a/gflib/bg.c b/src/bg.c
similarity index 99%
rename from gflib/bg.c
rename to src/bg.c
index 4ccb95eb6b..6264a1e426 100644
--- a/gflib/bg.c
+++ b/src/bg.c
@@ -42,7 +42,7 @@ static struct BgControl sGpuBgConfigs;
static struct BgConfig2 sGpuBgConfigs2[NUM_BACKGROUNDS];
static u32 sDmaBusyBitfield[NUM_BACKGROUNDS];
-u32 gWindowTileAutoAllocEnabled;
+COMMON_DATA u32 gWindowTileAutoAllocEnabled = 0;
static const struct BgConfig sZeroedBgControlStruct = { 0 };
@@ -916,7 +916,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 wi
{
case BG_TYPE_NORMAL:
{
- const u16 * srcCopy = src;
+ const u16 *srcCopy = src;
for (destY16 = destY; destY16 < (destY + height); destY16++)
{
for (destX16 = destX; destX16 < (destX + width); destX16++)
@@ -928,7 +928,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 wi
}
case BG_TYPE_AFFINE:
{
- const u8 * srcCopy = src;
+ const u8 *srcCopy = src;
mode = GetBgMetricAffineMode(bg, 0x1);
for (destY16 = destY; destY16 < (destY + height); destY16++)
{
diff --git a/src/bike.c b/src/bike.c
index ae9dfd3e91..d8a3d1ab52 100644
--- a/src/bike.c
+++ b/src/bike.c
@@ -372,7 +372,9 @@ static u8 AcroBikeHandleInputWheelieStanding(u8 *newDirection, u16 newKeys, u16
gPlayerAvatar.runningState = NOT_MOVING;
if (heldKeys & B_BUTTON)
+ {
gPlayerAvatar.bikeFrameCounter++;
+ }
else
{
// B button was released.
diff --git a/src/birch_pc.c b/src/birch_pc.c
index 1f0ab23498..8256a1378b 100644
--- a/src/birch_pc.c
+++ b/src/birch_pc.c
@@ -20,7 +20,7 @@ bool16 ScriptGetPokedexInfo(void)
return IsNationalPokedexEnabled();
}
-// This shows your Hoenn Pokedex rating and not your National Dex.
+// This shows your Hoenn Pokédex rating and not your National Dex.
const u8 *GetPokedexRatingText(u16 count)
{
if (count < 10)
diff --git a/gflib/blit.c b/src/blit.c
similarity index 100%
rename from gflib/blit.c
rename to src/blit.c
diff --git a/src/braille_puzzles.c b/src/braille_puzzles.c
index 7863f3cc11..28ed8cdf5f 100644
--- a/src/braille_puzzles.c
+++ b/src/braille_puzzles.c
@@ -61,8 +61,8 @@ static void DoBrailleRegisteelEffect(void);
bool8 ShouldDoBrailleDigEffect(void)
{
if (!FlagGet(FLAG_SYS_BRAILLE_DIG)
- && (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SEALED_CHAMBER_OUTER_ROOM)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(SEALED_CHAMBER_OUTER_ROOM)))
+ && (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_SEALED_CHAMBER_OUTER_ROOM)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_SEALED_CHAMBER_OUTER_ROOM)))
{
if (gSaveBlock1Ptr->pos.x == 10 && gSaveBlock1Ptr->pos.y == 3)
return TRUE;
@@ -167,8 +167,8 @@ static void Task_SealedChamberShakingEffect(u8 taskId)
bool8 ShouldDoBrailleRegirockEffect(void)
{
if (!FlagGet(FLAG_SYS_REGIROCK_PUZZLE_COMPLETED)
- && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(DESERT_RUINS)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(DESERT_RUINS))
+ && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_DESERT_RUINS)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_DESERT_RUINS))
{
if (gSaveBlock1Ptr->pos.x == 6 && gSaveBlock1Ptr->pos.y == 23)
{
@@ -218,7 +218,7 @@ static void DoBrailleRegirockEffect(void)
bool8 ShouldDoBrailleRegisteelEffect(void)
{
- if (!FlagGet(FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED) && (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ANCIENT_TOMB) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ANCIENT_TOMB)))
+ if (!FlagGet(FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED) && (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ANCIENT_TOMB) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ANCIENT_TOMB)))
{
if (gSaveBlock1Ptr->pos.x == 8 && gSaveBlock1Ptr->pos.y == 25)
{
@@ -284,8 +284,8 @@ bool8 ShouldDoBrailleRegicePuzzle(void)
{
u8 i;
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ISLAND_CAVE)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ISLAND_CAVE))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ISLAND_CAVE)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ISLAND_CAVE))
{
if (FlagGet(FLAG_SYS_BRAILLE_REGICE_COMPLETED))
return FALSE;
diff --git a/src/cable_car.c b/src/cable_car.c
index 8a666a536e..522ea01a97 100644
--- a/src/cable_car.c
+++ b/src/cable_car.c
@@ -880,8 +880,12 @@ static void CreateCableCarSprites(void)
// 1/64 chance for an NPC to appear hiking on the ground below the Cable Car
if ((rval % 64) == 0)
{
- // Unclear if this was intentional, but the - 1 in the below ARRAY_COUNT means the Zigzagoon is never used
+ // BUGFIX: The - 1 in the below ARRAY_COUNT means the Zigzagoon is never used
+#ifdef BUGFIX
+ spriteId = CreateObjectGraphicsSprite(hikerGraphicsIds[rval % ARRAY_COUNT(hikerGraphicsIds)], hikerCallbacks[GOING_DOWN], hikerCoords[GOING_DOWN][0], hikerCoords[GOING_DOWN][1], 106);
+#else
spriteId = CreateObjectGraphicsSprite(hikerGraphicsIds[rval % (ARRAY_COUNT(hikerGraphicsIds) - 1)], hikerCallbacks[GOING_DOWN], hikerCoords[GOING_DOWN][0], hikerCoords[GOING_DOWN][1], 106);
+#endif
if (spriteId != MAX_SPRITES)
{
gSprites[spriteId].oam.priority = 2;
diff --git a/src/contest.c b/src/contest.c
index e183c2bd74..b73e23122e 100644
--- a/src/contest.c
+++ b/src/contest.c
@@ -194,7 +194,7 @@ static void SwapMoveDescAndContestTilemaps(void);
#define CONTESTANT_TEXT_COLOR_START 10
enum {
-// The "{Pokemon Name} / {Trainer Name}" windows.
+// The "{Pokémon Name} / {Trainer Name}" windows.
WIN_CONTESTANT0_NAME,
WIN_CONTESTANT1_NAME,
WIN_CONTESTANT2_NAME,
@@ -358,7 +358,7 @@ EWRAM_DATA bool8 gCurContestWinnerIsForArtist = 0;
EWRAM_DATA u8 gCurContestWinnerSaveIdx = 0;
// IWRAM common vars.
-u32 gContestRngValue;
+COMMON_DATA u32 gContestRngValue = 0;
extern const u8 gText_LinkStandby4[];
extern const u8 gText_BDot[];
@@ -420,7 +420,7 @@ static const union AffineAnimCmd sAffineAnim_SliderHeart_SpinAppear[] =
AFFINEANIMCMD_END
};
-static const union AffineAnimCmd* const sAffineAnims_SliderHeart[] =
+static const union AffineAnimCmd *const sAffineAnims_SliderHeart[] =
{
[SLIDER_HEART_ANIM_NORMAL] = sAffineAnim_SliderHeart_Normal,
[SLIDER_HEART_ANIM_DISAPPEAR] = sAffineAnim_SliderHeart_SpinDisappear,
@@ -858,23 +858,22 @@ static const struct CompressedSpriteSheet sSpriteSheets_ContestantsTurnBlinkEffe
}
};
-// Yup this is super dangerous but that's how it is here
static const struct SpritePalette sSpritePalettes_ContestantsTurnBlinkEffect[CONTESTANT_COUNT] =
{
{
- .data = (u16 *)(gHeap + 0x1A0A4),
+ .data = eContestTempSave.cachedWindowPalettes[5],
.tag = TAG_BLINK_EFFECT_CONTESTANT0
},
{
- .data = (u16 *)(gHeap + 0x1A0C4),
+ .data = eContestTempSave.cachedWindowPalettes[6],
.tag = TAG_BLINK_EFFECT_CONTESTANT1
},
{
- .data = (u16 *)(gHeap + 0x1A0E4),
+ .data = eContestTempSave.cachedWindowPalettes[7],
.tag = TAG_BLINK_EFFECT_CONTESTANT2
},
{
- .data = (u16 *)(gHeap + 0x1A104),
+ .data = eContestTempSave.cachedWindowPalettes[8],
.tag = TAG_BLINK_EFFECT_CONTESTANT3
}
};
@@ -1348,13 +1347,13 @@ static bool8 SetupContestGraphics(u8 *stateVar)
CreateApplauseMeterSprite();
CreateJudgeAttentionEyeTask();
CreateUnusedBlendTask();
- gBattlerPositions[0] = B_POSITION_PLAYER_LEFT;
- gBattlerPositions[1] = B_POSITION_OPPONENT_LEFT;
- gBattlerPositions[2] = B_POSITION_OPPONENT_RIGHT;
- gBattlerPositions[3] = B_POSITION_PLAYER_RIGHT;
+ gBattlerPositions[B_BATTLER_0] = B_POSITION_PLAYER_LEFT;
+ gBattlerPositions[B_BATTLER_1] = B_POSITION_OPPONENT_LEFT;
+ gBattlerPositions[B_BATTLER_2] = B_POSITION_OPPONENT_RIGHT;
+ gBattlerPositions[B_BATTLER_3] = B_POSITION_PLAYER_RIGHT;
gBattleTypeFlags = 0;
- gBattlerAttacker = B_POSITION_PLAYER_RIGHT;
- gBattlerTarget = B_POSITION_OPPONENT_RIGHT;
+ gBattlerAttacker = B_BATTLER_2;
+ gBattlerTarget = B_BATTLER_3;
// Unclear why judge sprite is assigned here
// Overwritten in APPEALSTATE_SLIDE_MON_IN with the attacking contest mon
gBattlerSpriteIds[gBattlerAttacker] = CreateJudgeSprite();
@@ -2668,7 +2667,9 @@ static void Task_EndAppeals(u8 taskId)
CalculateFinalScores();
ContestClearGeneralTextWindow();
if (!(gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK))
+ {
BravoTrainerPokemonProfile_BeforeInterview1(eContestantStatus[gContestPlayerMonIndex].prevMove);
+ }
else
{
CalculateContestLiveUpdateData();
@@ -2854,7 +2855,7 @@ void SetContestants(u8 contestType, u8 rank)
u8 opponentsCount = 0;
u8 opponents[100];
bool8 allowPostgameContestants = FALSE;
- const u8 * filter;
+ const u8 *filter;
TryPutPlayerLast();
@@ -3010,7 +3011,7 @@ static void DrawContestantWindowText(void)
static u8 *Contest_CopyStringWithColor(const u8 *string, u8 color)
{
- u8 * ptr = StringCopy(gDisplayedStringBattle, gText_ColorTransparent);
+ u8 *ptr = StringCopy(gDisplayedStringBattle, gText_ColorTransparent);
ptr[-1] = color; // Overwrites the "{COLOR TRANSPARENT}" part of the string.
ptr = StringCopy(ptr, string);
@@ -3170,16 +3171,19 @@ static u16 GetMoveEffectSymbolTileOffset(u16 move, u8 contestant)
switch (gContestEffects[gContestMoves[move].effect].effectType)
{
- case 0:
- case 1:
- case 8:
+ case CONTEST_EFFECT_TYPE_APPEAL:
+ case CONTEST_EFFECT_TYPE_AVOID_STARTLE:
+ case CONTEST_EFFECT_TYPE_UNKNOWN:
offset = 0x9082;
break;
- case 2:
- case 3:
+ case CONTEST_EFFECT_TYPE_STARTLE_MON:
+ case CONTEST_EFFECT_TYPE_STARTLE_MONS:
offset = 0x9088;
break;
default:
+ //case CONTEST_EFFECT_TYPE_WORSEN:
+ //case CONTEST_EFFECT_TYPE_SPECIAL_APPEAL:
+ //case CONTEST_EFFECT_TYPE_TURN_ORDER:
offset = 0x9086;
break;
}
@@ -3434,11 +3438,11 @@ static void RankContestants(void)
// For each contestant, find the best rank with their point total.
// Normally, each point total is different, and this will output the
- // rankings as expected. However, if two pokemon are tied, then they
+ // rankings as expected. However, if two Pokémon are tied, then they
// both get the best rank for that point total.
//
// For example if the point totals are [100, 80, 80, 50], the ranks will
- // be [1, 2, 2, 4]. The pokemon with a point total of 80 stop looking
+ // be [1, 2, 2, 4]. The Pokémon with a point total of 80 stop looking
// when they see the first 80 in the array, so they both share the '2'
// rank.
for (i = 0; i < CONTESTANT_COUNT; i++)
@@ -4590,10 +4594,10 @@ void MakeContestantNervous(u8 p)
// ContestantStatus::nextTurnOrder field of each contestant. The remaining
// turns are assigned such that the turn order will reverse.
//
-// For example, if no pokemon have a defined nextTurnOrder, then the 4th
+// For example, if no Pokémon have a defined nextTurnOrder, then the 4th
// will become 1st, the 3rd will become 2nd, etc.
//
-// Note: This function assumes that multiple pokemon cannot have the same
+// Note: This function assumes that multiple Pokémon cannot have the same
// nextTurnOrder value.
static void ApplyNextTurnOrder(void)
{
diff --git a/src/contest_ai.c b/src/contest_ai.c
index a4bb5b4549..443e57f8be 100644
--- a/src/contest_ai.c
+++ b/src/contest_ai.c
@@ -326,8 +326,8 @@ u8 ContestAI_GetActionToUse(void)
{
// Randomly choose a move index. If it's the move
// with the highest (or tied highest) score, return
- u8 moveIdx = MOD(Random(), MAX_MON_MOVES);
- u8 score = eContestAI.moveScores[moveIdx];
+ u8 moveIndex = MOD(Random(), MAX_MON_MOVES);
+ u8 score = eContestAI.moveScores[moveIndex];
int i;
for (i = 0; i < MAX_MON_MOVES; i++)
{
@@ -335,7 +335,7 @@ u8 ContestAI_GetActionToUse(void)
break;
}
if (i == MAX_MON_MOVES)
- return moveIdx;
+ return moveIndex;
}
}
diff --git a/src/contest_effect.c b/src/contest_effect.c
index b927943036..92cc5a169c 100644
--- a/src/contest_effect.c
+++ b/src/contest_effect.c
@@ -138,7 +138,8 @@ static void ContestEffect_StartleFrontMon(void)
u8 idx = 0;
u8 a = eContestAppealResults.contestant;
- if (eContestAppealResults.turnOrder[a] != 0) {
+ if (eContestAppealResults.turnOrder[a] != 0)
+ {
int i;
for (i = 0; i < CONTESTANT_COUNT; i++)
@@ -618,15 +619,18 @@ static void ContestEffect_QualityDependsOnTiming(void)
{
appeal = 10;
SetContestantEffectStringID(eContestAppealResults.contestant, CONTEST_STRING_APPEAL_NOT_VERY_WELL);
- } else if (rval < 6)
+ }
+ else if (rval < 6)
{
appeal = 20;
SetContestantEffectStringID(eContestAppealResults.contestant, CONTEST_STRING_APPEAL_SLIGHTLY_WELL2);
- } else if (rval < 8)
+ }
+ else if (rval < 8)
{
appeal = 40;
SetContestantEffectStringID(eContestAppealResults.contestant, CONTEST_STRING_APPEAL_PRETTY_WELL2);
- } else if (rval < 9)
+ }
+ else if (rval < 9)
{
appeal = 60;
SetContestantEffectStringID(eContestAppealResults.contestant, CONTEST_STRING_APPEAL_VERY_WELL);
@@ -867,7 +871,9 @@ static void ContestEffect_ScrambleNextTurnOrder(void)
break;
}
else
+ {
rval--;
+ }
}
}
}
@@ -907,7 +913,9 @@ static void ContestEffect_BadlyStartleMonsWithGoodAppeals(void)
eContestAppealResults.jam = RoundUp(eContestAppealResults.jam);
}
else
+ {
eContestAppealResults.jam = 10;
+ }
eContestAppealResults.jamQueue[0] = i;
eContestAppealResults.jamQueue[1] = CONTESTANT_NONE;
if (WasAtLeastOneOpponentJammed())
@@ -1070,7 +1078,9 @@ static s16 RoundTowardsZero(s16 score)
score -= 10 - absScore;
}
else
+ {
score -= absScore;
+ }
return score;
}
diff --git a/src/contest_painting.c b/src/contest_painting.c
index 30ca51c966..c72d0dc6af 100644
--- a/src/contest_painting.c
+++ b/src/contest_painting.c
@@ -21,10 +21,10 @@
#include "window.h"
#include "constants/rgb.h"
-u16 (*gContestMonPixels)[][32];
-struct ImageProcessingContext gImageProcessingContext;
-struct ContestWinner *gContestPaintingWinner;
-u16 *gContestPaintingMonPalette;
+COMMON_DATA u16 (*gContestMonPixels)[][32] = {0};
+COMMON_DATA struct ImageProcessingContext gImageProcessingContext = {0};
+COMMON_DATA struct ContestWinner *gContestPaintingWinner = {0};
+COMMON_DATA u16 *gContestPaintingMonPalette = NULL;
static u8 sHoldState;
static u16 sMosaicVal;
diff --git a/src/contest_util.c b/src/contest_util.c
index e0e80a7091..7e49ce33c6 100644
--- a/src/contest_util.c
+++ b/src/contest_util.c
@@ -2306,13 +2306,13 @@ void GetNpcContestantLocalId(void)
switch (contestant)
{
case 0:
- localId = 3;
+ localId = LOCALID_CONTESTANT_1;
break;
case 1:
- localId = 4;
+ localId = LOCALID_CONTESTANT_2;
break;
case 2:
- localId = 5;
+ localId = LOCALID_CONTESTANT_3;
break;
default: // Invalid
localId = 100;
@@ -2512,7 +2512,12 @@ void LoadLinkContestPlayerPalettes(void)
u8 objectEventId;
int version;
struct Sprite *sprite;
- static const u8 sContestantLocalIds[CONTESTANT_COUNT] = { 3, 4, 5, 14 };
+ static const u8 sContestantLocalIds[CONTESTANT_COUNT] = {
+ LOCALID_CONTESTANT_1,
+ LOCALID_CONTESTANT_2,
+ LOCALID_CONTESTANT_3,
+ LOCALID_CONTESTANT_4,
+ };
gReservedSpritePaletteCount = 12;
if (gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK)
diff --git a/src/credits.c b/src/credits.c
index 69a4ebbbf3..c433baf1d1 100644
--- a/src/credits.c
+++ b/src/credits.c
@@ -63,12 +63,12 @@ enum {
struct CreditsData
{
- u16 monToShow[NUM_MON_SLIDES]; // List of Pokemon species ids that will show during the credits
+ u16 monToShow[NUM_MON_SLIDES]; // List of Pokémon species ids that will show during the credits
u16 imgCounter; //how many mon images have been shown
u16 nextImgPos; //if the next image spawns left/center/right
u16 currShownMon; //index into monToShow
- u16 numMonToShow; //number of pokemon to show, always NUM_MON_SLIDES after determine function
- u16 caughtMonIds[NATIONAL_DEX_COUNT]; //temporary location to hold a condensed array of all caught pokemon
+ u16 numMonToShow; //number of Pokémon to show, always NUM_MON_SLIDES after determine function
+ u16 caughtMonIds[NATIONAL_DEX_COUNT]; //temporary location to hold a condensed array of all caught Pokémon
u16 numCaughtMon; //count of filled spaces in caughtMonIds
u16 unused[7];
};
@@ -1555,8 +1555,8 @@ static void DeterminePokemonToShow(void)
u16 dexNum;
u16 j;
- // Go through the Pokedex, and anything that has gotten caught we put into our massive array.
- // This basically packs all of the caught pokemon into the front of the array
+ // Go through the Pokédex, and anything that has gotten caught we put into our massive array.
+ // This basically packs all of the caught Pokémon into the front of the array
for (dexNum = 1, j = 0; dexNum < NATIONAL_DEX_COUNT; dexNum++)
{
if (GetSetPokedexFlag(dexNum, FLAG_GET_CAUGHT))
@@ -1570,14 +1570,14 @@ static void DeterminePokemonToShow(void)
for (dexNum = j; dexNum < NATIONAL_DEX_COUNT; dexNum++)
sCreditsData->caughtMonIds[dexNum] = NATIONAL_DEX_NONE;
- // Cap the number of pokemon we care about to NUM_MON_SLIDES, the max we show in the credits scene (-1 for the starter)
+ // Cap the number of Pokémon we care about to NUM_MON_SLIDES, the max we show in the credits scene (-1 for the starter)
sCreditsData->numCaughtMon = j;
if (sCreditsData->numCaughtMon < NUM_MON_SLIDES)
sCreditsData->numMonToShow = j;
else
sCreditsData->numMonToShow = NUM_MON_SLIDES;
- // Loop through our list of caught pokemon and select randomly from it to fill the images to show
+ // Loop through our list of caught Pokémon and select randomly from it to fill the images to show
j = 0;
do
{
@@ -1598,7 +1598,7 @@ static void DeterminePokemonToShow(void)
}
while (sCreditsData->numCaughtMon != 0 && j < NUM_MON_SLIDES);
- // If we don't have enough pokemon in the dex to fill everything, copy the selected mon into the end of the array, so it loops
+ // If we don't have enough Pokémon in the dex to fill everything, copy the selected mon into the end of the array, so it loops
if (sCreditsData->numMonToShow < NUM_MON_SLIDES)
{
for (j = sCreditsData->numMonToShow, page = 0; j < NUM_MON_SLIDES; j++)
@@ -1609,7 +1609,7 @@ static void DeterminePokemonToShow(void)
if (page == sCreditsData->numMonToShow)
page = 0;
}
- // Ensure the last pokemon is our starter
+ // Ensure the last Pokémon is our starter
sCreditsData->monToShow[NUM_MON_SLIDES - 1] = starter;
}
else
@@ -1617,7 +1617,7 @@ static void DeterminePokemonToShow(void)
// Check to see if our starter has already appeared in this list, break if it has
for (dexNum = 0; sCreditsData->monToShow[dexNum] != starter && dexNum < NUM_MON_SLIDES; dexNum++);
- // If it has, swap it with the last pokemon, to ensure our starter is the last image
+ // If it has, swap it with the last Pokémon, to ensure our starter is the last image
if (dexNum < sCreditsData->numMonToShow - 1)
{
sCreditsData->monToShow[dexNum] = sCreditsData->monToShow[NUM_MON_SLIDES-1];
@@ -1625,7 +1625,7 @@ static void DeterminePokemonToShow(void)
}
else
{
- // Ensure the last pokemon is our starter
+ // Ensure the last Pokémon is our starter
sCreditsData->monToShow[NUM_MON_SLIDES - 1] = starter;
}
}
diff --git a/src/data/.gitignore b/src/data/.gitignore
index f9205e5627..371e10c56e 100755
--- a/src/data/.gitignore
+++ b/src/data/.gitignore
@@ -1,3 +1,4 @@
+heal_locations.h
wild_encounters.h
region_map/region_map_entries.h
region_map/porymap_config.json
diff --git a/src/data/bard_music/actions.h b/src/data/bard_music/actions.h
index 5acac34502..de0f4c8fd3 100644
--- a/src/data/bard_music/actions.h
+++ b/src/data/bard_music/actions.h
@@ -1,626 +1,626 @@
#ifndef GUARD_DATA_BARD_MUSIC_ACTIONS_H
#define GUARD_DATA_BARD_MUSIC_ACTIONS_H
-const struct BardSound gBardSounds_Actions[][6] = {
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Actions[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_MEETS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CONCEDE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 16 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GIVE)] = {
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 16 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GIVES)] = {
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 4 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PLAYED)] = {
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PLAYS)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COLLECT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WALKING)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 8 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WALKS)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SAYS)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WENT)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SAID)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WAKE_UP)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WAKES_UP)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ANGERS)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 13 },
+ [EC_INDEX(EC_WORD_TEACH)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TEACHES)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 13 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PLEASE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LEARN)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CHANGE)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STORY)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRUST)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LAVISH)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LISTENS)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEARING)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRAINS)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CHOOSE)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COME)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CAME)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SEARCH)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MAKE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CAUSE)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_KNOW)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_KNOWS)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 47 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_REFUSE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_CURE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STORES)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BRAG)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 26 },
- { .songLengthId = 2 },
+ [EC_INDEX(EC_WORD_IGNORANT)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THINKS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BELIEVE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SLIDE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EATS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 47 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_USE)] = {
+ { .songId = PHONEME_ID(PH_CURE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 47 },
- { .songLengthId = 10 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_USES)] = {
+ { .songId = PHONEME_ID(PH_CURE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 47 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_USING)] = {
+ { .songId = PHONEME_ID(PH_CURE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COULDN_T)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 44 },
- { .songLengthId = 26 },
+ [EC_INDEX(EC_WORD_CAPABLE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 44 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DISAPPEAR)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_APPEAR)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THROW)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WORRY)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SLEPT)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SLEEP)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RELEASE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DRINKS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RUNS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RUN)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WORKS)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 13 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WORKING)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TALKING)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
+ [EC_INDEX(EC_WORD_TALK)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SINK)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SMACK)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PRETEND)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PRAISE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 48 },
- { .songLengthId = 41 },
+ [EC_INDEX(EC_WORD_OVERDO)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHOW)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOOKS)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SEES)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SEEK)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OWN)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TAKE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 35 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALLOW)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FORGET)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 10 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FORGETS)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 13 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_APPEARS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FAINT)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 10 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FAINTED)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/adjectives.h b/src/data/bard_music/adjectives.h
index c86138d2c4..641fcb3f2e 100644
--- a/src/data/bard_music/adjectives.h
+++ b/src/data/bard_music/adjectives.h
@@ -1,293 +1,293 @@
#ifndef GUARD_DATA_BARD_MUSIC_ADJECTIVES_H
#define GUARD_DATA_BARD_MUSIC_ADJECTIVES_H
-const struct BardSound gBardSounds_Adjectives[][6] = {
- {
- { .songLengthId = 29 },
- { .songLengthId = 50 },
- { .songLengthId = 12 },
+static const struct BardSoundTemplate sBardSoundTemplates_Adjectives[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_WANDERING)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 9 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_RICKETY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 27 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_ROCK_SOLID)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_HUNGRY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TIGHT)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 36 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_TICKLISH)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TWIRLING)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 8 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SPIRALING)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THIRSTY)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOLLING)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SILKY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SADLY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HOPELESS)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 45 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_USELESS)] = {
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DROOLING)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 18 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_EXCITING)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THICK)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SMOOTH)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SLIMY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THIN)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BREAK)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 5 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_VORACIOUS)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SCATTER)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AWESOME)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WIMPY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WOBBLY)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHAKY)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RIPPED)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHREDDED)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 12 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_INCREASING)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YET)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 30 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DESTROYED)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 50 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_FIERY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 44 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_LOVEY_DOVEY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 44 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_HAPPILY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 17 },
- { .songLengthId = 3 },
- { .songLengthId = 29 },
- { .songLengthId = 51 }
+ [EC_INDEX(EC_WORD_ANTICIPATION)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND
}
};
diff --git a/src/data/bard_music/bard_sounds.h b/src/data/bard_music/bard_sounds.h
deleted file mode 100644
index 291d22872a..0000000000
--- a/src/data/bard_music/bard_sounds.h
+++ /dev/null
@@ -1,52 +0,0 @@
-#ifndef GUARD_BARD_SOUNDS_TABLE_H
-#define GUARD_BARD_SOUNDS_TABLE_H
-
-#define NULL_BARD_SOUND { .songLengthId = 0xff }
-
-#include "pokemon.h"
-#include "moves.h"
-#include "trainer.h"
-#include "status.h"
-#include "battle.h"
-#include "greetings.h"
-#include "people.h"
-#include "voices.h"
-#include "speech.h"
-#include "endings.h"
-#include "feelings.h"
-#include "conditions.h"
-#include "actions.h"
-#include "lifestyle.h"
-#include "hobbies.h"
-#include "time.h"
-#include "misc.h"
-#include "adjectives.h"
-#include "events.h"
-#include "trendysaying.h"
-
-const struct BardSound (*const gBardSoundsTable[EC_NUM_GROUPS])[6] = {
- [EC_GROUP_POKEMON] = NULL, // Handled by gBardSounds_Pokemon
- [EC_GROUP_TRAINER] = gBardSounds_Trainer,
- [EC_GROUP_STATUS] = gBardSounds_Status,
- [EC_GROUP_BATTLE] = gBardSounds_Battle,
- [EC_GROUP_GREETINGS] = gBardSounds_Greetings,
- [EC_GROUP_PEOPLE] = gBardSounds_People,
- [EC_GROUP_VOICES] = gBardSounds_Voices,
- [EC_GROUP_SPEECH] = gBardSounds_Speech,
- [EC_GROUP_ENDINGS] = gBardSounds_Endings,
- [EC_GROUP_FEELINGS] = gBardSounds_Feelings,
- [EC_GROUP_CONDITIONS] = gBardSounds_Conditions,
- [EC_GROUP_ACTIONS] = gBardSounds_Actions,
- [EC_GROUP_LIFESTYLE] = gBardSounds_Lifestyle,
- [EC_GROUP_HOBBIES] = gBardSounds_Hobbies,
- [EC_GROUP_TIME] = gBardSounds_Time,
- [EC_GROUP_MISC] = gBardSounds_Misc,
- [EC_GROUP_ADJECTIVES] = gBardSounds_Adjectives,
- [EC_GROUP_EVENTS] = gBardSounds_Events,
- [EC_GROUP_MOVE_1] = NULL, // Handled by gBardSounds_Moves
- [EC_GROUP_MOVE_2] = NULL, // Handled by gBardSounds_Moves
- [EC_GROUP_TRENDY_SAYING] = gBardSounds_TrendySaying,
- [EC_GROUP_POKEMON_NATIONAL] = NULL // Handled by gBardSounds_Pokemon
-};
-
-#endif //GUARD_BARD_SOUNDS_TABLE_H
diff --git a/src/data/bard_music/battle.h b/src/data/bard_music/battle.h
index c2cb57134f..0ec01b0322 100644
--- a/src/data/bard_music/battle.h
+++ b/src/data/bard_music/battle.h
@@ -1,506 +1,506 @@
#ifndef GUARD_DATA_BARD_MUSIC_BATTLE_H
#define GUARD_DATA_BARD_MUSIC_BATTLE_H
-const struct BardSound gBardSounds_Battle[][6] = {
- {
- { .songLengthId = 2 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Battle[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_MATCH_UP)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GO)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 44 },
+ [EC_INDEX(EC_WORD_NO_1)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DECIDE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 15 },
+ [EC_INDEX(EC_WORD_LET_ME_WIN)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WINS)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WIN)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WON)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 18 },
- { .songLengthId = 15 },
+ [EC_INDEX(EC_WORD_IF_I_WIN)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 18 },
- { .songLengthId = 15 },
+ [EC_INDEX(EC_WORD_WHEN_I_WIN)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CAN_T_WIN)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CAN_WIN)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NO_MATCH)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SPIRIT)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 18 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_DECIDED)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 8 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRUMP_CARD)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 1 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TAKE_THAT)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 23 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COME_ON)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ATTACK)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 9 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_SURRENDER)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GUTSY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TALENT)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 11 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_STRATEGY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SMITE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MATCH)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 50 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_VICTORY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 11 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OFFENSIVE)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SENSE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_VERSUS)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FIGHTS)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 35 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_POWER)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 10 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CHALLENGE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STRONG)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOO_STRONG)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_GO_EASY)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FOE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 14 },
- { .songLengthId = 44 },
+ [EC_INDEX(EC_WORD_GENIUS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LEGEND)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ESCAPE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AIM)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BATTLE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FIGHT)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_RESUSCITATE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 30 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_POINTS)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 44 },
+ [EC_INDEX(EC_WORD_SERIOUS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GIVE_UP)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOSS)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 18 },
- { .songLengthId = 39 },
+ [EC_INDEX(EC_WORD_IF_I_LOSE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 22 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOST)] = {
+ { .songId = PHONEME_ID(PH_LOT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOSE)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 8 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GUARD)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PARTNER)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_REJECT)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ACCEPT)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 17 },
- { .songLengthId = 44 },
- { .songLengthId = 36 },
+ [EC_INDEX(EC_WORD_INVINCIBLE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RECEIVED)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EASY)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WEAK)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOO_WEAK)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 26 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_PUSHOVER)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LEADER)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RULE)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MOVE)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/conditions.h b/src/data/bard_music/conditions.h
index c56421e63f..9eb8b7f01c 100644
--- a/src/data/bard_music/conditions.h
+++ b/src/data/bard_music/conditions.h
@@ -1,554 +1,554 @@
#ifndef GUARD_DATA_BARD_MUSIC_CONDITIONS_H
#define GUARD_DATA_BARD_MUSIC_CONDITIONS_H
-const struct BardSound gBardSounds_Conditions[][6] = {
- {
- { .songLengthId = 21 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+const struct BardSoundTemplate sBardSoundTemplates_Conditions[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_HOT)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EXISTS)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EXCESS)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 41 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_APPROVED)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HAS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GOOD)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LESS)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 11 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MOMENTUM)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GOING)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WEIRD)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BUSY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 10 },
- { .songLengthId = 50 },
+ [EC_INDEX(EC_WORD_TOGETHER)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FULL)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ABSENT)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BEING)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NEED)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TASTY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SKILLED)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 32 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NOISY)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BIG)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LATE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 25 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CLOSE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DOCILE)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 39 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_AMUSING)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 3 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ENTERTAINING)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 11 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PERFECTION)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PRETTY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEALTHY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 44 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_EXCELLENT)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 20 },
- { .songLengthId = 35 },
+ [EC_INDEX(EC_WORD_UPSIDE_DOWN)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COLD)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 10 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_REFRESHING)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 42 },
- { .songLengthId = 30 },
- { .songLengthId = 44 },
- { .songLengthId = 38 },
+ [EC_INDEX(EC_WORD_UNAVOIDABLE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MUCH)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 50 },
- { .songLengthId = 11 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OVERWHELMING)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 39 },
- { .songLengthId = 44 },
+ [EC_INDEX(EC_WORD_FABULOUS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ELSE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 10 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_EXPENSIVE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CORRECT)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 29 },
- { .songLengthId = 42 },
- { .songLengthId = 38 },
+ [EC_INDEX(EC_WORD_IMPOSSIBLE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SMALL)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_DIFFERENT)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TIRED)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SKILL)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOP)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 22 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NON_STOP)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 22 },
- { .songLengthId = 50 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PREPOSTEROUS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_HELD) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NONE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NOTHING)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 50 },
- { .songLengthId = 38 },
+ [EC_INDEX(EC_WORD_NATURAL)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BECOMES)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 28 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LUKEWARM)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FAST)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOW)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 8 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AWFUL)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALONE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BORED)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SECRET)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_MYSTERY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LACKS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BEST)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOUSY)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MISTAKE)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_KIND)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WELL)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_WEAKENED)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SIMPLE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 13 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SEEMS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BADLY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/default_sound.h b/src/data/bard_music/default_sound.h
deleted file mode 100644
index ad4008e16e..0000000000
--- a/src/data/bard_music/default_sound.h
+++ /dev/null
@@ -1,13 +0,0 @@
-#ifndef GUARD_default_sound_H
-#define GUARD_default_sound_H
-
-const struct BardSound gBardSound_InvalidWord[] = {
- NULL_BARD_SOUND,
- NULL_BARD_SOUND,
- NULL_BARD_SOUND,
- NULL_BARD_SOUND,
- NULL_BARD_SOUND,
- NULL_BARD_SOUND
-};
-
-#endif //GUARD_default_sound_H
diff --git a/src/data/bard_music/endings.h b/src/data/bard_music/endings.h
index 2513476595..6d0669feed 100644
--- a/src/data/bard_music/endings.h
+++ b/src/data/bard_music/endings.h
@@ -1,554 +1,554 @@
#ifndef GUARD_DATA_BARD_MUSIC_ENDINGS_H
#define GUARD_DATA_BARD_MUSIC_ENDINGS_H
-const struct BardSound gBardSounds_Endings[][6] = {
- {
- { .songLengthId = 16 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Endings[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_WILL)] = {
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 16 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_WILL_BE_HERE)] = {
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OR)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TIMES)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WONDER)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_IS_IT_QUES)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GIMME)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COULD)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 14 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LIKELY_TO)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WOULD)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 16 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_IS)] = {
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 9 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_ISN_T_IT_QUES)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_LET_S)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OTHER)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 28 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ARE)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WAS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WERE)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THOSE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ISN_T)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WON_T)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CAN_T)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CAN)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DON_T)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
+ [EC_INDEX(EC_WORD_DO)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DOES)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHOM)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHICH)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WASN_T)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WEREN_T)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HAVE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HAVEN_T)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_A)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AN)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NOT)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THERE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 4 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OK_QUES)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SO)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MAYBE)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 35 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ABOUT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OVER)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_IT)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALL)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FOR)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 28 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ON)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
+ [EC_INDEX(EC_WORD_OFF)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TO)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WITH)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BETTER)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EVER)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SINCE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OF)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BELONGS_TO)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AT)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_IN)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
+ [EC_INDEX(EC_WORD_OUT)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOO)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LIKE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DID)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DIDN_T)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DOESN_T)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 35 },
+ [EC_INDEX(EC_WORD_WITHOUT)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AFTER)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BEFORE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHILE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THAN)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ONCE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ANYWHERE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/events.h b/src/data/bard_music/events.h
index b33c1e2b30..6bd57c0c70 100644
--- a/src/data/bard_music/events.h
+++ b/src/data/bard_music/events.h
@@ -1,234 +1,234 @@
#ifndef GUARD_DATA_BARD_MUSIC_EVENTS_H
#define GUARD_DATA_BARD_MUSIC_EVENTS_H
-const struct BardSound gBardSounds_Events[][6] = {
- {
- { .songLengthId = 44 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Events[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_APPEAL)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EVENTS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 0 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STAY_AT_HOME)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BERRY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CONTEST)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MC)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 43 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_JUDGE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SUPER)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STAGE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 44 },
- { .songLengthId = 4 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HALL_OF_FAME)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EVOLUTION)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HYPER)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 44 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_BATTLE_TOWER)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LEADERS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 44 },
- { .songLengthId = 39 },
+ [EC_INDEX(EC_WORD_BATTLE_ROOM)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HIDDEN)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 4 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SECRET_BASE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BLEND)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_POKEBLOCK)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MASTER)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RANK)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RIBBON)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 42 },
+ [EC_INDEX(EC_WORD_CRUSH)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 9 },
+ [EC_INDEX(EC_WORD_DIRECT)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_TOWER)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 42 },
+ [EC_INDEX(EC_WORD_UNION)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ROOM)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WIRELESS)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_FRONTIER)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/feelings.h b/src/data/bard_music/feelings.h
index a465133970..34ef734ecb 100644
--- a/src/data/bard_music/feelings.h
+++ b/src/data/bard_music/feelings.h
@@ -1,555 +1,555 @@
#ifndef GUARD_DATA_BARD_MUSIC_FEELINGS_H
#define GUARD_DATA_BARD_MUSIC_FEELINGS_H
-const struct BardSound gBardSounds_Feelings[][6] = {
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Feelings[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_MEET)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 4 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PLAY)] = {
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HURRIED)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 25 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GOES)] = {
+ { .songId = PHONEME_ID(PH_GOAT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GIDDY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HAPPY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_HAPPINESS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EXCITE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 26 },
- { .songLengthId = 0 },
+ [EC_INDEX(EC_WORD_IMPORTANT)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FUNNY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GOT)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GO_HOME)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 0 },
- { .songLengthId = 30 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_DISAPPOINTED)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 0 },
- { .songLengthId = 32 },
+ [EC_INDEX(EC_WORD_DISAPPOINTS)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SAD)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRIES)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEARS)] = {
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 13 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THINK)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEAR)] = {
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 8 },
+ [EC_INDEX(EC_WORD_WANTS)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MISHEARD)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DISLIKE)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ANGRY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ANGER)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SCARY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LONESOME)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 42 },
- { .songLengthId = 32 },
+ [EC_INDEX(EC_WORD_DISAPPOINT)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 32 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_JOY)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GETS)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NEVER)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 8 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DARN)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DOWNCAST)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 11 },
- { .songLengthId = 17 },
- { .songLengthId = 38 },
+ [EC_INDEX(EC_WORD_INCREDIBLE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LIKES)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DISLIKES)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BORING)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CARE)] = {
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CARES)] = {
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALL_RIGHT)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ADORE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 0 },
- { .songLengthId = 50 },
+ [EC_INDEX(EC_WORD_DISASTER)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 32 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ENJOY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_CHOICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 32 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ENJOYS)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_CHOICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EAT)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LACKING)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BAD)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HARD)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 42 },
- { .songLengthId = 26 },
+ [EC_INDEX(EC_WORD_TERRIBLE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHOULD)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NICE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DRINK)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SURPRISE)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FEAR)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WANT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WAIT)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SATISFIED)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SEE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RARE)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 44 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_NEGATIVE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DONE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DANGER)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 14 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_DEFEATED)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BEAT)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 4 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GREAT)] = {
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 0 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_ROMANTIC)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_QUESTION)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 50 },
- { .songLengthId = 2 },
+ [EC_INDEX(EC_WORD_UNDERSTAND)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 50 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UNDERSTANDS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
}
diff --git a/src/data/bard_music/greetings.h b/src/data/bard_music/greetings.h
index ebddb79de4..4a64c7d006 100644
--- a/src/data/bard_music/greetings.h
+++ b/src/data/bard_music/greetings.h
@@ -1,338 +1,338 @@
#ifndef GUARD_DATA_BARD_MUSIC_GREETINGS_H
#define GUARD_DATA_BARD_MUSIC_GREETINGS_H
-const struct BardSound gBardSounds_Greetings[][6] = {
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Greetings[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_THANKS)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YES)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HERE_GOES)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 18 },
- { .songLengthId = 23 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HERE_I_COME)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 17 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_HERE_IT_IS)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YEAH)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 23 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WELCOME)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 30 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OI)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HOW_DO)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CONGRATS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GIVE_ME)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SORRY)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 6 },
- { .songLengthId = 23 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_APOLOGIZE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 16 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FORGIVE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 4 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEY_THERE)] = {
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HELLO)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GOOD_BYE)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THANK_YOU)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 6 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_I_VE_ARRIVED)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PARDON)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EXCUSE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SEE_YA)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 40 },
- { .songLengthId = 13 },
+ [EC_INDEX(EC_WORD_EXCUSE_ME)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WELL_THEN)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 44 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_GO_AHEAD)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_APPRECIATE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 4 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEY_QUES)] = {
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 43 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHAT_S_UP_QUES)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HUH_QUES)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NO)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HI)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 10 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YEAH_YEAH)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BYE_BYE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MEET_YOU)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 13 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SMELL)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 11 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_LISTENING)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 1 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HOO_HAH)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YAHOO)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YO)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 24 },
- { .songLengthId = 50 },
+ [EC_INDEX(EC_WORD_COME_OVER)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 35 },
- { .songLengthId = 23 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COUNT_ON)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/hobbies.h b/src/data/bard_music/hobbies.h
index db55ef1246..d51e9164cf 100644
--- a/src/data/bard_music/hobbies.h
+++ b/src/data/bard_music/hobbies.h
@@ -1,434 +1,434 @@
#ifndef GUARD_DATA_BARD_MUSIC_HOBBIES_H
#define GUARD_DATA_BARD_MUSIC_HOBBIES_H
-const struct BardSound gBardSounds_Hobbies[][6] = {
- {
- { .songLengthId = 20 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Hobbies[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_IDOL)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 44 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_ANIME)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SONG)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MOVIE)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SWEETS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CHAT)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 38 },
- { .songLengthId = 4 },
+ [EC_INDEX(EC_WORD_CHILD_S_PLAY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 30 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOYS)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 47 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MUSIC)] = {
+ { .songId = PHONEME_ID(PH_CURE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CARDS)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHOPPING)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 50 },
- { .songLengthId = 44 },
+ [EC_INDEX(EC_WORD_CAMERA)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 47 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_VIEWING)] = {
+ { .songId = PHONEME_ID(PH_CURE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 5 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_SPECTATOR)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GOURMET)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GAME)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_RPG)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 11 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COLLECTION)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COMPLETE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 44 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MAGAZINE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WALK)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BIKE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HOBBY)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SPORTS)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SOFTWARE)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SONGS)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DIET)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TREASURE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRAVEL)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DANCE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CHANNEL)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MAKING)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FISHING)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DATE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DESIGN)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 44 },
- { .songLengthId = 26 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_LOCOMOTIVE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PLUSH_DOLL)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PC)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FLOWERS)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HERO)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NAP)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 26 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEROINE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FASHION)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 11 },
- { .songLengthId = 50 },
+ [EC_INDEX(EC_WORD_ADVENTURE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BOARD)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BALL)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BOOK)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 14 },
- { .songLengthId = 8 },
+ [EC_INDEX(EC_WORD_FESTIVAL)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COMICS)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 17 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_HOLIDAY)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PLANS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRENDY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 5 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_VACATION)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOOK)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/length_table.h b/src/data/bard_music/length_table.h
deleted file mode 100644
index d53dcb23fa..0000000000
--- a/src/data/bard_music/length_table.h
+++ /dev/null
@@ -1,21 +0,0 @@
-#ifndef GUARD_LENGTH_TABLE_H
-#define GUARD_LENGTH_TABLE_H
-
-const int gBardSoundLengthTable[] = {
- 9, 22, 15, 16,
- 39, 21, 9, 30,
- 24, 15, 25, 12,
- 22, 45, 24, 15,
- 40, 9, 21, 42,
- 18, 9, 22, 15,
- 27, 48, 18, 27,
- 33, 24, 25, 39,
- 19, 16, 54, 18,
- 9, 45, 15, 12,
- 39, 23, 5, 45,
- 12, 21, 48, 12,
- 21, 69, 18, 15
-};
-
-
-#endif //GUARD_LENGTH_TABLE_H
diff --git a/src/data/bard_music/lifestyle.h b/src/data/bard_music/lifestyle.h
index 9aeac37576..4415ab638a 100644
--- a/src/data/bard_music/lifestyle.h
+++ b/src/data/bard_music/lifestyle.h
@@ -1,362 +1,362 @@
#ifndef GUARD_DATA_BARD_MUSIC_LIFESTYLE_H
#define GUARD_DATA_BARD_MUSIC_LIFESTYLE_H
-const struct BardSound gBardSounds_Lifestyle[][6] = {
- {
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Lifestyle[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_CHORES)] = {
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HOME)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MONEY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 35 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALLOWANCE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BATH)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 50 },
- { .songLengthId = 3 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CONVERSATION)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SCHOOL)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 11 },
- { .songLengthId = 50 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_COMMEMORATE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HABIT)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GROUP)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WORD)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STORE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SERVICE)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WORK)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SYSTEM)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRAIN)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CLASS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LESSONS)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 48 },
- { .songLengthId = 5 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_INFORMATION)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LIVING)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TEACHER)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 42 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_TOURNAMENT)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LETTER)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EVENT)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 17 },
- { .songLengthId = 44 },
+ [EC_INDEX(EC_WORD_DIGITAL)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TEST)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 11 },
- { .songLengthId = 26 },
+ [EC_INDEX(EC_WORD_DEPT_STORE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TELEVISION)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PHONE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ITEM)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NAME)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NEWS)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 39 },
- { .songLengthId = 50 },
+ [EC_INDEX(EC_WORD_POPULAR)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 28 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PARTY)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STUDY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MACHINE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MAIL)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MESSAGE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PROMISE)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DREAM)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 50 },
- { .songLengthId = 23 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_KINDERGARTEN)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LIFE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
+ [EC_INDEX(EC_WORD_RADIO)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RENTAL)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WORLD)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/misc.h b/src/data/bard_music/misc.h
index 1bce1a45dd..730ff37d71 100644
--- a/src/data/bard_music/misc.h
+++ b/src/data/bard_music/misc.h
@@ -1,338 +1,338 @@
#ifndef GUARD_DATA_BARD_MUSIC_MISC_H
#define GUARD_DATA_BARD_MUSIC_MISC_H
-const struct BardSound gBardSounds_Misc[][6] = {
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Misc[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_HIGHS)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOWS)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 43 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UM)] = {
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_REAR)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THINGS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THING)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BELOW)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ABOVE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BACK)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HIGH)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HERE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_INSIDE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OUTSIDE)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BESIDE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 17 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_THIS_IS_IT_EXCL)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THIS)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_EVERY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THESE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THESE_WERE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DOWN)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THAT)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THOSE_ARE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THOSE_WERE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THAT_S_IT_EXCL)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 16 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AM)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THAT_WAS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 43 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FRONT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UP)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CHOICE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FAR)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 4 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AWAY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NEAR)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHERE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 16 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHEN)] = {
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHAT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DEEP)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHALLOW)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 46 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CONFUSED)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_CURE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 26 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_OPPOSITE)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LEFT)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RIGHT)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/moves.h b/src/data/bard_music/moves.h
index 6c658cd4a0..2c204af282 100644
--- a/src/data/bard_music/moves.h
+++ b/src/data/bard_music/moves.h
@@ -5,7 +5,7 @@
const u16 gNumBardWords_Moves = MOVES_COUNT;
-const struct BardSound gBardSounds_Moves[MOVES_COUNT][6] = {
+static const struct BardSoundTemplate sBardSoundTemplates_Moves[MOVES_COUNT][MAX_BARD_SOUNDS_PER_WORD] = {
[MOVE_NONE] = {
NULL_BARD_SOUND,
NULL_BARD_SOUND,
@@ -15,2311 +15,2311 @@ const struct BardSound gBardSounds_Moves[MOVES_COUNT][6] = {
NULL_BARD_SOUND,
},
[MOVE_POUND] = {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_KARATE_CHOP] = {
- { .songLengthId = 44 },
- { .songLengthId = 29 },
- { .songLengthId = 14 },
- { .songLengthId = 29 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DOUBLE_SLAP] = {
- { .songLengthId = 42 },
- { .songLengthId = 10 },
- { .songLengthId = 2 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_COMET_PUNCH] = {
- { .songLengthId = 29 },
- { .songLengthId = 11 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MEGA_PUNCH] = {
- { .songLengthId = 3 },
- { .songLengthId = 42 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PAY_DAY] = {
- { .songLengthId = 5 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FIRE_PUNCH] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ICE_PUNCH] = {
- { .songLengthId = 44 },
- { .songLengthId = 29 },
- { .songLengthId = 14 },
- { .songLengthId = 29 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_THUNDER_PUNCH] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SCRATCH] = {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_VICE_GRIP] = {
- { .songLengthId = 20 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_GUILLOTINE] = {
- { .songLengthId = 12 },
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_RAZOR_WIND] = {
- { .songLengthId = 5 },
- { .songLengthId = 48 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SWORDS_DANCE] = {
- { .songLengthId = 26 },
- { .songLengthId = 48 },
- { .songLengthId = 1 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CUT] = {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_GUST] = {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WING_ATTACK] = {
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WHIRLWIND] = {
- { .songLengthId = 44 },
- { .songLengthId = 29 },
- { .songLengthId = 14 },
- { .songLengthId = 29 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FLY] = {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BIND] = {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SLAM] = {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_VINE_WHIP] = {
- { .songLengthId = 18 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_STOMP] = {
- { .songLengthId = 29 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DOUBLE_KICK] = {
- { .songLengthId = 42 },
- { .songLengthId = 44 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MEGA_KICK] = {
- { .songLengthId = 3 },
- { .songLengthId = 42 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_JUMP_KICK] = {
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROLLING_KICK] = {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SAND_ATTACK] = {
- { .songLengthId = 0 },
- { .songLengthId = 42 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HEADBUTT] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HORN_ATTACK] = {
- { .songLengthId = 24 },
- { .songLengthId = 42 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FURY_ATTACK] = {
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 2 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HORN_DRILL] = {
- { .songLengthId = 24 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TACKLE] = {
- { .songLengthId = 0 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BODY_SLAM] = {
- { .songLengthId = 29 },
- { .songLengthId = 12 },
- { .songLengthId = 2 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WRAP] = {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TAKE_DOWN] = {
- { .songLengthId = 3 },
- { .songLengthId = 35 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_THRASH] = {
- { .songLengthId = 48 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DOUBLE_EDGE] = {
- { .songLengthId = 44 },
- { .songLengthId = 36 },
- { .songLengthId = 10 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TAIL_WHIP] = {
- { .songLengthId = 5 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_POISON_STING] = {
- { .songLengthId = 30 },
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TWINEEDLE] = {
- { .songLengthId = 15 },
- { .songLengthId = 12 },
- { .songLengthId = 36 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PIN_MISSILE] = {
- { .songLengthId = 15 },
- { .songLengthId = 17 },
- { .songLengthId = 36 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LEER] = {
- { .songLengthId = 14 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BITE] = {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_GROWL] = {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROAR] = {
- { .songLengthId = 26 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SING] = {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SUPERSONIC] = {
- { .songLengthId = 39 },
- { .songLengthId = 48 },
- { .songLengthId = 27 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SONIC_BOOM] = {
- { .songLengthId = 27 },
- { .songLengthId = 17 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DISABLE] = {
- { .songLengthId = 17 },
- { .songLengthId = 3 },
- { .songLengthId = 36 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ACID] = {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_EMBER] = {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FLAMETHROWER] = {
- { .songLengthId = 0 },
- { .songLengthId = 26 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MIST] = {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WATER_GUN] = {
- { .songLengthId = 29 },
- { .songLengthId = 50 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HYDRO_PUMP] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SURF] = {
- { .songLengthId = 48 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ICE_BEAM] = {
- { .songLengthId = 18 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BLIZZARD] = {
- { .songLengthId = 15 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PSYBEAM] = {
- { .songLengthId = 18 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BUBBLE_BEAM] = {
- { .songLengthId = 42 },
- { .songLengthId = 36 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_AURORA_BEAM] = {
- { .songLengthId = 27 },
- { .songLengthId = 26 },
- { .songLengthId = 44 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HYPER_BEAM] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PECK] = {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DRILL_PECK] = {
- { .songLengthId = 17 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SUBMISSION] = {
- { .songLengthId = 42 },
- { .songLengthId = 17 },
- { .songLengthId = 11 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LOW_KICK] = {
- { .songLengthId = 24 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_COUNTER] = {
- { .songLengthId = 33 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SEISMIC_TOSS] = {
- { .songLengthId = 18 },
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_STRENGTH] = {
- { .songLengthId = 50 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ABSORB] = {
- { .songLengthId = 42 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MEGA_DRAIN] = {
- { .songLengthId = 3 },
- { .songLengthId = 44 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LEECH_SEED] = {
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_GROWTH] = {
- { .songLengthId = 48 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_RAZOR_LEAF] = {
- { .songLengthId = 5 },
- { .songLengthId = 48 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SOLAR_BEAM] = {
- { .songLengthId = 24 },
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_POISON_POWDER] = {
- { .songLengthId = 30 },
- { .songLengthId = 44 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_STUN_SPORE] = {
- { .songLengthId = 44 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SLEEP_POWDER] = {
- { .songLengthId = 12 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PETAL_DANCE] = {
- { .songLengthId = 9 },
- { .songLengthId = 44 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_STRING_SHOT] = {
- { .songLengthId = 50 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DRAGON_RAGE] = {
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FIRE_SPIN] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_THUNDER_SHOCK] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_THUNDERBOLT] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 26 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_THUNDER_WAVE] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_THUNDER] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROCK_THROW] = {
- { .songLengthId = 27 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_EARTHQUAKE] = {
- { .songLengthId = 48 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FISSURE] = {
- { .songLengthId = 17 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DIG] = {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TOXIC] = {
- { .songLengthId = 27 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CONFUSION] = {
- { .songLengthId = 44 },
- { .songLengthId = 41 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PSYCHIC] = {
- { .songLengthId = 18 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HYPNOSIS] = {
- { .songLengthId = 17 },
- { .songLengthId = 24 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MEDITATE] = {
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_AGILITY] = {
- { .songLengthId = 42 },
- { .songLengthId = 17 },
- { .songLengthId = 17 },
- { .songLengthId = 14 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_QUICK_ATTACK] = {
- { .songLengthId = 39 },
- { .songLengthId = 17 },
- { .songLengthId = 42 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_RAGE] = {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TELEPORT] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_NIGHT_SHADE] = {
- { .songLengthId = 18 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MIMIC] = {
- { .songLengthId = 17 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SCREECH] = {
- { .songLengthId = 48 },
- { .songLengthId = 13 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DOUBLE_TEAM] = {
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_RECOVER] = {
- { .songLengthId = 12 },
- { .songLengthId = 44 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HARDEN] = {
- { .songLengthId = 27 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MINIMIZE] = {
- { .songLengthId = 15 },
- { .songLengthId = 15 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SMOKESCREEN] = {
- { .songLengthId = 26 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CONFUSE_RAY] = {
- { .songLengthId = 27 },
- { .songLengthId = 45 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WITHDRAW] = {
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DEFENSE_CURL] = {
- { .songLengthId = 14 },
- { .songLengthId = 11 },
- { .songLengthId = 50 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BARRIER] = {
- { .songLengthId = 5 },
- { .songLengthId = 14 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LIGHT_SCREEN] = {
- { .songLengthId = 18 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HAZE] = {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_REFLECT] = {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FOCUS_ENERGY] = {
- { .songLengthId = 26 },
- { .songLengthId = 44 },
- { .songLengthId = 11 },
- { .songLengthId = 48 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
},
[MOVE_BIDE] = {
- { .songLengthId = 11 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_METRONOME] = {
- { .songLengthId = 9 },
- { .songLengthId = 24 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MIRROR_MOVE] = {
- { .songLengthId = 12 },
- { .songLengthId = 50 },
- { .songLengthId = 41 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SELF_DESTRUCT] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_EGG_BOMB] = {
- { .songLengthId = 9 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LICK] = {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SMOG] = {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SLUDGE] = {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BONE_CLUB] = {
- { .songLengthId = 24 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FIRE_BLAST] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WATERFALL] = {
- { .songLengthId = 29 },
- { .songLengthId = 48 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CLAMP] = {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SWIFT] = {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SKULL_BASH] = {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SPIKE_CANNON] = {
- { .songLengthId = 20 },
- { .songLengthId = 0 },
- { .songLengthId = 29 },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CONSTRICT] = {
- { .songLengthId = 27 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_AMNESIA] = {
- { .songLengthId = 2 },
- { .songLengthId = 14 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_KINESIS] = {
- { .songLengthId = 15 },
- { .songLengthId = 12 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SOFT_BOILED] = {
- { .songLengthId = 27 },
- { .songLengthId = 30 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HI_JUMP_KICK] = {
- { .songLengthId = 18 },
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_GLARE] = {
- { .songLengthId = 5 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DREAM_EATER] = {
- { .songLengthId = 14 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_POISON_GAS] = {
- { .songLengthId = 30 },
- { .songLengthId = 27 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BARRAGE] = {
- { .songLengthId = 48 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LEECH_LIFE] = {
- { .songLengthId = 12 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LOVELY_KISS] = {
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 12 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SKY_ATTACK] = {
- { .songLengthId = 18 },
- { .songLengthId = 42 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TRANSFORM] = {
- { .songLengthId = 0 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BUBBLE] = {
- { .songLengthId = 44 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DIZZY_PUNCH] = {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SPORE] = {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FLASH] = {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PSYWAVE] = {
- { .songLengthId = 18 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SPLASH] = {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ACID_ARMOR] = {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CRABHAMMER] = {
- { .songLengthId = 2 },
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_EXPLOSION] = {
- { .songLengthId = 9 },
- { .songLengthId = 24 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FURY_SWIPES] = {
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BONEMERANG] = {
- { .songLengthId = 24 },
- { .songLengthId = 48 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_REST] = {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROCK_SLIDE] = {
- { .songLengthId = 27 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HYPER_FANG] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SHARPEN] = {
- { .songLengthId = 27 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CONVERSION] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TRI_ATTACK] = {
- { .songLengthId = 18 },
- { .songLengthId = 42 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SUPER_FANG] = {
- { .songLengthId = 39 },
- { .songLengthId = 48 },
- { .songLengthId = 1 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SLASH] = {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SUBSTITUTE] = {
- { .songLengthId = 42 },
- { .songLengthId = 17 },
- { .songLengthId = 39 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_STRUGGLE] = {
- { .songLengthId = 42 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SKETCH] = {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TRIPLE_KICK] = {
- { .songLengthId = 17 },
- { .songLengthId = 36 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_THIEF] = {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SPIDER_WEB] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 9 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MIND_READER] = {
- { .songLengthId = 18 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_NIGHTMARE] = {
- { .songLengthId = 18 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FLAME_WHEEL] = {
- { .songLengthId = 3 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SNORE] = {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CURSE] = {
- { .songLengthId = 48 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FLAIL] = {
- { .songLengthId = 5 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CONVERSION_2] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 44 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_AEROBLAST] = {
- { .songLengthId = 5 },
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_COTTON_SPORE] = {
- { .songLengthId = 29 },
- { .songLengthId = 29 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_REVERSAL] = {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 36 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SPITE] = {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_POWDER_SNOW] = {
- { .songLengthId = 33 },
- { .songLengthId = 48 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PROTECT] = {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MACH_PUNCH] = {
- { .songLengthId = 27 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SCARY_FACE] = {
- { .songLengthId = 3 },
- { .songLengthId = 12 },
- { .songLengthId = 3 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FAINT_ATTACK] = {
- { .songLengthId = 3 },
- { .songLengthId = 42 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SWEET_KISS] = {
- { .songLengthId = 14 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BELLY_DRUM] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SLUDGE_BOMB] = {
- { .songLengthId = 43 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MUD_SLAP] = {
- { .songLengthId = 44 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_OCTAZOOKA] = {
- { .songLengthId = 27 },
- { .songLengthId = 44 },
- { .songLengthId = 40 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SPIKES] = {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ZAP_CANNON] = {
- { .songLengthId = 0 },
- { .songLengthId = 1 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FORESIGHT] = {
- { .songLengthId = 26 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DESTINY_BOND] = {
- { .songLengthId = 9 },
- { .songLengthId = 15 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PERISH_SONG] = {
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ICY_WIND] = {
- { .songLengthId = 18 },
- { .songLengthId = 12 },
- { .songLengthId = 15 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DETECT] = {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BONE_RUSH] = {
- { .songLengthId = 24 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LOCK_ON] = {
- { .songLengthId = 27 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_OUTRAGE] = {
- { .songLengthId = 33 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SANDSTORM] = {
- { .songLengthId = 0 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_GIGA_DRAIN] = {
- { .songLengthId = 17 },
- { .songLengthId = 42 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ENDURE] = {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CHARM] = {
- { .songLengthId = 21 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROLLOUT] = {
- { .songLengthId = 26 },
- { .songLengthId = 33 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FALSE_SWIPE] = {
- { .songLengthId = 27 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SWAGGER] = {
- { .songLengthId = 2 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MILK_DRINK] = {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SPARK] = {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FURY_CUTTER] = {
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_STEEL_WING] = {
- { .songLengthId = 14 },
- { .songLengthId = 13 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MEAN_LOOK] = {
- { .songLengthId = 12 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ATTRACT] = {
- { .songLengthId = 42 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SLEEP_TALK] = {
- { .songLengthId = 14 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HEAL_BELL] = {
- { .songLengthId = 14 },
- { .songLengthId = 10 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_RETURN] = {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PRESENT] = {
- { .songLengthId = 9 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FRUSTRATION] = {
- { .songLengthId = 44 },
- { .songLengthId = 3 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SAFEGUARD] = {
- { .songLengthId = 3 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PAIN_SPLIT] = {
- { .songLengthId = 3 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SACRED_FIRE] = {
- { .songLengthId = 3 },
- { .songLengthId = 17 },
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MAGNITUDE] = {
- { .songLengthId = 0 },
- { .songLengthId = 15 },
- { .songLengthId = 39 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DYNAMIC_PUNCH] = {
- { .songLengthId = 18 },
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MEGAHORN] = {
- { .songLengthId = 3 },
- { .songLengthId = 42 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DRAGON_BREATH] = {
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BATON_PASS] = {
- { .songLengthId = 42 },
- { .songLengthId = 27 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ENCORE] = {
- { .songLengthId = 27 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PURSUIT] = {
- { .songLengthId = 48 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_RAPID_SPIN] = {
- { .songLengthId = 0 },
- { .songLengthId = 15 },
- { .songLengthId = 15 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SWEET_SCENT] = {
- { .songLengthId = 14 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_IRON_TAIL] = {
- { .songLengthId = 18 },
- { .songLengthId = 27 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_METAL_CLAW] = {
- { .songLengthId = 9 },
- { .songLengthId = 36 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_VITAL_THROW] = {
- { .songLengthId = 18 },
- { .songLengthId = 36 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MORNING_SUN] = {
- { .songLengthId = 26 },
- { .songLengthId = 14 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SYNTHESIS] = {
- { .songLengthId = 15 },
- { .songLengthId = 42 },
- { .songLengthId = 15 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MOONLIGHT] = {
- { .songLengthId = 39 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HIDDEN_POWER] = {
- { .songLengthId = 15 },
- { .songLengthId = 9 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CROSS_CHOP] = {
- { .songLengthId = 27 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TWISTER] = {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_RAIN_DANCE] = {
- { .songLengthId = 3 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SUNNY_DAY] = {
- { .songLengthId = 42 },
- { .songLengthId = 14 },
- { .songLengthId = 5 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CRUNCH] = {
- { .songLengthId = 48 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MIRROR_COAT] = {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_PSYCH_UP] = {
- { .songLengthId = 18 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_EXTREME_SPEED] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ANCIENT_POWER] = {
- { .songLengthId = 3 },
- { .songLengthId = 12 },
- { .songLengthId = 33 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SHADOW_BALL] = {
- { .songLengthId = 0 },
- { .songLengthId = 24 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FUTURE_SIGHT] = {
- { .songLengthId = 39 },
- { .songLengthId = 48 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROCK_SMASH] = {
- { .songLengthId = 27 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WHIRLPOOL] = {
- { .songLengthId = 48 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BEAT_UP] = {
- { .songLengthId = 12 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FAKE_OUT] = {
- { .songLengthId = 3 },
- { .songLengthId = 33 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_UPROAR] = {
- { .songLengthId = 44 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_STOCKPILE] = {
- { .songLengthId = 27 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SPIT_UP] = {
- { .songLengthId = 17 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SWALLOW] = {
- { .songLengthId = 27 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HEAT_WAVE] = {
- { .songLengthId = 12 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HAIL] = {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TORMENT] = {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FLATTER] = {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WILL_O_WISP] = {
- { .songLengthId = 17 },
- { .songLengthId = 24 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MEMENTO] = {
- { .songLengthId = 42 },
- { .songLengthId = 9 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FACADE] = {
- { .songLengthId = 44 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FOCUS_PUNCH] = {
- { .songLengthId = 24 },
- { .songLengthId = 44 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SMELLING_SALT] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FOLLOW_ME] = {
- { .songLengthId = 21 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_NATURE_POWER] = {
- { .songLengthId = 3 },
- { .songLengthId = 48 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CHARGE] = {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TAUNT] = {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HELPING_HAND] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TRICK] = {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROLE_PLAY] = {
- { .songLengthId = 24 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WISH] = {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ASSIST] = {
- { .songLengthId = 42 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_INGRAIN] = {
- { .songLengthId = 15 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SUPERPOWER] = {
- { .songLengthId = 39 },
- { .songLengthId = 48 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MAGIC_COAT] = {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_RECYCLE] = {
- { .songLengthId = 12 },
- { .songLengthId = 18 },
- { .songLengthId = 36 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_REVENGE] = {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BRICK_BREAK] = {
- { .songLengthId = 17 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_YAWN] = {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_KNOCK_OFF] = {
- { .songLengthId = 27 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ENDEAVOR] = {
- { .songLengthId = 9 },
- { .songLengthId = 9 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ERUPTION] = {
- { .songLengthId = 12 },
- { .songLengthId = 44 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SKILL_SWAP] = {
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_IMPRISON] = {
- { .songLengthId = 15 },
- { .songLengthId = 15 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_REFRESH] = {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_GRUDGE] = {
- { .songLengthId = 43 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SNATCH] = {
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
@@ -2327,522 +2327,522 @@ const struct BardSound gBardSounds_Moves[MOVES_COUNT][6] = {
NULL_BARD_SOUND,
},
[MOVE_SECRET_POWER] = {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DIVE] = {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ARM_THRUST] = {
- { .songLengthId = 27 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CAMOUFLAGE] = {
- { .songLengthId = 0 },
- { .songLengthId = 24 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TAIL_GLOW] = {
- { .songLengthId = 4 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LUSTER_PURGE] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 50 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MIST_BALL] = {
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FEATHER_DANCE] = {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TEETER_DANCE] = {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BLAZE_KICK] = {
- { .songLengthId = 5 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MUD_SPORT] = {
- { .songLengthId = 42 },
- { .songLengthId = 24 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ICE_BALL] = {
- { .songLengthId = 18 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_NEEDLE_ARM] = {
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 29 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SLACK_OFF] = {
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HYPER_VOICE] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 30 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_POISON_FANG] = {
- { .songLengthId = 30 },
- { .songLengthId = 42 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CRUSH_CLAW] = {
- { .songLengthId = 44 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BLAST_BURN] = {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HYDRO_CANNON] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_METEOR_MASH] = {
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
},
[MOVE_ASTONISH] = {
- { .songLengthId = 42 },
- { .songLengthId = 27 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WEATHER_BALL] = {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_AROMATHERAPY] = {
- { .songLengthId = 42 },
- { .songLengthId = 24 },
- { .songLengthId = 44 },
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 14 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
},
[MOVE_FAKE_TEARS] = {
- { .songLengthId = 3 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_AIR_CUTTER] = {
- { .songLengthId = 5 },
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_OVERHEAT] = {
- { .songLengthId = 24 },
- { .songLengthId = 48 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ODOR_SLEUTH] = {
- { .songLengthId = 24 },
- { .songLengthId = 48 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROCK_TOMB] = {
- { .songLengthId = 27 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SILVER_WIND] = {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 15 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_METAL_SOUND] = {
- { .songLengthId = 9 },
- { .songLengthId = 27 },
- { .songLengthId = 33 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_GRASS_WHISTLE] = {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 36 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_TICKLE] = {
- { .songLengthId = 17 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_COSMIC_POWER] = {
- { .songLengthId = 27 },
- { .songLengthId = 17 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WATER_SPOUT] = {
- { .songLengthId = 27 },
- { .songLengthId = 48 },
- { .songLengthId = 33 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SIGNAL_BEAM] = {
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SHADOW_PUNCH] = {
- { .songLengthId = 0 },
- { .songLengthId = 24 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_EXTRASENSORY] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 9 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
},
[MOVE_SKY_UPPERCUT] = {
- { .songLengthId = 18 },
- { .songLengthId = 44 },
- { .songLengthId = 48 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SAND_TOMB] = {
- { .songLengthId = 0 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SHEER_COLD] = {
- { .songLengthId = 14 },
- { .songLengthId = 48 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MUDDY_WATER] = {
- { .songLengthId = 42 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BULLET_SEED] = {
- { .songLengthId = 42 },
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_AERIAL_ACE] = {
- { .songLengthId = 3 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 3 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ICICLE_SPEAR] = {
- { .songLengthId = 18 },
- { .songLengthId = 15 },
- { .songLengthId = 42 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
},
[MOVE_IRON_DEFENSE] = {
- { .songLengthId = 18 },
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 9 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BLOCK] = {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_HOWL] = {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DRAGON_CLAW] = {
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 29 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_FRENZY_PLANT] = {
- { .songLengthId = 48 },
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BULK_UP] = {
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_BOUNCE] = {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MUD_SHOT] = {
- { .songLengthId = 44 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_POISON_TAIL] = {
- { .songLengthId = 30 },
- { .songLengthId = 44 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_COVET] = {
- { .songLengthId = 42 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_VOLT_TACKLE] = {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 0 },
- { .songLengthId = 36 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_MAGICAL_LEAF] = {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 36 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WATER_SPORT] = {
- { .songLengthId = 27 },
- { .songLengthId = 48 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_CALM_MIND] = {
- { .songLengthId = 27 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_LEAF_BLADE] = {
- { .songLengthId = 12 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DRAGON_DANCE] = {
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_ROCK_BLAST] = {
- { .songLengthId = 27 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_SHOCK_WAVE] = {
- { .songLengthId = 27 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_WATER_PULSE] = {
- { .songLengthId = 27 },
- { .songLengthId = 48 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[MOVE_DOOM_DESIRE] = {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 12 },
- { .songLengthId = 18 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
},
[MOVE_PSYCHO_BOOST] = {
- { .songLengthId = 18 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 39 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
}
diff --git a/src/data/bard_music/people.h b/src/data/bard_music/people.h
index c1c2f9d3fe..6fbc39489d 100644
--- a/src/data/bard_music/people.h
+++ b/src/data/bard_music/people.h
@@ -1,602 +1,602 @@
#ifndef GUARD_DATA_BARD_MUSIC_PEOPLE_H
#define GUARD_DATA_BARD_MUSIC_PEOPLE_H
-const struct BardSound gBardSounds_People[][6] = {
- {
- { .songLengthId = 44 },
- { .songLengthId = 26 },
- { .songLengthId = 11 },
+static const struct BardSoundTemplate sBardSoundTemplates_People[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_OPPONENT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 19 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_I)] = {
+ { .songId = PHONEME_ID(PH_PRICE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 45 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YOU)] = {
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YOURS)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SON)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26, .songLengthOffset = -0x9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YOUR)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO), .lengthAdjustment = -9 },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YOU_RE)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 45 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YOU_VE)] = {
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MOTHER)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 8 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GRANDFATHER)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UNCLE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 8 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FATHER)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 30 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BOY)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ADULT)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BROTHER)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SISTER)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 44 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GRANDMOTHER)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 7 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AUNT)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PARENT)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MAN)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 13 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ME)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GIRL)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 4 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BABE)] = {
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_FAMILY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HER)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HIM)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PLACE)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DAUGHTER)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 16 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HIS)] = {
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HE_S)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 28 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AREN_T)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SIBLINGS)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_KID)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 10 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CHILDREN)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MR)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MRS)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MYSELF)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_I_WAS)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 13 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TO_ME)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_I_AM)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_I_VE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHO)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SOMEONE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHO_WAS)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 41 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TO_WHOM)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHOSE)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 16 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHO_IS)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 16 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_IT_S)] = {
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LADY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FRIEND)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALLY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PERSON)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 40 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DUDE)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THEY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THEY_WERE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TO_THEM)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THEIR)] = {
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THEY_RE)] = {
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THEY_VE)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BEEN)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TO_US)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OUR)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WE_RE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RIVAL)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WE_VE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 38 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WOMAN)] = {
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 43 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHE_WAS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TO_HER)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HERS)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 16 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHE_IS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 1 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SOME)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/pokemon.h b/src/data/bard_music/pokemon.h
index 57ab426590..a278698041 100644
--- a/src/data/bard_music/pokemon.h
+++ b/src/data/bard_music/pokemon.h
@@ -3,7 +3,7 @@
const u16 gNumBardWords_Species = NUM_SPECIES;
-const struct BardSound gBardSounds_Pokemon[NUM_SPECIES][6] = {
+static const struct BardSoundTemplate sBardSoundTemplates_Pokemon[NUM_SPECIES][MAX_BARD_SOUNDS_PER_WORD] = {
[SPECIES_NONE] = {
NULL_BARD_SOUND,
NULL_BARD_SOUND,
@@ -13,1207 +13,1207 @@ const struct BardSound gBardSounds_Pokemon[NUM_SPECIES][6] = {
NULL_BARD_SOUND,
},
[SPECIES_BULBASAUR] = {
- { .songLengthId = 36 },
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_IVYSAUR] = {
- { .songLengthId = 20 },
- { .songLengthId = 12 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VENUSAUR] = {
- { .songLengthId = 12 },
- { .songLengthId = 44 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CHARMANDER] = {
- { .songLengthId = 6 },
- { .songLengthId = 2 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CHARMELEON] = {
- { .songLengthId = 6 },
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 21 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CHARIZARD] = {
- { .songLengthId = 6 },
- { .songLengthId = 17 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SQUIRTLE] = {
- { .songLengthId = 48 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WARTORTLE] = {
- { .songLengthId = 8 },
- { .songLengthId = 48 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BLASTOISE] = {
- { .songLengthId = 0 },
- { .songLengthId = 30 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CATERPIE] = {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_METAPOD] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 21 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BUTTERFREE] = {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WEEDLE] = {
- { .songLengthId = 14 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KAKUNA] = {
- { .songLengthId = 42 },
- { .songLengthId = 39 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BEEDRILL] = {
- { .songLengthId = 12 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PIDGEY] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PIDGEOTTO] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PIDGEOT] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 21 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RATTATA] = {
- { .songLengthId = 0 },
- { .songLengthId = 0 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RATICATE] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 3 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SPEAROW] = {
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FEAROW] = {
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_EKANS] = {
- { .songLengthId = 9 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ARBOK] = {
- { .songLengthId = 6 },
- { .songLengthId = 23 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PIKACHU] = {
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 39 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RAICHU] = {
- { .songLengthId = 18 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SANDSHREW] = {
- { .songLengthId = 0 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SANDSLASH] = {
- { .songLengthId = 0 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NIDORAN_F] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NIDORINA] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NIDOQUEEN] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NIDORAN_M] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NIDORINO] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NIDOKING] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CLEFAIRY] = {
- { .songLengthId = 9 },
- { .songLengthId = 11 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CLEFABLE] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 36 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VULPIX] = {
- { .songLengthId = 36 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NINETALES] = {
- { .songLengthId = 18 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_JIGGLYPUFF] = {
- { .songLengthId = 17 },
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WIGGLYTUFF] = {
- { .songLengthId = 17 },
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ZUBAT] = {
- { .songLengthId = 39 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GOLBAT] = {
- { .songLengthId = 26 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ODDISH] = {
- { .songLengthId = 21 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GLOOM] = {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VILEPLUME] = {
- { .songLengthId = 20 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PARAS] = {
- { .songLengthId = 9 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PARASECT] = {
- { .songLengthId = 9 },
- { .songLengthId = 0 },
- { .songLengthId = 9 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VENONAT] = {
- { .songLengthId = 9 },
- { .songLengthId = 26 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VENOMOTH] = {
- { .songLengthId = 9 },
- { .songLengthId = 26 },
- { .songLengthId = 21 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DIGLETT] = {
- { .songLengthId = 17 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DUGTRIO] = {
- { .songLengthId = 44 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MEOWTH] = {
- { .songLengthId = 12 },
- { .songLengthId = 33 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PERSIAN] = {
- { .songLengthId = 50 },
- { .songLengthId = 17 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PSYDUCK] = {
- { .songLengthId = 18 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GOLDUCK] = {
- { .songLengthId = 24 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MANKEY] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PRIMEAPE] = {
- { .songLengthId = 18 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GROWLITHE] = {
- { .songLengthId = 33 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ARCANINE] = {
- { .songLengthId = 6 },
- { .songLengthId = 3 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_POLIWAG] = {
- { .songLengthId = 21 },
- { .songLengthId = 12 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_POLIWHIRL] = {
- { .songLengthId = 21 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_POLIWRATH] = {
- { .songLengthId = 21 },
- { .songLengthId = 12 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ABRA] = {
- { .songLengthId = 0 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KADABRA] = {
- { .songLengthId = 44 },
- { .songLengthId = 0 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ALAKAZAM] = {
- { .songLengthId = 0 },
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MACHOP] = {
- { .songLengthId = 42 },
- { .songLengthId = 21 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MACHOKE] = {
- { .songLengthId = 42 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MACHAMP] = {
- { .songLengthId = 42 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BELLSPROUT] = {
- { .songLengthId = 11 },
- { .songLengthId = 33 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WEEPINBELL] = {
- { .songLengthId = 12 },
- { .songLengthId = 15 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VICTREEBEL] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TENTACOOL] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TENTACRUEL] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GEODUDE] = {
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 39 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GRAVELER] = {
- { .songLengthId = 0 },
- { .songLengthId = 9 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GOLEM] = {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PONYTA] = {
- { .songLengthId = 26 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RAPIDASH] = {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SLOWPOKE] = {
- { .songLengthId = 24 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SLOWBRO] = {
- { .songLengthId = 24 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAGNEMITE] = {
- { .songLengthId = 0 },
- { .songLengthId = 9 },
- { .songLengthId = 18 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAGNETON] = {
- { .songLengthId = 0 },
- { .songLengthId = 9 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FARFETCHD] = {
- { .songLengthId = 6 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DODUO] = {
- { .songLengthId = 26 },
- { .songLengthId = 39 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DODRIO] = {
- { .songLengthId = 26 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SEEL] = {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DEWGONG] = {
- { .songLengthId = 39 },
- { .songLengthId = 21 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GRIMER] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MUK] = {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SHELLDER] = {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CLOYSTER] = {
- { .songLengthId = 30 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GASTLY] = {
- { .songLengthId = 0 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HAUNTER] = {
- { .songLengthId = 21 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GENGAR] = {
- { .songLengthId = 9 },
- { .songLengthId = 8 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ONIX] = {
- { .songLengthId = 21 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DROWZEE] = {
- { .songLengthId = 33 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HYPNO] = {
- { .songLengthId = 17 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KRABBY] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KINGLER] = {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VOLTORB] = {
- { .songLengthId = 26 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ELECTRODE] = {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_EXEGGCUTE] = {
- { .songLengthId = 9 },
- { .songLengthId = 44 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_EXEGGUTOR] = {
- { .songLengthId = 9 },
- { .songLengthId = 44 },
- { .songLengthId = 9 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CUBONE] = {
- { .songLengthId = 45 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAROWAK] = {
- { .songLengthId = 0 },
- { .songLengthId = 26 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HITMONLEE] = {
- { .songLengthId = 17 },
- { .songLengthId = 21 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HITMONCHAN] = {
- { .songLengthId = 17 },
- { .songLengthId = 21 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LICKITUNG] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KOFFING] = {
- { .songLengthId = 21 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WEEZING] = {
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RHYHORN] = {
- { .songLengthId = 20 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RHYDON] = {
- { .songLengthId = 18 },
- { .songLengthId = 21 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CHANSEY] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TANGELA] = {
- { .songLengthId = 2 },
- { .songLengthId = 9 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KANGASKHAN] = {
- { .songLengthId = 0 },
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HORSEA] = {
- { .songLengthId = 26 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SEADRA] = {
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GOLDEEN] = {
- { .songLengthId = 26 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SEAKING] = {
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_STARYU] = {
- { .songLengthId = 27 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_STARMIE] = {
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MR_MIME] = {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 18 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SCYTHER] = {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_JYNX] = {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ELECTABUZZ] = {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 44 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAGMAR] = {
- { .songLengthId = 0 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PINSIR] = {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TAUROS] = {
- { .songLengthId = 29 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAGIKARP] = {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GYARADOS] = {
- { .songLengthId = 29 },
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 29 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LAPRAS] = {
- { .songLengthId = 44 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DITTO] = {
- { .songLengthId = 17 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_EEVEE] = {
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VAPOREON] = {
- { .songLengthId = 3 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 21 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_JOLTEON] = {
- { .songLengthId = 26 },
- { .songLengthId = 12 },
- { .songLengthId = 21 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FLAREON] = {
- { .songLengthId = 3 },
- { .songLengthId = 12 },
- { .songLengthId = 21 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PORYGON] = {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 21 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_OMANYTE] = {
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_OMASTAR] = {
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 21 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KABUTO] = {
- { .songLengthId = 42 },
- { .songLengthId = 39 },
- { .songLengthId = 26 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KABUTOPS] = {
- { .songLengthId = 42 },
- { .songLengthId = 39 },
- { .songLengthId = 21 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_AERODACTYL] = {
- { .songLengthId = 3 },
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SNORLAX] = {
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ARTICUNO] = {
- { .songLengthId = 6 },
- { .songLengthId = 17 },
- { .songLengthId = 39 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ZAPDOS] = {
- { .songLengthId = 0 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MOLTRES] = {
- { .songLengthId = 26 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DRATINI] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DRAGONAIR] = {
- { .songLengthId = 0 },
- { .songLengthId = 21 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DRAGONITE] = {
- { .songLengthId = 0 },
- { .songLengthId = 21 },
- { .songLengthId = 18 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MEWTWO] = {
- { .songLengthId = 45 },
- { .songLengthId = 39 },
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MEW] = {
- { .songLengthId = 45 },
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
@@ -1221,801 +1221,801 @@ const struct BardSound gBardSounds_Pokemon[NUM_SPECIES][6] = {
NULL_BARD_SOUND,
},
[SPECIES_CHIKORITA] = {
- { .songLengthId = 17 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BAYLEEF] = {
- { .songLengthId = 3 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MEGANIUM] = {
- { .songLengthId = 3 },
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CYNDAQUIL] = {
- { .songLengthId = 15 },
- { .songLengthId = 42 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_QUILAVA] = {
- { .songLengthId = 17 },
- { .songLengthId = 6 },
- { .songLengthId = 8 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TYPHLOSION] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TOTODILE] = {
- { .songLengthId = 24 },
- { .songLengthId = 24 },
- { .songLengthId = 18 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CROCONAW] = {
- { .songLengthId = 27 },
- { .songLengthId = 24 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FERALIGATR] = {
- { .songLengthId = 48 },
- { .songLengthId = 0 },
- { .songLengthId = 15 },
- { .songLengthId = 3 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
},
[SPECIES_SENTRET] = {
- { .songLengthId = 9 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FURRET] = {
- { .songLengthId = 48 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HOOTHOOT] = {
- { .songLengthId = 39 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NOCTOWL] = {
- { .songLengthId = 27 },
- { .songLengthId = 33 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LEDYBA] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LEDIAN] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SPINARAK] = {
- { .songLengthId = 15 },
- { .songLengthId = 48 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ARIADOS] = {
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CROBAT] = {
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CHINCHOU] = {
- { .songLengthId = 15 },
- { .songLengthId = 33 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LANTURN] = {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PICHU] = {
- { .songLengthId = 12 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CLEFFA] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_IGGLYBUFF] = {
- { .songLengthId = 17 },
- { .songLengthId = 42 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TOGEPI] = {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TOGETIC] = {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NATU] = {
- { .songLengthId = 0 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_XATU] = {
- { .songLengthId = 0 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAREEP] = {
- { .songLengthId = 29 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FLAAFFY] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_AMPHAROS] = {
- { .songLengthId = 0 },
- { .songLengthId = 6 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BELLOSSOM] = {
- { .songLengthId = 9 },
- { .songLengthId = 27 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MARILL] = {
- { .songLengthId = 8 },
- { .songLengthId = 16 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_AZUMARILL] = {
- { .songLengthId = 8 },
- { .songLengthId = 39 },
- { .songLengthId = 44 },
- { .songLengthId = 16 },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SUDOWOODO] = {
- { .songLengthId = 39 },
- { .songLengthId = 24 },
- { .songLengthId = 39 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_POLITOED] = {
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HOPPIP] = {
- { .songLengthId = 29 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SKIPLOOM] = {
- { .songLengthId = 17 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_JUMPLUFF] = {
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_AIPOM] = {
- { .songLengthId = 3 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SUNKERN] = {
- { .songLengthId = 44 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SUNFLORA] = {
- { .songLengthId = 44 },
- { .songLengthId = 24 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_YANMA] = {
- { .songLengthId = 0 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WOOPER] = {
- { .songLengthId = 39 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_QUAGSIRE] = {
- { .songLengthId = 0 },
- { .songLengthId = 18 },
- { .songLengthId = 50 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ESPEON] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_UMBREON] = {
- { .songLengthId = 42 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MURKROW] = {
- { .songLengthId = 48 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SLOWKING] = {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MISDREAVUS] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_UNOWN] = {
- { .songLengthId = 42 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WOBBUFFET] = {
- { .songLengthId = 29 },
- { .songLengthId = 44 },
- { .songLengthId = 9 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GIRAFARIG] = {
- { .songLengthId = 48 },
- { .songLengthId = 0 },
- { .songLengthId = 42 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PINECO] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FORRETRESS] = {
- { .songLengthId = 26 },
- { .songLengthId = 9 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DUNSPARCE] = {
- { .songLengthId = 42 },
- { .songLengthId = 28 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GLIGAR] = {
- { .songLengthId = 18 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_STEELIX] = {
- { .songLengthId = 12 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SNUBBULL] = {
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GRANBULL] = {
- { .songLengthId = 2 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_QWILFISH] = {
- { .songLengthId = 17 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SCIZOR] = {
- { .songLengthId = 17 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SHUCKLE] = {
- { .songLengthId = 42 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HERACROSS] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SNEASEL] = {
- { .songLengthId = 12 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TEDDIURSA] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_URSARING] = {
- { .songLengthId = 48 },
- { .songLengthId = 44 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SLUGMA] = {
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAGCARGO] = {
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SWINUB] = {
- { .songLengthId = 17 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PILOSWINE] = {
- { .songLengthId = 17 },
- { .songLengthId = 26 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CORSOLA] = {
- { .songLengthId = 24 },
- { .songLengthId = 24 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_REMORAID] = {
- { .songLengthId = 9 },
- { .songLengthId = 24 },
- { .songLengthId = 3 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_OCTILLERY] = {
- { .songLengthId = 27 },
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DELIBIRD] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MANTINE] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SKARMORY] = {
- { .songLengthId = 27 },
- { .songLengthId = 26 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HOUNDOUR] = {
- { .songLengthId = 35 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HOUNDOOM] = {
- { .songLengthId = 33 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KINGDRA] = {
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PHANPY] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DONPHAN] = {
- { .songLengthId = 27 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PORYGON2] = {
- { .songLengthId = 26 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 39 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_STANTLER] = {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SMEARGLE] = {
- { .songLengthId = 48 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TYROGUE] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HITMONTOP] = {
- { .songLengthId = 17 },
- { .songLengthId = 21 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SMOOCHUM] = {
- { .songLengthId = 39 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ELEKID] = {
- { .songLengthId = 11 },
- { .songLengthId = 11 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAGBY] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MILTANK] = {
- { .songLengthId = 17 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BLISSEY] = {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RAIKOU] = {
- { .songLengthId = 18 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ENTEI] = {
- { .songLengthId = 9 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SUICUNE] = {
- { .songLengthId = 12 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LARVITAR] = {
- { .songLengthId = 21 },
- { .songLengthId = 17 },
- { .songLengthId = 21 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PUPITAR] = {
- { .songLengthId = 39 },
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TYRANITAR] = {
- { .songLengthId = 18 },
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LUGIA] = {
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HO_OH] = {
- { .songLengthId = 24 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CELEBI] = {
- { .songLengthId = 9 },
- { .songLengthId = 9 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
@@ -2221,1082 +2221,1082 @@ const struct BardSound gBardSounds_Pokemon[NUM_SPECIES][6] = {
NULL_BARD_SOUND,
},
[SPECIES_TREECKO] = {
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GROVYLE] = {
- { .songLengthId = 24 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SCEPTILE] = {
- { .songLengthId = 9 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TORCHIC] = {
- { .songLengthId = 24 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_COMBUSKEN] = {
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BLAZIKEN] = {
- { .songLengthId = 3 },
- { .songLengthId = 17 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MUDKIP] = {
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MARSHTOMP] = {
- { .songLengthId = 27 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SWAMPERT] = {
- { .songLengthId = 27 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_POOCHYENA] = {
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MIGHTYENA] = {
- { .songLengthId = 18 },
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 44 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ZIGZAGOON] = {
- { .songLengthId = 17 },
- { .songLengthId = 0 },
- { .songLengthId = 39 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LINOONE] = {
- { .songLengthId = 20 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WURMPLE] = {
- { .songLengthId = 48 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SILCOON] = {
- { .songLengthId = 17 },
- { .songLengthId = 40 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BEAUTIFLY] = {
- { .songLengthId = 45 },
- { .songLengthId = 9 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CASCOON] = {
- { .songLengthId = 0 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DUSTOX] = {
- { .songLengthId = 44 },
- { .songLengthId = 23 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LOTAD] = {
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LOMBRE] = {
- { .songLengthId = 24 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LUDICOLO] = {
- { .songLengthId = 39 },
- { .songLengthId = 9 },
- { .songLengthId = 26 },
- { .songLengthId = 26 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SEEDOT] = {
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NUZLEAF] = {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SHIFTRY] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NINCADA] = {
- { .songLengthId = 15 },
- { .songLengthId = 6 },
- { .songLengthId = 6 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NINJASK] = {
- { .songLengthId = 15 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SHEDINJA] = {
- { .songLengthId = 9 },
- { .songLengthId = 15 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TAILLOW] = {
- { .songLengthId = 3 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SWELLOW] = {
- { .songLengthId = 9 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SHROOMISH] = {
- { .songLengthId = 39 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BRELOOM] = {
- { .songLengthId = 9 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SPINDA] = {
- { .songLengthId = 15 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WINGULL] = {
- { .songLengthId = 15 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PELIPPER] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SURSKIT] = {
- { .songLengthId = 48 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MASQUERAIN] = {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WAILMER] = {
- { .songLengthId = 5 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WAILORD] = {
- { .songLengthId = 3 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SKITTY] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DELCATTY] = {
- { .songLengthId = 9 },
- { .songLengthId = 0 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KECLEON] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BALTOY] = {
- { .songLengthId = 1 },
- { .songLengthId = 30 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CLAYDOL] = {
- { .songLengthId = 3 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NOSEPASS] = {
- { .songLengthId = 24 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TORKOAL] = {
- { .songLengthId = 24 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SABLEYE] = {
- { .songLengthId = 3 },
- { .songLengthId = 11 },
- { .songLengthId = 18 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BARBOACH] = {
- { .songLengthId = 27 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WHISCASH] = {
- { .songLengthId = 17 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LUVDISC] = {
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CORPHISH] = {
- { .songLengthId = 24 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CRAWDAUNT] = {
- { .songLengthId = 27 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FEEBAS] = {
- { .songLengthId = 14 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MILOTIC] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CARVANHA] = {
- { .songLengthId = 27 },
- { .songLengthId = 1 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SHARPEDO] = {
- { .songLengthId = 29 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TRAPINCH] = {
- { .songLengthId = 0 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VIBRAVA] = {
- { .songLengthId = 17 },
- { .songLengthId = 27 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_FLYGON] = {
- { .songLengthId = 18 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAKUHITA] = {
- { .songLengthId = 27 },
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HARIYAMA] = {
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ELECTRIKE] = {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MANECTRIC] = {
- { .songLengthId = 0 },
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_NUMEL] = {
- { .songLengthId = 44 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CAMERUPT] = {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SPHEAL] = {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SEALEO] = {
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WALREIN] = {
- { .songLengthId = 27 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CACNEA] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CACTURNE] = {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SNORUNT] = {
- { .songLengthId = 24 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GLALIE] = {
- { .songLengthId = 5 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LUNATONE] = {
- { .songLengthId = 39 },
- { .songLengthId = 44 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SOLROCK] = {
- { .songLengthId = 24 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_AZURILL] = {
- { .songLengthId = 6 },
- { .songLengthId = 39 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SPOINK] = {
- { .songLengthId = 30 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GRUMPIG] = {
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_PLUSLE] = {
- { .songLengthId = 42 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MINUN] = {
- { .songLengthId = 18 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MAWILE] = {
- { .songLengthId = 27 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MEDITITE] = {
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_MEDICHAM] = {
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 0 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SWABLU] = {
- { .songLengthId = 27 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ALTARIA] = {
- { .songLengthId = 6 },
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WYNAUT] = {
- { .songLengthId = 18 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DUSKULL] = {
- { .songLengthId = 42 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DUSCLOPS] = {
- { .songLengthId = 42 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ROSELIA] = {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SLAKOTH] = {
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VIGOROTH] = {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SLAKING] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GULPIN] = {
- { .songLengthId = 36 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SWALOT] = {
- { .songLengthId = 27 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_TROPIUS] = {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_WHISMUR] = {
- { .songLengthId = 17 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LOUDRED] = {
- { .songLengthId = 33 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_EXPLOUD] = {
- { .songLengthId = 9 },
- { .songLengthId = 33 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CLAMPERL] = {
- { .songLengthId = 0 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_HUNTAIL] = {
- { .songLengthId = 42 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GOREBYSS] = {
- { .songLengthId = 26 },
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ABSOL] = {
- { .songLengthId = 0 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SHUPPET] = {
- { .songLengthId = 42 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BANETTE] = {
- { .songLengthId = 3 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SEVIPER] = {
- { .songLengthId = 9 },
- { .songLengthId = 18 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ZANGOOSE] = {
- { .songLengthId = 3 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RELICANTH] = {
- { .songLengthId = 9 },
- { .songLengthId = 17 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ARON] = {
- { .songLengthId = 27 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LAIRON] = {
- { .songLengthId = 5 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_AGGRON] = {
- { .songLengthId = 0 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CASTFORM] = {
- { .songLengthId = 0 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_VOLBEAT] = {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ILLUMISE] = {
- { .songLengthId = 12 },
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 3 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LILEEP] = {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CRADILY] = {
- { .songLengthId = 3 },
- { .songLengthId = 17 },
- { .songLengthId = 12 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ANORITH] = {
- { .songLengthId = 0 },
- { .songLengthId = 24 },
- { .songLengthId = 17 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_ARMALDO] = {
- { .songLengthId = 27 },
- { .songLengthId = 27 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RALTS] = {
- { .songLengthId = 7 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_CLOTH_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KIRLIA] = {
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GARDEVOIR] = {
- { .songLengthId = 27 },
- { .songLengthId = 9 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BAGON] = {
- { .songLengthId = 5 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SHELGON] = {
- { .songLengthId = 9 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_SALAMENCE] = {
- { .songLengthId = 0 },
- { .songLengthId = 0 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_BELDUM] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_METANG] = {
- { .songLengthId = 9 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_METAGROSS] = {
- { .songLengthId = 9 },
- { .songLengthId = 42 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_REGIROCK] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_REGICE] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_REGISTEEL] = {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_KYOGRE] = {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 48 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_GROUDON] = {
- { .songLengthId = 33 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_RAYQUAZA] = {
- { .songLengthId = 3 },
- { .songLengthId = 3 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LATIAS] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_LATIOS] = {
- { .songLengthId = 0 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_JIRACHI] = {
- { .songLengthId = 48 },
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_DEOXYS] = {
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
[SPECIES_CHIMECHO] = {
- { .songLengthId = 18 },
- { .songLengthId = 9 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
}
diff --git a/src/data/bard_music/speech.h b/src/data/bard_music/speech.h
index dc7844ec89..d6f409be8b 100644
--- a/src/data/bard_music/speech.h
+++ b/src/data/bard_music/speech.h
@@ -1,482 +1,482 @@
#ifndef GUARD_DATA_BARD_MUSIC_SPEECH_H
#define GUARD_DATA_BARD_MUSIC_SPEECH_H
-const struct BardSound gBardSounds_Speech[][6] = {
- {
- { .songLengthId = 9 },
- { .songLengthId = 16 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Speech[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_LISTEN)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 9 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_NOT_VERY)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MEAN)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LIE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LAY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 44 },
- { .songLengthId = 10 },
+ [EC_INDEX(EC_WORD_RECOMMEND)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NITWIT)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_QUITE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 43 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FROM)] = {
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FEELING)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BUT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 9 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_HOWEVER)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CASE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 43 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_MISS)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HOW)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HIT)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ENOUGH)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 23 },
+ [EC_INDEX(EC_WORD_A_LOT)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 17 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_A_LITTLE)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 44 },
- { .songLengthId = 45 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ABSOLUTELY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
+ [EC_INDEX(EC_WORD_AND)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ONLY)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
+ [EC_INDEX(EC_WORD_AROUND)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PROBABLY)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_IF)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_VERY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 20 },
- { .songLengthId = 12 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_A_TINY_BIT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WILD)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 11 },
+ [EC_INDEX(EC_WORD_THAT_S)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
+ [EC_INDEX(EC_WORD_JUST)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 11 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EVEN_SO)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MUST_BE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 48 },
- { .songLengthId = 6 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NATURALLY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 35 },
+ [EC_INDEX(EC_WORD_FOR_NOW)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 50 },
- { .songLengthId = 39 },
+ [EC_INDEX(EC_WORD_UNDERSTOOD)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_JOKING)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_READY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_SOMETHING)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 35 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SOMEHOW)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALTHOUGH)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALSO)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PERFECT)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 44 },
- { .songLengthId = 1 },
+ [EC_INDEX(EC_WORD_AS_MUCH_AS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 10 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_REALLY)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRULY)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 14 },
- { .songLengthId = 38 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SERIOUSLY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 7 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOTALLY)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 16 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UNTIL)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AS_IF)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 40 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MOOD)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RATHER)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 38 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AWFULLY)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
+ [EC_INDEX(EC_WORD_MODE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MORE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOO_LATE)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 6 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FINALLY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 8 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ANY)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_INSTEAD)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 43 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FANTASTIC)] = {
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/status.h b/src/data/bard_music/status.h
index 9a3fd01393..d4acac9739 100644
--- a/src/data/bard_music/status.h
+++ b/src/data/bard_music/status.h
@@ -1,874 +1,874 @@
#ifndef GUARD_DATA_BARD_MUSIC_STATUS_H
#define GUARD_DATA_BARD_MUSIC_STATUS_H
-const struct BardSound gBardSounds_Status[][6] = {
- {
- { .songLengthId = 8 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Status[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_DARK)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STENCH)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THICK_FAT)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RAIN_DISH)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DRIZZLE)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 12 },
- { .songLengthId = 6 },
- { .songLengthId = 0 },
+ [EC_INDEX(EC_WORD_ARENA_TRAP)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 17 },
- { .songLengthId = 44 },
- { .songLengthId = 3 },
+ [EC_INDEX(EC_WORD_INTIMIDATE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ROCK_HEAD)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COLOR)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 50 },
- { .songLengthId = 1 },
- { .songLengthId = 44 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_ALT_COLOR)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ROCK)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 36 },
+ [EC_INDEX(EC_WORD_BEAUTIFUL)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BEAUTY)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 21 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AIR_LOCK)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PSYCHIC)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 48 },
- { .songLengthId = 44 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_HYPER_CUTTER)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FIGHTING)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 24 },
- { .songLengthId = 0 },
+ [EC_INDEX(EC_WORD_SHADOW_TAG)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SMART)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 50 },
- { .songLengthId = 9 },
+ [EC_INDEX(EC_WORD_SMARTNESS)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SPEED_BOOST)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COOL)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 41 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COOLNESS)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 9 },
- { .songLengthId = 6 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_BATTLE_ARMOR)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 45 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CUTE)] = {
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 45 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CUTENESS)] = {
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STURDY)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 15 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SUCTION_CUPS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GRASS)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 23 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_CLEAR_BODY)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TORRENT)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GHOST)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ICE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GUTS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ROUGH_SKIN)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 6 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHELL_ARMOR)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 50 },
- { .songLengthId = 8 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NATURAL_CURE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DAMP)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GROUND)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LIMBER)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 9 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MAGNET_PULL)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHITE_SMOKE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 24 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SYNCHRONIZE)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 48 },
- { .songLengthId = 24 },
+ [EC_INDEX(EC_WORD_OVERGROW)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SWIFT_SWIM)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SAND_STREAM)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SAND_VEIL)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_KEEN_EYE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 48 },
- { .songLengthId = 24 },
- { .songLengthId = 42 },
+ [EC_INDEX(EC_WORD_INNER_FOCUS)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STATIC)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TYPE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOUGH)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TOUGHNESS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHED_SKIN)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 45 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_HUGE_POWER)] = {
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 36 },
- { .songLengthId = 44 },
- { .songLengthId = 26 },
+ [EC_INDEX(EC_WORD_VOLT_ABSORB)] = {
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 48 },
- { .songLengthId = 44 },
- { .songLengthId = 26 },
+ [EC_INDEX(EC_WORD_WATER_ABSORB)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 9 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_ELECTRIC)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 2 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FORECAST)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 14 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SERENE_GRACE)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 32 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_POISON)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 32 },
- { .songLengthId = 27 },
- { .songLengthId = 30 },
+ [EC_INDEX(EC_WORD_POISON_POINT)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DRAGON)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 4 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRACE)] = {
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OBLIVIOUS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 0 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRUANT)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 8 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_RUN_AWAY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 24 },
+ [EC_INDEX(EC_WORD_STICKY_HOLD)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CLOUD_NINE)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NORMAL)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STEEL)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 39 },
- { .songLengthId = 15 },
- { .songLengthId = 3 },
+ [EC_INDEX(EC_WORD_ILLUMINATE)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_EARLY_BIRD)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 38 },
+ [EC_INDEX(EC_WORD_HUSTLE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHINE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FLYING)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DROUGHT)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 17 },
- { .songLengthId = 21 },
+ [EC_INDEX(EC_WORD_LIGHTNINGROD)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 33 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COMPOUNDEYES)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 36 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_MARVEL_SCALE)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 48 },
- { .songLengthId = 6 },
+ [EC_INDEX(EC_WORD_WONDER_GUARD)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 21 },
- { .songLengthId = 12 },
- { .songLengthId = 6 },
+ [EC_INDEX(EC_WORD_INSOMNIA)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 12 },
- { .songLengthId = 3 },
+ [EC_INDEX(EC_WORD_LEVITATE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PLUS)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PRESSURE)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 9 },
- { .songLengthId = 39 },
+ [EC_INDEX(EC_WORD_LIQUID_OOZE)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 48 },
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COLOR_CHANGE)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 39 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SOUNDPROOF)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 9 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EFFECT_SPORE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 42 },
+ [EC_INDEX(EC_WORD_PKRS)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FIRE)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 21 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_FLAME_BODY)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MINUS)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 24 },
+ [EC_INDEX(EC_WORD_OWN_TEMPO)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 1 },
- { .songLengthId = 44 },
- { .songLengthId = 27 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_MAGMA_ARMOR)] = {
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WATER)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 48 },
- { .songLengthId = 4 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WATER_VEIL)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BUG)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 7 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SWARM)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 45 },
- { .songLengthId = 7 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CUTE_CHARM)] = {
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 39 },
- { .songLengthId = 17 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_IMMUNITY)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BLAZE)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PICKUP)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PATTERN)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 20 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_FLASH_FIRE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 27 },
- { .songLengthId = 48 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_VITAL_SPIRIT)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CHLOROPHYLL)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 45 },
- { .songLengthId = 33 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_PURE_POWER)] = {
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 43 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHIELD_DUST)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/time.h b/src/data/bard_music/time.h
index 1f7dac8a60..a2952517ef 100644
--- a/src/data/bard_music/time.h
+++ b/src/data/bard_music/time.h
@@ -1,362 +1,362 @@
#ifndef GUARD_DATA_BARD_MUSIC_TIME_H
#define GUARD_DATA_BARD_MUSIC_TIME_H
-const struct BardSound gBardSounds_Time[][6] = {
- {
- { .songLengthId = 27 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Time[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_FALL)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MORNING)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 28 },
- { .songLengthId = 26 },
+ [EC_INDEX(EC_WORD_TOMORROW)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 2 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LAST)] = {
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DAY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SOMETIME)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALWAYS)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CURRENT)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 9 },
- { .songLengthId = 44 },
+ [EC_INDEX(EC_WORD_FOREVER)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DAYS)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_END)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TUESDAY)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 50 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_YESTERDAY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TODAY)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FRIDAY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MONDAY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LATER)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 12 },
- { .songLengthId = 50 },
+ [EC_INDEX(EC_WORD_EARLIER)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 44 },
- { .songLengthId = 50 },
+ [EC_INDEX(EC_WORD_ANOTHER)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TIME)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 17 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FINISH)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WEDNESDAY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 40 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SOON)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_START)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MONTH)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_STOP)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 33 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NOW)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FINAL)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NEXT)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AGE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 48 },
- { .songLengthId = 5 },
+ [EC_INDEX(EC_WORD_SATURDAY)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SUMMER)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SUNDAY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 15 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BEGINNING)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SPRING)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DAYTIME)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 50 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WINTER)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DAILY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 10 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OLDEN)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ALMOST)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NEARLY)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 48 },
- { .songLengthId = 5 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_THURSDAY)] = {
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 18 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NIGHTTIME)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 20 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NIGHT)] = {
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 14 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WEEK)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/trainer.h b/src/data/bard_music/trainer.h
index 05fc6a6ef4..d49397eabf 100644
--- a/src/data/bard_music/trainer.h
+++ b/src/data/bard_music/trainer.h
@@ -1,218 +1,218 @@
#ifndef GUARD_DATA_BARD_MUSIC_TRAINER_H
#define GUARD_DATA_BARD_MUSIC_TRAINER_H
-const struct BardSound gBardSounds_Trainer[][6] = {
- {
- { .songLengthId = 18 },
- { .songLengthId = 39 },
- { .songLengthId = 45 },
+static const struct BardSoundTemplate sBardSoundTemplates_Trainer[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_I_CHOOSE_YOU)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_CURE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 21 },
- { .songLengthId = 42 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GOTCHA)] = {
+ { .songId = PHONEME_ID(PH_LOT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRADE)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 18 },
- { .songLengthId = 50 },
+ [EC_INDEX(EC_WORD_SAPPHIRE)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 27 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EVOLVE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 18 },
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 6 },
+ [EC_INDEX(EC_WORD_ENCYCLOPEDIA)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_NATURE)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CENTER)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EGG)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LINK)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 8 },
- { .songLengthId = 6 },
- { .songLengthId = 17 },
- { .songLengthId = 17 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_SP_ABILITY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_SOLO) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TRAINER)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 50 },
- { .songLengthId = 15 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_VERSION)] = {
+ { .songId = PHONEME_ID(PH_NURSE_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 0 },
+ [EC_INDEX(EC_WORD_POKENAV)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 27 },
+ [EC_INDEX(EC_WORD_POKEMON)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GET)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 12 },
- { .songLengthId = 9 },
+ [EC_INDEX(EC_WORD_POKEDEX)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_RUBY)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LEVEL)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
+ [EC_INDEX(EC_WORD_RED)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GREEN)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
+ [EC_INDEX(EC_WORD_BAG)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FLAME)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
+ [EC_INDEX(EC_WORD_GOLD)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_LEAF)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_SILVER)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 48 },
- { .songLengthId = 6 },
+ [EC_INDEX(EC_WORD_EMERALD)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/trendysaying.h b/src/data/bard_music/trendysaying.h
index ccd9083ead..575f105cbc 100644
--- a/src/data/bard_music/trendysaying.h
+++ b/src/data/bard_music/trendysaying.h
@@ -1,266 +1,266 @@
#ifndef GUARD_DATA_BARD_MUSIC_TRENDYSAYING_H
#define GUARD_DATA_BARD_MUSIC_TRENDYSAYING_H
-const struct BardSound gBardSounds_TrendySaying[][6] = {
- {
- { .songLengthId = 5 },
- { .songLengthId = 2 },
- { .songLengthId = 20 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_TrendySaying[NUM_TRENDY_SAYINGS][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_KTHX_BYE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YES_SIR_EXCL)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27 },
- { .songLengthId = 27 },
- { .songLengthId = 23 },
+ [EC_INDEX(EC_WORD_AVANT_GARDE)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 38 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_COUPLE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 44 },
- { .songLengthId = 18 },
+ [EC_INDEX(EC_WORD_MUCH_OBLIGED)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 13 },
- { .songLengthId = 29 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YEEHAW_EXCL)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MEGA)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 17 },
- { .songLengthId = 3 },
- { .songLengthId = 26 },
+ [EC_INDEX(EC_WORD_1_HIT_KO_EXCL)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 11 },
- { .songLengthId = 17 },
- { .songLengthId = 14 },
+ [EC_INDEX(EC_WORD_DESTINY)] = {
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CANCEL)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NEW)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 9 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FLATTEN)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_KIDDING)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOSER)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_LOSING)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 0 },
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HAPPENING)] = {
+ { .songId = PHONEME_ID(PH_TRAP_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 1 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HIP_AND)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHAKE)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHADY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UPBEAT)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MODERN)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SMELL_YA)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 3 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BANG)] = {
+ { .songId = PHONEME_ID(PH_FACE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 35 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_KNOCKOUT)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 36 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HASSLE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WINNER)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_FEVER)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 29 },
- { .songLengthId = 44 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_WANNABE)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_SOLO) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_BABY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 28 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEART)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OLD)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 43 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YOUNG)] = {
+ { .songId = PHONEME_ID(PH_STRUT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UGLY)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
diff --git a/src/data/bard_music/voices.h b/src/data/bard_music/voices.h
index 97f249ecb5..ca7012198f 100644
--- a/src/data/bard_music/voices.h
+++ b/src/data/bard_music/voices.h
@@ -1,507 +1,507 @@
#ifndef GUARD_DATA_BARD_MUSIC_VOICES_H
#define GUARD_DATA_BARD_MUSIC_VOICES_H
-const struct BardSound gBardSounds_Voices[][6] = {
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+static const struct BardSoundTemplate sBardSoundTemplates_Voices[][MAX_BARD_SOUNDS_PER_WORD] = {
+ [EC_INDEX(EC_WORD_EXCL)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EXCL_EXCL)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_QUES_EXCL)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_QUES)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ELLIPSIS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ELLIPSIS_EXCL)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 48 },
- { .songLengthId = 51 },
- { .songLengthId = 12 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
+ PREV_BARD_SOUND,
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DASH)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_DASH_DASH_DASH)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 26 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UH_OH)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 27, .songLengthOffset = 0x5, .unused = 0x8 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WAAAH)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_BLEND), .lengthAdjustment = +5, .unused = 8 },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 6 },
- { .songLengthId = 6 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AHAHA)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OH_QUES)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_NOPE)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_URGH)] = {
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 40 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HMM)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 25 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WHOAH)] = {
+ { .songId = PHONEME_ID(PH_GOAT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 28 },
- { .songLengthId = 49 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WROOOAAR_EXCL)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ { .songId = PHONEME_ID(PH_NURSE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 35 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WOW)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 17 },
- { .songLengthId = 17 },
- { .songLengthId = 17 },
+ [EC_INDEX(EC_WORD_GIGGLE)] = {
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
+ { .songId = PHONEME_ID(PH_KIT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 10 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SIGH)] = {
+ { .songId = PHONEME_ID(PH_DRESS_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 14 },
- { .songLengthId = 12 },
- { .songLengthId = 2 },
- { .songLengthId = 36 },
+ [EC_INDEX(EC_WORD_UNBELIEVABLE)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_SOLO) },
+ { .songId = PHONEME_ID(PH_FOOT_BLEND) },
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 19 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CRIES)] = {
+ { .songId = PHONEME_ID(PH_PRICE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 14 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AGREE)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EH_QUES)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 18 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_CRY)] = {
+ { .songId = PHONEME_ID(PH_PRICE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_EHEHE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 30 },
- { .songLengthId = 30 },
- { .songLengthId = 30 },
+ [EC_INDEX(EC_WORD_OI_OI_OI)] = {
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
+ { .songId = PHONEME_ID(PH_CHOICE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 1 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OH_YEAH)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_TRAP_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OH)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OOPS)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 23 },
- { .songLengthId = 11 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SHOCKED)] = {
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
+ { .songId = PHONEME_ID(PH_DRESS_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 13 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_EEK)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GRAAAH)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 6 },
- { .songLengthId = 6 },
- { .songLengthId = 23 },
+ [EC_INDEX(EC_WORD_GWAHAHAHA)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_LOT_SOLO) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 5 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WAY)] = {
+ { .songId = PHONEME_ID(PH_FACE_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_TCH)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEHE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HAH)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 44 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YUP)] = {
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 6 },
- { .songLengthId = 6 },
+ [EC_INDEX(EC_WORD_HAHAHA)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 19 },
- { .songLengthId = 13 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AIYEEH)] = {
+ { .songId = PHONEME_ID(PH_PRICE_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 7 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HIYAH)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 39 },
- { .songLengthId = 39 },
+ [EC_INDEX(EC_WORD_FUFUFU)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 26 },
- { .songLengthId = 24 },
+ [EC_INDEX(EC_WORD_LOL)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 26 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_SNORT)] = {
+ { .songId = PHONEME_ID(PH_GOAT_SOLO) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HUMPH)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 12 },
- { .songLengthId = 12 },
- { .songLengthId = 12 },
+ [EC_INDEX(EC_WORD_HEHEHE)] = {
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 9 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_HEH)] = {
+ { .songId = PHONEME_ID(PH_DRESS_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 24 },
- { .songLengthId = 24 },
+ [EC_INDEX(EC_WORD_HOHOHO)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 42 },
- { .songLengthId = 44 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_UH_HUH)] = {
+ { .songId = PHONEME_ID(PH_STRUT_BLEND) },
+ { .songId = PHONEME_ID(PH_STRUT_SOLO) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 14 },
- { .songLengthId = 48 },
+ [EC_INDEX(EC_WORD_OH_DEAR)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FLEECE_SOLO) },
+ { .songId = PHONEME_ID(PH_NURSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 28 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_ARRGH)] = {
+ { .songId = PHONEME_ID(PH_THOUGHT_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 39 },
- { .songLengthId = 39 },
- { .songLengthId = 39 },
+ [EC_INDEX(EC_WORD_MUFUFU)] = {
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
+ { .songId = PHONEME_ID(PH_GOOSE_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 15 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_MMM)] = {
+ { .songId = PHONEME_ID(PH_KIT_BLEND) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 4 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OH_KAY)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 24 },
- { .songLengthId = 4 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_OKAY)] = {
+ { .songId = PHONEME_ID(PH_GOAT_BLEND) },
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 6 },
- { .songLengthId = 6 },
+ [EC_INDEX(EC_WORD_LALALA)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 4 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_YAY)] = {
+ { .songId = PHONEME_ID(PH_FACE_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 7 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_AWW)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 34 },
- { .songLengthId = 13 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_WOWEE)] = {
+ { .songId = PHONEME_ID(PH_MOUTH_HELD) },
+ { .songId = PHONEME_ID(PH_FLEECE_HELD) },
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 7 },
- { .songLengthId = 51 },
- { .songLengthId = 51 },
+ [EC_INDEX(EC_WORD_GWAH)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_HELD) },
+ PREV_BARD_SOUND,
+ PREV_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
NULL_BARD_SOUND,
},
- {
- { .songLengthId = 6 },
- { .songLengthId = 6 },
- { .songLengthId = 6 },
- { .songLengthId = 6 },
+ [EC_INDEX(EC_WORD_WAHAHAHA)] = {
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
+ { .songId = PHONEME_ID(PH_CLOTH_BLEND) },
NULL_BARD_SOUND,
NULL_BARD_SOUND,
}
diff --git a/src/data/bard_music/word_pitch.h b/src/data/bard_music/word_pitch.h
deleted file mode 100644
index 7b4205da5f..0000000000
--- a/src/data/bard_music/word_pitch.h
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef GUARD_WORD_PITCH_H
-#define GUARD_WORD_PITCH_H
-
-#define PITCH_END 0x1800
-
-static const s16 sPitch1_0[] = { -0x300, PITCH_END };
-static const s16 sPitch1_1[] = { 0x0900, PITCH_END };
-static const s16 sPitch1_2[] = { 0x0100, PITCH_END };
-static const s16 sPitch1_3[] = { 0x0400, PITCH_END };
-static const s16 sPitch1_4[] = { 0x0b00, PITCH_END };
-static const s16 sPitch2_0[] = { -0x300, -0x100, PITCH_END };
-static const s16 sPitch2_1[] = { -0x300, 0x0200, PITCH_END };
-static const s16 sPitch2_2[] = { 0x0200, 0x0400, PITCH_END };
-static const s16 sPitch2_3[] = { 0x0600, 0x0800, PITCH_END };
-static const s16 sPitch2_4[] = { 0x0900, 0x0800, PITCH_END };
-static const s16 sPitch3_0[] = { -0x300, -0x100, -0x300, PITCH_END };
-static const s16 sPitch3_1[] = { 0x0400, -0x300, 0x0400, PITCH_END };
-static const s16 sPitch3_2[] = { 0x0900, 0x0800, 0x0600, PITCH_END };
-static const s16 sPitch3_3[] = { 0x0100, 0x0200, 0x0400, PITCH_END };
-static const s16 sPitch3_4[] = { 0x0600, 0x1000, 0x0d00, PITCH_END };
-static const s16 sPitch4_0[] = { 0x0400, 0x0900, 0x0400, 0x0900, PITCH_END };
-static const s16 sPitch4_1[] = { 0x0900, 0x0400, 0x0d00, 0x0400, PITCH_END };
-static const s16 sPitch4_2[] = { 0x0100, 0x0200, 0x0400, 0x0600, PITCH_END };
-static const s16 sPitch4_3[] = { 0x0800, 0x0600, 0x0400, 0x0200, PITCH_END };
-static const s16 sPitch4_4[] = { 0x0f00, 0x0d00, 0x0b00, 0x0a00, PITCH_END };
-static const s16 sPitch5_0[] = { -0x300, -0x100, 0x0100, 0x0200, 0x0400, PITCH_END };
-static const s16 sPitch5_1[] = { 0x0900, 0x0800, 0x0600, 0x0400, 0x0200, PITCH_END };
-static const s16 sPitch5_2[] = { 0x0100, 0x0400, 0x0900, 0x0400, 0x0100, PITCH_END };
-static const s16 sPitch5_3[] = { 0x0900, 0x0400, 0x0900, 0x0400, -0x300, PITCH_END };
-static const s16 sPitch5_4[] = { 0x0b00, 0x0800, 0x0400, 0x0400, 0x0600, PITCH_END };
-static const s16 sPitch6_0[] = { -0x300, -0x100, 0x0100, 0x0200, 0x0400, 0x0600, PITCH_END };
-static const s16 sPitch6_1[] = { 0x0800, 0x0600, 0x0400, 0x0200, 0x0100, -0x100, PITCH_END };
-static const s16 sPitch6_2[] = { 0x0100, 0x0200, 0x0400, 0x0100, 0x0200, 0x1000, PITCH_END };
-static const s16 sPitch6_3[] = { 0x0400, -0x300, 0x0900, 0x0400, 0x0900, 0x0400, PITCH_END };
-static const s16 sPitch6_4[] = { 0x0800, 0x0900, 0x0800, 0x0900, 0x0800, 0x0900, PITCH_END };
-static const s16 sPitch7_0[] = { 0x0200, 0x0100, 0x0200, 0x0100, 0x0200, 0x0400, 0x0200, PITCH_END };
-static const s16 sPitch7_1[] = { 0x0100, 0x0100, -0x100, -0x100, -0x300, 0x0400, -0x300, PITCH_END };
-static const s16 sPitch7_2[] = { 0x0800, 0x0900, 0x0b00, 0x0d00, 0x0e00, 0x0d00, 0x0b00, PITCH_END };
-static const s16 sPitch7_3[] = { 0x0800, 0x0600, 0x0400, 0x0200, 0x0d00, 0x0b00, 0x0900, PITCH_END };
-static const s16 sPitch7_4[] = { 0x0300, 0x0400, 0x0600, 0x0800, 0x0700, 0x0800, 0x0400, PITCH_END };
-
-// Only sPitch7_# are used below
-// This table is always indexed with (x + 30), where x is some value 0 - 4
-static const s16 *const sBardSoundPitchTables[] = {
- sPitch1_0, sPitch1_1, sPitch1_2, sPitch1_3, sPitch1_4,
- sPitch2_0, sPitch2_1, sPitch2_2, sPitch2_3, sPitch2_4,
- sPitch3_0, sPitch3_1, sPitch3_2, sPitch3_3, sPitch3_4,
- sPitch4_0, sPitch4_1, sPitch4_2, sPitch4_3, sPitch4_4,
- sPitch5_0, sPitch5_1, sPitch5_2, sPitch5_3, sPitch5_4,
- sPitch6_0, sPitch6_1, sPitch6_2, sPitch6_3, sPitch6_4,
- sPitch7_0, sPitch7_1, sPitch7_2, sPitch7_3, sPitch7_4
-};
-
-
-#endif //GUARD_WORD_PITCH_H
diff --git a/src/data/battle_frontier/apprentice.h b/src/data/battle_frontier/apprentice.h
index c190ea09b5..bae966cffd 100644
--- a/src/data/battle_frontier/apprentice.h
+++ b/src/data/battle_frontier/apprentice.h
@@ -298,7 +298,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
{
{
.name = {_("サダヒロ"), _("ALANN"), _("ALAIN"), _("ADELFO"), _("CLAUS"), _("TEO")},
- .otId = 0xBDC9,
+ .otId = 48585,
.facilityClass = FACILITY_CLASS_BUG_CATCHER,
.species = {SPECIES_BEAUTIFLY, SPECIES_DUSTOX, SPECIES_ILLUMISE, SPECIES_SHIFTRY, SPECIES_BRELOOM, SPECIES_NINJASK, SPECIES_SHEDINJA, SPECIES_PINSIR, SPECIES_HERACROSS, SPECIES_VOLBEAT},
.id = 0,
@@ -306,7 +306,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("ヒロオ"), _("LIONEL"), _("LIONEL"), _("CAIO"), _("LUDWIG"), _("LEO")},
- .otId = 0xCF09,
+ .otId = 53001,
.facilityClass = FACILITY_CLASS_YOUNGSTER,
.species = {SPECIES_SWELLOW, SPECIES_SWALOT, SPECIES_SHUCKLE, SPECIES_MANECTRIC, SPECIES_TORKOAL, SPECIES_HARIYAMA, SPECIES_MIGHTYENA, SPECIES_LUDICOLO, SPECIES_CRAWDAUNT, SPECIES_WHISCASH},
.id = 1,
@@ -314,7 +314,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("ケイジ"), _("SONNY"), _("HERVE"), _("FEDRO"), _("WENZEL"), _("SANTI")},
- .otId = 0x2E34,
+ .otId = 11828,
.facilityClass = FACILITY_CLASS_SCHOOL_KID_M,
.species = {SPECIES_LINOONE, SPECIES_MIGHTYENA, SPECIES_WHISCASH, SPECIES_ZANGOOSE, SPECIES_SEVIPER, SPECIES_NINETALES, SPECIES_KECLEON, SPECIES_SHUCKLE, SPECIES_MANECTRIC, SPECIES_MACHAMP},
.id = 2,
@@ -322,7 +322,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("ユラ"), _("LAYLA"), _("LAYLA"), _("ASTRID"), _("SONJA"), _("LOLA")},
- .otId = 0x84EF,
+ .otId = 34031,
.facilityClass = FACILITY_CLASS_LASS,
.species = {SPECIES_SWALOT, SPECIES_XATU, SPECIES_ALTARIA, SPECIES_GOLDUCK, SPECIES_FLYGON, SPECIES_ALAKAZAM, SPECIES_GARDEVOIR, SPECIES_WAILORD, SPECIES_GRUMPIG, SPECIES_MIGHTYENA},
.id = 3,
@@ -330,7 +330,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("ヨウカ"), _("MACY"), _("AMELIE"), _("CLEO"), _("MARIA"), _("ELISA")},
- .otId = 0x1E43,
+ .otId = 7747,
.facilityClass = FACILITY_CLASS_SCHOOL_KID_F,
.species = {SPECIES_WIGGLYTUFF, SPECIES_LINOONE, SPECIES_KINGDRA, SPECIES_DELCATTY, SPECIES_RAICHU, SPECIES_FEAROW, SPECIES_STARMIE, SPECIES_MEDICHAM, SPECIES_SHIFTRY, SPECIES_BEAUTIFLY},
.id = 4,
@@ -338,7 +338,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("ヤスシ"), _("DONTE"), _("BRAHIM"), _("GLAUCO"), _("JOSEF"), _("ROQUE")},
- .otId = 0x379F,
+ .otId = 14239,
.facilityClass = FACILITY_CLASS_RUNNING_TRIATHLETE_M,
.species = {SPECIES_STARMIE, SPECIES_DODRIO, SPECIES_AGGRON, SPECIES_MAGNETON, SPECIES_MACHAMP, SPECIES_ARMALDO, SPECIES_HERACROSS, SPECIES_NOSEPASS, SPECIES_EXPLOUD, SPECIES_MIGHTYENA},
.id = 5,
@@ -346,7 +346,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("ミサオ"), _("AMIRA"), _("LAURE"), _("DAFNE"), _("AMELIE"), _("LARA")},
- .otId = 0xF555,
+ .otId = 62805,
.facilityClass = FACILITY_CLASS_RUNNING_TRIATHLETE_F,
.species = {SPECIES_STARMIE, SPECIES_DODRIO, SPECIES_MAGNETON, SPECIES_MEDICHAM, SPECIES_MIGHTYENA, SPECIES_GLALIE, SPECIES_GOLEM, SPECIES_ELECTRODE, SPECIES_PELIPPER, SPECIES_SHARPEDO},
.id = 6,
@@ -354,7 +354,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("カズサ"), _("KALI"), _("JODIE"), _("ILENIA"), _("KARO"), _("ELSA")},
- .otId = 0x8D26,
+ .otId = 36134,
.facilityClass = FACILITY_CLASS_BEAUTY,
.species = {SPECIES_NINETALES, SPECIES_ALAKAZAM, SPECIES_SCEPTILE, SPECIES_SALAMENCE, SPECIES_GOLDUCK, SPECIES_MAWILE, SPECIES_WEEZING, SPECIES_LANTURN, SPECIES_GARDEVOIR, SPECIES_MILOTIC},
.id = 7,
@@ -362,7 +362,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("スミレ"), _("ANNIE"), _("ANNIE"), _("IMELDA"), _("INES"), _("ROSA")},
- .otId = 0x800C,
+ .otId = 32780,
.facilityClass = FACILITY_CLASS_AROMA_LADY,
.species = {SPECIES_SCEPTILE, SPECIES_VILEPLUME, SPECIES_BELLOSSOM, SPECIES_ROSELIA, SPECIES_CORSOLA, SPECIES_FLYGON, SPECIES_BRELOOM, SPECIES_MILOTIC, SPECIES_ALTARIA, SPECIES_CRADILY},
.id = 8,
@@ -370,7 +370,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("アキノリ"), _("DILLEN"), _("RENE"), _("INDRO"), _("DETLEF"), _("PEDRO")},
- .otId = 0x469f,
+ .otId = 18079,
.facilityClass = FACILITY_CLASS_HIKER,
.species = {SPECIES_SKARMORY, SPECIES_GOLEM, SPECIES_BLAZIKEN, SPECIES_CAMERUPT, SPECIES_DONPHAN, SPECIES_MUK, SPECIES_SALAMENCE, SPECIES_TROPIUS, SPECIES_SOLROCK, SPECIES_RHYDON},
.id = 9,
@@ -378,7 +378,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("トウゾウ"), _("DALLAS"), _("BRUNO"), _("LEARCO"), _("ANSGAR"), _("MANOLO")},
- .otId = 0x71FC,
+ .otId = 29180,
.facilityClass = FACILITY_CLASS_FISHERMAN,
.species = {SPECIES_SEAKING, SPECIES_STARMIE, SPECIES_GOLDUCK, SPECIES_TENTACRUEL, SPECIES_OCTILLERY, SPECIES_GOREBYSS, SPECIES_GLALIE, SPECIES_WAILORD, SPECIES_SHARPEDO, SPECIES_KINGDRA},
.id = 10,
@@ -386,7 +386,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("セイヤ"), _("FRANK"), _("FRANK"), _("OLINDO"), _("FRANK"), _("MAURO")},
- .otId = 0xA39E,
+ .otId = 41886,
.facilityClass = FACILITY_CLASS_SAILOR,
.species = {SPECIES_QUAGSIRE, SPECIES_STARMIE, SPECIES_PELIPPER, SPECIES_CRAWDAUNT, SPECIES_WAILORD, SPECIES_GYARADOS, SPECIES_SWAMPERT, SPECIES_LANTURN, SPECIES_WHISCASH, SPECIES_SHUCKLE},
.id = 11,
@@ -394,7 +394,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("リュウジ"), _("LAMONT"), _("XAV"), _("ORFEO"), _("JÜRGEN"), _("JORGE")},
- .otId = 0xE590,
+ .otId = 58768,
.facilityClass = FACILITY_CLASS_GUITARIST,
.species = {SPECIES_ABSOL, SPECIES_CROBAT, SPECIES_EXPLOUD, SPECIES_MAGNETON, SPECIES_SHARPEDO, SPECIES_MANECTRIC, SPECIES_METAGROSS, SPECIES_ELECTRODE, SPECIES_NOSEPASS, SPECIES_WEEZING},
.id = 12,
@@ -402,7 +402,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("カツアキ"), _("TYRESE"), _("ANDY"), _("PARIDE"), _("DAVID"), _("CHICHO")},
- .otId = 0xD018,
+ .otId = 53272,
.facilityClass = FACILITY_CLASS_BLACK_BELT,
.species = {SPECIES_BLAZIKEN, SPECIES_GOLEM, SPECIES_MACHAMP, SPECIES_RHYDON, SPECIES_HARIYAMA, SPECIES_AGGRON, SPECIES_MEDICHAM, SPECIES_ZANGOOSE, SPECIES_VIGOROTH, SPECIES_SLAKING},
.id = 13,
@@ -410,7 +410,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("トシミツ"), _("DANTE"), _("DANTE"), _("RAOUL"), _("LOTHAR"), _("PABLO")},
- .otId = 0xBC75,
+ .otId = 48245,
.facilityClass = FACILITY_CLASS_RUIN_MANIAC,
.species = {SPECIES_SCEPTILE, SPECIES_SANDSLASH, SPECIES_FLYGON, SPECIES_CLAYDOL, SPECIES_ARMALDO, SPECIES_CROBAT, SPECIES_CRADILY, SPECIES_SOLROCK, SPECIES_LUNATONE, SPECIES_GOLEM},
.id = 14,
@@ -418,7 +418,7 @@ const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
},
{
.name = {_("ローウェン"), _("ARTURO"), _("ARTURO"), _("ROMOLO"), _("BRIAN"), _("ARTURO")},
- .otId = 0xFA02,
+ .otId = 64002,
.facilityClass = FACILITY_CLASS_GENTLEMAN,
.species = {SPECIES_ABSOL, SPECIES_MIGHTYENA, SPECIES_ALAKAZAM, SPECIES_BANETTE, SPECIES_NINETALES, SPECIES_CLAYDOL, SPECIES_MUK, SPECIES_SALAMENCE, SPECIES_WALREIN, SPECIES_DUSCLOPS},
.id = 15,
@@ -948,7 +948,7 @@ static const u8 sQuestionPossibilities[MAX_APPRENTICE_QUESTIONS] =
QUESTION_ID_WIN_SPEECH
};
-static void (* const sApprenticeFunctions[])(void) =
+static void (*const sApprenticeFunctions[])(void) =
{
[APPRENTICE_FUNC_GAVE_LVLMODE] = Script_GivenApprenticeLvlMode,
[APPRENTICE_FUNC_SET_LVLMODE] = Script_SetApprenticeLvlMode,
diff --git a/src/data/battle_frontier/battle_frontier_trainer_mons.h b/src/data/battle_frontier/battle_frontier_trainer_mons.h
index 625a602658..f0a203d56d 100644
--- a/src/data/battle_frontier/battle_frontier_trainer_mons.h
+++ b/src/data/battle_frontier/battle_frontier_trainer_mons.h
@@ -4172,7 +4172,7 @@
FRONTIER_MON_##lastmon##_10,\
-1
-// The strong Psychic M/F trainers all use the below pokemon
+// The strong Psychic M/F trainers all use the below Pokémon
// Additionally they use 1 of 3 legendary trios, and Latios or Latias depending on gender
#define FRONTIER_MONS_PSYCHIC_2(lati, legend1, legend2, legend3) \
FRONTIER_MON_WOBBUFFET_1, \
diff --git a/src/data/decoration/tilemaps.h b/src/data/decoration/tilemaps.h
index eebb3acb25..d6c351ae85 100644
--- a/src/data/decoration/tilemaps.h
+++ b/src/data/decoration/tilemaps.h
@@ -171,7 +171,7 @@ static const u8 sDecorTilemap_3x2_X[] = {
0x06, 0x07, 0x06, 0x07, 0x06, 0x07
};
-#define DECORSIZE(width, height)((width) * (height) * 4)
+#define DECORSIZE(width, height) ((width) * (height) * 4)
static const struct {
const u8 *tiles;
diff --git a/src/data/easy_chat/easy_chat_group_actions.h b/src/data/easy_chat/easy_chat_group_actions.h
index 6ad297efcf..38f623ea56 100755
--- a/src/data/easy_chat/easy_chat_group_actions.h
+++ b/src/data/easy_chat/easy_chat_group_actions.h
@@ -81,469 +81,469 @@ const struct EasyChatWordInfo gEasyChatGroup_Actions[] = {
[EC_INDEX(EC_WORD_MEETS)] =
{
.text = gEasyChatWord_Meets,
- .alphabeticalOrder = 72,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALLOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CONCEDE)] =
{
.text = gEasyChatWord_Concede,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ANGERS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GIVE)] =
{
.text = gEasyChatWord_Give,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_APPEAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GIVES)] =
{
.text = gEasyChatWord_Gives,
- .alphabeticalOrder = 75,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_APPEARS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PLAYED)] =
{
.text = gEasyChatWord_Played,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BELIEVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PLAYS)] =
{
.text = gEasyChatWord_Plays,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BRAG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COLLECT)] =
{
.text = gEasyChatWord_Collect,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CAME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WALKING)] =
{
.text = gEasyChatWord_Walking,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CAPABLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WALKS)] =
{
.text = gEasyChatWord_Walks,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CAUSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SAYS)] =
{
.text = gEasyChatWord_Says,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHANGE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WENT)] =
{
.text = gEasyChatWord_Went,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHOOSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SAID)] =
{
.text = gEasyChatWord_Said,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COLLECT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WAKE_UP)] =
{
.text = gEasyChatWord_WakeUp,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WAKES_UP)] =
{
.text = gEasyChatWord_WakesUp,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CONCEDE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ANGERS)] =
{
.text = gEasyChatWord_Angers,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COULDN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TEACH)] =
{
.text = gEasyChatWord_Teach,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DISAPPEAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TEACHES)] =
{
.text = gEasyChatWord_Teaches,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DRINKS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PLEASE)] =
{
.text = gEasyChatWord_Please,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EATS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LEARN)] =
{
.text = gEasyChatWord_Learn,
- .alphabeticalOrder = 76,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FAINT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHANGE)] =
{
.text = gEasyChatWord_Change,
- .alphabeticalOrder = 77,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FAINTED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STORY)] =
{
.text = gEasyChatWord_Story,
- .alphabeticalOrder = 73,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FORGET),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRUST)] =
{
.text = gEasyChatWord_Trust,
- .alphabeticalOrder = 74,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FORGETS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LAVISH)] =
{
.text = gEasyChatWord_Lavish,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GIVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LISTENS)] =
{
.text = gEasyChatWord_Listens,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GIVES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEARING)] =
{
.text = gEasyChatWord_Hearing,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEARING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRAINS)] =
{
.text = gEasyChatWord_Trains,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IGNORANT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHOOSE)] =
{
.text = gEasyChatWord_Choose,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KNOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COME)] =
{
.text = gEasyChatWord_Come,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KNOWS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CAME)] =
{
.text = gEasyChatWord_Came,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LAVISH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SEARCH)] =
{
.text = gEasyChatWord_Search,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LEARN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MAKE)] =
{
.text = gEasyChatWord_Make,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LISTENS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CAUSE)] =
{
.text = gEasyChatWord_Cause,
- .alphabeticalOrder = 67,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOOKS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_KNOW)] =
{
.text = gEasyChatWord_Know,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MAKE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_KNOWS)] =
{
.text = gEasyChatWord_Knows,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MEETS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_REFUSE)] =
{
.text = gEasyChatWord_Refuse,
- .alphabeticalOrder = 65,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OVERDO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STORES)] =
{
.text = gEasyChatWord_Stores,
- .alphabeticalOrder = 70,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OWN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BRAG)] =
{
.text = gEasyChatWord_Brag,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PLAYED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IGNORANT)] =
{
.text = gEasyChatWord_Ignorant,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PLAYS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THINKS)] =
{
.text = gEasyChatWord_Thinks,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PLEASE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BELIEVE)] =
{
.text = gEasyChatWord_Believe,
- .alphabeticalOrder = 64,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PRAISE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SLIDE)] =
{
.text = gEasyChatWord_Slide,
- .alphabeticalOrder = 63,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PRETEND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EATS)] =
{
.text = gEasyChatWord_Eats,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_REFUSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_USE)] =
{
.text = gEasyChatWord_Use,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RELEASE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_USES)] =
{
.text = gEasyChatWord_Uses,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RUN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_USING)] =
{
.text = gEasyChatWord_Using,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RUNS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COULDN_T)] =
{
.text = gEasyChatWord_Couldnt,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SAID),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CAPABLE)] =
{
.text = gEasyChatWord_Capable,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SAYS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DISAPPEAR)] =
{
.text = gEasyChatWord_Disappear,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SEARCH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_APPEAR)] =
{
.text = gEasyChatWord_Appear,
- .alphabeticalOrder = 69,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SEEK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THROW)] =
{
.text = gEasyChatWord_Throw,
- .alphabeticalOrder = 68,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SEES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WORRY)] =
{
.text = gEasyChatWord_Worry,
- .alphabeticalOrder = 66,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SLEPT)] =
{
.text = gEasyChatWord_Slept,
- .alphabeticalOrder = 61,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SINK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SLEEP)] =
{
.text = gEasyChatWord_Sleep,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SLEEP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RELEASE)] =
{
.text = gEasyChatWord_Release,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SLEPT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DRINKS)] =
{
.text = gEasyChatWord_Drinks,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SLIDE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RUNS)] =
{
.text = gEasyChatWord_Runs,
- .alphabeticalOrder = 62,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SMACK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RUN)] =
{
.text = gEasyChatWord_Run,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STORES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WORKS)] =
{
.text = gEasyChatWord_Works,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STORY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WORKING)] =
{
.text = gEasyChatWord_Working,
- .alphabeticalOrder = 71,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TAKE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TALKING)] =
{
.text = gEasyChatWord_Talking,
- .alphabeticalOrder = 60,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TALK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TALK)] =
{
.text = gEasyChatWord_Talk,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TALKING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SINK)] =
{
.text = gEasyChatWord_Sink,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TEACH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SMACK)] =
{
.text = gEasyChatWord_Smack,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TEACHES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PRETEND)] =
{
.text = gEasyChatWord_Pretend,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THINKS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PRAISE)] =
{
.text = gEasyChatWord_Praise,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THROW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OVERDO)] =
{
.text = gEasyChatWord_Overdo,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRAINS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHOW)] =
{
.text = gEasyChatWord_Show,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRUST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOOKS)] =
{
.text = gEasyChatWord_Looks,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_USE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SEES)] =
{
.text = gEasyChatWord_Sees,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_USES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SEEK)] =
{
.text = gEasyChatWord_Seek,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_USING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OWN)] =
{
.text = gEasyChatWord_Own,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WAKE_UP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TAKE)] =
{
.text = gEasyChatWord_Take,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WAKES_UP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALLOW)] =
{
.text = gEasyChatWord_Allow,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WALKING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FORGET)] =
{
.text = gEasyChatWord_Forget,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WALKS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FORGETS)] =
{
.text = gEasyChatWord_Forgets,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_APPEARS)] =
{
.text = gEasyChatWord_Appears,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WORKING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FAINT)] =
{
.text = gEasyChatWord_Faint,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WORKS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FAINTED)] =
{
.text = gEasyChatWord_Fainted,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WORRY),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_adjectives.h b/src/data/easy_chat/easy_chat_group_adjectives.h
index 619dff6213..6a85973df4 100755
--- a/src/data/easy_chat/easy_chat_group_adjectives.h
+++ b/src/data/easy_chat/easy_chat_group_adjectives.h
@@ -39,217 +39,217 @@ const struct EasyChatWordInfo gEasyChatGroup_Adjectives[] = {
[EC_INDEX(EC_WORD_WANDERING)] =
{
.text = gEasyChatWord_Wandering,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ANTICIPATION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RICKETY)] =
{
.text = gEasyChatWord_Rickety,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AWESOME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ROCK_SOLID)] =
{
.text = gEasyChatWord_RockSolid,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BREAK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HUNGRY)] =
{
.text = gEasyChatWord_Hungry,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DESTROYED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TIGHT)] =
{
.text = gEasyChatWord_Tight,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DROOLING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TICKLISH)] =
{
.text = gEasyChatWord_Ticklish,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXCITING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TWIRLING)] =
{
.text = gEasyChatWord_Twirling,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FIERY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SPIRALING)] =
{
.text = gEasyChatWord_Spiraling,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAPPILY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THIRSTY)] =
{
.text = gEasyChatWord_Thirsty,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOPELESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOLLING)] =
{
.text = gEasyChatWord_Lolling,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HUNGRY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SILKY)] =
{
.text = gEasyChatWord_Silky,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INCREASING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SADLY)] =
{
.text = gEasyChatWord_Sadly,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOLLING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOPELESS)] =
{
.text = gEasyChatWord_Hopeless,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOVEY_DOVEY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_USELESS)] =
{
.text = gEasyChatWord_Useless,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RICKETY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DROOLING)] =
{
.text = gEasyChatWord_Drooling,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RIPPED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXCITING)] =
{
.text = gEasyChatWord_Exciting,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ROCK_SOLID),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THICK)] =
{
.text = gEasyChatWord_Thick,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SADLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SMOOTH)] =
{
.text = gEasyChatWord_Smooth,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SCATTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SLIMY)] =
{
.text = gEasyChatWord_Slimy,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHAKY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THIN)] =
{
.text = gEasyChatWord_Thin,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHREDDED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BREAK)] =
{
.text = gEasyChatWord_Break,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SILKY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VORACIOUS)] =
{
.text = gEasyChatWord_Voracious,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SLIMY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SCATTER)] =
{
.text = gEasyChatWord_Scatter,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SMOOTH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AWESOME)] =
{
.text = gEasyChatWord_Awesome,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SPIRALING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WIMPY)] =
{
.text = gEasyChatWord_Wimpy,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THICK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WOBBLY)] =
{
.text = gEasyChatWord_Wobbly,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHAKY)] =
{
.text = gEasyChatWord_Shaky,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THIRSTY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RIPPED)] =
{
.text = gEasyChatWord_Ripped,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TICKLISH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHREDDED)] =
{
.text = gEasyChatWord_Shredded,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TIGHT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INCREASING)] =
{
.text = gEasyChatWord_Increasing,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TWIRLING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YET)] =
{
.text = gEasyChatWord_Yet,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_USELESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DESTROYED)] =
{
.text = gEasyChatWord_Destroyed,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VORACIOUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FIERY)] =
{
.text = gEasyChatWord_Fiery,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WANDERING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOVEY_DOVEY)] =
{
.text = gEasyChatWord_LoveyDovey,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WIMPY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAPPILY)] =
{
.text = gEasyChatWord_Happily,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WOBBLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ANTICIPATION)] =
{
.text = gEasyChatWord_Anticipation,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YET),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_battle.h b/src/data/easy_chat/easy_chat_group_battle.h
index 2a2420b2f1..56d7ce0cd8 100755
--- a/src/data/easy_chat/easy_chat_group_battle.h
+++ b/src/data/easy_chat/easy_chat_group_battle.h
@@ -66,379 +66,379 @@ const struct EasyChatWordInfo gEasyChatGroup_Battle[] = {
[EC_INDEX(EC_WORD_MATCH_UP)] =
{
.text = gEasyChatWord_MatchUp,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ACCEPT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GO)] =
{
.text = gEasyChatWord_Go,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AIM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NO_1)] =
{
.text = gEasyChatWord_No1,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ATTACK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DECIDE)] =
{
.text = gEasyChatWord_Decide,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BATTLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LET_ME_WIN)] =
{
.text = gEasyChatWord_LetMeWin,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CAN_WIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WINS)] =
{
.text = gEasyChatWord_Wins,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CAN_T_WIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WIN)] =
{
.text = gEasyChatWord_Win,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHALLENGE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WON)] =
{
.text = gEasyChatWord_Won,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COME_ON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IF_I_WIN)] =
{
.text = gEasyChatWord_IfIWin,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DECIDE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHEN_I_WIN)] =
{
.text = gEasyChatWord_WhenIWin,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DECIDED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CAN_T_WIN)] =
{
.text = gEasyChatWord_CantWin,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EASY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CAN_WIN)] =
{
.text = gEasyChatWord_CanWin,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ESCAPE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NO_MATCH)] =
{
.text = gEasyChatWord_NoMatch,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FIGHT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SPIRIT)] =
{
.text = gEasyChatWord_Spirit,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FIGHTS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DECIDED)] =
{
.text = gEasyChatWord_Decided,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FOE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRUMP_CARD)] =
{
.text = gEasyChatWord_TrumpCard,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GENIUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TAKE_THAT)] =
{
.text = gEasyChatWord_TakeThat,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GIVE_UP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COME_ON)] =
{
.text = gEasyChatWord_ComeOn,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ATTACK)] =
{
.text = gEasyChatWord_Attack,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GO_EASY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SURRENDER)] =
{
.text = gEasyChatWord_Surrender,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GUARD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GUTSY)] =
{
.text = gEasyChatWord_Gutsy,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GUTSY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TALENT)] =
{
.text = gEasyChatWord_Talent,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IF_I_LOSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STRATEGY)] =
{
.text = gEasyChatWord_Strategy,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IF_I_WIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SMITE)] =
{
.text = gEasyChatWord_Smite,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INVINCIBLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MATCH)] =
{
.text = gEasyChatWord_Match,
- .alphabeticalOrder = 60,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LEADER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VICTORY)] =
{
.text = gEasyChatWord_Victory,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LEGEND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OFFENSIVE)] =
{
.text = gEasyChatWord_Offensive,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LET_ME_WIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SENSE)] =
{
.text = gEasyChatWord_Sense,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VERSUS)] =
{
.text = gEasyChatWord_Versus,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOSS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FIGHTS)] =
{
.text = gEasyChatWord_Fights,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POWER)] =
{
.text = gEasyChatWord_Power,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MATCH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHALLENGE)] =
{
.text = gEasyChatWord_Challenge,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MATCH_UP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STRONG)] =
{
.text = gEasyChatWord_Strong,
- .alphabeticalOrder = 62,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MOVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOO_STRONG)] =
{
.text = gEasyChatWord_TooStrong,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NO_MATCH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GO_EASY)] =
{
.text = gEasyChatWord_GoEasy,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NO_1),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FOE)] =
{
.text = gEasyChatWord_Foe,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OFFENSIVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GENIUS)] =
{
.text = gEasyChatWord_Genius,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PARTNER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LEGEND)] =
{
.text = gEasyChatWord_Legend,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POINTS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ESCAPE)] =
{
.text = gEasyChatWord_Escape,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POWER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AIM)] =
{
.text = gEasyChatWord_Aim,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PUSHOVER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BATTLE)] =
{
.text = gEasyChatWord_Battle,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RECEIVED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FIGHT)] =
{
.text = gEasyChatWord_Fight,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_REJECT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RESUSCITATE)] =
{
.text = gEasyChatWord_Resuscitate,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RESUSCITATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POINTS)] =
{
.text = gEasyChatWord_Points,
- .alphabeticalOrder = 61,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RULE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SERIOUS)] =
{
.text = gEasyChatWord_Serious,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SENSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GIVE_UP)] =
{
.text = gEasyChatWord_GiveUp,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SERIOUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOSS)] =
{
.text = gEasyChatWord_Loss,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SMITE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IF_I_LOSE)] =
{
.text = gEasyChatWord_IfILose,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SPIRIT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOST)] =
{
.text = gEasyChatWord_Lost,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STRATEGY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOSE)] =
{
.text = gEasyChatWord_Lose,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STRONG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GUARD)] =
{
.text = gEasyChatWord_Guard,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SURRENDER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PARTNER)] =
{
.text = gEasyChatWord_Partner,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TAKE_THAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_REJECT)] =
{
.text = gEasyChatWord_Reject,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TALENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ACCEPT)] =
{
.text = gEasyChatWord_Accept,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOO_STRONG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INVINCIBLE)] =
{
.text = gEasyChatWord_Invincible,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOO_WEAK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RECEIVED)] =
{
.text = gEasyChatWord_Received,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRUMP_CARD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EASY)] =
{
.text = gEasyChatWord_Easy,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VERSUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WEAK)] =
{
.text = gEasyChatWord_Weak,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VICTORY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOO_WEAK)] =
{
.text = gEasyChatWord_TooWeak,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WEAK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PUSHOVER)] =
{
.text = gEasyChatWord_Pushover,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHEN_I_WIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LEADER)] =
{
.text = gEasyChatWord_Leader,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RULE)] =
{
.text = gEasyChatWord_Rule,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WINS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MOVE)] =
{
.text = gEasyChatWord_Move,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WON),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_conditions.h b/src/data/easy_chat/easy_chat_group_conditions.h
index d0636f1628..b53816e9e9 100755
--- a/src/data/easy_chat/easy_chat_group_conditions.h
+++ b/src/data/easy_chat/easy_chat_group_conditions.h
@@ -72,415 +72,415 @@ const struct EasyChatWordInfo gEasyChatGroup_Conditions[] = {
[EC_INDEX(EC_WORD_HOT)] =
{
.text = gEasyChatWord_Hot,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ABSENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXISTS)] =
{
.text = gEasyChatWord_Exists,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALONE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXCESS)] =
{
.text = gEasyChatWord_Excess,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AMUSING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_APPROVED)] =
{
.text = gEasyChatWord_Approved,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_APPROVED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAS)] =
{
.text = gEasyChatWord_Has,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AWFUL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GOOD)] =
{
.text = gEasyChatWord_Good,
- .alphabeticalOrder = 68,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BADLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LESS)] =
{
.text = gEasyChatWord_Less,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BECOMES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MOMENTUM)] =
{
.text = gEasyChatWord_Momentum,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BEING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GOING)] =
{
.text = gEasyChatWord_Going,
- .alphabeticalOrder = 60,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BEST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WEIRD)] =
{
.text = gEasyChatWord_Weird,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BIG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BUSY)] =
{
.text = gEasyChatWord_Busy,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BORED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOGETHER)] =
{
.text = gEasyChatWord_Together,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BUSY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FULL)] =
{
.text = gEasyChatWord_Full,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CLOSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ABSENT)] =
{
.text = gEasyChatWord_Absent,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COLD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BEING)] =
{
.text = gEasyChatWord_Being,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CORRECT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NEED)] =
{
.text = gEasyChatWord_Need,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DIFFERENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TASTY)] =
{
.text = gEasyChatWord_Tasty,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DOCILE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SKILLED)] =
{
.text = gEasyChatWord_Skilled,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ELSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NOISY)] =
{
.text = gEasyChatWord_Noisy,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ENTERTAINING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BIG)] =
{
.text = gEasyChatWord_Big,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXCELLENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LATE)] =
{
.text = gEasyChatWord_Late,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXCESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CLOSE)] =
{
.text = gEasyChatWord_Close,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXISTS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DOCILE)] =
{
.text = gEasyChatWord_Docile,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXPENSIVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AMUSING)] =
{
.text = gEasyChatWord_Amusing,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FABULOUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ENTERTAINING)] =
{
.text = gEasyChatWord_Entertaining,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FAST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PERFECTION)] =
{
.text = gEasyChatWord_Perfection,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FULL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PRETTY)] =
{
.text = gEasyChatWord_Pretty,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GOING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEALTHY)] =
{
.text = gEasyChatWord_Healthy,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GOOD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXCELLENT)] =
{
.text = gEasyChatWord_Excellent,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UPSIDE_DOWN)] =
{
.text = gEasyChatWord_UpsideDown,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEALTHY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COLD)] =
{
.text = gEasyChatWord_Cold,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_REFRESHING)] =
{
.text = gEasyChatWord_Refreshing,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IMPOSSIBLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UNAVOIDABLE)] =
{
.text = gEasyChatWord_Unavoidable,
- .alphabeticalOrder = 63,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KIND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MUCH)] =
{
.text = gEasyChatWord_Much,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LACKS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OVERWHELMING)] =
{
.text = gEasyChatWord_Overwhelming,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FABULOUS)] =
{
.text = gEasyChatWord_Fabulous,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ELSE)] =
{
.text = gEasyChatWord_Else,
- .alphabeticalOrder = 61,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOUSY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXPENSIVE)] =
{
.text = gEasyChatWord_Expensive,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CORRECT)] =
{
.text = gEasyChatWord_Correct,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LUKEWARM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IMPOSSIBLE)] =
{
.text = gEasyChatWord_Impossible,
- .alphabeticalOrder = 62,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MISTAKE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SMALL)] =
{
.text = gEasyChatWord_Small,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MOMENTUM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DIFFERENT)] =
{
.text = gEasyChatWord_Different,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MUCH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TIRED)] =
{
.text = gEasyChatWord_Tired,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MYSTERY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SKILL)] =
{
.text = gEasyChatWord_Skill,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NATURAL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOP)] =
{
.text = gEasyChatWord_Top,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NEED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NON_STOP)] =
{
.text = gEasyChatWord_NonStop,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NOISY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PREPOSTEROUS)] =
{
.text = gEasyChatWord_Preposterous,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NON_STOP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NONE)] =
{
.text = gEasyChatWord_None,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NONE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NOTHING)] =
{
.text = gEasyChatWord_Nothing,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NOTHING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NATURAL)] =
{
.text = gEasyChatWord_Natural,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OVERWHELMING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BECOMES)] =
{
.text = gEasyChatWord_Becomes,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PERFECTION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LUKEWARM)] =
{
.text = gEasyChatWord_Lukewarm,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PREPOSTEROUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FAST)] =
{
.text = gEasyChatWord_Fast,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PRETTY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOW)] =
{
.text = gEasyChatWord_Low,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_REFRESHING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AWFUL)] =
{
.text = gEasyChatWord_Awful,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SECRET),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALONE)] =
{
.text = gEasyChatWord_Alone,
- .alphabeticalOrder = 67,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SEEMS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BORED)] =
{
.text = gEasyChatWord_Bored,
- .alphabeticalOrder = 66,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SIMPLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SECRET)] =
{
.text = gEasyChatWord_Secret,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SKILL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MYSTERY)] =
{
.text = gEasyChatWord_Mystery,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SKILLED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LACKS)] =
{
.text = gEasyChatWord_Lacks,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SMALL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BEST)] =
{
.text = gEasyChatWord_Best,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TASTY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOUSY)] =
{
.text = gEasyChatWord_Lousy,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TIRED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MISTAKE)] =
{
.text = gEasyChatWord_Mistake,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOGETHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_KIND)] =
{
.text = gEasyChatWord_Kind,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WELL)] =
{
.text = gEasyChatWord_Well,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UNAVOIDABLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WEAKENED)] =
{
.text = gEasyChatWord_Weakened,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UPSIDE_DOWN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SIMPLE)] =
{
.text = gEasyChatWord_Simple,
- .alphabeticalOrder = 65,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WEAKENED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SEEMS)] =
{
.text = gEasyChatWord_Seems,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WEIRD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BADLY)] =
{
.text = gEasyChatWord_Badly,
- .alphabeticalOrder = 64,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WELL),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_endings.h b/src/data/easy_chat/easy_chat_group_endings.h
index ffa5108a91..629380b039 100755
--- a/src/data/easy_chat/easy_chat_group_endings.h
+++ b/src/data/easy_chat/easy_chat_group_endings.h
@@ -72,415 +72,415 @@ const struct EasyChatWordInfo gEasyChatGroup_Endings[] = {
[EC_INDEX(EC_WORD_WILL)] =
{
.text = gEasyChatWord_Will,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_A),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WILL_BE_HERE)] =
{
.text = gEasyChatWord_WillBeHere,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ABOUT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OR)] =
{
.text = gEasyChatWord_Or,
- .alphabeticalOrder = 63,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AFTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TIMES)] =
{
.text = gEasyChatWord_Times,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WONDER)] =
{
.text = gEasyChatWord_Wonder,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IS_IT_QUES)] =
{
.text = gEasyChatWord_IsItQues,
- .alphabeticalOrder = 68,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ANYWHERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BE)] =
{
.text = gEasyChatWord_Be,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ARE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GIMME)] =
{
.text = gEasyChatWord_Gimme,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COULD)] =
{
.text = gEasyChatWord_Could,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIKELY_TO)] =
{
.text = gEasyChatWord_LikelyTo,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WOULD)] =
{
.text = gEasyChatWord_Would,
- .alphabeticalOrder = 64,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BEFORE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IS)] =
{
.text = gEasyChatWord_Is,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BELONGS_TO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ISN_T_IT_QUES)] =
{
.text = gEasyChatWord_IsntItQues,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BETTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LET_S)] =
{
.text = gEasyChatWord_Lets,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CAN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OTHER)] =
{
.text = gEasyChatWord_Other,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CAN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ARE)] =
{
.text = gEasyChatWord_Are,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COULD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WAS)] =
{
.text = gEasyChatWord_Was,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DID),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WERE)] =
{
.text = gEasyChatWord_Were,
- .alphabeticalOrder = 60,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DIDN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THOSE)] =
{
.text = gEasyChatWord_Those,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ISN_T)] =
{
.text = gEasyChatWord_Isnt,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DOES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WON_T)] =
{
.text = gEasyChatWord_Wont,
- .alphabeticalOrder = 61,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DOESN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CAN_T)] =
{
.text = gEasyChatWord_Cant,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DON_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CAN)] =
{
.text = gEasyChatWord_Can,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EVER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DON_T)] =
{
.text = gEasyChatWord_Dont,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FOR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DO)] =
{
.text = gEasyChatWord_Do,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GIMME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DOES)] =
{
.text = gEasyChatWord_Does,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHOM)] =
{
.text = gEasyChatWord_Whom,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAVEN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHICH)] =
{
.text = gEasyChatWord_Which,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WASN_T)] =
{
.text = gEasyChatWord_Wasnt,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WEREN_T)] =
{
.text = gEasyChatWord_Werent,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IS_IT_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAVE)] =
{
.text = gEasyChatWord_Have,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ISN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAVEN_T)] =
{
.text = gEasyChatWord_Havent,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ISN_T_IT_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_A)] =
{
.text = gEasyChatWord_A,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AN)] =
{
.text = gEasyChatWord_An,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LET_S),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NOT)] =
{
.text = gEasyChatWord_Not,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIKE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THERE)] =
{
.text = gEasyChatWord_There,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIKELY_TO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OK_QUES)] =
{
.text = gEasyChatWord_OkQues,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MAYBE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SO)] =
{
.text = gEasyChatWord_So,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NOT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MAYBE)] =
{
.text = gEasyChatWord_Maybe,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OF),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ABOUT)] =
{
.text = gEasyChatWord_About,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OFF),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OVER)] =
{
.text = gEasyChatWord_Over,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OK_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IT)] =
{
.text = gEasyChatWord_It,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALL)] =
{
.text = gEasyChatWord_All,
- .alphabeticalOrder = 67,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ONCE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FOR)] =
{
.text = gEasyChatWord_For,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ON)] =
{
.text = gEasyChatWord_On,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OTHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OFF)] =
{
.text = gEasyChatWord_Off,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OUT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AS)] =
{
.text = gEasyChatWord_As,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OVER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TO)] =
{
.text = gEasyChatWord_To,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SINCE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WITH)] =
{
.text = gEasyChatWord_With,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BETTER)] =
{
.text = gEasyChatWord_Better,
- .alphabeticalOrder = 66,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THAN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EVER)] =
{
.text = gEasyChatWord_Ever,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SINCE)] =
{
.text = gEasyChatWord_Since,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THOSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OF)] =
{
.text = gEasyChatWord_Of,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TIMES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BELONGS_TO)] =
{
.text = gEasyChatWord_BelongsTo,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AT)] =
{
.text = gEasyChatWord_At,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IN)] =
{
.text = gEasyChatWord_In,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WAS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OUT)] =
{
.text = gEasyChatWord_Out,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WASN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOO)] =
{
.text = gEasyChatWord_Too,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIKE)] =
{
.text = gEasyChatWord_Like,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WEREN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DID)] =
{
.text = gEasyChatWord_Did,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHICH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DIDN_T)] =
{
.text = gEasyChatWord_Didnt,
- .alphabeticalOrder = 65,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHILE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DOESN_T)] =
{
.text = gEasyChatWord_Doesnt,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHOM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WITHOUT)] =
{
.text = gEasyChatWord_Without,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WILL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AFTER)] =
{
.text = gEasyChatWord_After,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WILL_BE_HERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BEFORE)] =
{
.text = gEasyChatWord_Before,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WITH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHILE)] =
{
.text = gEasyChatWord_While,
- .alphabeticalOrder = 62,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WITHOUT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THAN)] =
{
.text = gEasyChatWord_Than,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WON_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ONCE)] =
{
.text = gEasyChatWord_Once,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WONDER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ANYWHERE)] =
{
.text = gEasyChatWord_Anywhere,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WOULD),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_events.h b/src/data/easy_chat/easy_chat_group_events.h
index 0fbbcc4a78..a4e5165c60 100755
--- a/src/data/easy_chat/easy_chat_group_events.h
+++ b/src/data/easy_chat/easy_chat_group_events.h
@@ -32,175 +32,175 @@ const struct EasyChatWordInfo gEasyChatGroup_Events[] = {
[EC_INDEX(EC_WORD_APPEAL)] =
{
.text = gEasyChatWord_Appeal,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_APPEAL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EVENTS)] =
{
.text = gEasyChatWord_Events,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BATTLE_ROOM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STAY_AT_HOME)] =
{
.text = gEasyChatWord_StayAtHome,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BATTLE_TOWER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BERRY)] =
{
.text = gEasyChatWord_Berry,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BERRY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CONTEST)] =
{
.text = gEasyChatWord_Contest,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BLEND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MC)] =
{
.text = gEasyChatWord_Mc,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CONTEST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_JUDGE)] =
{
.text = gEasyChatWord_Judge,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CRUSH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SUPER)] =
{
.text = gEasyChatWord_Super,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DIRECT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STAGE)] =
{
.text = gEasyChatWord_Stage,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EVENTS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HALL_OF_FAME)] =
{
.text = gEasyChatWord_HallOfFame,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EVOLUTION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EVOLUTION)] =
{
.text = gEasyChatWord_Evolution,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FRONTIER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HYPER)] =
{
.text = gEasyChatWord_Hyper,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HALL_OF_FAME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BATTLE_TOWER)] =
{
.text = gEasyChatWord_BattleTower,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HIDDEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LEADERS)] =
{
.text = gEasyChatWord_Leaders,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HYPER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BATTLE_ROOM)] =
{
.text = gEasyChatWord_BattleRoom,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_JUDGE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HIDDEN)] =
{
.text = gEasyChatWord_Hidden,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LEADERS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SECRET_BASE)] =
{
.text = gEasyChatWord_SecretBase,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MASTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BLEND)] =
{
.text = gEasyChatWord_Blend,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MC),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POKEBLOCK)] =
{
.text = gEasyChatWord_POKEBLOCK,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POKEBLOCK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MASTER)] =
{
.text = gEasyChatWord_Master,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RANK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RANK)] =
{
.text = gEasyChatWord_Rank,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RIBBON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RIBBON)] =
{
.text = gEasyChatWord_Ribbon,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ROOM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CRUSH)] =
{
.text = gEasyChatWord_Crush,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SECRET_BASE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DIRECT)] =
{
.text = gEasyChatWord_Direct,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STAGE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOWER)] =
{
.text = gEasyChatWord_Tower,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STAY_AT_HOME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UNION)] =
{
.text = gEasyChatWord_Union,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SUPER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ROOM)] =
{
.text = gEasyChatWord_Room,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOWER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WIRELESS)] =
{
.text = gEasyChatWord_Wireless,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UNION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FRONTIER)] =
{
.text = gEasyChatWord_Frontier,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WIRELESS),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_feelings.h b/src/data/easy_chat/easy_chat_group_feelings.h
index 55fe9d00c5..5c2221530a 100755
--- a/src/data/easy_chat/easy_chat_group_feelings.h
+++ b/src/data/easy_chat/easy_chat_group_feelings.h
@@ -72,415 +72,415 @@ const struct EasyChatWordInfo gEasyChatGroup_Feelings[] = {
[EC_INDEX(EC_WORD_MEET)] =
{
.text = gEasyChatWord_Meet,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ADORE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PLAY)] =
{
.text = gEasyChatWord_Play,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALL_RIGHT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HURRIED)] =
{
.text = gEasyChatWord_Hurried,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ANGER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GOES)] =
{
.text = gEasyChatWord_Goes,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ANGRY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GIDDY)] =
{
.text = gEasyChatWord_Giddy,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BAD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAPPY)] =
{
.text = gEasyChatWord_Happy,
- .alphabeticalOrder = 63,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BEAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAPPINESS)] =
{
.text = gEasyChatWord_Happiness,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BORING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXCITE)] =
{
.text = gEasyChatWord_Excite,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CARE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IMPORTANT)] =
{
.text = gEasyChatWord_Important,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CARES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FUNNY)] =
{
.text = gEasyChatWord_Funny,
- .alphabeticalOrder = 61,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DANGER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GOT)] =
{
.text = gEasyChatWord_Got,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DARN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GO_HOME)] =
{
.text = gEasyChatWord_GoHome,
- .alphabeticalOrder = 62,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DEFEATED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DISAPPOINTED)] =
{
.text = gEasyChatWord_Disappointed,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DISAPPOINT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DISAPPOINTS)] =
{
.text = gEasyChatWord_Disappoints,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DISAPPOINTED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SAD)] =
{
.text = gEasyChatWord_Sad,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DISAPPOINTS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRY)] =
{
.text = gEasyChatWord_Try,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DISASTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRIES)] =
{
.text = gEasyChatWord_Tries,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DISLIKE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEARS)] =
{
.text = gEasyChatWord_Hears,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DISLIKES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THINK)] =
{
.text = gEasyChatWord_Think,
- .alphabeticalOrder = 60,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DONE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEAR)] =
{
.text = gEasyChatWord_Hear,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DOWNCAST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WANTS)] =
{
.text = gEasyChatWord_Wants,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DRINK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MISHEARD)] =
{
.text = gEasyChatWord_Misheard,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DISLIKE)] =
{
.text = gEasyChatWord_Dislike,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ENJOY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ANGRY)] =
{
.text = gEasyChatWord_Angry,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ENJOYS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ANGER)] =
{
.text = gEasyChatWord_Anger,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXCITE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SCARY)] =
{
.text = gEasyChatWord_Scary,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FEAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LONESOME)] =
{
.text = gEasyChatWord_Lonesome,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FUNNY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DISAPPOINT)] =
{
.text = gEasyChatWord_Disappoint,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GETS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_JOY)] =
{
.text = gEasyChatWord_Joy,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GIDDY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GETS)] =
{
.text = gEasyChatWord_Gets,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GO_HOME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NEVER)] =
{
.text = gEasyChatWord_Never,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GOES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DARN)] =
{
.text = gEasyChatWord_Darn,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GOT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DOWNCAST)] =
{
.text = gEasyChatWord_Downcast,
- .alphabeticalOrder = 64,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GREAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INCREDIBLE)] =
{
.text = gEasyChatWord_Incredible,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAPPINESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIKES)] =
{
.text = gEasyChatWord_Likes,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAPPY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DISLIKES)] =
{
.text = gEasyChatWord_Dislikes,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HARD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BORING)] =
{
.text = gEasyChatWord_Boring,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CARE)] =
{
.text = gEasyChatWord_Care,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEARS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CARES)] =
{
.text = gEasyChatWord_Cares,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HURRIED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALL_RIGHT)] =
{
.text = gEasyChatWord_AllRight,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IMPORTANT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ADORE)] =
{
.text = gEasyChatWord_Adore,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INCREDIBLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DISASTER)] =
{
.text = gEasyChatWord_Disaster,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_JOY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ENJOY)] =
{
.text = gEasyChatWord_Enjoy,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LACKING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ENJOYS)] =
{
.text = gEasyChatWord_Enjoys,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIKES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EAT)] =
{
.text = gEasyChatWord_Eat,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LONESOME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LACKING)] =
{
.text = gEasyChatWord_Lacking,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MEET),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BAD)] =
{
.text = gEasyChatWord_Bad,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MISHEARD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HARD)] =
{
.text = gEasyChatWord_Hard,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NEGATIVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TERRIBLE)] =
{
.text = gEasyChatWord_Terrible,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NEVER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHOULD)] =
{
.text = gEasyChatWord_Should,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NICE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NICE)] =
{
.text = gEasyChatWord_Nice,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PLAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DRINK)] =
{
.text = gEasyChatWord_Drink,
- .alphabeticalOrder = 66,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_QUESTION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SURPRISE)] =
{
.text = gEasyChatWord_Surprise,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RARE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FEAR)] =
{
.text = gEasyChatWord_Fear,
- .alphabeticalOrder = 65,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ROMANTIC),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WANT)] =
{
.text = gEasyChatWord_Want,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SAD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WAIT)] =
{
.text = gEasyChatWord_Wait,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SATISFIED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SATISFIED)] =
{
.text = gEasyChatWord_Satisfied,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SCARY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SEE)] =
{
.text = gEasyChatWord_See,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SEE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RARE)] =
{
.text = gEasyChatWord_Rare,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHOULD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NEGATIVE)] =
{
.text = gEasyChatWord_Negative,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SURPRISE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DONE)] =
{
.text = gEasyChatWord_Done,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TERRIBLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DANGER)] =
{
.text = gEasyChatWord_Danger,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THINK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DEFEATED)] =
{
.text = gEasyChatWord_Defeated,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRIES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BEAT)] =
{
.text = gEasyChatWord_Beat,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GREAT)] =
{
.text = gEasyChatWord_Great,
- .alphabeticalOrder = 67,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UNDERSTAND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ROMANTIC)] =
{
.text = gEasyChatWord_Romantic,
- .alphabeticalOrder = 68,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UNDERSTANDS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_QUESTION)] =
{
.text = gEasyChatWord_Question,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WAIT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UNDERSTAND)] =
{
.text = gEasyChatWord_Understand,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WANT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UNDERSTANDS)] =
{
.text = gEasyChatWord_Understands,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WANTS),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_greetings.h b/src/data/easy_chat/easy_chat_group_greetings.h
index fb95f7939d..aabf34c1cf 100755
--- a/src/data/easy_chat/easy_chat_group_greetings.h
+++ b/src/data/easy_chat/easy_chat_group_greetings.h
@@ -45,253 +45,253 @@ const struct EasyChatWordInfo gEasyChatGroup_Greetings[] = {
[EC_INDEX(EC_WORD_THANKS)] =
{
.text = gEasyChatWord_Thanks,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_APOLOGIZE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YES)] =
{
.text = gEasyChatWord_Yes,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_APPRECIATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HERE_GOES)] =
{
.text = gEasyChatWord_HereGoes,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BYE_BYE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HERE_I_COME)] =
{
.text = gEasyChatWord_HereICome,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COME_OVER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HERE_IT_IS)] =
{
.text = gEasyChatWord_HereItIs,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CONGRATS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YEAH)] =
{
.text = gEasyChatWord_Yeah,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COUNT_ON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WELCOME)] =
{
.text = gEasyChatWord_Welcome,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXCUSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OI)] =
{
.text = gEasyChatWord_Oi,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXCUSE_ME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOW_DO)] =
{
.text = gEasyChatWord_HowDo,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FORGIVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CONGRATS)] =
{
.text = gEasyChatWord_Congrats,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GIVE_ME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GIVE_ME)] =
{
.text = gEasyChatWord_GiveMe,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GO_AHEAD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SORRY)] =
{
.text = gEasyChatWord_Sorry,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GOOD_BYE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_APOLOGIZE)] =
{
.text = gEasyChatWord_Apologize,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HELLO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FORGIVE)] =
{
.text = gEasyChatWord_Forgive,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HERE_GOES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEY_THERE)] =
{
.text = gEasyChatWord_HeyThere,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HERE_I_COME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HELLO)] =
{
.text = gEasyChatWord_Hello,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HERE_IT_IS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GOOD_BYE)] =
{
.text = gEasyChatWord_GoodBye,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THANK_YOU)] =
{
.text = gEasyChatWord_ThankYou,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEY_THERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_I_VE_ARRIVED)] =
{
.text = gEasyChatWord_IveArrived,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEY_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PARDON)] =
{
.text = gEasyChatWord_Pardon,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HI),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXCUSE)] =
{
.text = gEasyChatWord_Excuse,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOO_HAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SEE_YA)] =
{
.text = gEasyChatWord_SeeYa,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOW_DO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXCUSE_ME)] =
{
.text = gEasyChatWord_ExcuseMe,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HUH_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WELL_THEN)] =
{
.text = gEasyChatWord_WellThen,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_I_VE_ARRIVED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GO_AHEAD)] =
{
.text = gEasyChatWord_GoAhead,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LISTENING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_APPRECIATE)] =
{
.text = gEasyChatWord_Appreciate,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MEET_YOU),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEY_QUES)] =
{
.text = gEasyChatWord_HeyQues,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHAT_S_UP_QUES)] =
{
.text = gEasyChatWord_WhatsUpQues,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OI),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HUH_QUES)] =
{
.text = gEasyChatWord_HuhQues,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PARDON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NO)] =
{
.text = gEasyChatWord_No,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SEE_YA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HI)] =
{
.text = gEasyChatWord_Hi,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SMELL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YEAH_YEAH)] =
{
.text = gEasyChatWord_YeahYeah,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SORRY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BYE_BYE)] =
{
.text = gEasyChatWord_ByeBye,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THANK_YOU),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MEET_YOU)] =
{
.text = gEasyChatWord_MeetYou,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THANKS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEY)] =
{
.text = gEasyChatWord_Hey,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WELCOME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SMELL)] =
{
.text = gEasyChatWord_Smell,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WELL_THEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LISTENING)] =
{
.text = gEasyChatWord_Listening,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHAT_S_UP_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOO_HAH)] =
{
.text = gEasyChatWord_HooHah,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YAHOO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YAHOO)] =
{
.text = gEasyChatWord_Yahoo,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YEAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YO)] =
{
.text = gEasyChatWord_Yo,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YEAH_YEAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COME_OVER)] =
{
.text = gEasyChatWord_ComeOver,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COUNT_ON)] =
{
.text = gEasyChatWord_CountOn,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YO),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_hobbies.h b/src/data/easy_chat/easy_chat_group_hobbies.h
index dd507e21b9..fb3484ae05 100755
--- a/src/data/easy_chat/easy_chat_group_hobbies.h
+++ b/src/data/easy_chat/easy_chat_group_hobbies.h
@@ -57,325 +57,325 @@ const struct EasyChatWordInfo gEasyChatGroup_Hobbies[] = {
[EC_INDEX(EC_WORD_IDOL)] =
{
.text = gEasyChatWord_Idol,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ADVENTURE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ANIME)] =
{
.text = gEasyChatWord_Anime,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ANIME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SONG)] =
{
.text = gEasyChatWord_Song,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BALL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MOVIE)] =
{
.text = gEasyChatWord_Movie,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BIKE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SWEETS)] =
{
.text = gEasyChatWord_Sweets,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BOARD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHAT)] =
{
.text = gEasyChatWord_Chat,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BOOK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHILD_S_PLAY)] =
{
.text = gEasyChatWord_ChildsPlay,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CAMERA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOYS)] =
{
.text = gEasyChatWord_Toys,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CARDS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MUSIC)] =
{
.text = gEasyChatWord_Music,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHANNEL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CARDS)] =
{
.text = gEasyChatWord_Cards,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHOPPING)] =
{
.text = gEasyChatWord_Shopping,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHILD_S_PLAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CAMERA)] =
{
.text = gEasyChatWord_Camera,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COLLECTION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VIEWING)] =
{
.text = gEasyChatWord_Viewing,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COMICS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SPECTATOR)] =
{
.text = gEasyChatWord_Spectator,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COMPLETE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GOURMET)] =
{
.text = gEasyChatWord_Gourmet,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DANCE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GAME)] =
{
.text = gEasyChatWord_Game,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RPG)] =
{
.text = gEasyChatWord_Rpg,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DESIGN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COLLECTION)] =
{
.text = gEasyChatWord_Collection,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DIET),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COMPLETE)] =
{
.text = gEasyChatWord_Complete,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FASHION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MAGAZINE)] =
{
.text = gEasyChatWord_Magazine,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FESTIVAL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WALK)] =
{
.text = gEasyChatWord_Walk,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FISHING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BIKE)] =
{
.text = gEasyChatWord_Bike,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FLOWERS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOBBY)] =
{
.text = gEasyChatWord_Hobby,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GAME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SPORTS)] =
{
.text = gEasyChatWord_Sports,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GOURMET),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SOFTWARE)] =
{
.text = gEasyChatWord_Software,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HERO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SONGS)] =
{
.text = gEasyChatWord_Songs,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEROINE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DIET)] =
{
.text = gEasyChatWord_Diet,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOBBY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TREASURE)] =
{
.text = gEasyChatWord_Treasure,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOLIDAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRAVEL)] =
{
.text = gEasyChatWord_Travel,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IDOL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DANCE)] =
{
.text = gEasyChatWord_Dance,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOCOMOTIVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHANNEL)] =
{
.text = gEasyChatWord_Channel,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOOK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MAKING)] =
{
.text = gEasyChatWord_Making,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MAGAZINE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FISHING)] =
{
.text = gEasyChatWord_Fishing,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MAKING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DATE)] =
{
.text = gEasyChatWord_Date,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MOVIE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DESIGN)] =
{
.text = gEasyChatWord_Design,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MUSIC),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOCOMOTIVE)] =
{
.text = gEasyChatWord_Locomotive,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NAP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PLUSH_DOLL)] =
{
.text = gEasyChatWord_PlushDoll,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PC),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PC)] =
{
.text = gEasyChatWord_Pc,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PLANS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FLOWERS)] =
{
.text = gEasyChatWord_Flowers,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PLUSH_DOLL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HERO)] =
{
.text = gEasyChatWord_Hero,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RPG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NAP)] =
{
.text = gEasyChatWord_Nap,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHOPPING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEROINE)] =
{
.text = gEasyChatWord_Heroine,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SOFTWARE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FASHION)] =
{
.text = gEasyChatWord_Fashion,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SONG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ADVENTURE)] =
{
.text = gEasyChatWord_Adventure,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SONGS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BOARD)] =
{
.text = gEasyChatWord_Board,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SPECTATOR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BALL)] =
{
.text = gEasyChatWord_Ball,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SPORTS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BOOK)] =
{
.text = gEasyChatWord_Book,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SWEETS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FESTIVAL)] =
{
.text = gEasyChatWord_Festival,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOYS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COMICS)] =
{
.text = gEasyChatWord_Comics,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRAVEL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOLIDAY)] =
{
.text = gEasyChatWord_Holiday,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TREASURE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PLANS)] =
{
.text = gEasyChatWord_Plans,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRENDY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRENDY)] =
{
.text = gEasyChatWord_Trendy,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VACATION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VACATION)] =
{
.text = gEasyChatWord_Vacation,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VIEWING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOOK)] =
{
.text = gEasyChatWord_Look,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WALK),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_lifestyle.h b/src/data/easy_chat/easy_chat_group_lifestyle.h
index 5819d0f2e4..264f4dde90 100755
--- a/src/data/easy_chat/easy_chat_group_lifestyle.h
+++ b/src/data/easy_chat/easy_chat_group_lifestyle.h
@@ -48,271 +48,271 @@ const struct EasyChatWordInfo gEasyChatGroup_Lifestyle[] = {
[EC_INDEX(EC_WORD_CHORES)] =
{
.text = gEasyChatWord_Chores,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALLOWANCE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOME)] =
{
.text = gEasyChatWord_Home,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BATH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MONEY)] =
{
.text = gEasyChatWord_Money,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHORES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALLOWANCE)] =
{
.text = gEasyChatWord_Allowance,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CLASS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BATH)] =
{
.text = gEasyChatWord_Bath,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COMMEMORATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CONVERSATION)] =
{
.text = gEasyChatWord_Conversation,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CONVERSATION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SCHOOL)] =
{
.text = gEasyChatWord_School,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DEPT_STORE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COMMEMORATE)] =
{
.text = gEasyChatWord_Commemorate,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DIGITAL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HABIT)] =
{
.text = gEasyChatWord_Habit,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DREAM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GROUP)] =
{
.text = gEasyChatWord_Group,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EVENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WORD)] =
{
.text = gEasyChatWord_Word,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GROUP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STORE)] =
{
.text = gEasyChatWord_Store,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HABIT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SERVICE)] =
{
.text = gEasyChatWord_Service,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WORK)] =
{
.text = gEasyChatWord_Work,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INFORMATION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SYSTEM)] =
{
.text = gEasyChatWord_System,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ITEM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRAIN)] =
{
.text = gEasyChatWord_Train,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KINDERGARTEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CLASS)] =
{
.text = gEasyChatWord_Class,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LESSONS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LESSONS)] =
{
.text = gEasyChatWord_Lessons,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LETTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INFORMATION)] =
{
.text = gEasyChatWord_Information,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIFE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIVING)] =
{
.text = gEasyChatWord_Living,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIVING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TEACHER)] =
{
.text = gEasyChatWord_Teacher,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MACHINE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOURNAMENT)] =
{
.text = gEasyChatWord_Tournament,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MAIL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LETTER)] =
{
.text = gEasyChatWord_Letter,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MESSAGE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EVENT)] =
{
.text = gEasyChatWord_Event,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MONEY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DIGITAL)] =
{
.text = gEasyChatWord_Digital,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NAME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TEST)] =
{
.text = gEasyChatWord_Test,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NEWS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DEPT_STORE)] =
{
.text = gEasyChatWord_DeptStore,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PARTY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TELEVISION)] =
{
.text = gEasyChatWord_Television,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PHONE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PHONE)] =
{
.text = gEasyChatWord_Phone,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POPULAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ITEM)] =
{
.text = gEasyChatWord_Item,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PROMISE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NAME)] =
{
.text = gEasyChatWord_Name,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RADIO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NEWS)] =
{
.text = gEasyChatWord_News,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RENTAL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POPULAR)] =
{
.text = gEasyChatWord_Popular,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SCHOOL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PARTY)] =
{
.text = gEasyChatWord_Party,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SERVICE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STUDY)] =
{
.text = gEasyChatWord_Study,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STORE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MACHINE)] =
{
.text = gEasyChatWord_Machine,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STUDY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MAIL)] =
{
.text = gEasyChatWord_Mail,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SYSTEM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MESSAGE)] =
{
.text = gEasyChatWord_Message,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TEACHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PROMISE)] =
{
.text = gEasyChatWord_Promise,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TELEVISION),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DREAM)] =
{
.text = gEasyChatWord_Dream,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TEST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_KINDERGARTEN)] =
{
.text = gEasyChatWord_Kindergarten,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOURNAMENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIFE)] =
{
.text = gEasyChatWord_Life,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRAIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RADIO)] =
{
.text = gEasyChatWord_Radio,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WORD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RENTAL)] =
{
.text = gEasyChatWord_Rental,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WORK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WORLD)] =
{
.text = gEasyChatWord_World,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WORLD),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_misc.h b/src/data/easy_chat/easy_chat_group_misc.h
index aa8f84406d..187c86fc7a 100755
--- a/src/data/easy_chat/easy_chat_group_misc.h
+++ b/src/data/easy_chat/easy_chat_group_misc.h
@@ -45,253 +45,253 @@ const struct EasyChatWordInfo gEasyChatGroup_Misc[] = {
[EC_INDEX(EC_WORD_HIGHS)] =
{
.text = gEasyChatWord_Highs,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ABOVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOWS)] =
{
.text = gEasyChatWord_Lows,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UM)] =
{
.text = gEasyChatWord_Um,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AWAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_REAR)] =
{
.text = gEasyChatWord_Rear,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BACK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THINGS)] =
{
.text = gEasyChatWord_Things,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BELOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THING)] =
{
.text = gEasyChatWord_Thing,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BESIDE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BELOW)] =
{
.text = gEasyChatWord_Below,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHOICE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ABOVE)] =
{
.text = gEasyChatWord_Above,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CONFUSED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BACK)] =
{
.text = gEasyChatWord_Back,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DEEP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HIGH)] =
{
.text = gEasyChatWord_High,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DOWN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HERE)] =
{
.text = gEasyChatWord_Here,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EVERY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INSIDE)] =
{
.text = gEasyChatWord_Inside,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OUTSIDE)] =
{
.text = gEasyChatWord_Outside,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FRONT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BESIDE)] =
{
.text = gEasyChatWord_Beside,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THIS_IS_IT_EXCL)] =
{
.text = gEasyChatWord_ThisIsItExcl,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HIGH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THIS)] =
{
.text = gEasyChatWord_This,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HIGHS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EVERY)] =
{
.text = gEasyChatWord_Every,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INSIDE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THESE)] =
{
.text = gEasyChatWord_These,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LEFT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THESE_WERE)] =
{
.text = gEasyChatWord_TheseWere,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOWS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DOWN)] =
{
.text = gEasyChatWord_Down,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NEAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THAT)] =
{
.text = gEasyChatWord_That,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OPPOSITE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THOSE_ARE)] =
{
.text = gEasyChatWord_ThoseAre,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OUTSIDE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THOSE_WERE)] =
{
.text = gEasyChatWord_ThoseWere,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_REAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THAT_S_IT_EXCL)] =
{
.text = gEasyChatWord_ThatsItExcl,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RIGHT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AM)] =
{
.text = gEasyChatWord_Am,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHALLOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THAT_WAS)] =
{
.text = gEasyChatWord_ThatWas,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FRONT)] =
{
.text = gEasyChatWord_Front,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THAT_WAS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UP)] =
{
.text = gEasyChatWord_Up,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THAT_S_IT_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHOICE)] =
{
.text = gEasyChatWord_Choice,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THESE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FAR)] =
{
.text = gEasyChatWord_Far,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THESE_WERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AWAY)] =
{
.text = gEasyChatWord_Away,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NEAR)] =
{
.text = gEasyChatWord_Near,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THINGS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHERE)] =
{
.text = gEasyChatWord_Where,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THIS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHEN)] =
{
.text = gEasyChatWord_When,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THIS_IS_IT_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHAT)] =
{
.text = gEasyChatWord_What,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THOSE_ARE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DEEP)] =
{
.text = gEasyChatWord_Deep,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THOSE_WERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHALLOW)] =
{
.text = gEasyChatWord_Shallow,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHY)] =
{
.text = gEasyChatWord_Why,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CONFUSED)] =
{
.text = gEasyChatWord_Confused,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OPPOSITE)] =
{
.text = gEasyChatWord_Opposite,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LEFT)] =
{
.text = gEasyChatWord_Left,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RIGHT)] =
{
.text = gEasyChatWord_Right,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHY),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_people.h b/src/data/easy_chat/easy_chat_group_people.h
index 2ddd3c9d9c..fb73c8651a 100755
--- a/src/data/easy_chat/easy_chat_group_people.h
+++ b/src/data/easy_chat/easy_chat_group_people.h
@@ -78,451 +78,451 @@ const struct EasyChatWordInfo gEasyChatGroup_People[] = {
[EC_INDEX(EC_WORD_OPPONENT)] =
{
.text = gEasyChatWord_Opponent,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ADULT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_I)] =
{
.text = gEasyChatWord_I,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YOU)] =
{
.text = gEasyChatWord_You,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AREN_T),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YOURS)] =
{
.text = gEasyChatWord_Yours,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AUNT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SON)] =
{
.text = gEasyChatWord_Son,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BABE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YOUR)] =
{
.text = gEasyChatWord_Your,
- .alphabeticalOrder = 62,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BEEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YOU_RE)] =
{
.text = gEasyChatWord_Youre,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BOY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YOU_VE)] =
{
.text = gEasyChatWord_Youve,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BROTHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MOTHER)] =
{
.text = gEasyChatWord_Mother,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHILDREN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GRANDFATHER)] =
{
.text = gEasyChatWord_Grandfather,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DAUGHTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UNCLE)] =
{
.text = gEasyChatWord_Uncle,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DUDE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FATHER)] =
{
.text = gEasyChatWord_Father,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FAMILY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BOY)] =
{
.text = gEasyChatWord_Boy,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FATHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ADULT)] =
{
.text = gEasyChatWord_Adult,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FRIEND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BROTHER)] =
{
.text = gEasyChatWord_Brother,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GIRL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SISTER)] =
{
.text = gEasyChatWord_Sister,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GRANDFATHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GRANDMOTHER)] =
{
.text = gEasyChatWord_Grandmother,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GRANDMOTHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AUNT)] =
{
.text = gEasyChatWord_Aunt,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PARENT)] =
{
.text = gEasyChatWord_Parent,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HE_S),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MAN)] =
{
.text = gEasyChatWord_Man,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ME)] =
{
.text = gEasyChatWord_Me,
- .alphabeticalOrder = 72,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HERS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GIRL)] =
{
.text = gEasyChatWord_Girl,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HIM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BABE)] =
{
.text = gEasyChatWord_Babe,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HIS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FAMILY)] =
{
.text = gEasyChatWord_Family,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_I),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HER)] =
{
.text = gEasyChatWord_Her,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_I_AM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HIM)] =
{
.text = gEasyChatWord_Him,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_I_WAS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HE)] =
{
.text = gEasyChatWord_He,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_I_VE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PLACE)] =
{
.text = gEasyChatWord_Place,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IT_S),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DAUGHTER)] =
{
.text = gEasyChatWord_Daughter,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KID),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HIS)] =
{
.text = gEasyChatWord_His,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LADY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HE_S)] =
{
.text = gEasyChatWord_Hes,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MAN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AREN_T)] =
{
.text = gEasyChatWord_Arent,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SIBLINGS)] =
{
.text = gEasyChatWord_Siblings,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MOTHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_KID)] =
{
.text = gEasyChatWord_Kid,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHILDREN)] =
{
.text = gEasyChatWord_Children,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MRS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MR)] =
{
.text = gEasyChatWord_Mr,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MRS)] =
{
.text = gEasyChatWord_Mrs,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MYSELF),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MYSELF)] =
{
.text = gEasyChatWord_Myself,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OPPONENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_I_WAS)] =
{
.text = gEasyChatWord_IWas,
- .alphabeticalOrder = 64,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OUR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TO_ME)] =
{
.text = gEasyChatWord_ToMe,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PARENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MY)] =
{
.text = gEasyChatWord_My,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PERSON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_I_AM)] =
{
.text = gEasyChatWord_IAm,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PLACE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_I_VE)] =
{
.text = gEasyChatWord_Ive,
- .alphabeticalOrder = 66,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RIVAL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHO)] =
{
.text = gEasyChatWord_Who,
- .alphabeticalOrder = 69,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SOMEONE)] =
{
.text = gEasyChatWord_Someone,
- .alphabeticalOrder = 73,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHE_IS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHO_WAS)] =
{
.text = gEasyChatWord_WhoWas,
- .alphabeticalOrder = 70,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHE_WAS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TO_WHOM)] =
{
.text = gEasyChatWord_ToWhom,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SIBLINGS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHOSE)] =
{
.text = gEasyChatWord_Whose,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SISTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHO_IS)] =
{
.text = gEasyChatWord_WhoIs,
- .alphabeticalOrder = 74,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SOME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IT_S)] =
{
.text = gEasyChatWord_Its,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SOMEONE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LADY)] =
{
.text = gEasyChatWord_Lady,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FRIEND)] =
{
.text = gEasyChatWord_Friend,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THEIR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALLY)] =
{
.text = gEasyChatWord_Ally,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THEY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PERSON)] =
{
.text = gEasyChatWord_Person,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THEY_WERE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DUDE)] =
{
.text = gEasyChatWord_Dude,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THEY_RE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THEY)] =
{
.text = gEasyChatWord_They,
- .alphabeticalOrder = 60,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THEY_VE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THEY_WERE)] =
{
.text = gEasyChatWord_TheyWere,
- .alphabeticalOrder = 71,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TO_HER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TO_THEM)] =
{
.text = gEasyChatWord_ToThem,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TO_ME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THEIR)] =
{
.text = gEasyChatWord_Their,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TO_THEM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THEY_RE)] =
{
.text = gEasyChatWord_Theyre,
- .alphabeticalOrder = 63,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TO_US),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THEY_VE)] =
{
.text = gEasyChatWord_Theyve,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TO_WHOM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WE)] =
{
.text = gEasyChatWord_We,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UNCLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BEEN)] =
{
.text = gEasyChatWord_Been,
- .alphabeticalOrder = 61,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TO_US)] =
{
.text = gEasyChatWord_ToUs,
- .alphabeticalOrder = 65,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WE_RE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OUR)] =
{
.text = gEasyChatWord_Our,
- .alphabeticalOrder = 67,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WE_VE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WE_RE)] =
{
.text = gEasyChatWord_WeRe,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RIVAL)] =
{
.text = gEasyChatWord_Rival,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHO_IS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WE_VE)] =
{
.text = gEasyChatWord_Weve,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHO_WAS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WOMAN)] =
{
.text = gEasyChatWord_Woman,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHOSE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHE)] =
{
.text = gEasyChatWord_She,
- .alphabeticalOrder = 68,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WOMAN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHE_WAS)] =
{
.text = gEasyChatWord_SheWas,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YOU),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TO_HER)] =
{
.text = gEasyChatWord_ToHer,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YOU_RE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HERS)] =
{
.text = gEasyChatWord_Hers,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YOU_VE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHE_IS)] =
{
.text = gEasyChatWord_SheIs,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YOUR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SOME)] =
{
.text = gEasyChatWord_Some,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YOURS),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_speech.h b/src/data/easy_chat/easy_chat_group_speech.h
index a0874a33a5..c88aedc39e 100755
--- a/src/data/easy_chat/easy_chat_group_speech.h
+++ b/src/data/easy_chat/easy_chat_group_speech.h
@@ -63,361 +63,361 @@ const struct EasyChatWordInfo gEasyChatGroup_Speech[] = {
[EC_INDEX(EC_WORD_LISTEN)] =
{
.text = gEasyChatWord_Listen,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_A_LITTLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NOT_VERY)] =
{
.text = gEasyChatWord_NotVery,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_A_LOT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MEAN)] =
{
.text = gEasyChatWord_Mean,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_A_TINY_BIT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIE)] =
{
.text = gEasyChatWord_Lie,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ABSOLUTELY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LAY)] =
{
.text = gEasyChatWord_Lay,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALSO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RECOMMEND)] =
{
.text = gEasyChatWord_Recommend,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALTHOUGH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NITWIT)] =
{
.text = gEasyChatWord_Nitwit,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_QUITE)] =
{
.text = gEasyChatWord_Quite,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ANY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FROM)] =
{
.text = gEasyChatWord_From,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AROUND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FEELING)] =
{
.text = gEasyChatWord_Feeling,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AS_IF),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BUT)] =
{
.text = gEasyChatWord_But,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AS_MUCH_AS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOWEVER)] =
{
.text = gEasyChatWord_However,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AWFULLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CASE)] =
{
.text = gEasyChatWord_Case,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BUT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THE)] =
{
.text = gEasyChatWord_The,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CASE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MISS)] =
{
.text = gEasyChatWord_Miss,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ENOUGH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOW)] =
{
.text = gEasyChatWord_How,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EVEN_SO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HIT)] =
{
.text = gEasyChatWord_Hit,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FANTASTIC),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ENOUGH)] =
{
.text = gEasyChatWord_Enough,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FEELING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_A_LOT)] =
{
.text = gEasyChatWord_ALot,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FINALLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_A_LITTLE)] =
{
.text = gEasyChatWord_ALittle,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FOR_NOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ABSOLUTELY)] =
{
.text = gEasyChatWord_Absolutely,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FROM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AND)] =
{
.text = gEasyChatWord_And,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HIT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ONLY)] =
{
.text = gEasyChatWord_Only,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AROUND)] =
{
.text = gEasyChatWord_Around,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOWEVER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PROBABLY)] =
{
.text = gEasyChatWord_Probably,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IF),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IF)] =
{
.text = gEasyChatWord_If,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INSTEAD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VERY)] =
{
.text = gEasyChatWord_Very,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_JOKING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_A_TINY_BIT)] =
{
.text = gEasyChatWord_ATinyBit,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_JUST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WILD)] =
{
.text = gEasyChatWord_Wild,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THAT_S)] =
{
.text = gEasyChatWord_Thats,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_JUST)] =
{
.text = gEasyChatWord_Just,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LISTEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EVEN_SO)] =
{
.text = gEasyChatWord_EvenSo,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MEAN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MUST_BE)] =
{
.text = gEasyChatWord_MustBe,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MISS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NATURALLY)] =
{
.text = gEasyChatWord_Naturally,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MODE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FOR_NOW)] =
{
.text = gEasyChatWord_ForNow,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MOOD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UNDERSTOOD)] =
{
.text = gEasyChatWord_Understood,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MORE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_JOKING)] =
{
.text = gEasyChatWord_Joking,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MUST_BE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_READY)] =
{
.text = gEasyChatWord_Ready,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NATURALLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SOMETHING)] =
{
.text = gEasyChatWord_Something,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NITWIT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SOMEHOW)] =
{
.text = gEasyChatWord_Somehow,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NOT_VERY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALTHOUGH)] =
{
.text = gEasyChatWord_Although,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ONLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALSO)] =
{
.text = gEasyChatWord_Also,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PERFECT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PERFECT)] =
{
.text = gEasyChatWord_Perfect,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PROBABLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AS_MUCH_AS)] =
{
.text = gEasyChatWord_AsMuchAs,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_QUITE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_REALLY)] =
{
.text = gEasyChatWord_Really,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RATHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRULY)] =
{
.text = gEasyChatWord_Truly,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_READY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SERIOUSLY)] =
{
.text = gEasyChatWord_Seriously,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_REALLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOTALLY)] =
{
.text = gEasyChatWord_Totally,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RECOMMEND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UNTIL)] =
{
.text = gEasyChatWord_Until,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SERIOUSLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AS_IF)] =
{
.text = gEasyChatWord_AsIf,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SOMEHOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MOOD)] =
{
.text = gEasyChatWord_Mood,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SOMETHING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RATHER)] =
{
.text = gEasyChatWord_Rather,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THAT_S),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AWFULLY)] =
{
.text = gEasyChatWord_Awfully,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MODE)] =
{
.text = gEasyChatWord_Mode,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOO_LATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MORE)] =
{
.text = gEasyChatWord_More,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOTALLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOO_LATE)] =
{
.text = gEasyChatWord_TooLate,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRULY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FINALLY)] =
{
.text = gEasyChatWord_Finally,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UNDERSTOOD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ANY)] =
{
.text = gEasyChatWord_Any,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UNTIL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INSTEAD)] =
{
.text = gEasyChatWord_Instead,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VERY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FANTASTIC)] =
{
.text = gEasyChatWord_Fantastic,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WILD),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_status.h b/src/data/easy_chat/easy_chat_group_status.h
index af2292b446..b751fbaf18 100755
--- a/src/data/easy_chat/easy_chat_group_status.h
+++ b/src/data/easy_chat/easy_chat_group_status.h
@@ -112,655 +112,655 @@ const struct EasyChatWordInfo gEasyChatGroup_Status[] = {
[EC_INDEX(EC_WORD_DARK)] =
{
.text = gEasyChatWord_Dark,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AIR_LOCK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STENCH)] =
{
.text = gEasyChatWord_Stench,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALT_COLOR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THICK_FAT)] =
{
.text = gEasyChatWord_ThickFat,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ARENA_TRAP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RAIN_DISH)] =
{
.text = gEasyChatWord_RainDish,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BATTLE_ARMOR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DRIZZLE)] =
{
.text = gEasyChatWord_Drizzle,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BEAUTIFUL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ARENA_TRAP)] =
{
.text = gEasyChatWord_ArenaTrap,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BEAUTY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INTIMIDATE)] =
{
.text = gEasyChatWord_Intimidate,
- .alphabeticalOrder = 101,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BLAZE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ROCK_HEAD)] =
{
.text = gEasyChatWord_RockHead,
- .alphabeticalOrder = 97,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BUG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COLOR)] =
{
.text = gEasyChatWord_Color,
- .alphabeticalOrder = 106,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CHLOROPHYLL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALT_COLOR)] =
{
.text = gEasyChatWord_AltColor,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CLEAR_BODY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ROCK)] =
{
.text = gEasyChatWord_Rock,
- .alphabeticalOrder = 68,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CLOUD_NINE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BEAUTIFUL)] =
{
.text = gEasyChatWord_Beautiful,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COLOR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BEAUTY)] =
{
.text = gEasyChatWord_Beauty,
- .alphabeticalOrder = 86,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COLOR_CHANGE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AIR_LOCK)] =
{
.text = gEasyChatWord_AirLock,
- .alphabeticalOrder = 78,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COMPOUNDEYES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PSYCHIC)] =
{
.text = gEasyChatWord_Psychic,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COOL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HYPER_CUTTER)] =
{
.text = gEasyChatWord_HyperCutter,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COOLNESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FIGHTING)] =
{
.text = gEasyChatWord_Fighting,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CUTE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHADOW_TAG)] =
{
.text = gEasyChatWord_ShadowTag,
- .alphabeticalOrder = 99,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CUTE_CHARM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SMART)] =
{
.text = gEasyChatWord_Smart,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CUTENESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SMARTNESS)] =
{
.text = gEasyChatWord_Smartness,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DAMP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SPEED_BOOST)] =
{
.text = gEasyChatWord_SpeedBoost,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DARK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COOL)] =
{
.text = gEasyChatWord_Cool,
- .alphabeticalOrder = 62,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DRAGON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COOLNESS)] =
{
.text = gEasyChatWord_Coolness,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DRIZZLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BATTLE_ARMOR)] =
{
.text = gEasyChatWord_BattleArmor,
- .alphabeticalOrder = 76,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DROUGHT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CUTE)] =
{
.text = gEasyChatWord_Cute,
- .alphabeticalOrder = 72,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EARLY_BIRD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CUTENESS)] =
{
.text = gEasyChatWord_Cuteness,
- .alphabeticalOrder = 88,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EFFECT_SPORE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STURDY)] =
{
.text = gEasyChatWord_Sturdy,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ELECTRIC),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SUCTION_CUPS)] =
{
.text = gEasyChatWord_SuctionCups,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FIGHTING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GRASS)] =
{
.text = gEasyChatWord_Grass,
- .alphabeticalOrder = 90,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FIRE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CLEAR_BODY)] =
{
.text = gEasyChatWord_ClearBody,
- .alphabeticalOrder = 91,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FLAME_BODY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TORRENT)] =
{
.text = gEasyChatWord_Torrent,
- .alphabeticalOrder = 104,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FLASH_FIRE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GHOST)] =
{
.text = gEasyChatWord_Ghost,
- .alphabeticalOrder = 75,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FLYING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ICE)] =
{
.text = gEasyChatWord_Ice,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FORECAST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GUTS)] =
{
.text = gEasyChatWord_Guts,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GHOST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ROUGH_SKIN)] =
{
.text = gEasyChatWord_RoughSkin,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GRASS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHELL_ARMOR)] =
{
.text = gEasyChatWord_ShellArmor,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GROUND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NATURAL_CURE)] =
{
.text = gEasyChatWord_NaturalCure,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GUTS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DAMP)] =
{
.text = gEasyChatWord_Damp,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HUGE_POWER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GROUND)] =
{
.text = gEasyChatWord_Ground,
- .alphabeticalOrder = 73,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HUSTLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIMBER)] =
{
.text = gEasyChatWord_Limber,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HYPER_CUTTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MAGNET_PULL)] =
{
.text = gEasyChatWord_MagnetPull,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ICE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHITE_SMOKE)] =
{
.text = gEasyChatWord_WhiteSmoke,
- .alphabeticalOrder = 71,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ILLUMINATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SYNCHRONIZE)] =
{
.text = gEasyChatWord_Synchronize,
- .alphabeticalOrder = 100,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_IMMUNITY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OVERGROW)] =
{
.text = gEasyChatWord_Overgrow,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INNER_FOCUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SWIFT_SWIM)] =
{
.text = gEasyChatWord_SwiftSwim,
- .alphabeticalOrder = 81,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INSOMNIA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SAND_STREAM)] =
{
.text = gEasyChatWord_SandStream,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_INTIMIDATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SAND_VEIL)] =
{
.text = gEasyChatWord_SandVeil,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KEEN_EYE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_KEEN_EYE)] =
{
.text = gEasyChatWord_KeenEye,
- .alphabeticalOrder = 82,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LEVITATE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INNER_FOCUS)] =
{
.text = gEasyChatWord_InnerFocus,
- .alphabeticalOrder = 77,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIGHTNINGROD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STATIC)] =
{
.text = gEasyChatWord_Static,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIMBER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TYPE)] =
{
.text = gEasyChatWord_Type,
- .alphabeticalOrder = 85,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LIQUID_OOZE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOUGH)] =
{
.text = gEasyChatWord_Tough,
- .alphabeticalOrder = 94,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MAGMA_ARMOR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOUGHNESS)] =
{
.text = gEasyChatWord_Toughness,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MAGNET_PULL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHED_SKIN)] =
{
.text = gEasyChatWord_ShedSkin,
- .alphabeticalOrder = 79,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MARVEL_SCALE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HUGE_POWER)] =
{
.text = gEasyChatWord_HugePower,
- .alphabeticalOrder = 92,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MINUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VOLT_ABSORB)] =
{
.text = gEasyChatWord_VoltAbsorb,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NATURAL_CURE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WATER_ABSORB)] =
{
.text = gEasyChatWord_WaterAbsorb,
- .alphabeticalOrder = 69,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NORMAL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ELECTRIC)] =
{
.text = gEasyChatWord_Electric,
- .alphabeticalOrder = 64,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OBLIVIOUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FORECAST)] =
{
.text = gEasyChatWord_Forecast,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OVERGROW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SERENE_GRACE)] =
{
.text = gEasyChatWord_SereneGrace,
- .alphabeticalOrder = 93,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OWN_TEMPO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POISON)] =
{
.text = gEasyChatWord_Poison,
- .alphabeticalOrder = 103,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PATTERN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POISON_POINT)] =
{
.text = gEasyChatWord_PoisonPoint,
- .alphabeticalOrder = 102,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PICKUP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DRAGON)] =
{
.text = gEasyChatWord_Dragon,
- .alphabeticalOrder = 89,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PKRS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRACE)] =
{
.text = gEasyChatWord_Trace,
- .alphabeticalOrder = 83,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PLUS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OBLIVIOUS)] =
{
.text = gEasyChatWord_Oblivious,
- .alphabeticalOrder = 60,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POISON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRUANT)] =
{
.text = gEasyChatWord_Truant,
- .alphabeticalOrder = 61,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POISON_POINT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RUN_AWAY)] =
{
.text = gEasyChatWord_RunAway,
- .alphabeticalOrder = 84,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PRESSURE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STICKY_HOLD)] =
{
.text = gEasyChatWord_StickyHold,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PSYCHIC),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CLOUD_NINE)] =
{
.text = gEasyChatWord_CloudNine,
- .alphabeticalOrder = 107,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_PURE_POWER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NORMAL)] =
{
.text = gEasyChatWord_Normal,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RAIN_DISH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STEEL)] =
{
.text = gEasyChatWord_Steel,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ROCK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ILLUMINATE)] =
{
.text = gEasyChatWord_Illuminate,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ROCK_HEAD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EARLY_BIRD)] =
{
.text = gEasyChatWord_EarlyBird,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ROUGH_SKIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HUSTLE)] =
{
.text = gEasyChatWord_Hustle,
- .alphabeticalOrder = 66,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RUN_AWAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHINE)] =
{
.text = gEasyChatWord_Shine,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SAND_STREAM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FLYING)] =
{
.text = gEasyChatWord_Flying,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SAND_VEIL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DROUGHT)] =
{
.text = gEasyChatWord_Drought,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SERENE_GRACE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIGHTNINGROD)] =
{
.text = gEasyChatWord_Lightningrod,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHADOW_TAG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COMPOUNDEYES)] =
{
.text = gEasyChatWord_Compoundeyes,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHED_SKIN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MARVEL_SCALE)] =
{
.text = gEasyChatWord_MarvelScale,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHELL_ARMOR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WONDER_GUARD)] =
{
.text = gEasyChatWord_WonderGuard,
- .alphabeticalOrder = 108,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHIELD_DUST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_INSOMNIA)] =
{
.text = gEasyChatWord_Insomnia,
- .alphabeticalOrder = 74,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHINE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LEVITATE)] =
{
.text = gEasyChatWord_Levitate,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SMART),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PLUS)] =
{
.text = gEasyChatWord_Plus,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SMARTNESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PRESSURE)] =
{
.text = gEasyChatWord_Pressure,
- .alphabeticalOrder = 87,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SOUNDPROOF),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LIQUID_OOZE)] =
{
.text = gEasyChatWord_LiquidOoze,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SPEED_BOOST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COLOR_CHANGE)] =
{
.text = gEasyChatWord_ColorChange,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STATIC),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SOUNDPROOF)] =
{
.text = gEasyChatWord_Soundproof,
- .alphabeticalOrder = 70,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STEEL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EFFECT_SPORE)] =
{
.text = gEasyChatWord_EffectSpore,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STENCH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PKRS)] =
{
.text = gEasyChatWord_Pkrs,
- .alphabeticalOrder = 67,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STICKY_HOLD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FIRE)] =
{
.text = gEasyChatWord_Fire,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STURDY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FLAME_BODY)] =
{
.text = gEasyChatWord_FlameBody,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SUCTION_CUPS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MINUS)] =
{
.text = gEasyChatWord_Minus,
- .alphabeticalOrder = 98,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SWARM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OWN_TEMPO)] =
{
.text = gEasyChatWord_OwnTempo,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SWIFT_SWIM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MAGMA_ARMOR)] =
{
.text = gEasyChatWord_MagmaArmor,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SYNCHRONIZE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WATER)] =
{
.text = gEasyChatWord_Water,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THICK_FAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WATER_VEIL)] =
{
.text = gEasyChatWord_WaterVeil,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TORRENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BUG)] =
{
.text = gEasyChatWord_Bug,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOUGH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SWARM)] =
{
.text = gEasyChatWord_Swarm,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOUGHNESS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CUTE_CHARM)] =
{
.text = gEasyChatWord_CuteCharm,
- .alphabeticalOrder = 63,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRACE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_IMMUNITY)] =
{
.text = gEasyChatWord_Immunity,
- .alphabeticalOrder = 65,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRUANT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BLAZE)] =
{
.text = gEasyChatWord_Blaze,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TYPE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PICKUP)] =
{
.text = gEasyChatWord_Pickup,
- .alphabeticalOrder = 105,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VITAL_SPIRIT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PATTERN)] =
{
.text = gEasyChatWord_Pattern,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VOLT_ABSORB),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FLASH_FIRE)] =
{
.text = gEasyChatWord_FlashFire,
- .alphabeticalOrder = 95,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WATER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VITAL_SPIRIT)] =
{
.text = gEasyChatWord_VitalSpirit,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WATER_ABSORB),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CHLOROPHYLL)] =
{
.text = gEasyChatWord_Chlorophyll,
- .alphabeticalOrder = 96,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WATER_VEIL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_PURE_POWER)] =
{
.text = gEasyChatWord_PurePower,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHITE_SMOKE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHIELD_DUST)] =
{
.text = gEasyChatWord_ShieldDust,
- .alphabeticalOrder = 80,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WONDER_GUARD),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_time.h b/src/data/easy_chat/easy_chat_group_time.h
index 061abffd49..e7646f4fa7 100755
--- a/src/data/easy_chat/easy_chat_group_time.h
+++ b/src/data/easy_chat/easy_chat_group_time.h
@@ -48,271 +48,271 @@ const struct EasyChatWordInfo gEasyChatGroup_Time[] = {
[EC_INDEX(EC_WORD_FALL)] =
{
.text = gEasyChatWord_Fall,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AGE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MORNING)] =
{
.text = gEasyChatWord_Morning,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALMOST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TOMORROW)] =
{
.text = gEasyChatWord_Tomorrow,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ALWAYS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LAST)] =
{
.text = gEasyChatWord_Last,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ANOTHER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DAY)] =
{
.text = gEasyChatWord_Day,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BEGINNING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SOMETIME)] =
{
.text = gEasyChatWord_Sometime,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CURRENT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALWAYS)] =
{
.text = gEasyChatWord_Always,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DAILY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CURRENT)] =
{
.text = gEasyChatWord_Current,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FOREVER)] =
{
.text = gEasyChatWord_Forever,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DAYS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DAYS)] =
{
.text = gEasyChatWord_Days,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DAYTIME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_END)] =
{
.text = gEasyChatWord_End,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EARLIER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TUESDAY)] =
{
.text = gEasyChatWord_Tuesday,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_END),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YESTERDAY)] =
{
.text = gEasyChatWord_Yesterday,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FALL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TODAY)] =
{
.text = gEasyChatWord_Today,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FINAL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FRIDAY)] =
{
.text = gEasyChatWord_Friday,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FINISH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MONDAY)] =
{
.text = gEasyChatWord_Monday,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FOREVER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LATER)] =
{
.text = gEasyChatWord_Later,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FRIDAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EARLIER)] =
{
.text = gEasyChatWord_Earlier,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LAST),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ANOTHER)] =
{
.text = gEasyChatWord_Another,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LATER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TIME)] =
{
.text = gEasyChatWord_Time,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MONDAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FINISH)] =
{
.text = gEasyChatWord_Finish,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MONTH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WEDNESDAY)] =
{
.text = gEasyChatWord_Wednesday,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MORNING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SOON)] =
{
.text = gEasyChatWord_Soon,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NEARLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_START)] =
{
.text = gEasyChatWord_Start,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NEXT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MONTH)] =
{
.text = gEasyChatWord_Month,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NIGHT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_STOP)] =
{
.text = gEasyChatWord_Stop,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NIGHTTIME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NOW)] =
{
.text = gEasyChatWord_Now,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FINAL)] =
{
.text = gEasyChatWord_Final,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OLDEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NEXT)] =
{
.text = gEasyChatWord_Next,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SATURDAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AGE)] =
{
.text = gEasyChatWord_Age,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SOMETIME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SATURDAY)] =
{
.text = gEasyChatWord_Saturday,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SOON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SUMMER)] =
{
.text = gEasyChatWord_Summer,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SPRING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SUNDAY)] =
{
.text = gEasyChatWord_Sunday,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_START),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BEGINNING)] =
{
.text = gEasyChatWord_Beginning,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_STOP),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SPRING)] =
{
.text = gEasyChatWord_Spring,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SUMMER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DAYTIME)] =
{
.text = gEasyChatWord_Daytime,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SUNDAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WINTER)] =
{
.text = gEasyChatWord_Winter,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_THURSDAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DAILY)] =
{
.text = gEasyChatWord_Daily,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TIME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OLDEN)] =
{
.text = gEasyChatWord_Olden,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TODAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ALMOST)] =
{
.text = gEasyChatWord_Almost,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TOMORROW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NEARLY)] =
{
.text = gEasyChatWord_Nearly,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TUESDAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_THURSDAY)] =
{
.text = gEasyChatWord_Thursday,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WEDNESDAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NIGHTTIME)] =
{
.text = gEasyChatWord_Nighttime,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WEEK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NIGHT)] =
{
.text = gEasyChatWord_Night,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WINTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WEEK)] =
{
.text = gEasyChatWord_Week,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YESTERDAY),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_trainer.h b/src/data/easy_chat/easy_chat_group_trainer.h
index 87966c9771..a74ac5c3f6 100755
--- a/src/data/easy_chat/easy_chat_group_trainer.h
+++ b/src/data/easy_chat/easy_chat_group_trainer.h
@@ -30,163 +30,163 @@ const struct EasyChatWordInfo gEasyChatGroup_Trainer[] = {
[EC_INDEX(EC_WORD_I_CHOOSE_YOU)] =
{
.text = gEasyChatWord_IChooseYou,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BAG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GOTCHA)] =
{
.text = gEasyChatWord_Gotcha,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CENTER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRADE)] =
{
.text = gEasyChatWord_Trade,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EGG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SAPPHIRE)] =
{
.text = gEasyChatWord_Sapphire,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EMERALD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EVOLVE)] =
{
.text = gEasyChatWord_Evolve,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ENCYCLOPEDIA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ENCYCLOPEDIA)] =
{
.text = gEasyChatWord_Encyclopedia,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EVOLVE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NATURE)] =
{
.text = gEasyChatWord_Nature,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FLAME),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CENTER)] =
{
.text = gEasyChatWord_Center,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GET),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EGG)] =
{
.text = gEasyChatWord_Egg,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GOLD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LINK)] =
{
.text = gEasyChatWord_Link,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GOTCHA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SP_ABILITY)] =
{
.text = gEasyChatWord_SpAbility,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GREEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TRAINER)] =
{
.text = gEasyChatWord_Trainer,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_I_CHOOSE_YOU),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_VERSION)] =
{
.text = gEasyChatWord_Version,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LEAF),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POKENAV)] =
{
.text = gEasyChatWord_Pokenav,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LEVEL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POKEMON)] =
{
.text = gEasyChatWord_Pokemon,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LINK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GET)] =
{
.text = gEasyChatWord_Get,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NATURE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_POKEDEX)] =
{
.text = gEasyChatWord_Pokedex,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POKEDEX),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RUBY)] =
{
.text = gEasyChatWord_Ruby,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POKEMON),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LEVEL)] =
{
.text = gEasyChatWord_Level,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_POKENAV),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_RED)] =
{
.text = gEasyChatWord_Red,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RED),
.enabled = FALSE,
},
[EC_INDEX(EC_WORD_GREEN)] =
{
.text = gEasyChatWord_Green,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_RUBY),
.enabled = FALSE,
},
[EC_INDEX(EC_WORD_BAG)] =
{
.text = gEasyChatWord_Bag,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SAPPHIRE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FLAME)] =
{
.text = gEasyChatWord_Flame,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SILVER),
.enabled = FALSE,
},
[EC_INDEX(EC_WORD_GOLD)] =
{
.text = gEasyChatWord_Gold,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SP_ABILITY),
.enabled = FALSE,
},
[EC_INDEX(EC_WORD_LEAF)] =
{
.text = gEasyChatWord_Leaf,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRADE),
.enabled = FALSE,
},
[EC_INDEX(EC_WORD_SILVER)] =
{
.text = gEasyChatWord_Silver,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TRAINER),
.enabled = FALSE,
},
[EC_INDEX(EC_WORD_EMERALD)] =
{
.text = gEasyChatWord_Emerald,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_VERSION),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_trendy_saying.h b/src/data/easy_chat/easy_chat_group_trendy_saying.h
index 938073f7f8..60b5d8c725 100755
--- a/src/data/easy_chat/easy_chat_group_trendy_saying.h
+++ b/src/data/easy_chat/easy_chat_group_trendy_saying.h
@@ -36,199 +36,199 @@ const struct EasyChatWordInfo gEasyChatGroup_TrendySaying[] = {
[EC_INDEX(EC_WORD_KTHX_BYE)] =
{
.text = gEasyChatWord_KthxBye,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_1_HIT_KO_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YES_SIR_EXCL)] =
{
.text = gEasyChatWord_YesSirExcl,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AVANT_GARDE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AVANT_GARDE)] =
{
.text = gEasyChatWord_AvantGarde,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BABY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_COUPLE)] =
{
.text = gEasyChatWord_Couple,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_BANG),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MUCH_OBLIGED)] =
{
.text = gEasyChatWord_MuchObliged,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CANCEL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YEEHAW_EXCL)] =
{
.text = gEasyChatWord_YeehawExcl,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_COUPLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MEGA)] =
{
.text = gEasyChatWord_Mega,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DESTINY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_1_HIT_KO_EXCL)] =
{
.text = gEasyChatWord_1HitKOExcl,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FEVER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DESTINY)] =
{
.text = gEasyChatWord_Destiny,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FLATTEN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CANCEL)] =
{
.text = gEasyChatWord_Cancel,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAPPENING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NEW)] =
{
.text = gEasyChatWord_New,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HASSLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FLATTEN)] =
{
.text = gEasyChatWord_Flatten,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEART),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_KIDDING)] =
{
.text = gEasyChatWord_Kidding,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HIP_AND),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOSER)] =
{
.text = gEasyChatWord_Loser,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KIDDING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOSING)] =
{
.text = gEasyChatWord_Losing,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KNOCKOUT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAPPENING)] =
{
.text = gEasyChatWord_Happening,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_KTHX_BYE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HIP_AND)] =
{
.text = gEasyChatWord_HipAnd,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOSER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHAKE)] =
{
.text = gEasyChatWord_Shake,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOSING),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHADY)] =
{
.text = gEasyChatWord_Shady,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MEGA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UPBEAT)] =
{
.text = gEasyChatWord_Upbeat,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MODERN),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MODERN)] =
{
.text = gEasyChatWord_Modern,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MUCH_OBLIGED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SMELL_YA)] =
{
.text = gEasyChatWord_SmellYa,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NEW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BANG)] =
{
.text = gEasyChatWord_Bang,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OLD),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_KNOCKOUT)] =
{
.text = gEasyChatWord_Knockout,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHADY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HASSLE)] =
{
.text = gEasyChatWord_Hassle,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHAKE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WINNER)] =
{
.text = gEasyChatWord_Winner,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SMELL_YA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FEVER)] =
{
.text = gEasyChatWord_Fever,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UGLY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WANNABE)] =
{
.text = gEasyChatWord_Wannabe,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UPBEAT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_BABY)] =
{
.text = gEasyChatWord_Baby,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WANNABE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEART)] =
{
.text = gEasyChatWord_Heart,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WINNER),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OLD)] =
{
.text = gEasyChatWord_Old,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YEEHAW_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YOUNG)] =
{
.text = gEasyChatWord_Young,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YES_SIR_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UGLY)] =
{
.text = gEasyChatWord_Ugly,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YOUNG),
.enabled = TRUE,
},
};
diff --git a/src/data/easy_chat/easy_chat_group_voices.h b/src/data/easy_chat/easy_chat_group_voices.h
index 3ebbafd252..f50cba002e 100755
--- a/src/data/easy_chat/easy_chat_group_voices.h
+++ b/src/data/easy_chat/easy_chat_group_voices.h
@@ -66,379 +66,379 @@ const struct EasyChatWordInfo gEasyChatGroup_Voices[] = {
[EC_INDEX(EC_WORD_EXCL)] =
{
.text = gEasyChatWord_Excl,
- .alphabeticalOrder = 0,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EXCL_EXCL)] =
{
.text = gEasyChatWord_ExclExcl,
- .alphabeticalOrder = 1,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EXCL_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_QUES_EXCL)] =
{
.text = gEasyChatWord_QuesExcl,
- .alphabeticalOrder = 7,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DASH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_QUES)] =
{
.text = gEasyChatWord_Ques,
- .alphabeticalOrder = 8,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_DASH_DASH_DASH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ELLIPSIS)] =
{
.text = gEasyChatWord_Ellipsis,
- .alphabeticalOrder = 4,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ELLIPSIS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ELLIPSIS_EXCL)] =
{
.text = gEasyChatWord_EllipsisExcl,
- .alphabeticalOrder = 5,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ELLIPSIS_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS)] =
{
.text = gEasyChatWord_EllipsisEllipsisEllipsis,
- .alphabeticalOrder = 6,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DASH)] =
{
.text = gEasyChatWord_Dash,
- .alphabeticalOrder = 3,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_DASH_DASH_DASH)] =
{
.text = gEasyChatWord_DashDashDash,
- .alphabeticalOrder = 2,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_QUES_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UH_OH)] =
{
.text = gEasyChatWord_UhOh,
- .alphabeticalOrder = 23,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AGREE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WAAAH)] =
{
.text = gEasyChatWord_Waaah,
- .alphabeticalOrder = 11,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AHAHA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AHAHA)] =
{
.text = gEasyChatWord_Ahaha,
- .alphabeticalOrder = 41,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AIYEEH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OH_QUES)] =
{
.text = gEasyChatWord_OhQues,
- .alphabeticalOrder = 52,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_ARRGH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_NOPE)] =
{
.text = gEasyChatWord_Nope,
- .alphabeticalOrder = 59,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_AWW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_URGH)] =
{
.text = gEasyChatWord_Urgh,
- .alphabeticalOrder = 22,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CRIES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HMM)] =
{
.text = gEasyChatWord_Hmm,
- .alphabeticalOrder = 25,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_CRY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WHOAH)] =
{
.text = gEasyChatWord_Whoah,
- .alphabeticalOrder = 32,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EEK),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WROOOAAR_EXCL)] =
{
.text = gEasyChatWord_WroooaarExcl,
- .alphabeticalOrder = 24,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EH_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WOW)] =
{
.text = gEasyChatWord_Wow,
- .alphabeticalOrder = 26,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_EHEHE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GIGGLE)] =
{
.text = gEasyChatWord_Giggle,
- .alphabeticalOrder = 43,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_FUFUFU),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SIGH)] =
{
.text = gEasyChatWord_Sigh,
- .alphabeticalOrder = 19,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GIGGLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UNBELIEVABLE)] =
{
.text = gEasyChatWord_Unbelievable,
- .alphabeticalOrder = 33,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GRAAAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CRIES)] =
{
.text = gEasyChatWord_Cries,
- .alphabeticalOrder = 61,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GWAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AGREE)] =
{
.text = gEasyChatWord_Agree,
- .alphabeticalOrder = 34,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_GWAHAHAHA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EH_QUES)] =
{
.text = gEasyChatWord_EhQues,
- .alphabeticalOrder = 38,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_CRY)] =
{
.text = gEasyChatWord_Cry,
- .alphabeticalOrder = 40,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HAHAHA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EHEHE)] =
{
.text = gEasyChatWord_Ehehe,
- .alphabeticalOrder = 48,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OI_OI_OI)] =
{
.text = gEasyChatWord_OiOiOi,
- .alphabeticalOrder = 37,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEHE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OH_YEAH)] =
{
.text = gEasyChatWord_OhYeah,
- .alphabeticalOrder = 47,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HEHEHE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OH)] =
{
.text = gEasyChatWord_Oh,
- .alphabeticalOrder = 42,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HIYAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OOPS)] =
{
.text = gEasyChatWord_Oops,
- .alphabeticalOrder = 15,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HMM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SHOCKED)] =
{
.text = gEasyChatWord_Shocked,
- .alphabeticalOrder = 49,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HOHOHO),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_EEK)] =
{
.text = gEasyChatWord_Eek,
- .alphabeticalOrder = 46,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_HUMPH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GRAAAH)] =
{
.text = gEasyChatWord_Graaah,
- .alphabeticalOrder = 57,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LALALA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GWAHAHAHA)] =
{
.text = gEasyChatWord_Gwahahaha,
- .alphabeticalOrder = 44,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_LOL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WAY)] =
{
.text = gEasyChatWord_Way,
- .alphabeticalOrder = 54,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MMM),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_TCH)] =
{
.text = gEasyChatWord_Tch,
- .alphabeticalOrder = 53,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_MUFUFU),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEHE)] =
{
.text = gEasyChatWord_Hehe,
- .alphabeticalOrder = 13,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_NOPE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAH)] =
{
.text = gEasyChatWord_Hah,
- .alphabeticalOrder = 29,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YUP)] =
{
.text = gEasyChatWord_Yup,
- .alphabeticalOrder = 51,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OH_DEAR),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HAHAHA)] =
{
.text = gEasyChatWord_Hahaha,
- .alphabeticalOrder = 28,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OH_YEAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AIYEEH)] =
{
.text = gEasyChatWord_Aiyeeh,
- .alphabeticalOrder = 55,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OH_KAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HIYAH)] =
{
.text = gEasyChatWord_Hiyah,
- .alphabeticalOrder = 12,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OH_QUES),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_FUFUFU)] =
{
.text = gEasyChatWord_Fufufu,
- .alphabeticalOrder = 27,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OI_OI_OI),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LOL)] =
{
.text = gEasyChatWord_Lol,
- .alphabeticalOrder = 56,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OKAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_SNORT)] =
{
.text = gEasyChatWord_Snort,
- .alphabeticalOrder = 30,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_OOPS),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HUMPH)] =
{
.text = gEasyChatWord_Humph,
- .alphabeticalOrder = 31,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SHOCKED),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEHEHE)] =
{
.text = gEasyChatWord_Hehehe,
- .alphabeticalOrder = 20,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SIGH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HEH)] =
{
.text = gEasyChatWord_Heh,
- .alphabeticalOrder = 45,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_SNORT),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_HOHOHO)] =
{
.text = gEasyChatWord_Hohoho,
- .alphabeticalOrder = 36,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_TCH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_UH_HUH)] =
{
.text = gEasyChatWord_UhHuh,
- .alphabeticalOrder = 50,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UH_HUH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OH_DEAR)] =
{
.text = gEasyChatWord_OhDear,
- .alphabeticalOrder = 9,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UH_OH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_ARRGH)] =
{
.text = gEasyChatWord_Arrgh,
- .alphabeticalOrder = 21,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_UNBELIEVABLE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MUFUFU)] =
{
.text = gEasyChatWord_Mufufu,
- .alphabeticalOrder = 14,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_URGH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_MMM)] =
{
.text = gEasyChatWord_Mmm,
- .alphabeticalOrder = 10,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WAAAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OH_KAY)] =
{
.text = gEasyChatWord_OhKay,
- .alphabeticalOrder = 62,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WAHAHAHA),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_OKAY)] =
{
.text = gEasyChatWord_Okay,
- .alphabeticalOrder = 35,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_LALALA)] =
{
.text = gEasyChatWord_Lalala,
- .alphabeticalOrder = 16,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WHOAH),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_YAY)] =
{
.text = gEasyChatWord_Yay,
- .alphabeticalOrder = 18,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WOW),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_AWW)] =
{
.text = gEasyChatWord_Aww,
- .alphabeticalOrder = 60,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WOWEE),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WOWEE)] =
{
.text = gEasyChatWord_Wowee,
- .alphabeticalOrder = 17,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_WROOOAAR_EXCL),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_GWAH)] =
{
.text = gEasyChatWord_Gwah,
- .alphabeticalOrder = 58,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YAY),
.enabled = TRUE,
},
[EC_INDEX(EC_WORD_WAHAHAHA)] =
{
.text = gEasyChatWord_Wahahaha,
- .alphabeticalOrder = 39,
+ .alphabeticalOrder = EC_INDEX(EC_WORD_YUP),
.enabled = TRUE,
},
};
diff --git a/src/data/graphics/battle_environment.h b/src/data/graphics/battle_environment.h
new file mode 100644
index 0000000000..d1abc026de
--- /dev/null
+++ b/src/data/graphics/battle_environment.h
@@ -0,0 +1,88 @@
+const u32 gBattleEnvironmentTiles_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/palette.gbapal.lz");
+const u32 gBattleEnvironmentTilemap_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/palette.gbapal.lz");
+const u32 gBattleEnvironmentTilemap_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_Sand[] = INCBIN_U32("graphics/battle_environment/sand/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_Sand[] = INCBIN_U32("graphics/battle_environment/sand/palette.gbapal.lz");
+const u32 gBattleEnvironmentTilemap_Sand[] = INCBIN_U32("graphics/battle_environment/sand/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/palette.gbapal.lz");
+const u32 gBattleEnvironmentTilemap_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_Water[] = INCBIN_U32("graphics/battle_environment/water/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_Water[] = INCBIN_U32("graphics/battle_environment/water/palette.gbapal.lz");
+const u32 gBattleEnvironmentTilemap_Water[] = INCBIN_U32("graphics/battle_environment/water/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/palette.gbapal.lz");
+const u32 gBattleEnvironmentTilemap_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_Rock[] = INCBIN_U32("graphics/battle_environment/rock/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_Rock[] = INCBIN_U32("graphics/battle_environment/rock/palette.gbapal.lz");
+const u32 gBattleEnvironmentTilemap_Rock[] = INCBIN_U32("graphics/battle_environment/rock/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_Cave[] = INCBIN_U32("graphics/battle_environment/cave/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_Cave[] = INCBIN_U32("graphics/battle_environment/cave/palette.gbapal.lz");
+const u32 gBattleEnvironmentTilemap_Cave[] = INCBIN_U32("graphics/battle_environment/cave/map.bin.lz");
+
+const u32 gBattleEnvironmentPalette_Plain[] = INCBIN_U32("graphics/battle_environment/plain/palette.gbapal.lz");
+
+const u32 gBattleEnvironmentTiles_Building[] = INCBIN_U32("graphics/battle_environment/building/tiles.4bpp.lz");
+const u32 gBattleEnvironmentPalette_Frontier[] = INCBIN_U32("graphics/battle_environment/stadium/battle_frontier.gbapal.lz"); // this is also used for link battles
+const u32 gBattleEnvironmentTilemap_Building[] = INCBIN_U32("graphics/battle_environment/building/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_Stadium[] = INCBIN_U32("graphics/battle_environment/stadium/tiles.4bpp.lz");
+const u32 gBattleEnvironmentTilemap_Stadium[] = INCBIN_U32("graphics/battle_environment/stadium/map.bin.lz");
+
+const u32 gBattleEnvironmentTiles_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/tiles.4bpp.lz");
+const u32 gBattleEnvironmentTilemap_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/map.bin.lz");
+
+const u32 gBattleEnvironmentPalette_Building[] = INCBIN_U32("graphics/battle_environment/building/palette.gbapal.lz");
+
+const u32 gBattleEnvironmentPalette_Kyogre[] = INCBIN_U32("graphics/battle_environment/water/kyogre.gbapal.lz");
+const u32 gBattleEnvironmentPalette_Groudon[] = INCBIN_U32("graphics/battle_environment/cave/groudon.gbapal.lz");
+const u32 gBattleEnvironmentPalette_BuildingGym[] = INCBIN_U32("graphics/battle_environment/building/palette2.gbapal.lz");
+const u32 gBattleEnvironmentPalette_BuildingLeader[] = INCBIN_U32("graphics/battle_environment/building/palette3.gbapal.lz");
+const u32 gBattleEnvironmentPalette_StadiumAqua[] = INCBIN_U32("graphics/battle_environment/stadium/palette1.gbapal.lz");
+const u32 gBattleEnvironmentPalette_StadiumMagma[] = INCBIN_U32("graphics/battle_environment/stadium/palette2.gbapal.lz");
+const u32 gBattleEnvironmentPalette_StadiumSidney[] = INCBIN_U32("graphics/battle_environment/stadium/palette3.gbapal.lz");
+const u32 gBattleEnvironmentPalette_StadiumPhoebe[] = INCBIN_U32("graphics/battle_environment/stadium/palette4.gbapal.lz");
+const u32 gBattleEnvironmentPalette_StadiumGlacia[] = INCBIN_U32("graphics/battle_environment/stadium/palette5.gbapal.lz");
+const u32 gBattleEnvironmentPalette_StadiumDrake[] = INCBIN_U32("graphics/battle_environment/stadium/palette6.gbapal.lz");
+const u32 gBattleEnvironmentPalette_StadiumWallace[] = INCBIN_U32("graphics/battle_environment/stadium/palette7.gbapal.lz");
+const u32 gBattleEnvironmentPalette_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/palette.gbapal.lz");
+
+const u32 gBattleEnvironmentAnimTiles_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_TallGrass[] = INCBIN_U32("graphics/battle_environment/tall_grass/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_LongGrass[] = INCBIN_U32("graphics/battle_environment/long_grass/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_Sand[] = INCBIN_U32("graphics/battle_environment/sand/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_Sand[] = INCBIN_U32("graphics/battle_environment/sand/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_Underwater[] = INCBIN_U32("graphics/battle_environment/underwater/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_Water[] = INCBIN_U32("graphics/battle_environment/water/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_Water[] = INCBIN_U32("graphics/battle_environment/water/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_PondWater[] = INCBIN_U32("graphics/battle_environment/pond_water/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_Rock[] = INCBIN_U32("graphics/battle_environment/rock/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_Rock[] = INCBIN_U32("graphics/battle_environment/rock/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_Cave[] = INCBIN_U32("graphics/battle_environment/cave/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_Cave[] = INCBIN_U32("graphics/battle_environment/cave/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_Building[] = INCBIN_U32("graphics/battle_environment/building/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_Building[] = INCBIN_U32("graphics/battle_environment/building/anim_map.bin.lz");
+
+const u32 gBattleEnvironmentAnimTiles_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/anim_tiles.4bpp.lz");
+const u32 gBattleEnvironmentAnimTilemap_Rayquaza[] = INCBIN_U32("graphics/battle_environment/sky/anim_map.bin.lz");
diff --git a/src/data/graphics/battle_terrain.h b/src/data/graphics/battle_terrain.h
deleted file mode 100644
index e719fafe3c..0000000000
--- a/src/data/graphics/battle_terrain.h
+++ /dev/null
@@ -1,88 +0,0 @@
-const u32 gBattleTerrainTiles_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/palette.gbapal.lz");
-const u32 gBattleTerrainTilemap_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/map.bin.lz");
-
-const u32 gBattleTerrainTiles_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/palette.gbapal.lz");
-const u32 gBattleTerrainTilemap_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/map.bin.lz");
-
-const u32 gBattleTerrainTiles_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/palette.gbapal.lz");
-const u32 gBattleTerrainTilemap_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/map.bin.lz");
-
-const u32 gBattleTerrainTiles_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/palette.gbapal.lz");
-const u32 gBattleTerrainTilemap_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/map.bin.lz");
-
-const u32 gBattleTerrainTiles_Water[] = INCBIN_U32("graphics/battle_terrain/water/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_Water[] = INCBIN_U32("graphics/battle_terrain/water/palette.gbapal.lz");
-const u32 gBattleTerrainTilemap_Water[] = INCBIN_U32("graphics/battle_terrain/water/map.bin.lz");
-
-const u32 gBattleTerrainTiles_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/palette.gbapal.lz");
-const u32 gBattleTerrainTilemap_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/map.bin.lz");
-
-const u32 gBattleTerrainTiles_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/palette.gbapal.lz");
-const u32 gBattleTerrainTilemap_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/map.bin.lz");
-
-const u32 gBattleTerrainTiles_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/palette.gbapal.lz");
-const u32 gBattleTerrainTilemap_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/map.bin.lz");
-
-const u32 gBattleTerrainPalette_Plain[] = INCBIN_U32("graphics/battle_terrain/plain/palette.gbapal.lz");
-
-const u32 gBattleTerrainTiles_Building[] = INCBIN_U32("graphics/battle_terrain/building/tiles.4bpp.lz");
-const u32 gBattleTerrainPalette_Frontier[] = INCBIN_U32("graphics/battle_terrain/stadium/battle_frontier.gbapal.lz"); // this is also used for link battles
-const u32 gBattleTerrainTilemap_Building[] = INCBIN_U32("graphics/battle_terrain/building/map.bin.lz");
-
-const u32 gBattleTerrainTiles_Stadium[] = INCBIN_U32("graphics/battle_terrain/stadium/tiles.4bpp.lz");
-const u32 gBattleTerrainTilemap_Stadium[] = INCBIN_U32("graphics/battle_terrain/stadium/map.bin.lz");
-
-const u32 gBattleTerrainTiles_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/tiles.4bpp.lz");
-const u32 gBattleTerrainTilemap_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/map.bin.lz");
-
-const u32 gBattleTerrainPalette_Building[] = INCBIN_U32("graphics/battle_terrain/building/palette.gbapal.lz");
-
-const u32 gBattleTerrainPalette_Kyogre[] = INCBIN_U32("graphics/battle_terrain/water/kyogre.gbapal.lz");
-const u32 gBattleTerrainPalette_Groudon[] = INCBIN_U32("graphics/battle_terrain/cave/groudon.gbapal.lz");
-const u32 gBattleTerrainPalette_BuildingGym[] = INCBIN_U32("graphics/battle_terrain/building/palette2.gbapal.lz");
-const u32 gBattleTerrainPalette_BuildingLeader[] = INCBIN_U32("graphics/battle_terrain/building/palette3.gbapal.lz");
-const u32 gBattleTerrainPalette_StadiumAqua[] = INCBIN_U32("graphics/battle_terrain/stadium/palette1.gbapal.lz");
-const u32 gBattleTerrainPalette_StadiumMagma[] = INCBIN_U32("graphics/battle_terrain/stadium/palette2.gbapal.lz");
-const u32 gBattleTerrainPalette_StadiumSidney[] = INCBIN_U32("graphics/battle_terrain/stadium/palette3.gbapal.lz");
-const u32 gBattleTerrainPalette_StadiumPhoebe[] = INCBIN_U32("graphics/battle_terrain/stadium/palette4.gbapal.lz");
-const u32 gBattleTerrainPalette_StadiumGlacia[] = INCBIN_U32("graphics/battle_terrain/stadium/palette5.gbapal.lz");
-const u32 gBattleTerrainPalette_StadiumDrake[] = INCBIN_U32("graphics/battle_terrain/stadium/palette6.gbapal.lz");
-const u32 gBattleTerrainPalette_StadiumWallace[] = INCBIN_U32("graphics/battle_terrain/stadium/palette7.gbapal.lz");
-const u32 gBattleTerrainPalette_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/palette.gbapal.lz");
-
-const u32 gBattleTerrainAnimTiles_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_TallGrass[] = INCBIN_U32("graphics/battle_terrain/tall_grass/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_LongGrass[] = INCBIN_U32("graphics/battle_terrain/long_grass/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_Sand[] = INCBIN_U32("graphics/battle_terrain/sand/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_Underwater[] = INCBIN_U32("graphics/battle_terrain/underwater/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_Water[] = INCBIN_U32("graphics/battle_terrain/water/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_Water[] = INCBIN_U32("graphics/battle_terrain/water/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_PondWater[] = INCBIN_U32("graphics/battle_terrain/pond_water/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_Rock[] = INCBIN_U32("graphics/battle_terrain/rock/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_Cave[] = INCBIN_U32("graphics/battle_terrain/cave/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_Building[] = INCBIN_U32("graphics/battle_terrain/building/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_Building[] = INCBIN_U32("graphics/battle_terrain/building/anim_map.bin.lz");
-
-const u32 gBattleTerrainAnimTiles_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/anim_tiles.4bpp.lz");
-const u32 gBattleTerrainAnimTilemap_Rayquaza[] = INCBIN_U32("graphics/battle_terrain/sky/anim_map.bin.lz");
diff --git a/src/data/graphics/berries.h b/src/data/graphics/berries.h
index e33384a846..0809537597 100644
--- a/src/data/graphics/berries.h
+++ b/src/data/graphics/berries.h
@@ -2,7 +2,7 @@ const u32 gBerryCheck_Gfx[] = INCBIN_U32("graphics/bag/check_berry.4bpp.lz");
const u32 gBerryCheck_Pal[] = INCBIN_U32("graphics/bag/check_berry.gbapal.lz");
const u32 gBerryTag_Gfx[] = INCBIN_U32("graphics/bag/berry_tag.bin.lz");
-const u32 gBerryTag_Pal[] = INCBIN_U32("graphics/bag/berry_tag_title.bin.lz");
+const u32 gBerryTag_Tilemap[] = INCBIN_U32("graphics/bag/berry_tag_title.bin.lz");
const u32 gBerryCheckCircle_Gfx[] = INCBIN_U32("graphics/bag/check_berry_circle.4bpp.lz");
diff --git a/src/data/graphics/intro_scene.h b/src/data/graphics/intro_scene.h
index cb7706c9a3..8b17b00346 100644
--- a/src/data/graphics/intro_scene.h
+++ b/src/data/graphics/intro_scene.h
@@ -1,6 +1,6 @@
const u16 gIntroGameFreakTextFade_Pal[] = INCBIN_U16("graphics/intro/scene_1/text.gbapal"); // game freak text blue fade
const u16 gIntroPlayer_Pal[] = INCBIN_U16("graphics/intro/scene_2/player.gbapal");
-const u16 gIntro3Bg_Pal[] = INCBIN_U16("graphics/intro/scene_3/bg.gbapal");
+const u16 gIntro3Bg_Pal[16][16] = INCBIN_U16("graphics/intro/scene_3/bg.gbapal");
const u16 gIntroVolbeat_Pal[] = INCBIN_U16("graphics/intro/scene_2/volbeat.gbapal");
const u16 gIntroTorchic_Pal[] = INCBIN_U16("graphics/intro/scene_2/torchic.gbapal");
const u16 gIntroManectric_Pal[] = INCBIN_U16("graphics/intro/scene_2/manectric.gbapal");
diff --git a/src/data/heal_locations.constants.json.txt b/src/data/heal_locations.constants.json.txt
new file mode 100644
index 0000000000..e9ca860b35
--- /dev/null
+++ b/src/data/heal_locations.constants.json.txt
@@ -0,0 +1,14 @@
+#ifndef GUARD_CONSTANTS_HEAL_LOCATIONS_H
+#define GUARD_CONSTANTS_HEAL_LOCATIONS_H
+
+{{ doNotModifyHeader }}
+
+enum {
+ HEAL_LOCATION_NONE,
+## for heal_location in heal_locations
+ {{ heal_location.id }},
+## endfor
+ NUM_HEAL_LOCATIONS
+};
+
+#endif // GUARD_CONSTANTS_HEAL_LOCATIONS_H
diff --git a/src/data/heal_locations.h b/src/data/heal_locations.h
deleted file mode 100644
index 04530a1dbf..0000000000
--- a/src/data/heal_locations.h
+++ /dev/null
@@ -1,25 +0,0 @@
-static const struct HealLocation sHealLocations[] =
-{
- [HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F - 1] = {MAP_GROUP(LITTLEROOT_TOWN_BRENDANS_HOUSE_2F), MAP_NUM(LITTLEROOT_TOWN_BRENDANS_HOUSE_2F), 4, 2},
- [HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F - 1] = {MAP_GROUP(LITTLEROOT_TOWN_MAYS_HOUSE_2F), MAP_NUM(LITTLEROOT_TOWN_MAYS_HOUSE_2F), 4, 2},
- [HEAL_LOCATION_PETALBURG_CITY - 1] = {MAP_GROUP(PETALBURG_CITY), MAP_NUM(PETALBURG_CITY), 20, 17},
- [HEAL_LOCATION_SLATEPORT_CITY - 1] = {MAP_GROUP(SLATEPORT_CITY), MAP_NUM(SLATEPORT_CITY), 19, 20},
- [HEAL_LOCATION_MAUVILLE_CITY - 1] = {MAP_GROUP(MAUVILLE_CITY), MAP_NUM(MAUVILLE_CITY), 22, 6},
- [HEAL_LOCATION_RUSTBORO_CITY - 1] = {MAP_GROUP(RUSTBORO_CITY), MAP_NUM(RUSTBORO_CITY), 16, 39},
- [HEAL_LOCATION_FORTREE_CITY - 1] = {MAP_GROUP(FORTREE_CITY), MAP_NUM(FORTREE_CITY), 5, 7},
- [HEAL_LOCATION_LILYCOVE_CITY - 1] = {MAP_GROUP(LILYCOVE_CITY), MAP_NUM(LILYCOVE_CITY), 24, 15},
- [HEAL_LOCATION_MOSSDEEP_CITY - 1] = {MAP_GROUP(MOSSDEEP_CITY), MAP_NUM(MOSSDEEP_CITY), 28, 17},
- [HEAL_LOCATION_SOOTOPOLIS_CITY - 1] = {MAP_GROUP(SOOTOPOLIS_CITY), MAP_NUM(SOOTOPOLIS_CITY), 43, 32},
- [HEAL_LOCATION_EVER_GRANDE_CITY - 1] = {MAP_GROUP(EVER_GRANDE_CITY), MAP_NUM(EVER_GRANDE_CITY), 27, 49},
- [HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE - 1] = {MAP_GROUP(LITTLEROOT_TOWN), MAP_NUM(LITTLEROOT_TOWN), 5, 9},
- [HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE - 1] = {MAP_GROUP(LITTLEROOT_TOWN), MAP_NUM(LITTLEROOT_TOWN), 14, 9},
- [HEAL_LOCATION_OLDALE_TOWN - 1] = {MAP_GROUP(OLDALE_TOWN), MAP_NUM(OLDALE_TOWN), 6, 17},
- [HEAL_LOCATION_DEWFORD_TOWN - 1] = {MAP_GROUP(DEWFORD_TOWN), MAP_NUM(DEWFORD_TOWN), 2, 11},
- [HEAL_LOCATION_LAVARIDGE_TOWN - 1] = {MAP_GROUP(LAVARIDGE_TOWN), MAP_NUM(LAVARIDGE_TOWN), 9, 7},
- [HEAL_LOCATION_FALLARBOR_TOWN - 1] = {MAP_GROUP(FALLARBOR_TOWN), MAP_NUM(FALLARBOR_TOWN), 14, 8},
- [HEAL_LOCATION_VERDANTURF_TOWN - 1] = {MAP_GROUP(VERDANTURF_TOWN), MAP_NUM(VERDANTURF_TOWN), 16, 4},
- [HEAL_LOCATION_PACIFIDLOG_TOWN - 1] = {MAP_GROUP(PACIFIDLOG_TOWN), MAP_NUM(PACIFIDLOG_TOWN), 8, 16},
- [HEAL_LOCATION_EVER_GRANDE_CITY_POKEMON_LEAGUE - 1] = {MAP_GROUP(EVER_GRANDE_CITY), MAP_NUM(EVER_GRANDE_CITY), 18, 6},
- [HEAL_LOCATION_SOUTHERN_ISLAND_EXTERIOR - 1] = {MAP_GROUP(SOUTHERN_ISLAND_EXTERIOR), MAP_NUM(SOUTHERN_ISLAND_EXTERIOR), 15, 20},
- [HEAL_LOCATION_BATTLE_FRONTIER_OUTSIDE_EAST - 1] = {MAP_GROUP(BATTLE_FRONTIER_OUTSIDE_EAST), MAP_NUM(BATTLE_FRONTIER_OUTSIDE_EAST), 3, 52},
-};
diff --git a/src/data/heal_locations.json b/src/data/heal_locations.json
new file mode 100644
index 0000000000..c465ff65c3
--- /dev/null
+++ b/src/data/heal_locations.json
@@ -0,0 +1,136 @@
+{
+ "heal_locations": [
+ {
+ "id": "HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F",
+ "map": "MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F",
+ "x": 4,
+ "y": 2
+ },
+ {
+ "id": "HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F",
+ "map": "MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F",
+ "x": 4,
+ "y": 2
+ },
+ {
+ "id": "HEAL_LOCATION_PETALBURG_CITY",
+ "map": "MAP_PETALBURG_CITY",
+ "x": 20,
+ "y": 17
+ },
+ {
+ "id": "HEAL_LOCATION_SLATEPORT_CITY",
+ "map": "MAP_SLATEPORT_CITY",
+ "x": 19,
+ "y": 20
+ },
+ {
+ "id": "HEAL_LOCATION_MAUVILLE_CITY",
+ "map": "MAP_MAUVILLE_CITY",
+ "x": 22,
+ "y": 6
+ },
+ {
+ "id": "HEAL_LOCATION_RUSTBORO_CITY",
+ "map": "MAP_RUSTBORO_CITY",
+ "x": 16,
+ "y": 39
+ },
+ {
+ "id": "HEAL_LOCATION_FORTREE_CITY",
+ "map": "MAP_FORTREE_CITY",
+ "x": 5,
+ "y": 7
+ },
+ {
+ "id": "HEAL_LOCATION_LILYCOVE_CITY",
+ "map": "MAP_LILYCOVE_CITY",
+ "x": 24,
+ "y": 15
+ },
+ {
+ "id": "HEAL_LOCATION_MOSSDEEP_CITY",
+ "map": "MAP_MOSSDEEP_CITY",
+ "x": 28,
+ "y": 17
+ },
+ {
+ "id": "HEAL_LOCATION_SOOTOPOLIS_CITY",
+ "map": "MAP_SOOTOPOLIS_CITY",
+ "x": 43,
+ "y": 32
+ },
+ {
+ "id": "HEAL_LOCATION_EVER_GRANDE_CITY",
+ "map": "MAP_EVER_GRANDE_CITY",
+ "x": 27,
+ "y": 49
+ },
+ {
+ "id": "HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE",
+ "map": "MAP_LITTLEROOT_TOWN",
+ "x": 5,
+ "y": 9
+ },
+ {
+ "id": "HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE",
+ "map": "MAP_LITTLEROOT_TOWN",
+ "x": 14,
+ "y": 9
+ },
+ {
+ "id": "HEAL_LOCATION_OLDALE_TOWN",
+ "map": "MAP_OLDALE_TOWN",
+ "x": 6,
+ "y": 17
+ },
+ {
+ "id": "HEAL_LOCATION_DEWFORD_TOWN",
+ "map": "MAP_DEWFORD_TOWN",
+ "x": 2,
+ "y": 11
+ },
+ {
+ "id": "HEAL_LOCATION_LAVARIDGE_TOWN",
+ "map": "MAP_LAVARIDGE_TOWN",
+ "x": 9,
+ "y": 7
+ },
+ {
+ "id": "HEAL_LOCATION_FALLARBOR_TOWN",
+ "map": "MAP_FALLARBOR_TOWN",
+ "x": 14,
+ "y": 8
+ },
+ {
+ "id": "HEAL_LOCATION_VERDANTURF_TOWN",
+ "map": "MAP_VERDANTURF_TOWN",
+ "x": 16,
+ "y": 4
+ },
+ {
+ "id": "HEAL_LOCATION_PACIFIDLOG_TOWN",
+ "map": "MAP_PACIFIDLOG_TOWN",
+ "x": 8,
+ "y": 16
+ },
+ {
+ "id": "HEAL_LOCATION_EVER_GRANDE_CITY_POKEMON_LEAGUE",
+ "map": "MAP_EVER_GRANDE_CITY",
+ "x": 18,
+ "y": 6
+ },
+ {
+ "id": "HEAL_LOCATION_SOUTHERN_ISLAND_EXTERIOR",
+ "map": "MAP_SOUTHERN_ISLAND_EXTERIOR",
+ "x": 15,
+ "y": 20
+ },
+ {
+ "id": "HEAL_LOCATION_BATTLE_FRONTIER_OUTSIDE_EAST",
+ "map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST",
+ "x": 3,
+ "y": 52
+ }
+ ]
+}
diff --git a/src/data/heal_locations.json.txt b/src/data/heal_locations.json.txt
new file mode 100644
index 0000000000..fd63228e33
--- /dev/null
+++ b/src/data/heal_locations.json.txt
@@ -0,0 +1,28 @@
+{{ doNotModifyHeader }}
+
+static const struct HealLocation sHealLocations[NUM_HEAL_LOCATIONS - 1] = {
+## for heal_location in heal_locations
+ [{{ heal_location.id }} - 1] = {
+ .mapGroup = MAP_GROUP({{ heal_location.map }}),
+ .mapNum = MAP_NUM({{ heal_location.map }}),
+ .x = {{ heal_location.x }},
+ .y = {{ heal_location.y }},
+ },
+## endfor
+};
+
+static const u16 sWhiteoutRespawnHealCenterMapIdxs[][2] = {
+## for heal_location in heal_locations
+{% if existsIn(heal_location, "respawn_map") %}
+ [{{ heal_location.id }} - 1] = { MAP_GROUP({{ heal_location.respawn_map }}), MAP_NUM({{ heal_location.respawn_map }})},
+{% endif %}
+## endfor
+};
+
+static const u8 sWhiteoutRespawnHealerNpcIds[] = {
+## for heal_location in heal_locations
+{% if existsIn(heal_location, "respawn_npc") %}
+ [{{ heal_location.id }} - 1] = {{ heal_location.respawn_npc }},
+{% endif %}
+## endfor
+};
diff --git a/src/data/party_menu.h b/src/data/party_menu.h
index 90faab0777..703e8e406e 100644
--- a/src/data/party_menu.h
+++ b/src/data/party_menu.h
@@ -64,7 +64,7 @@ static const struct PartyMenuBoxInfoRects sPartyBoxInfoRects[] =
// Each layout array has an array for each of the 6 party slots
// The array for each slot has the sprite coords of its various sprites in the following order
-// Pokemon icon (x, y), held item (x, y), status condition (x, y), menu pokeball (x, y)
+// Pokémon icon (x, y), held item (x, y), status condition (x, y), menu Poké Ball (x, y)
static const u8 sPartyMenuSpriteCoords[PARTY_LAYOUT_COUNT][PARTY_SIZE][4 * 2] =
{
[PARTY_LAYOUT_SINGLE] =
@@ -902,7 +902,7 @@ static const struct CompressedSpritePalette sSpritePalette_MenuPokeball =
gPartyMenuPokeball_Pal, TAG_POKEBALL
};
-// Used for the pokeball sprite on each party slot / Cancel button
+// Used for the Poké Ball sprite on each party slot / Cancel button
static const struct SpriteTemplate sSpriteTemplate_MenuPokeball =
{
.tileTag = TAG_POKEBALL,
diff --git a/src/data/pokemon/experience_tables.h b/src/data/pokemon/experience_tables.h
index 15bcadeb29..848d5c5016 100644
--- a/src/data/pokemon/experience_tables.h
+++ b/src/data/pokemon/experience_tables.h
@@ -1,10 +1,10 @@
-#define SQUARE(n)(n * n)
-#define CUBE(n)(n * n * n)
+#define SQUARE(n) ((n) * (n))
+#define CUBE(n) ((n) * (n) * (n))
-#define EXP_SLOW(n)((5 * CUBE(n)) / 4) // (5 * (n)^3) / 4
-#define EXP_FAST(n)((4 * CUBE(n)) / 5) // (4 * (n)^3) / 5
-#define EXP_MEDIUM_FAST(n)(CUBE(n)) // (n)^3
-#define EXP_MEDIUM_SLOW(n)((6 * CUBE(n)) / 5 - (15 * SQUARE(n)) + (100 * n) - 140) // (6 * (n)^3) / 5 - (15 * (n)^2) + (100 * n) - 140
+#define EXP_SLOW(n) ((5 * CUBE(n)) / 4) // (5 * (n)^3) / 4
+#define EXP_FAST(n) ((4 * CUBE(n)) / 5) // (4 * (n)^3) / 5
+#define EXP_MEDIUM_FAST(n) (CUBE(n)) // (n)^3
+#define EXP_MEDIUM_SLOW(n) ((6 * CUBE(n)) / 5 - (15 * SQUARE(n)) + (100 * n) - 140) // (6 * (n)^3) / 5 - (15 * (n)^2) + (100 * n) - 140
#define EXP_ERRATIC(n) \
(n <= 50) ? ((100 - n) * CUBE(n) / 50) \
:(n <= 68) ? ((150 - n) * CUBE(n) / 100) \
diff --git a/src/data/pokemon/pokedex_orders.h b/src/data/pokemon/pokedex_orders.h
index 55b0abcea8..aa09948ec0 100644
--- a/src/data/pokemon/pokedex_orders.h
+++ b/src/data/pokemon/pokedex_orders.h
@@ -25,7 +25,7 @@ const u16 gPokedexOrder_Alphabetical[] =
NATIONAL_DEX_OLD_UNOWN_X,
NATIONAL_DEX_OLD_UNOWN_Y,
NATIONAL_DEX_OLD_UNOWN_Z,
- // Actual pokemon start here.
+ // Actual Pokémon start here.
NATIONAL_DEX_ABRA,
NATIONAL_DEX_ABSOL,
NATIONAL_DEX_AERODACTYL,
diff --git a/src/data/region_map/region_map_sections.constants.json.txt b/src/data/region_map/region_map_sections.constants.json.txt
new file mode 100644
index 0000000000..340c29b33d
--- /dev/null
+++ b/src/data/region_map/region_map_sections.constants.json.txt
@@ -0,0 +1,22 @@
+{{ doNotModifyHeader }}
+#ifndef GUARD_CONSTANTS_REGION_MAP_SECTIONS_H
+#define GUARD_CONSTANTS_REGION_MAP_SECTIONS_H
+
+enum {
+## for map_section in map_sections
+ {{ map_section.id }},
+## endfor
+ MAPSEC_NONE,
+ MAPSEC_COUNT
+};
+
+// Special location IDs that use the same value space as MAPSECs.
+#define METLOC_SPECIAL_EGG 0xFD
+#define METLOC_IN_GAME_TRADE 0xFE
+#define METLOC_FATEFUL_ENCOUNTER 0xFF
+
+#define KANTO_MAPSEC_START MAPSEC_PALLET_TOWN
+#define KANTO_MAPSEC_END MAPSEC_SPECIAL_AREA
+#define KANTO_MAPSEC_COUNT (KANTO_MAPSEC_END - KANTO_MAPSEC_START + 1)
+
+#endif // GUARD_CONSTANTS_REGION_MAP_SECTIONS_H
diff --git a/src/data/region_map/region_map_sections.json b/src/data/region_map/region_map_sections.json
index 8fa0079117..49426128b8 100644
--- a/src/data/region_map/region_map_sections.json
+++ b/src/data/region_map/region_map_sections.json
@@ -1,7 +1,7 @@
{
"map_sections": [
{
- "map_section": "MAPSEC_LITTLEROOT_TOWN",
+ "id": "MAPSEC_LITTLEROOT_TOWN",
"name": "LITTLEROOT TOWN",
"x": 4,
"y": 11,
@@ -9,7 +9,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_OLDALE_TOWN",
+ "id": "MAPSEC_OLDALE_TOWN",
"name": "OLDALE TOWN",
"x": 4,
"y": 9,
@@ -17,7 +17,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_DEWFORD_TOWN",
+ "id": "MAPSEC_DEWFORD_TOWN",
"name": "DEWFORD TOWN",
"x": 2,
"y": 14,
@@ -25,7 +25,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_LAVARIDGE_TOWN",
+ "id": "MAPSEC_LAVARIDGE_TOWN",
"name": "LAVARIDGE TOWN",
"x": 5,
"y": 3,
@@ -33,7 +33,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_FALLARBOR_TOWN",
+ "id": "MAPSEC_FALLARBOR_TOWN",
"name": "FALLARBOR TOWN",
"x": 3,
"y": 0,
@@ -41,7 +41,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_VERDANTURF_TOWN",
+ "id": "MAPSEC_VERDANTURF_TOWN",
"name": "VERDANTURF TOWN",
"x": 4,
"y": 6,
@@ -49,7 +49,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_PACIFIDLOG_TOWN",
+ "id": "MAPSEC_PACIFIDLOG_TOWN",
"name": "PACIFIDLOG TOWN",
"x": 17,
"y": 10,
@@ -57,7 +57,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_PETALBURG_CITY",
+ "id": "MAPSEC_PETALBURG_CITY",
"name": "PETALBURG CITY",
"x": 1,
"y": 9,
@@ -65,7 +65,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_SLATEPORT_CITY",
+ "id": "MAPSEC_SLATEPORT_CITY",
"name": "SLATEPORT CITY",
"x": 8,
"y": 10,
@@ -73,7 +73,7 @@
"height": 2
},
{
- "map_section": "MAPSEC_MAUVILLE_CITY",
+ "id": "MAPSEC_MAUVILLE_CITY",
"name": "MAUVILLE CITY",
"x": 8,
"y": 6,
@@ -81,7 +81,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_RUSTBORO_CITY",
+ "id": "MAPSEC_RUSTBORO_CITY",
"name": "RUSTBORO CITY",
"x": 0,
"y": 5,
@@ -89,7 +89,7 @@
"height": 2
},
{
- "map_section": "MAPSEC_FORTREE_CITY",
+ "id": "MAPSEC_FORTREE_CITY",
"name": "FORTREE CITY",
"x": 12,
"y": 0,
@@ -97,7 +97,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_LILYCOVE_CITY",
+ "id": "MAPSEC_LILYCOVE_CITY",
"name": "LILYCOVE CITY",
"x": 18,
"y": 3,
@@ -105,7 +105,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_MOSSDEEP_CITY",
+ "id": "MAPSEC_MOSSDEEP_CITY",
"name": "MOSSDEEP CITY",
"x": 24,
"y": 5,
@@ -113,7 +113,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_SOOTOPOLIS_CITY",
+ "id": "MAPSEC_SOOTOPOLIS_CITY",
"name": "SOOTOPOLIS CITY",
"x": 21,
"y": 7,
@@ -121,7 +121,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_EVER_GRANDE_CITY",
+ "id": "MAPSEC_EVER_GRANDE_CITY",
"name": "EVER GRANDE CITY",
"x": 27,
"y": 8,
@@ -129,7 +129,7 @@
"height": 2
},
{
- "map_section": "MAPSEC_ROUTE_101",
+ "id": "MAPSEC_ROUTE_101",
"name": "ROUTE 101",
"x": 4,
"y": 10,
@@ -137,7 +137,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_102",
+ "id": "MAPSEC_ROUTE_102",
"name": "ROUTE 102",
"x": 2,
"y": 9,
@@ -145,7 +145,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_103",
+ "id": "MAPSEC_ROUTE_103",
"name": "ROUTE 103",
"x": 4,
"y": 8,
@@ -153,7 +153,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_104",
+ "id": "MAPSEC_ROUTE_104",
"name": "ROUTE 104",
"x": 0,
"y": 7,
@@ -161,7 +161,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_105",
+ "id": "MAPSEC_ROUTE_105",
"name": "ROUTE 105",
"x": 0,
"y": 10,
@@ -169,7 +169,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_106",
+ "id": "MAPSEC_ROUTE_106",
"name": "ROUTE 106",
"x": 0,
"y": 13,
@@ -177,7 +177,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_107",
+ "id": "MAPSEC_ROUTE_107",
"name": "ROUTE 107",
"x": 3,
"y": 14,
@@ -185,7 +185,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_108",
+ "id": "MAPSEC_ROUTE_108",
"name": "ROUTE 108",
"x": 6,
"y": 14,
@@ -193,7 +193,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_109",
+ "id": "MAPSEC_ROUTE_109",
"name": "ROUTE 109",
"x": 8,
"y": 12,
@@ -201,7 +201,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_110",
+ "id": "MAPSEC_ROUTE_110",
"name": "ROUTE 110",
"x": 8,
"y": 7,
@@ -209,7 +209,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_111",
+ "id": "MAPSEC_ROUTE_111",
"name": "ROUTE 111",
"x": 8,
"y": 0,
@@ -217,7 +217,7 @@
"height": 6
},
{
- "map_section": "MAPSEC_ROUTE_112",
+ "id": "MAPSEC_ROUTE_112",
"name": "ROUTE 112",
"x": 6,
"y": 3,
@@ -225,7 +225,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_113",
+ "id": "MAPSEC_ROUTE_113",
"name": "ROUTE 113",
"x": 4,
"y": 0,
@@ -233,7 +233,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_114",
+ "id": "MAPSEC_ROUTE_114",
"name": "ROUTE 114",
"x": 1,
"y": 0,
@@ -241,7 +241,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_115",
+ "id": "MAPSEC_ROUTE_115",
"name": "ROUTE 115",
"x": 0,
"y": 2,
@@ -249,7 +249,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_116",
+ "id": "MAPSEC_ROUTE_116",
"name": "ROUTE 116",
"x": 1,
"y": 5,
@@ -257,7 +257,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_117",
+ "id": "MAPSEC_ROUTE_117",
"name": "ROUTE 117",
"x": 5,
"y": 6,
@@ -265,7 +265,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_118",
+ "id": "MAPSEC_ROUTE_118",
"name": "ROUTE 118",
"x": 10,
"y": 6,
@@ -273,7 +273,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_119",
+ "id": "MAPSEC_ROUTE_119",
"name": "ROUTE 119",
"x": 11,
"y": 0,
@@ -281,7 +281,7 @@
"height": 6
},
{
- "map_section": "MAPSEC_ROUTE_120",
+ "id": "MAPSEC_ROUTE_120",
"name": "ROUTE 120",
"x": 13,
"y": 0,
@@ -289,7 +289,7 @@
"height": 4
},
{
- "map_section": "MAPSEC_ROUTE_121",
+ "id": "MAPSEC_ROUTE_121",
"name": "ROUTE 121",
"x": 14,
"y": 3,
@@ -297,7 +297,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_122",
+ "id": "MAPSEC_ROUTE_122",
"name": "ROUTE 122",
"x": 16,
"y": 4,
@@ -305,7 +305,7 @@
"height": 2
},
{
- "map_section": "MAPSEC_ROUTE_123",
+ "id": "MAPSEC_ROUTE_123",
"name": "ROUTE 123",
"x": 12,
"y": 6,
@@ -313,7 +313,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_124",
+ "id": "MAPSEC_ROUTE_124",
"name": "ROUTE 124",
"x": 20,
"y": 3,
@@ -321,7 +321,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_125",
+ "id": "MAPSEC_ROUTE_125",
"name": "ROUTE 125",
"x": 24,
"y": 3,
@@ -329,7 +329,7 @@
"height": 2
},
{
- "map_section": "MAPSEC_ROUTE_126",
+ "id": "MAPSEC_ROUTE_126",
"name": "ROUTE 126",
"x": 20,
"y": 6,
@@ -337,7 +337,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_127",
+ "id": "MAPSEC_ROUTE_127",
"name": "ROUTE 127",
"x": 23,
"y": 6,
@@ -345,7 +345,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_ROUTE_128",
+ "id": "MAPSEC_ROUTE_128",
"name": "ROUTE 128",
"x": 23,
"y": 9,
@@ -353,7 +353,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_129",
+ "id": "MAPSEC_ROUTE_129",
"name": "ROUTE 129",
"x": 24,
"y": 10,
@@ -361,7 +361,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_130",
+ "id": "MAPSEC_ROUTE_130",
"name": "ROUTE 130",
"x": 21,
"y": 10,
@@ -369,7 +369,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_131",
+ "id": "MAPSEC_ROUTE_131",
"name": "ROUTE 131",
"x": 18,
"y": 10,
@@ -377,7 +377,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_132",
+ "id": "MAPSEC_ROUTE_132",
"name": "ROUTE 132",
"x": 15,
"y": 10,
@@ -385,7 +385,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_133",
+ "id": "MAPSEC_ROUTE_133",
"name": "ROUTE 133",
"x": 12,
"y": 10,
@@ -393,7 +393,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ROUTE_134",
+ "id": "MAPSEC_ROUTE_134",
"name": "ROUTE 134",
"x": 9,
"y": 10,
@@ -401,7 +401,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_UNDERWATER_124",
+ "id": "MAPSEC_UNDERWATER_124",
"name": "UNDERWATER",
"x": 20,
"y": 3,
@@ -409,7 +409,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_UNDERWATER_126",
+ "id": "MAPSEC_UNDERWATER_126",
"name": "UNDERWATER",
"x": 20,
"y": 6,
@@ -417,7 +417,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_UNDERWATER_127",
+ "id": "MAPSEC_UNDERWATER_127",
"name": "UNDERWATER",
"x": 23,
"y": 6,
@@ -425,7 +425,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_UNDERWATER_128",
+ "id": "MAPSEC_UNDERWATER_128",
"name": "UNDERWATER",
"x": 23,
"y": 9,
@@ -433,7 +433,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_UNDERWATER_SOOTOPOLIS",
+ "id": "MAPSEC_UNDERWATER_SOOTOPOLIS",
"name": "UNDERWATER",
"x": 21,
"y": 7,
@@ -441,7 +441,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_GRANITE_CAVE",
+ "id": "MAPSEC_GRANITE_CAVE",
"name": "GRANITE CAVE",
"x": 1,
"y": 13,
@@ -449,7 +449,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_MT_CHIMNEY",
+ "id": "MAPSEC_MT_CHIMNEY",
"name": "MT. CHIMNEY",
"x": 6,
"y": 2,
@@ -457,7 +457,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_SAFARI_ZONE",
+ "id": "MAPSEC_SAFARI_ZONE",
"name": "SAFARI ZONE",
"x": 16,
"y": 2,
@@ -465,7 +465,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_BATTLE_FRONTIER",
+ "id": "MAPSEC_BATTLE_FRONTIER",
"name": "BATTLE FRONTIER",
"x": 22,
"y": 12,
@@ -473,7 +473,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_PETALBURG_WOODS",
+ "id": "MAPSEC_PETALBURG_WOODS",
"name": "PETALBURG WOODS",
"x": 0,
"y": 8,
@@ -481,7 +481,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_RUSTURF_TUNNEL",
+ "id": "MAPSEC_RUSTURF_TUNNEL",
"name": "RUSTURF TUNNEL",
"x": 2,
"y": 5,
@@ -489,7 +489,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ABANDONED_SHIP",
+ "id": "MAPSEC_ABANDONED_SHIP",
"name": "ABANDONED SHIP",
"x": 6,
"y": 14,
@@ -497,7 +497,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_NEW_MAUVILLE",
+ "id": "MAPSEC_NEW_MAUVILLE",
"name": "NEW MAUVILLE",
"x": 8,
"y": 7,
@@ -505,7 +505,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_METEOR_FALLS",
+ "id": "MAPSEC_METEOR_FALLS",
"name": "METEOR FALLS",
"x": 0,
"y": 3,
@@ -513,7 +513,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_METEOR_FALLS2",
+ "id": "MAPSEC_METEOR_FALLS2",
"name": "METEOR FALLS",
"x": 1,
"y": 2,
@@ -521,7 +521,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_MT_PYRE",
+ "id": "MAPSEC_MT_PYRE",
"name": "MT. PYRE",
"x": 16,
"y": 4,
@@ -529,7 +529,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_AQUA_HIDEOUT_OLD",
+ "id": "MAPSEC_AQUA_HIDEOUT_OLD",
"name": "{AQUA} HIDEOUT",
"name_clone": true,
"x": 19,
@@ -538,7 +538,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_SHOAL_CAVE",
+ "id": "MAPSEC_SHOAL_CAVE",
"name": "SHOAL CAVE",
"x": 24,
"y": 4,
@@ -546,7 +546,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_SEAFLOOR_CAVERN",
+ "id": "MAPSEC_SEAFLOOR_CAVERN",
"name": "SEAFLOOR CAVERN",
"x": 24,
"y": 9,
@@ -554,7 +554,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_UNDERWATER_SEAFLOOR_CAVERN",
+ "id": "MAPSEC_UNDERWATER_SEAFLOOR_CAVERN",
"name": "UNDERWATER",
"x": 24,
"y": 9,
@@ -562,7 +562,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_VICTORY_ROAD",
+ "id": "MAPSEC_VICTORY_ROAD",
"name": "VICTORY ROAD",
"x": 27,
"y": 9,
@@ -570,7 +570,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_MIRAGE_ISLAND",
+ "id": "MAPSEC_MIRAGE_ISLAND",
"name": "MIRAGE ISLAND",
"x": 17,
"y": 10,
@@ -578,7 +578,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_CAVE_OF_ORIGIN",
+ "id": "MAPSEC_CAVE_OF_ORIGIN",
"name": "CAVE OF ORIGIN",
"x": 21,
"y": 7,
@@ -586,7 +586,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_SOUTHERN_ISLAND",
+ "id": "MAPSEC_SOUTHERN_ISLAND",
"name": "SOUTHERN ISLAND",
"x": 12,
"y": 14,
@@ -594,7 +594,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_FIERY_PATH",
+ "id": "MAPSEC_FIERY_PATH",
"name": "FIERY PATH",
"x": 6,
"y": 3,
@@ -602,7 +602,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_FIERY_PATH2",
+ "id": "MAPSEC_FIERY_PATH2",
"name": "FIERY PATH",
"x": 7,
"y": 3,
@@ -610,7 +610,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_JAGGED_PASS",
+ "id": "MAPSEC_JAGGED_PASS",
"name": "JAGGED PASS",
"x": 6,
"y": 3,
@@ -618,7 +618,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_JAGGED_PASS2",
+ "id": "MAPSEC_JAGGED_PASS2",
"name": "JAGGED PASS",
"x": 7,
"y": 2,
@@ -626,7 +626,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_SEALED_CHAMBER",
+ "id": "MAPSEC_SEALED_CHAMBER",
"name": "SEALED CHAMBER",
"x": 11,
"y": 10,
@@ -634,7 +634,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_UNDERWATER_SEALED_CHAMBER",
+ "id": "MAPSEC_UNDERWATER_SEALED_CHAMBER",
"name": "UNDERWATER",
"x": 11,
"y": 10,
@@ -642,7 +642,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_SCORCHED_SLAB",
+ "id": "MAPSEC_SCORCHED_SLAB",
"name": "SCORCHED SLAB",
"x": 13,
"y": 0,
@@ -650,7 +650,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ISLAND_CAVE",
+ "id": "MAPSEC_ISLAND_CAVE",
"name": "ISLAND CAVE",
"x": 0,
"y": 10,
@@ -658,7 +658,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_DESERT_RUINS",
+ "id": "MAPSEC_DESERT_RUINS",
"name": "DESERT RUINS",
"x": 8,
"y": 3,
@@ -666,7 +666,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ANCIENT_TOMB",
+ "id": "MAPSEC_ANCIENT_TOMB",
"name": "ANCIENT TOMB",
"x": 13,
"y": 2,
@@ -674,15 +674,11 @@
"height": 1
},
{
- "map_section": "MAPSEC_INSIDE_OF_TRUCK",
- "name": "INSIDE OF TRUCK",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_INSIDE_OF_TRUCK",
+ "name": "INSIDE OF TRUCK"
},
{
- "map_section": "MAPSEC_SKY_PILLAR",
+ "id": "MAPSEC_SKY_PILLAR",
"name": "SKY PILLAR",
"x": 19,
"y": 10,
@@ -690,901 +686,457 @@
"height": 1
},
{
- "map_section": "MAPSEC_SECRET_BASE",
- "name": "SECRET BASE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SECRET_BASE",
+ "name": "SECRET BASE"
},
{
- "map_section": "MAPSEC_DYNAMIC",
- "name": "",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_DYNAMIC",
+ "name": ""
},
{
- "map_section": "MAPSEC_PALLET_TOWN",
- "name": "PALLET TOWN",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_PALLET_TOWN",
+ "name": "PALLET TOWN"
},
{
- "map_section": "MAPSEC_VIRIDIAN_CITY",
- "name": "VIRIDIAN CITY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_VIRIDIAN_CITY",
+ "name": "VIRIDIAN CITY"
},
{
- "map_section": "MAPSEC_PEWTER_CITY",
- "name": "PEWTER CITY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_PEWTER_CITY",
+ "name": "PEWTER CITY"
},
{
- "map_section": "MAPSEC_CERULEAN_CITY",
- "name": "CERULEAN CITY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_CERULEAN_CITY",
+ "name": "CERULEAN CITY"
},
{
- "map_section": "MAPSEC_LAVENDER_TOWN",
- "name": "LAVENDER TOWN",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_LAVENDER_TOWN",
+ "name": "LAVENDER TOWN"
},
{
- "map_section": "MAPSEC_VERMILION_CITY",
- "name": "VERMILION CITY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_VERMILION_CITY",
+ "name": "VERMILION CITY"
},
{
- "map_section": "MAPSEC_CELADON_CITY",
- "name": "CELADON CITY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_CELADON_CITY",
+ "name": "CELADON CITY"
},
{
- "map_section": "MAPSEC_FUCHSIA_CITY",
- "name": "FUCHSIA CITY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_FUCHSIA_CITY",
+ "name": "FUCHSIA CITY"
},
{
- "map_section": "MAPSEC_CINNABAR_ISLAND",
- "name": "CINNABAR ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_CINNABAR_ISLAND",
+ "name": "CINNABAR ISLAND"
},
{
- "map_section": "MAPSEC_INDIGO_PLATEAU",
- "name": "INDIGO PLATEAU",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_INDIGO_PLATEAU",
+ "name": "INDIGO PLATEAU"
},
{
- "map_section": "MAPSEC_SAFFRON_CITY",
- "name": "SAFFRON CITY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SAFFRON_CITY",
+ "name": "SAFFRON CITY"
},
{
- "map_section": "MAPSEC_ROUTE_4_POKECENTER",
+ "id": "MAPSEC_ROUTE_4_POKECENTER",
"name": "ROUTE 4",
- "name_clone": true,
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "name_clone": true
},
{
- "map_section": "MAPSEC_ROUTE_10_POKECENTER",
+ "id": "MAPSEC_ROUTE_10_POKECENTER",
"name": "ROUTE 10",
- "name_clone": true,
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "name_clone": true
},
{
- "map_section": "MAPSEC_ROUTE_1",
- "name": "ROUTE 1",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_1",
+ "name": "ROUTE 1"
},
{
- "map_section": "MAPSEC_ROUTE_2",
- "name": "ROUTE 2",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_2",
+ "name": "ROUTE 2"
},
{
- "map_section": "MAPSEC_ROUTE_3",
- "name": "ROUTE 3",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_3",
+ "name": "ROUTE 3"
},
{
- "map_section": "MAPSEC_ROUTE_4",
- "name": "ROUTE 4",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_4",
+ "name": "ROUTE 4"
},
{
- "map_section": "MAPSEC_ROUTE_5",
- "name": "ROUTE 5",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_5",
+ "name": "ROUTE 5"
},
{
- "map_section": "MAPSEC_ROUTE_6",
- "name": "ROUTE 6",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_6",
+ "name": "ROUTE 6"
},
{
- "map_section": "MAPSEC_ROUTE_7",
- "name": "ROUTE 7",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_7",
+ "name": "ROUTE 7"
},
{
- "map_section": "MAPSEC_ROUTE_8",
- "name": "ROUTE 8",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_8",
+ "name": "ROUTE 8"
},
{
- "map_section": "MAPSEC_ROUTE_9",
- "name": "ROUTE 9",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_9",
+ "name": "ROUTE 9"
},
{
- "map_section": "MAPSEC_ROUTE_10",
- "name": "ROUTE 10",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_10",
+ "name": "ROUTE 10"
},
{
- "map_section": "MAPSEC_ROUTE_11",
- "name": "ROUTE 11",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_11",
+ "name": "ROUTE 11"
},
{
- "map_section": "MAPSEC_ROUTE_12",
- "name": "ROUTE 12",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_12",
+ "name": "ROUTE 12"
},
{
- "map_section": "MAPSEC_ROUTE_13",
- "name": "ROUTE 13",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_13",
+ "name": "ROUTE 13"
},
{
- "map_section": "MAPSEC_ROUTE_14",
- "name": "ROUTE 14",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_14",
+ "name": "ROUTE 14"
},
{
- "map_section": "MAPSEC_ROUTE_15",
- "name": "ROUTE 15",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_15",
+ "name": "ROUTE 15"
},
{
- "map_section": "MAPSEC_ROUTE_16",
- "name": "ROUTE 16",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_16",
+ "name": "ROUTE 16"
},
{
- "map_section": "MAPSEC_ROUTE_17",
- "name": "ROUTE 17",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_17",
+ "name": "ROUTE 17"
},
{
- "map_section": "MAPSEC_ROUTE_18",
- "name": "ROUTE 18",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_18",
+ "name": "ROUTE 18"
},
{
- "map_section": "MAPSEC_ROUTE_19",
- "name": "ROUTE 19",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_19",
+ "name": "ROUTE 19"
},
{
- "map_section": "MAPSEC_ROUTE_20",
- "name": "ROUTE 20",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_20",
+ "name": "ROUTE 20"
},
{
- "map_section": "MAPSEC_ROUTE_21",
- "name": "ROUTE 21",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_21",
+ "name": "ROUTE 21"
},
{
- "map_section": "MAPSEC_ROUTE_22",
- "name": "ROUTE 22",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_22",
+ "name": "ROUTE 22"
},
{
- "map_section": "MAPSEC_ROUTE_23",
- "name": "ROUTE 23",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_23",
+ "name": "ROUTE 23"
},
{
- "map_section": "MAPSEC_ROUTE_24",
- "name": "ROUTE 24",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_24",
+ "name": "ROUTE 24"
},
{
- "map_section": "MAPSEC_ROUTE_25",
- "name": "ROUTE 25",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROUTE_25",
+ "name": "ROUTE 25"
},
{
- "map_section": "MAPSEC_VIRIDIAN_FOREST",
- "name": "VIRIDIAN FOREST",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_VIRIDIAN_FOREST",
+ "name": "VIRIDIAN FOREST"
},
{
- "map_section": "MAPSEC_MT_MOON",
- "name": "MT. MOON",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_MT_MOON",
+ "name": "MT. MOON"
},
{
- "map_section": "MAPSEC_S_S_ANNE",
- "name": "S.S. ANNE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_S_S_ANNE",
+ "name": "S.S. ANNE"
},
{
- "map_section": "MAPSEC_UNDERGROUND_PATH",
+ "id": "MAPSEC_UNDERGROUND_PATH",
+ "name": "UNDERGROUND PATH"
+ },
+ {
+ "id": "MAPSEC_UNDERGROUND_PATH_2",
"name": "UNDERGROUND PATH",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "name_clone": true
},
{
- "map_section": "MAPSEC_UNDERGROUND_PATH_2",
- "name": "UNDERGROUND PATH",
- "name_clone": true,
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_DIGLETTS_CAVE",
+ "name": "DIGLETT'S CAVE"
},
{
- "map_section": "MAPSEC_DIGLETTS_CAVE",
- "name": "DIGLETT'S CAVE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_KANTO_VICTORY_ROAD",
+ "id": "MAPSEC_KANTO_VICTORY_ROAD",
"name": "VICTORY ROAD",
- "name_clone": true,
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "name_clone": true
},
{
- "map_section": "MAPSEC_ROCKET_HIDEOUT",
- "name": "ROCKET HIDEOUT",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROCKET_HIDEOUT",
+ "name": "ROCKET HIDEOUT"
},
{
- "map_section": "MAPSEC_SILPH_CO",
- "name": "SILPH CO.",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SILPH_CO",
+ "name": "SILPH CO."
},
{
- "map_section": "MAPSEC_POKEMON_MANSION",
- "name": "POKéMON MANSION",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_POKEMON_MANSION",
+ "name": "POKéMON MANSION"
},
{
- "map_section": "MAPSEC_KANTO_SAFARI_ZONE",
+ "id": "MAPSEC_KANTO_SAFARI_ZONE",
"name": "SAFARI ZONE",
- "name_clone": true,
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "name_clone": true
},
{
- "map_section": "MAPSEC_POKEMON_LEAGUE",
- "name": "POKéMON LEAGUE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_POKEMON_LEAGUE",
+ "name": "POKéMON LEAGUE"
},
{
- "map_section": "MAPSEC_ROCK_TUNNEL",
- "name": "ROCK TUNNEL",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ROCK_TUNNEL",
+ "name": "ROCK TUNNEL"
},
{
- "map_section": "MAPSEC_SEAFOAM_ISLANDS",
- "name": "SEAFOAM ISLANDS",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SEAFOAM_ISLANDS",
+ "name": "SEAFOAM ISLANDS"
},
{
- "map_section": "MAPSEC_POKEMON_TOWER",
- "name": "POKéMON TOWER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_POKEMON_TOWER",
+ "name": "POKéMON TOWER"
},
{
- "map_section": "MAPSEC_CERULEAN_CAVE",
- "name": "CERULEAN CAVE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_CERULEAN_CAVE",
+ "name": "CERULEAN CAVE"
},
{
- "map_section": "MAPSEC_POWER_PLANT",
- "name": "POWER PLANT",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_POWER_PLANT",
+ "name": "POWER PLANT"
},
{
- "map_section": "MAPSEC_ONE_ISLAND",
- "name": "ONE ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ONE_ISLAND",
+ "name": "ONE ISLAND"
},
{
- "map_section": "MAPSEC_TWO_ISLAND",
- "name": "TWO ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_TWO_ISLAND",
+ "name": "TWO ISLAND"
},
{
- "map_section": "MAPSEC_THREE_ISLAND",
- "name": "THREE ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_THREE_ISLAND",
+ "name": "THREE ISLAND"
},
{
- "map_section": "MAPSEC_FOUR_ISLAND",
- "name": "FOUR ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_FOUR_ISLAND",
+ "name": "FOUR ISLAND"
},
{
- "map_section": "MAPSEC_FIVE_ISLAND",
- "name": "FIVE ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_FIVE_ISLAND",
+ "name": "FIVE ISLAND"
},
{
- "map_section": "MAPSEC_SEVEN_ISLAND",
- "name": "SEVEN ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SEVEN_ISLAND",
+ "name": "SEVEN ISLAND"
},
{
- "map_section": "MAPSEC_SIX_ISLAND",
- "name": "SIX ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SIX_ISLAND",
+ "name": "SIX ISLAND"
},
{
- "map_section": "MAPSEC_KINDLE_ROAD",
- "name": "KINDLE ROAD",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_KINDLE_ROAD",
+ "name": "KINDLE ROAD"
},
{
- "map_section": "MAPSEC_TREASURE_BEACH",
- "name": "TREASURE BEACH",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_TREASURE_BEACH",
+ "name": "TREASURE BEACH"
},
{
- "map_section": "MAPSEC_CAPE_BRINK",
- "name": "CAPE BRINK",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_CAPE_BRINK",
+ "name": "CAPE BRINK"
},
{
- "map_section": "MAPSEC_BOND_BRIDGE",
- "name": "BOND BRIDGE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_BOND_BRIDGE",
+ "name": "BOND BRIDGE"
},
{
- "map_section": "MAPSEC_THREE_ISLE_PORT",
- "name": "THREE ISLE PORT",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_THREE_ISLE_PORT",
+ "name": "THREE ISLE PORT"
},
{
- "map_section": "MAPSEC_SEVII_ISLE_6",
- "name": "SEVII ISLE 6",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SEVII_ISLE_6",
+ "name": "SEVII ISLE 6"
},
{
- "map_section": "MAPSEC_SEVII_ISLE_7",
- "name": "SEVII ISLE 7",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SEVII_ISLE_7",
+ "name": "SEVII ISLE 7"
},
{
- "map_section": "MAPSEC_SEVII_ISLE_8",
- "name": "SEVII ISLE 8",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SEVII_ISLE_8",
+ "name": "SEVII ISLE 8"
},
{
- "map_section": "MAPSEC_SEVII_ISLE_9",
- "name": "SEVII ISLE 9",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SEVII_ISLE_9",
+ "name": "SEVII ISLE 9"
},
{
- "map_section": "MAPSEC_RESORT_GORGEOUS",
- "name": "RESORT GORGEOUS",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_RESORT_GORGEOUS",
+ "name": "RESORT GORGEOUS"
},
{
- "map_section": "MAPSEC_WATER_LABYRINTH",
- "name": "WATER LABYRINTH",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_WATER_LABYRINTH",
+ "name": "WATER LABYRINTH"
},
{
- "map_section": "MAPSEC_FIVE_ISLE_MEADOW",
- "name": "FIVE ISLE MEADOW",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_FIVE_ISLE_MEADOW",
+ "name": "FIVE ISLE MEADOW"
},
{
- "map_section": "MAPSEC_MEMORIAL_PILLAR",
- "name": "MEMORIAL PILLAR",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_MEMORIAL_PILLAR",
+ "name": "MEMORIAL PILLAR"
},
{
- "map_section": "MAPSEC_OUTCAST_ISLAND",
- "name": "OUTCAST ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_OUTCAST_ISLAND",
+ "name": "OUTCAST ISLAND"
},
{
- "map_section": "MAPSEC_GREEN_PATH",
- "name": "GREEN PATH",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_GREEN_PATH",
+ "name": "GREEN PATH"
},
{
- "map_section": "MAPSEC_WATER_PATH",
- "name": "WATER PATH",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_WATER_PATH",
+ "name": "WATER PATH"
},
{
- "map_section": "MAPSEC_RUIN_VALLEY",
- "name": "RUIN VALLEY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_RUIN_VALLEY",
+ "name": "RUIN VALLEY"
},
{
- "map_section": "MAPSEC_TRAINER_TOWER",
+ "id": "MAPSEC_TRAINER_TOWER",
+ "name": "TRAINER TOWER"
+ },
+ {
+ "id": "MAPSEC_CANYON_ENTRANCE",
+ "name": "CANYON ENTRANCE"
+ },
+ {
+ "id": "MAPSEC_SEVAULT_CANYON",
+ "name": "SEVAULT CANYON"
+ },
+ {
+ "id": "MAPSEC_TANOBY_RUINS",
+ "name": "TANOBY RUINS"
+ },
+ {
+ "id": "MAPSEC_SEVII_ISLE_22",
+ "name": "SEVII ISLE 22"
+ },
+ {
+ "id": "MAPSEC_SEVII_ISLE_23",
+ "name": "SEVII ISLE 23"
+ },
+ {
+ "id": "MAPSEC_SEVII_ISLE_24",
+ "name": "SEVII ISLE 24"
+ },
+ {
+ "id": "MAPSEC_NAVEL_ROCK_FRLG",
+ "name": "NAVEL ROCK"
+ },
+ {
+ "id": "MAPSEC_MT_EMBER",
+ "name": "MT. EMBER"
+ },
+ {
+ "id": "MAPSEC_BERRY_FOREST",
+ "name": "BERRY FOREST"
+ },
+ {
+ "id": "MAPSEC_ICEFALL_CAVE",
+ "name": "ICEFALL CAVE"
+ },
+ {
+ "id": "MAPSEC_ROCKET_WAREHOUSE",
+ "name": "ROCKET WAREHOUSE"
+ },
+ {
+ "id": "MAPSEC_TRAINER_TOWER_2",
"name": "TRAINER TOWER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "name_clone": true
},
{
- "map_section": "MAPSEC_CANYON_ENTRANCE",
- "name": "CANYON ENTRANCE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_DOTTED_HOLE",
+ "name": "DOTTED HOLE"
},
{
- "map_section": "MAPSEC_SEVAULT_CANYON",
- "name": "SEVAULT CANYON",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_LOST_CAVE",
+ "name": "LOST CAVE"
},
{
- "map_section": "MAPSEC_TANOBY_RUINS",
- "name": "TANOBY RUINS",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_PATTERN_BUSH",
+ "name": "PATTERN BUSH"
},
{
- "map_section": "MAPSEC_SEVII_ISLE_22",
- "name": "SEVII ISLE 22",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_ALTERING_CAVE_FRLG",
+ "name": "ALTERING CAVE"
},
{
- "map_section": "MAPSEC_SEVII_ISLE_23",
- "name": "SEVII ISLE 23",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_TANOBY_CHAMBERS",
+ "name": "TANOBY CHAMBERS"
},
{
- "map_section": "MAPSEC_SEVII_ISLE_24",
- "name": "SEVII ISLE 24",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_THREE_ISLE_PATH",
+ "name": "THREE ISLE PATH"
},
{
- "map_section": "MAPSEC_NAVEL_ROCK_FRLG",
- "name": "NAVEL ROCK",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_TANOBY_KEY",
+ "name": "TANOBY KEY"
},
{
- "map_section": "MAPSEC_MT_EMBER",
- "name": "MT. EMBER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_BIRTH_ISLAND_FRLG",
+ "name": "BIRTH ISLAND"
},
{
- "map_section": "MAPSEC_BERRY_FOREST",
- "name": "BERRY FOREST",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_MONEAN_CHAMBER",
+ "name": "MONEAN CHAMBER"
},
{
- "map_section": "MAPSEC_ICEFALL_CAVE",
- "name": "ICEFALL CAVE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_LIPTOO_CHAMBER",
+ "name": "LIPTOO CHAMBER"
},
{
- "map_section": "MAPSEC_ROCKET_WAREHOUSE",
- "name": "ROCKET WAREHOUSE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_WEEPTH_CHAMBER",
+ "name": "WEEPTH CHAMBER"
},
{
- "map_section": "MAPSEC_TRAINER_TOWER_2",
- "name": "TRAINER TOWER",
- "name_clone": true,
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_DILFORD_CHAMBER",
+ "name": "DILFORD CHAMBER"
},
{
- "map_section": "MAPSEC_DOTTED_HOLE",
- "name": "DOTTED HOLE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SCUFIB_CHAMBER",
+ "name": "SCUFIB CHAMBER"
},
{
- "map_section": "MAPSEC_LOST_CAVE",
- "name": "LOST CAVE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_RIXY_CHAMBER",
+ "name": "RIXY CHAMBER"
},
{
- "map_section": "MAPSEC_PATTERN_BUSH",
- "name": "PATTERN BUSH",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_VIAPOIS_CHAMBER",
+ "name": "VIAPOIS CHAMBER"
},
{
- "map_section": "MAPSEC_ALTERING_CAVE_FRLG",
- "name": "ALTERING CAVE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_EMBER_SPA",
+ "name": "EMBER SPA"
},
{
- "map_section": "MAPSEC_TANOBY_CHAMBERS",
- "name": "TANOBY CHAMBERS",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_SPECIAL_AREA",
+ "name": "SPECIAL AREA"
},
{
- "map_section": "MAPSEC_THREE_ISLE_PATH",
- "name": "THREE ISLE PATH",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_TANOBY_KEY",
- "name": "TANOBY KEY",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_BIRTH_ISLAND_FRLG",
- "name": "BIRTH ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_MONEAN_CHAMBER",
- "name": "MONEAN CHAMBER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_LIPTOO_CHAMBER",
- "name": "LIPTOO CHAMBER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_WEEPTH_CHAMBER",
- "name": "WEEPTH CHAMBER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_DILFORD_CHAMBER",
- "name": "DILFORD CHAMBER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_SCUFIB_CHAMBER",
- "name": "SCUFIB CHAMBER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_RIXY_CHAMBER",
- "name": "RIXY CHAMBER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_VIAPOIS_CHAMBER",
- "name": "VIAPOIS CHAMBER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_EMBER_SPA",
- "name": "EMBER SPA",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_SPECIAL_AREA",
- "name": "SPECIAL AREA",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
- },
- {
- "map_section": "MAPSEC_AQUA_HIDEOUT",
+ "id": "MAPSEC_AQUA_HIDEOUT",
"name": "AQUA HIDEOUT",
"x": 19,
"y": 3,
@@ -1592,7 +1144,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_MAGMA_HIDEOUT",
+ "id": "MAPSEC_MAGMA_HIDEOUT",
"name": "MAGMA HIDEOUT",
"x": 6,
"y": 3,
@@ -1600,7 +1152,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_MIRAGE_TOWER",
+ "id": "MAPSEC_MIRAGE_TOWER",
"name": "MIRAGE TOWER",
"x": 8,
"y": 2,
@@ -1608,23 +1160,15 @@
"height": 1
},
{
- "map_section": "MAPSEC_BIRTH_ISLAND",
- "name": "BIRTH ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_BIRTH_ISLAND",
+ "name": "BIRTH ISLAND"
},
{
- "map_section": "MAPSEC_FARAWAY_ISLAND",
- "name": "FARAWAY ISLAND",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_FARAWAY_ISLAND",
+ "name": "FARAWAY ISLAND"
},
{
- "map_section": "MAPSEC_ARTISAN_CAVE",
+ "id": "MAPSEC_ARTISAN_CAVE",
"name": "ARTISAN CAVE",
"x": 22,
"y": 12,
@@ -1632,31 +1176,19 @@
"height": 1
},
{
- "map_section": "MAPSEC_MARINE_CAVE",
- "name": "MARINE CAVE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_MARINE_CAVE",
+ "name": "MARINE CAVE"
},
{
- "map_section": "MAPSEC_UNDERWATER_MARINE_CAVE",
- "name": "UNDERWATER",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_UNDERWATER_MARINE_CAVE",
+ "name": "UNDERWATER"
},
{
- "map_section": "MAPSEC_TERRA_CAVE",
- "name": "TERRA CAVE",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_TERRA_CAVE",
+ "name": "TERRA CAVE"
},
{
- "map_section": "MAPSEC_UNDERWATER_105",
+ "id": "MAPSEC_UNDERWATER_105",
"name": "UNDERWATER",
"x": 0,
"y": 10,
@@ -1664,7 +1196,7 @@
"height": 3
},
{
- "map_section": "MAPSEC_UNDERWATER_125",
+ "id": "MAPSEC_UNDERWATER_125",
"name": "UNDERWATER",
"x": 24,
"y": 3,
@@ -1672,7 +1204,7 @@
"height": 2
},
{
- "map_section": "MAPSEC_UNDERWATER_129",
+ "id": "MAPSEC_UNDERWATER_129",
"name": "UNDERWATER",
"x": 24,
"y": 10,
@@ -1680,7 +1212,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_DESERT_UNDERPASS",
+ "id": "MAPSEC_DESERT_UNDERPASS",
"name": "DESERT UNDERPASS",
"x": 2,
"y": 0,
@@ -1688,7 +1220,7 @@
"height": 1
},
{
- "map_section": "MAPSEC_ALTERING_CAVE",
+ "id": "MAPSEC_ALTERING_CAVE",
"name": "ALTERING CAVE",
"x": 6,
"y": 8,
@@ -1696,15 +1228,11 @@
"height": 1
},
{
- "map_section": "MAPSEC_NAVEL_ROCK",
- "name": "NAVEL ROCK",
- "x": 0,
- "y": 0,
- "width": 1,
- "height": 1
+ "id": "MAPSEC_NAVEL_ROCK",
+ "name": "NAVEL ROCK"
},
{
- "map_section": "MAPSEC_TRAINER_HILL",
+ "id": "MAPSEC_TRAINER_HILL",
"name": "TRAINER HILL",
"x": 8,
"y": 4,
diff --git a/src/data/region_map/region_map_sections.json.txt b/src/data/region_map/region_map_sections.json.txt
index e9c372cb54..0da2d31794 100644
--- a/src/data/region_map/region_map_sections.json.txt
+++ b/src/data/region_map/region_map_sections.json.txt
@@ -3,21 +3,49 @@
#define GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H
## for map_section in map_sections
-{% if isEmptyString(getVar(map_section.name)) and not existsIn(map_section, "name_clone") %}{{ setVar(map_section.name, map_section.map_section) }}{% endif %}
+{% if existsIn(map_section, "name") and isEmptyString(getVar(map_section.name)) and not existsIn(map_section, "name_clone") %}{{ setVar(map_section.name, map_section.id) }}{% endif %}
## endfor
## for map_section in map_sections
-{% if getVar(map_section.name) == map_section.map_section %}
+{% if existsIn(map_section, "name") %}
+{% if getVar(map_section.name) == map_section.id %}
static const u8 sMapName_{{ cleanString(map_section.name) }}[] = _("{{ map_section.name }}");
{% endif %}
{% if existsIn(map_section, "name_clone") %}
static const u8 sMapName_{{ cleanString(map_section.name) }}_Clone[] = _("{{ map_section.name }}");
{% endif %}
+{% endif %}
## endfor
const struct RegionMapLocation gRegionMapEntries[] = {
## for map_section in map_sections
- [{{ map_section.map_section }}] = { {{ map_section.x }}, {{ map_section.y }}, {{ map_section.width }}, {{ map_section.height }}, sMapName_{{ cleanString(map_section.name) }}{% if existsIn(map_section, "name_clone") %}_Clone{% endif %} },
+ [{{ map_section.id }}] = {
+{% if existsIn(map_section, "x") %}
+ .x = {{ map_section.x }},
+{% else %}
+ .x = 0,
+{% endif %}
+{% if existsIn(map_section, "y") %}
+ .y = {{ map_section.y }},
+{% else %}
+ .y = 0,
+{% endif %}
+{% if existsIn(map_section, "width") %}
+ .width = {{ map_section.width }},
+{% else %}
+ .width = 1,
+{% endif %}
+{% if existsIn(map_section, "height") %}
+ .height = {{ map_section.height }},
+{% else %}
+ .height = 1,
+{% endif %}
+{% if existsIn(map_section, "name") %}
+ .name = sMapName_{{ cleanString(map_section.name) }}{% if existsIn(map_section, "name_clone") %}_Clone{% endif %},
+{% else %}
+ .name = (const u8[])_(""),
+{% endif %}
+ },
## endfor
};
diff --git a/src/data/tilesets/headers.h b/src/data/tilesets/headers.h
index 2eae1be1ea..f6cac20c05 100644
--- a/src/data/tilesets/headers.h
+++ b/src/data/tilesets/headers.h
@@ -636,8 +636,8 @@ const struct Tileset gTileset_SecretBase =
.callback = NULL,
};
-const struct Tileset * const gTilesetPointer_SecretBase = &gTileset_SecretBase;
-const struct Tileset * const gTilesetPointer_SecretBaseRedCave = &gTileset_SecretBaseRedCave;
+const struct Tileset *const gTilesetPointer_SecretBase = &gTileset_SecretBase;
+const struct Tileset *const gTilesetPointer_SecretBaseRedCave = &gTileset_SecretBaseRedCave;
const struct Tileset gTileset_EliteFour =
{
diff --git a/src/data/union_room.h b/src/data/union_room.h
index 129c629941..8f17bb81db 100644
--- a/src/data/union_room.h
+++ b/src/data/union_room.h
@@ -451,7 +451,7 @@ ALIGNED(4) static const u8 sText_NobodyHasRegistered[] = _("Nobody has registere
ALIGNED(4) static const u8 sText_ChooseRequestedMonType[] = _("Please choose the type of POKéMON\nthat you would like in the trade.\n");
ALIGNED(4) static const u8 sText_WhichMonWillYouOffer[] = _("Which of your party POKéMON will\nyou offer in trade?\p");
ALIGNED(4) static const u8 sText_RegistrationCanceled[] = _("Registration has been canceled.\p");
-ALIGNED(4) static const u8 sText_RegistraionCompleted[] = _("Registration has been completed.\p");
+ALIGNED(4) static const u8 sText_RegistrationCompleted[] = _("Registration has been completed.\p");
ALIGNED(4) static const u8 sText_TradeCanceled[] = _("The trade has been canceled.\p");
ALIGNED(4) static const u8 sText_CancelRegistrationOfMon[] = _("Cancel the registration of your\nLv. {STR_VAR_2} {STR_VAR_1}?");
ALIGNED(4) static const u8 sText_CancelRegistrationOfEgg[] = _("Cancel the registration of your\nEGG?");
@@ -633,10 +633,10 @@ static const struct WindowTemplate sWindowTemplate_BButtonCancel = {
// Minimum and maximum number of players for a link group
// A minimum of 0 means the min and max are equal
-#define LINK_GROUP_CAPACITY(min, max)(((min) << 12) | ((max) << 8))
-#define GROUP_MAX(capacity)(capacity & 0x0F)
-#define GROUP_MIN(capacity)(capacity >> 4)
-#define GROUP_MIN2(capacity)(capacity & 0xF0) // Unnecessary to have both, but needed to match
+#define LINK_GROUP_CAPACITY(min, max) (((min) << 12) | ((max) << 8))
+#define GROUP_MAX(capacity) (capacity & 0x0F)
+#define GROUP_MIN(capacity) (capacity >> 4)
+#define GROUP_MIN2(capacity) (capacity & 0xF0) // Unnecessary to have both, but needed to match
static const u32 sLinkGroupToActivityAndCapacity[NUM_LINK_GROUP_TYPES] = {
[LINK_GROUP_SINGLE_BATTLE] = ACTIVITY_BATTLE_SINGLE | LINK_GROUP_CAPACITY(0, 2),
diff --git a/src/data/wild_encounters.json.txt b/src/data/wild_encounters.json.txt
index bf848249f0..38df4dc712 100755
--- a/src/data/wild_encounters.json.txt
+++ b/src/data/wild_encounters.json.txt
@@ -70,8 +70,8 @@ const struct WildPokemonHeader {{ wild_encounter_group.label }}[] =
{
## for encounter in wild_encounter_group.encounters
{
- .mapGroup = {% if wild_encounter_group.for_maps %}MAP_GROUP({{ removePrefix(encounter.map, "MAP_") }}){% else %}0{% endif %},
- .mapNum = {% if wild_encounter_group.for_maps %}MAP_NUM({{ removePrefix(encounter.map, "MAP_") }}){% else %}{{ loop.index1 }}{% endif %},
+ .mapGroup = {% if wild_encounter_group.for_maps %}MAP_GROUP({{ encounter.map }}){% else %}0{% endif %},
+ .mapNum = {% if wild_encounter_group.for_maps %}MAP_NUM({{ encounter.map }}){% else %}{{ loop.index1 }}{% endif %},
.landMonsInfo = {% if existsIn(encounter, "land_mons") %}&{{ encounter.base_label }}_LandMonsInfo{% else %}NULL{% endif %},
.waterMonsInfo = {% if existsIn(encounter, "water_mons") %}&{{ encounter.base_label }}_WaterMonsInfo{% else %}NULL{% endif %},
.rockSmashMonsInfo = {% if existsIn(encounter, "rock_smash_mons") %}&{{ encounter.base_label }}_RockSmashMonsInfo{% else %}NULL{% endif %},
@@ -79,8 +79,8 @@ const struct WildPokemonHeader {{ wild_encounter_group.label }}[] =
},
## endfor
{
- .mapGroup = MAP_GROUP(UNDEFINED),
- .mapNum = MAP_NUM(UNDEFINED),
+ .mapGroup = MAP_GROUP(MAP_UNDEFINED),
+ .mapNum = MAP_NUM(MAP_UNDEFINED),
.landMonsInfo = NULL,
.waterMonsInfo = NULL,
.rockSmashMonsInfo = NULL,
diff --git a/src/daycare.c b/src/daycare.c
index d62bd589d0..5ebe255b39 100644
--- a/src/daycare.c
+++ b/src/daycare.c
@@ -193,10 +193,10 @@ void StoreSelectedPokemonInDaycare(void)
StorePokemonInEmptyDaycareSlot(&gPlayerParty[monId], &gSaveBlock1Ptr->daycare);
}
-// Shifts the second daycare pokemon slot into the first slot.
+// Shifts the second daycare Pokémon slot into the first slot.
static void ShiftDaycareSlots(struct DayCare *daycare)
{
- // This condition is only satisfied when the player takes out the first pokemon from the daycare.
+ // This condition is only satisfied when the player takes out the first Pokémon from the daycare.
if (GetBoxMonData(&daycare->mons[1].mon, MON_DATA_SPECIES) != SPECIES_NONE
&& GetBoxMonData(&daycare->mons[0].mon, MON_DATA_SPECIES) == SPECIES_NONE)
{
@@ -596,7 +596,7 @@ static void InheritIVs(struct Pokemon *egg, struct DayCare *daycare)
}
}
-// Counts the number of egg moves a pokemon learns and stores the moves in
+// Counts the number of egg moves a Pokémon learns and stores the moves in
// the given array.
static u8 GetEggMoves(struct Pokemon *pokemon, u16 *eggMoves)
{
diff --git a/src/decompress.c b/src/decompress.c
index 8452f340ed..491ae8587f 100644
--- a/src/decompress.c
+++ b/src/decompress.c
@@ -100,9 +100,13 @@ void LoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32
LZ77UnCompWram(gMonFrontPicTable[i].data, dest);
}
else if (species > NUM_SPECIES) // is species unknown? draw the ? icon
+ {
LZ77UnCompWram(gMonFrontPicTable[0].data, dest);
+ }
else
+ {
LZ77UnCompWram(src->data, dest);
+ }
DuplicateDeoxysTiles(dest, species);
DrawSpindaSpots(species, personality, dest, isFrontPic);
@@ -214,7 +218,8 @@ static void UNUSED StitchObjectsOn8x8Canvas(s32 object_size, s32 object_count, u
// While the remaining space will be filled with actual data
if (object_size == 6)
{
- for (k = 0; k < 256; k++) {
+ for (k = 0; k < 256; k++)
+ {
*dest = 0;
dest++;
}
@@ -224,14 +229,16 @@ static void UNUSED StitchObjectsOn8x8Canvas(s32 object_size, s32 object_count, u
{
if (object_size == 6)
{
- for (k = 0; k < 32; k++) {
+ for (k = 0; k < 32; k++)
+ {
*dest = 0;
dest++;
}
}
// Copy tile data
- for (k = 0; k < 32 * object_size; k++) {
+ for (k = 0; k < 32 * object_size; k++)
+ {
*dest = *src;
src++;
dest++;
@@ -239,7 +246,8 @@ static void UNUSED StitchObjectsOn8x8Canvas(s32 object_size, s32 object_count, u
if (object_size == 6)
{
- for (k = 0; k < 32; k++) {
+ for (k = 0; k < 32; k++)
+ {
*dest = 0;
dest++;
}
@@ -248,7 +256,8 @@ static void UNUSED StitchObjectsOn8x8Canvas(s32 object_size, s32 object_count, u
if (object_size == 6)
{
- for (k = 0; k < 256; k++) {
+ for (k = 0; k < 256; k++)
+ {
*dest = 0;
dest++;
}
@@ -322,9 +331,13 @@ void LoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *dest, s
LZ77UnCompWram(gMonFrontPicTable[i].data, dest);
}
else if (species > NUM_SPECIES) // is species unknown? draw the ? icon
+ {
LZ77UnCompWram(gMonFrontPicTable[0].data, dest);
+ }
else
+ {
LZ77UnCompWram(src->data, dest);
+ }
DuplicateDeoxysTiles(dest, species);
DrawSpindaSpots(species, personality, dest, isFrontPic);
@@ -380,9 +393,13 @@ void LoadSpecialPokePic_DontHandleDeoxys(const struct CompressedSpriteSheet *src
LZ77UnCompWram(gMonFrontPicTable[i].data, dest);
}
else if (species > NUM_SPECIES) // is species unknown? draw the ? icon
+ {
LZ77UnCompWram(gMonFrontPicTable[0].data, dest);
+ }
else
+ {
LZ77UnCompWram(src->data, dest);
+ }
DrawSpindaSpots(species, personality, dest, isFrontPic);
}
diff --git a/src/decoration.c b/src/decoration.c
index f4fae6cc5e..98c6dba176 100644
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -1340,7 +1340,8 @@ static void DecorationItemsMenuAction_AttemptPlace(u8 taskId)
else
{
ConvertIntToDecimalStringN(gStringVar1, sDecorationContext.size, STR_CONV_MODE_RIGHT_ALIGN, 2);
- if (sDecorationContext.isPlayerRoom == FALSE) {
+ if (sDecorationContext.isPlayerRoom == FALSE)
+ {
StringExpandPlaceholders(gStringVar4, gText_NoMoreDecorations);
}
else
@@ -1920,7 +1921,7 @@ static void ClearPlaceDecorationGraphicsDataBuffer(struct PlaceDecorationGraphic
static void CopyPalette(u16 *dest, u16 pal)
{
- CpuFastCopy(&((u16 *)gTilesetPointer_SecretBase->palettes)[pal * 16], dest, sizeof(u16) * 16);
+ CpuFastCopy(&gTilesetPointer_SecretBase->palettes[pal], dest, PLTT_SIZE_4BPP);
}
static void CopyTile(u8 *dest, u16 tile)
@@ -1933,7 +1934,7 @@ static void CopyTile(u8 *dest, u16 tile)
if (tile != 0)
tile &= 0x03FF;
- CpuFastCopy(&((u8 *)gTilesetPointer_SecretBase->tiles)[tile * TILE_SIZE_4BPP], buffer, TILE_SIZE_4BPP);
+ CpuFastCopy(&gTilesetPointer_SecretBase->tiles[tile * TILE_SIZE_4BPP / sizeof(u32)], buffer, TILE_SIZE_4BPP);
switch (mode)
{
case 0:
@@ -1975,7 +1976,7 @@ static void SetDecorSelectionBoxTiles(struct PlaceDecorationGraphicsDataBuffer *
static u16 GetMetatile(u16 tile)
{
- return ((u16 *)gTilesetPointer_SecretBaseRedCave->metatiles)[tile] & 0xFFF;
+ return gTilesetPointer_SecretBaseRedCave->metatiles[tile] & 0xFFF;
}
static void SetDecorSelectionMetatiles(struct PlaceDecorationGraphicsDataBuffer *data)
@@ -2046,7 +2047,7 @@ static u8 gpu_pal_decompress_alloc_tag_and_upload(struct PlaceDecorationGraphics
SetDecorSelectionMetatiles(data);
SetDecorSelectionBoxOamAttributes(data->decoration->shape);
SetDecorSelectionBoxTiles(data);
- CopyPalette(data->palette, ((u16 *)gTilesetPointer_SecretBaseRedCave->metatiles)[(data->decoration->tiles[0] * NUM_TILES_PER_METATILE) + 7] >> 12);
+ CopyPalette(data->palette, gTilesetPointer_SecretBaseRedCave->metatiles[(data->decoration->tiles[0] * NUM_TILES_PER_METATILE) + 7] >> 12);
LoadSpritePalette(&sSpritePal_PlaceDecoration);
return CreateSprite(&sDecorationSelectorSpriteTemplate, 0, 0, 0);
}
@@ -2102,7 +2103,7 @@ static u8 AddDecorationIconObjectFromObjectEvent(u16 tilesTag, u16 paletteTag, u
SetDecorSelectionMetatiles(&sPlaceDecorationGraphicsDataBuffer);
SetDecorSelectionBoxOamAttributes(sPlaceDecorationGraphicsDataBuffer.decoration->shape);
SetDecorSelectionBoxTiles(&sPlaceDecorationGraphicsDataBuffer);
- CopyPalette(sPlaceDecorationGraphicsDataBuffer.palette, ((u16 *)gTilesetPointer_SecretBaseRedCave->metatiles)[(sPlaceDecorationGraphicsDataBuffer.decoration->tiles[0] * NUM_TILES_PER_METATILE) + 7] >> 12);
+ CopyPalette(sPlaceDecorationGraphicsDataBuffer.palette, gTilesetPointer_SecretBaseRedCave->metatiles[(sPlaceDecorationGraphicsDataBuffer.decoration->tiles[0] * NUM_TILES_PER_METATILE) + 7] >> 12);
sheet.data = sPlaceDecorationGraphicsDataBuffer.image;
sheet.size = sDecorShapeSizes[sPlaceDecorationGraphicsDataBuffer.decoration->shape] * TILE_SIZE_4BPP;
sheet.tag = tilesTag;
@@ -2254,7 +2255,8 @@ static void Task_PutAwayDecoration(u8 taskId)
gTasks[taskId].tState = 1;
break;
case 1:
- if (!gPaletteFade.active) {
+ if (!gPaletteFade.active)
+ {
DrawWholeMapView();
ScriptContext_SetupScript(SecretBase_EventScript_PutAwayDecoration);
ClearDialogWindowAndFrame(0, TRUE);
diff --git a/gflib/dma3_manager.c b/src/dma3_manager.c
similarity index 100%
rename from gflib/dma3_manager.c
rename to src/dma3_manager.c
diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c
index 1b4500002c..16ea035c7c 100644
--- a/src/dodrio_berry_picking.c
+++ b/src/dodrio_berry_picking.c
@@ -275,13 +275,13 @@ struct DodrioGame
/*0x3308*/ struct DodrioGame_ScoreResults scoreResults[MAX_RFU_PLAYERS];
}; // size = 0x3330
-EWRAM_DATA static struct DodrioGame * sGame = NULL;
-EWRAM_DATA static u16 * sDodrioSpriteIds[MAX_RFU_PLAYERS] = {NULL};
-EWRAM_DATA static u16 * sCloudSpriteIds[NUM_CLOUDS] = {NULL};
-EWRAM_DATA static u16 * sBerrySpriteIds[NUM_BERRY_COLUMNS] = {NULL};
-EWRAM_DATA static u16 * sBerryIconSpriteIds[NUM_BERRY_TYPES] = {NULL};
-EWRAM_DATA static struct StatusBar * sStatusBar = NULL;
-EWRAM_DATA static struct DodrioGame_Gfx * sGfx = NULL;
+EWRAM_DATA static struct DodrioGame *sGame = NULL;
+EWRAM_DATA static u16 *sDodrioSpriteIds[MAX_RFU_PLAYERS] = {NULL};
+EWRAM_DATA static u16 *sCloudSpriteIds[NUM_CLOUDS] = {NULL};
+EWRAM_DATA static u16 *sBerrySpriteIds[NUM_BERRY_COLUMNS] = {NULL};
+EWRAM_DATA static u16 *sBerryIconSpriteIds[NUM_BERRY_TYPES] = {NULL};
+EWRAM_DATA static struct StatusBar *sStatusBar = NULL;
+EWRAM_DATA static struct DodrioGame_Gfx *sGfx = NULL;
static bool32 sExitingGame;
@@ -695,7 +695,7 @@ static void ResetTasksAndSprites(void)
FreeAllSpritePalettes();
}
-static void InitDodrioGame(struct DodrioGame * game)
+static void InitDodrioGame(struct DodrioGame *game)
{
u8 i;
@@ -1091,32 +1091,39 @@ static void InitResults_Member(void)
{
u8 i;
- switch (sGame->state) {
+ switch (sGame->state)
+ {
case 0:
- if (SendBlock(0, sGame->berryResults[sGame->timer], sizeof(sGame->berryResults))) {
+ if (SendBlock(0, sGame->berryResults[sGame->timer], sizeof(sGame->berryResults)))
+ {
sGame->playersReceived = 0;
sGame->state++;
}
break;
case 1:
- if (IsLinkTaskFinished()) {
+ if (IsLinkTaskFinished())
+ {
sGame->state++;
}
break;
case 2:
- if (AllLinkBlocksReceived()) {
- for (i = 0; i < sGame->numPlayers; i++) {
+ if (AllLinkBlocksReceived())
+ {
+ for (i = 0; i < sGame->numPlayers; i++)
+ {
memcpy(sGame->berryResults, gBlockRecvBuffer, sizeof(sGame->berryResults));
sGame->playersReceived = sGame->numPlayers;
}
}
- if (sGame->playersReceived >= sGame->numPlayers) {
+ if (sGame->playersReceived >= sGame->numPlayers)
+ {
sGame->timer++;
sGame->state++;
}
break;
default:
- if (WaitFanfare(TRUE)) {
+ if (WaitFanfare(TRUE))
+ {
sGame->maxBerriesPickedInRow = sGame->berryResults[sGame->multiplayerId][BERRY_IN_ROW];
SetGameFunc(FUNC_RESULTS);
FadeOutAndPlayNewMapMusic(MUS_RG_VICTORY_WILD, 4);
@@ -1426,7 +1433,7 @@ static void Task_NewGameIntro(u8 taskId)
static void Task_CommunicateMonInfo(u8 taskId)
{
- s16 * data = gTasks[taskId].data;
+ s16 *data = gTasks[taskId].data;
u8 i;
switch (tState)
@@ -1752,7 +1759,7 @@ static void HandleSound_Member(void)
}
for (i = berryStart; i < berryEnd; i++)
{
- struct DodrioGame_Berries * berries = &sGame->players[sGame->multiplayerId].berries;
+ struct DodrioGame_Berries *berries = &sGame->players[sGame->multiplayerId].berries;
if (berries->fallDist[i] >= MAX_FALL_DIST)
{
if (!sGame->playingSquishSound[i])
@@ -1795,7 +1802,7 @@ static void VBlankCB_DodrioGame(void)
ProcessSpriteCopyRequests();
}
-static void InitMonInfo(struct DodrioGame_MonInfo * monInfo, struct Pokemon *mon)
+static void InitMonInfo(struct DodrioGame_MonInfo *monInfo, struct Pokemon *mon)
{
monInfo->isShiny = IsMonShiny(mon);
}
@@ -1854,7 +1861,7 @@ static void InitFirstWaveOfBerries(void)
for (i = berryStart; i < berryEnd; i++)
{
- struct DodrioGame_Berries * berries = &sGame->player.berries;
+ struct DodrioGame_Berries *berries = &sGame->player.berries;
berries->fallDist[i] = (i % 2 == 0) ? 1 : 0;
berries->ids[i] = BERRY_BLUE;
}
@@ -1988,7 +1995,7 @@ static bool32 TryPickBerry(u8 playerId, u8 pickState, u8 column)
{
s32 pick = 0;
u8 numPlayersIdx = sGame->numPlayers - 1;
- struct DodrioGame_Berries * berries = &sGame->player.berries;
+ struct DodrioGame_Berries *berries = &sGame->player.berries;
switch (pickState)
{
@@ -3834,7 +3841,7 @@ static void LoadDodrioGfx(void)
LoadSpritePalette(&shiny);
}
-static void CreateDodrioSprite(struct DodrioGame_MonInfo * monInfo, u8 playerId, u8 id, u8 numPlayers)
+static void CreateDodrioSprite(struct DodrioGame_MonInfo *monInfo, u8 playerId, u8 id, u8 numPlayers)
{
struct SpriteTemplate template =
{
diff --git a/src/easy_chat.c b/src/easy_chat.c
index 8e93ca310e..760b07e382 100644
--- a/src/easy_chat.c
+++ b/src/easy_chat.c
@@ -1478,10 +1478,10 @@ void ShowEasyChatScreen(void)
break;
case EASY_CHAT_TYPE_BARD_SONG:
bard = &gSaveBlock1Ptr->oldMan.bard;
- for (i = 0; i < BARD_SONG_LENGTH; i ++)
- bard->temporaryLyrics[i] = bard->songLyrics[i];
+ for (i = 0; i < NUM_BARD_SONG_WORDS; i ++)
+ bard->newSongLyrics[i] = bard->songLyrics[i];
- words = bard->temporaryLyrics;
+ words = bard->newSongLyrics;
break;
case EASY_CHAT_TYPE_INTERVIEW:
words = gSaveBlock1Ptr->tvShows[gSpecialVar_0x8005].bravoTrainer.words;
diff --git a/src/egg_hatch.c b/src/egg_hatch.c
index abf1aff841..5aa955d7e9 100644
--- a/src/egg_hatch.c
+++ b/src/egg_hatch.c
@@ -33,6 +33,7 @@
#include "naming_screen.h"
#include "pokemon_storage_system.h"
#include "field_screen_effect.h"
+#include "trade.h"
#include "data.h"
#include "battle.h" // to get rid of later
#include "constants/rgb.h"
@@ -62,7 +63,6 @@ struct EggHatchData
u8 textColor[3];
};
-extern const u32 gTradePlatform_Tilemap[];
extern const u8 gText_HatchedFromEgg[];
extern const u8 gText_NicknameHatchPrompt[];
diff --git a/src/ereader_helpers.c b/src/ereader_helpers.c
index c5b8712b5c..0e49967049 100755
--- a/src/ereader_helpers.c
+++ b/src/ereader_helpers.c
@@ -378,7 +378,7 @@ static u8 GetTrainerHillUnkVal(void)
return (gSaveBlock1Ptr->trainerHill.unused + 1) % 256;
}
-static bool32 ValidateTrainerChecksum(struct EReaderTrainerHillTrainer * hillTrainer)
+static bool32 ValidateTrainerChecksum(struct EReaderTrainerHillTrainer *hillTrainer)
{
int checksum = CalcByteArraySum((u8 *)hillTrainer, offsetof(typeof(*hillTrainer), checksum));
if (checksum != hillTrainer->checksum)
@@ -387,7 +387,7 @@ static bool32 ValidateTrainerChecksum(struct EReaderTrainerHillTrainer * hillTra
return TRUE;
}
-bool8 ValidateTrainerHillData(struct EReaderTrainerHillSet * hillSet)
+bool8 ValidateTrainerHillData(struct EReaderTrainerHillSet *hillSet)
{
u32 i;
u32 checksum;
@@ -426,7 +426,7 @@ static bool32 ValidateTrainerHillChecksum(struct EReaderTrainerHillSet *hillSet)
return TRUE;
}
-static bool32 TryWriteTrainerHill_Internal(struct EReaderTrainerHillSet * hillSet, struct TrainerHillChallenge * challenge)
+static bool32 TryWriteTrainerHill_Internal(struct EReaderTrainerHillSet *hillSet, struct TrainerHillChallenge *challenge)
{
int i;
@@ -465,7 +465,7 @@ static bool32 TryWriteTrainerHill_Internal(struct EReaderTrainerHillSet * hillSe
return TRUE;
}
-bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet * hillSet)
+bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet *hillSet)
{
void *buffer = AllocZeroed(SECTOR_SIZE);
bool32 result = TryWriteTrainerHill_Internal(hillSet, buffer);
@@ -473,7 +473,7 @@ bool32 TryWriteTrainerHill(struct EReaderTrainerHillSet * hillSet)
return result;
}
-static bool32 TryReadTrainerHill_Internal(struct EReaderTrainerHillSet * dest, u8 * buffer)
+static bool32 TryReadTrainerHill_Internal(struct EReaderTrainerHillSet *dest, u8 *buffer)
{
if (TryReadSpecialSaveSector(SECTOR_ID_TRAINER_HILL, buffer) != SAVE_STATUS_OK)
return FALSE;
@@ -485,7 +485,7 @@ static bool32 TryReadTrainerHill_Internal(struct EReaderTrainerHillSet * dest, u
return TRUE;
}
-static bool32 TryReadTrainerHill(struct EReaderTrainerHillSet * hillSet)
+static bool32 TryReadTrainerHill(struct EReaderTrainerHillSet *hillSet)
{
u8 *buffer = AllocZeroed(SECTOR_SIZE);
bool32 result = TryReadTrainerHill_Internal(hillSet, buffer);
@@ -501,7 +501,7 @@ bool32 ReadTrainerHillAndValidate(void)
return result;
}
-int EReader_Send(int size, const void * src)
+int EReader_Send(int size, const void *src)
{
int result;
int sendStatus;
@@ -542,7 +542,7 @@ int EReader_Send(int size, const void * src)
return result;
}
-int EReader_Recv(void * dest)
+int EReader_Recv(void *dest)
{
int result;
int recvStatus;
@@ -619,7 +619,7 @@ static void OpenSerial32(void)
sCounter2 = 0;
}
-int EReaderHandleTransfer(u8 mode, size_t size, const void * data, void * recvBuffer)
+int EReaderHandleTransfer(u8 mode, size_t size, const void *data, void *recvBuffer)
{
switch (sSendRecvMgr.state)
{
@@ -712,7 +712,7 @@ static u16 DetermineSendRecvState(u8 mode)
return resp;
}
-static void SetUpTransferManager(size_t size, const void * data, void * recvBuffer)
+static void SetUpTransferManager(size_t size, const void *data, void *recvBuffer)
{
if (sSendRecvMgr.isParent)
{
diff --git a/src/ereader_screen.c b/src/ereader_screen.c
index c625c78a9e..556acf8e3c 100755
--- a/src/ereader_screen.c
+++ b/src/ereader_screen.c
@@ -40,7 +40,10 @@ struct EReaderData
static void Task_EReader(u8);
-struct EReaderData gEReaderData;
+// This belongs in COMMON somewhere between party_menu and ereader_screen, but it's unused so it's unclear where.
+COMMON_DATA UNUSED u8 gUnknownSpace[64] = {0};
+
+COMMON_DATA struct EReaderData gEReaderData = {0};
extern const u8 gMultiBootProgram_EReader_Start[];
extern const u8 gMultiBootProgram_EReader_End[];
diff --git a/src/event_object_lock.c b/src/event_object_lock.c
index 29575111fb..7cb260757c 100644
--- a/src/event_object_lock.c
+++ b/src/event_object_lock.c
@@ -98,7 +98,7 @@ void FreezeObjects_WaitForPlayerAndSelected(void)
void ScriptUnfreezeObjectEvents(void)
{
- u8 playerObjectId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ u8 playerObjectId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]);
ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents();
@@ -110,7 +110,7 @@ void UnionRoom_UnlockPlayerAndChatPartner(void)
if (gObjectEvents[gSelectedObjectEvent].active)
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[gSelectedObjectEvent]);
- playerObjectId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ playerObjectId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]);
ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents();
diff --git a/src/event_object_movement.c b/src/event_object_movement.c
index a181ea9f21..6997f0b40a 100644
--- a/src/event_object_movement.c
+++ b/src/event_object_movement.c
@@ -30,6 +30,17 @@
#include "constants/trainer_types.h"
#include "constants/union_room.h"
+#define SPECIAL_LOCALIDS_START (min(LOCALID_CAMERA, \
+ min(LOCALID_PLAYER, \
+ LOCALID_BERRY_BLENDER_PLAYER_END - MAX_RFU_PLAYERS + 1)))
+
+// The object event templates on a map cannot use the special IDs listed above or they can behave unexpectedly.
+// For more details on these special IDs see their definitions in 'include/constants/event_objects.h'.
+// OBJECT_EVENT_TEMPLATES_COUNT should always be low enough that it doesn't overlap with these IDs.
+#if OBJECT_EVENT_TEMPLATES_COUNT >= SPECIAL_LOCALIDS_START
+#error "OBJECT_EVENT_TEMPLATES_COUNT is too large. Object event local IDs may overlap with reserved IDs."
+#endif
+
// this file was known as evobjmv.c in Game Freak's original source
enum {
@@ -144,9 +155,9 @@ static u8 FindObjectEventPaletteIndexByTag(u16);
static void _PatchObjectPalette(u16, u8);
static bool8 ObjectEventDoesElevationMatch(struct ObjectEvent *, u8);
static void SpriteCB_CameraObject(struct Sprite *);
-static void CameraObject_0(struct Sprite *);
-static void CameraObject_1(struct Sprite *);
-static void CameraObject_2(struct Sprite *);
+static void CameraObject_Init(struct Sprite *);
+static void CameraObject_UpdateMove(struct Sprite *);
+static void CameraObject_UpdateFrozen(struct Sprite *);
static const struct ObjectEventTemplate *FindObjectEventTemplateByLocalId(u8, const struct ObjectEventTemplate *, u8);
static void ClearObjectEventMovement(struct ObjectEvent *, struct Sprite *);
static void ObjectEventSetSingleMovement(struct ObjectEvent *, struct Sprite *, u8);
@@ -193,10 +204,16 @@ static const struct SpriteTemplate sCameraSpriteTemplate = {
.callback = SpriteCB_CameraObject
};
+enum {
+ CAMERA_STATE_INIT,
+ CAMERA_STATE_MOVE,
+ CAMERA_STATE_FROZEN,
+};
+
static void (*const sCameraObjectFuncs[])(struct Sprite *) = {
- CameraObject_0,
- CameraObject_1,
- CameraObject_2,
+ [CAMERA_STATE_INIT] = CameraObject_Init,
+ [CAMERA_STATE_MOVE] = CameraObject_UpdateMove,
+ [CAMERA_STATE_FROZEN] = CameraObject_UpdateFrozen,
};
#include "data/object_events/object_event_graphics.h"
@@ -1165,9 +1182,9 @@ static const u8 sPlayerDirectionToCopyDirection[][4] = {
static void ClearObjectEvent(struct ObjectEvent *objectEvent)
{
*objectEvent = (struct ObjectEvent){};
- objectEvent->localId = OBJ_EVENT_ID_PLAYER;
- objectEvent->mapNum = MAP_NUM(UNDEFINED);
- objectEvent->mapGroup = MAP_GROUP(UNDEFINED);
+ objectEvent->localId = LOCALID_PLAYER;
+ objectEvent->mapNum = MAP_NUM(MAP_UNDEFINED);
+ objectEvent->mapGroup = MAP_GROUP(MAP_UNDEFINED);
objectEvent->movementActionId = MOVEMENT_ACTION_NONE;
}
@@ -1216,7 +1233,7 @@ u8 GetFirstInactiveObjectEventId(void)
u8 GetObjectEventIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroupId)
{
- if (localId < OBJ_EVENT_ID_PLAYER)
+ if (localId < LOCALID_PLAYER)
return GetObjectEventIdByLocalIdAndMapInternal(localId, mapNum, mapGroupId);
return GetObjectEventIdByLocalId(localId);
@@ -1295,8 +1312,8 @@ static u8 InitObjectEventStateFromTemplate(const struct ObjectEventTemplate *tem
objectEvent->previousCoords.y = y;
objectEvent->currentElevation = template->elevation;
objectEvent->previousElevation = template->elevation;
- objectEvent->rangeX = template->movementRangeX;
- objectEvent->rangeY = template->movementRangeY;
+ objectEvent->range.rangeX = template->movementRangeX;
+ objectEvent->range.rangeY = template->movementRangeY;
objectEvent->trainerType = template->trainerType;
objectEvent->mapNum = mapNum;
objectEvent->trainerRange_berryTreeId = template->trainerRange_berryTreeId;
@@ -1305,10 +1322,10 @@ static u8 InitObjectEventStateFromTemplate(const struct ObjectEventTemplate *tem
SetObjectEventDynamicGraphicsId(objectEvent);
if (sMovementTypeHasRange[objectEvent->movementType])
{
- if (objectEvent->rangeX == 0)
- objectEvent->rangeX++;
- if (objectEvent->rangeY == 0)
- objectEvent->rangeY++;
+ if (objectEvent->range.rangeX == 0)
+ objectEvent->range.rangeX++;
+ if (objectEvent->range.rangeY == 0)
+ objectEvent->range.rangeY++;
}
return objectEventId;
}
@@ -1321,7 +1338,7 @@ u8 Unref_TryInitLocalObjectEvent(u8 localId)
if (gMapHeader.events != NULL)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
objectEventCount = GetNumBattlePyramidObjectEvents();
else if (InTrainerHill())
objectEventCount = HILL_TRAINERS_PER_FLOOR;
@@ -1637,7 +1654,7 @@ void TrySpawnObjectEvents(s16 cameraX, s16 cameraY)
s16 top = gSaveBlock1Ptr->pos.y;
s16 bottom = gSaveBlock1Ptr->pos.y + MAP_OFFSET_H + 2;
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
objectCount = GetNumBattlePyramidObjectEvents();
else if (InTrainerHill())
objectCount = HILL_TRAINERS_PER_FLOOR;
@@ -1836,7 +1853,7 @@ void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId)
sprite->x += 8;
sprite->y += 16 + sprite->centerToCornerVecY;
if (objectEvent->trackedByCamera)
- CameraObjectReset1();
+ CameraObjectReset();
}
void ObjectEventSetGraphicsIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 graphicsId)
@@ -2128,7 +2145,7 @@ void MoveObjectEventToMapCoords(struct ObjectEvent *objectEvent, s16 x, s16 y)
sprite->y += 16 + sprite->centerToCornerVecY;
ResetObjectEventFldEffData(objectEvent);
if (objectEvent->trackedByCamera)
- CameraObjectReset1();
+ CameraObjectReset();
}
void TryMoveObjectEventToMapCoords(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y)
@@ -2204,15 +2221,15 @@ void UpdateObjectEventsForCameraUpdate(s16 x, s16 y)
RemoveObjectEventsOutsideView();
}
-#define sLinkedSpriteId data[0]
-#define sState data[1]
-
-u8 AddCameraObject(u8 linkedSpriteId)
+// The "CameraObject" functions below are responsible for an invisible sprite
+// that follows the movements of a different sprite (normally the player's sprite)
+// and tracks x/y movement distances for the camera so it knows where to move.
+u8 AddCameraObject(u8 followSpriteId)
{
u8 spriteId = CreateSprite(&sCameraSpriteTemplate, 0, 0, 4);
gSprites[spriteId].invisible = TRUE;
- gSprites[spriteId].sLinkedSpriteId = linkedSpriteId;
+ gSprites[spriteId].sCamera_FollowSpriteId = followSpriteId;
return spriteId;
}
@@ -2221,35 +2238,37 @@ static void SpriteCB_CameraObject(struct Sprite *sprite)
void (*callbacks[ARRAY_COUNT(sCameraObjectFuncs)])(struct Sprite *);
memcpy(callbacks, sCameraObjectFuncs, sizeof sCameraObjectFuncs);
- callbacks[sprite->sState](sprite);
+ callbacks[sprite->sCamera_State](sprite);
}
-static void CameraObject_0(struct Sprite *sprite)
+static void CameraObject_Init(struct Sprite *sprite)
{
- sprite->x = gSprites[sprite->sLinkedSpriteId].x;
- sprite->y = gSprites[sprite->sLinkedSpriteId].y;
+ sprite->x = gSprites[sprite->sCamera_FollowSpriteId].x;
+ sprite->y = gSprites[sprite->sCamera_FollowSpriteId].y;
sprite->invisible = TRUE;
- sprite->sState = 1;
- CameraObject_1(sprite);
+ sprite->sCamera_State = CAMERA_STATE_MOVE;
+ CameraObject_UpdateMove(sprite);
}
-static void CameraObject_1(struct Sprite *sprite)
+static void CameraObject_UpdateMove(struct Sprite *sprite)
{
- s16 x = gSprites[sprite->sLinkedSpriteId].x;
- s16 y = gSprites[sprite->sLinkedSpriteId].y;
+ s16 x = gSprites[sprite->sCamera_FollowSpriteId].x;
+ s16 y = gSprites[sprite->sCamera_FollowSpriteId].y;
- sprite->data[2] = x - sprite->x;
- sprite->data[3] = y - sprite->y;
+ sprite->sCamera_MoveX = x - sprite->x;
+ sprite->sCamera_MoveY = y - sprite->y;
sprite->x = x;
sprite->y = y;
}
-static void CameraObject_2(struct Sprite *sprite)
+// Invisible sprite will continue to follow the parent sprite,
+// but no corresponding camera movement will be shown.
+static void CameraObject_UpdateFrozen(struct Sprite *sprite)
{
- sprite->x = gSprites[sprite->sLinkedSpriteId].x;
- sprite->y = gSprites[sprite->sLinkedSpriteId].y;
- sprite->data[2] = 0;
- sprite->data[3] = 0;
+ sprite->x = gSprites[sprite->sCamera_FollowSpriteId].x;
+ sprite->y = gSprites[sprite->sCamera_FollowSpriteId].y;
+ sprite->sCamera_MoveX = 0;
+ sprite->sCamera_MoveY = 0;
}
static struct Sprite *FindCameraSprite(void)
@@ -2264,51 +2283,43 @@ static struct Sprite *FindCameraSprite(void)
return NULL;
}
-void CameraObjectReset1(void)
+void CameraObjectReset(void)
{
- struct Sprite *camera;
-
- camera = FindCameraSprite();
+ struct Sprite *camera = FindCameraSprite();
if (camera != NULL)
{
- camera->sState = 0;
+ camera->sCamera_State = CAMERA_STATE_INIT;
camera->callback(camera);
}
}
void CameraObjectSetFollowedSpriteId(u8 spriteId)
{
- struct Sprite *camera;
-
- camera = FindCameraSprite();
+ struct Sprite *camera = FindCameraSprite();
if (camera != NULL)
{
- camera->sLinkedSpriteId = spriteId;
- CameraObjectReset1();
+ camera->sCamera_FollowSpriteId = spriteId;
+ CameraObjectReset();
}
}
static u8 UNUSED CameraObjectGetFollowedSpriteId(void)
{
- struct Sprite *camera;
-
- camera = FindCameraSprite();
+ struct Sprite *camera = FindCameraSprite();
if (camera == NULL)
return MAX_SPRITES;
- return camera->sLinkedSpriteId;
+ return camera->sCamera_FollowSpriteId;
}
-void CameraObjectReset2(void)
+void CameraObjectFreeze(void)
{
- // UB: Possible null dereference
-#ifdef UBFIX
struct Sprite *camera = FindCameraSprite();
- if (camera)
- camera->sState = 2;
-#else
- FindCameraSprite()->sState = 2;
-#endif // UBFIX
+#ifdef UBFIX // Possible null dereference
+ if (camera == NULL)
+ return;
+#endif
+ camera->sCamera_State = CAMERA_STATE_FROZEN;
}
u8 CopySprite(struct Sprite *sprite, s16 x, s16 y, u8 subpriority)
@@ -4682,18 +4693,18 @@ static bool8 IsCoordOutsideObjectEventMovementRange(struct ObjectEvent *objectEv
s16 top;
s16 bottom;
- if (objectEvent->rangeX != 0)
+ if (objectEvent->range.rangeX != 0)
{
- left = objectEvent->initialCoords.x - objectEvent->rangeX;
- right = objectEvent->initialCoords.x + objectEvent->rangeX;
+ left = objectEvent->initialCoords.x - objectEvent->range.rangeX;
+ right = objectEvent->initialCoords.x + objectEvent->range.rangeX;
if (left > x || right < x)
return TRUE;
}
- if (objectEvent->rangeY != 0)
+ if (objectEvent->range.rangeY != 0)
{
- top = objectEvent->initialCoords.y - objectEvent->rangeY;
- bottom = objectEvent->initialCoords.y + objectEvent->rangeY;
+ top = objectEvent->initialCoords.y - objectEvent->range.rangeY;
+ bottom = objectEvent->initialCoords.y + objectEvent->range.rangeY;
if (top > y || bottom < y)
return TRUE;
@@ -6171,7 +6182,7 @@ bool8 MovementAction_FacePlayer_Step0(struct ObjectEvent *objectEvent, struct Sp
{
u8 playerObjectId;
- if (!TryGetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0, &playerObjectId))
+ if (!TryGetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0, &playerObjectId))
FaceDirection(objectEvent, sprite, GetDirectionToFace(objectEvent->currentCoords.x,
objectEvent->currentCoords.y,
gObjectEvents[playerObjectId].currentCoords.x,
@@ -6184,7 +6195,7 @@ bool8 MovementAction_FaceAwayPlayer_Step0(struct ObjectEvent *objectEvent, struc
{
u8 playerObjectId;
- if (!TryGetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0, &playerObjectId))
+ if (!TryGetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0, &playerObjectId))
FaceDirection(objectEvent, sprite, GetOppositeDirection(GetDirectionToFace(objectEvent->currentCoords.x,
objectEvent->currentCoords.y,
gObjectEvents[playerObjectId].currentCoords.x,
@@ -8070,14 +8081,18 @@ static void DoGroundEffects_OnSpawn(struct ObjectEvent *objEvent, struct Sprite
{
u32 flags;
+#ifdef BUGFIX
+ if (objEvent->triggerGroundEffectsOnMove && objEvent->localId != OBJ_EVENT_ID_CAMERA)
+#else
if (objEvent->triggerGroundEffectsOnMove)
+#endif
{
flags = 0;
UpdateObjectEventElevationAndPriority(objEvent, sprite);
GetAllGroundEffectFlags_OnSpawn(objEvent, &flags);
SetObjectEventSpriteOamTableForLongGrass(objEvent, sprite);
DoFlaggedGroundEffects(objEvent, sprite, flags);
- objEvent->triggerGroundEffectsOnMove = 0;
+ objEvent->triggerGroundEffectsOnMove = FALSE;
objEvent->disableCoveringGroundEffects = 0;
}
}
@@ -8086,7 +8101,11 @@ static void DoGroundEffects_OnBeginStep(struct ObjectEvent *objEvent, struct Spr
{
u32 flags;
+#ifdef BUGFIX
+ if (objEvent->triggerGroundEffectsOnMove && objEvent->localId != OBJ_EVENT_ID_CAMERA)
+#else
if (objEvent->triggerGroundEffectsOnMove)
+#endif
{
flags = 0;
UpdateObjectEventElevationAndPriority(objEvent, sprite);
@@ -8094,7 +8113,7 @@ static void DoGroundEffects_OnBeginStep(struct ObjectEvent *objEvent, struct Spr
SetObjectEventSpriteOamTableForLongGrass(objEvent, sprite);
filters_out_some_ground_effects(objEvent, &flags);
DoFlaggedGroundEffects(objEvent, sprite, flags);
- objEvent->triggerGroundEffectsOnMove = 0;
+ objEvent->triggerGroundEffectsOnMove = FALSE;
objEvent->disableCoveringGroundEffects = 0;
}
}
@@ -8103,7 +8122,11 @@ static void DoGroundEffects_OnFinishStep(struct ObjectEvent *objEvent, struct Sp
{
u32 flags;
+#ifdef BUGFIX
+ if (objEvent->triggerGroundEffectsOnStop && objEvent->localId != OBJ_EVENT_ID_CAMERA)
+#else
if (objEvent->triggerGroundEffectsOnStop)
+#endif
{
flags = 0;
UpdateObjectEventElevationAndPriority(objEvent, sprite);
@@ -8802,7 +8825,7 @@ u8 MovementAction_LockAnim_Step0(struct ObjectEvent *objectEvent, struct Sprite
bool32 found = FALSE;
for (i = 0; i < OBJECT_EVENTS_COUNT; i++)
{
- if (firstFreeSlot == OBJECT_EVENTS_COUNT && sLockedAnimObjectEvents->localIds[i] == 0)
+ if (firstFreeSlot == OBJECT_EVENTS_COUNT && sLockedAnimObjectEvents->localIds[i] == LOCALID_NONE)
firstFreeSlot = i;
if (sLockedAnimObjectEvents->localIds[i] == objectEvent->localId)
@@ -8842,7 +8865,7 @@ u8 MovementAction_UnlockAnim_Step0(struct ObjectEvent *objectEvent, struct Sprit
index = FindLockedObjectEventIndex(objectEvent);
if (index != OBJECT_EVENTS_COUNT)
{
- sLockedAnimObjectEvents->localIds[index] = 0;
+ sLockedAnimObjectEvents->localIds[index] = LOCALID_NONE;
sLockedAnimObjectEvents->count--;
ableToStore = TRUE;
}
diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c
index 96ff1b52df..1568c18d5f 100644
--- a/src/evolution_graphics.c
+++ b/src/evolution_graphics.c
@@ -150,7 +150,9 @@ static void SpriteCB_Sparkle_SpiralUpward(struct Sprite *sprite)
sprite->oam.matrixNum = matrixNum;
}
else
+ {
DestroySprite(sprite);
+ }
}
static void CreateSparkle_SpiralUpward(u8 trigIdx)
@@ -178,7 +180,9 @@ static void SpriteCB_Sparkle_ArcDown(struct Sprite *sprite)
sprite->sTimer++;
}
else
+ {
DestroySprite(sprite);
+ }
}
static void CreateSparkle_ArcDown(u8 trigIdx)
@@ -206,7 +210,9 @@ static void SpriteCB_Sparkle_CircleInward(struct Sprite *sprite)
sprite->sTrigIdx += 4;
}
else
+ {
DestroySprite(sprite);
+ }
}
static void CreateSparkle_CircleInward(u8 trigIdx, u8 speed)
@@ -238,7 +244,9 @@ static void SpriteCB_Sparkle_Spray(struct Sprite *sprite)
sprite->sTrigIdx++;
matrixNum = 31 - (sprite->sTrigIdx * 12 / 128);
if (sprite->sTrigIdx > 64)
+ {
sprite->subpriority = 1;
+ }
else
{
sprite->invisible = FALSE;
@@ -252,7 +260,9 @@ static void SpriteCB_Sparkle_Spray(struct Sprite *sprite)
sprite->sTimer++;
}
else
+ {
DestroySprite(sprite);
+ }
}
static void CreateSparkle_Spray(u8 id)
@@ -348,7 +358,9 @@ static void Task_Sparkles_ArcDown(u8 taskId)
gTasks[taskId].tTimer++;
}
else
+ {
gTasks[taskId].func = Task_Sparkles_ArcDown_End;
+ }
}
static void Task_Sparkles_ArcDown_End(u8 taskId)
@@ -388,7 +400,9 @@ static void Task_Sparkles_CircleInward(u8 taskId)
gTasks[taskId].tTimer++;
}
else
+ {
gTasks[taskId].func = Task_Sparkles_CircleInward_End;
+ }
}
static void Task_Sparkles_CircleInward_End(u8 taskId)
@@ -437,7 +451,9 @@ static void Task_Sparkles_SprayAndFlash(u8 taskId)
gTasks[taskId].tTimer++;
}
else
+ {
gTasks[taskId].func = Task_Sparkles_SprayAndFlash_End;
+ }
}
static void Task_Sparkles_SprayAndFlash_End(u8 taskId)
@@ -486,7 +502,9 @@ static void Task_Sparkles_SprayAndFlashTrade(u8 taskId)
gTasks[taskId].tTimer++;
}
else
+ {
gTasks[taskId].func = Task_Sparkles_SprayAndFlash_End;
+ }
}
#undef tTimer
@@ -560,9 +578,13 @@ static void Task_CycleEvolutionMonSprite_Init(u8 taskId)
static void Task_CycleEvolutionMonSprite_TryEnd(u8 taskId)
{
if (gTasks[taskId].tEvoStopped)
+ {
EndOnPreEvoMon(taskId);
+ }
else if (gTasks[taskId].tScaleSpeed == 128)
+ {
EndOnPostEvoMon(taskId);
+ }
else
{
gTasks[taskId].tScaleSpeed += 2;
@@ -574,7 +596,9 @@ static void Task_CycleEvolutionMonSprite_TryEnd(u8 taskId)
static void Task_CycleEvolutionMonSprite_UpdateSize(u8 taskId)
{
if (gTasks[taskId].tEvoStopped)
+ {
gTasks[taskId].func = EndOnPreEvoMon;
+ }
else
{
u16 oamMatrixArg;
@@ -583,7 +607,9 @@ static void Task_CycleEvolutionMonSprite_UpdateSize(u8 taskId)
{
// Set pre-evo sprite growth
if (gTasks[taskId].tPreEvoScale < MON_MAX_SCALE - gTasks[taskId].tScaleSpeed)
+ {
gTasks[taskId].tPreEvoScale += gTasks[taskId].tScaleSpeed;
+ }
else
{
gTasks[taskId].tPreEvoScale = MON_MAX_SCALE;
@@ -592,7 +618,9 @@ static void Task_CycleEvolutionMonSprite_UpdateSize(u8 taskId)
// Set post-evo sprite shrink
if (gTasks[taskId].tPostEvoScale > MON_MIN_SCALE + gTasks[taskId].tScaleSpeed)
+ {
gTasks[taskId].tPostEvoScale -= gTasks[taskId].tScaleSpeed;
+ }
else
{
gTasks[taskId].tPostEvoScale = MON_MIN_SCALE;
@@ -603,7 +631,9 @@ static void Task_CycleEvolutionMonSprite_UpdateSize(u8 taskId)
{
// Set post-evo sprite growth
if (gTasks[taskId].tPostEvoScale < MON_MAX_SCALE - gTasks[taskId].tScaleSpeed)
+ {
gTasks[taskId].tPostEvoScale += gTasks[taskId].tScaleSpeed;
+ }
else
{
gTasks[taskId].tPostEvoScale = MON_MAX_SCALE;
@@ -612,7 +642,9 @@ static void Task_CycleEvolutionMonSprite_UpdateSize(u8 taskId)
// Set pre-evo sprite shrink
if (gTasks[taskId].tPreEvoScale > MON_MIN_SCALE + gTasks[taskId].tScaleSpeed)
+ {
gTasks[taskId].tPreEvoScale -= gTasks[taskId].tScaleSpeed;
+ }
else
{
gTasks[taskId].tPreEvoScale = MON_MIN_SCALE;
diff --git a/src/evolution_scene.c b/src/evolution_scene.c
index 133afe3b0d..f09425720a 100644
--- a/src/evolution_scene.c
+++ b/src/evolution_scene.c
@@ -48,7 +48,7 @@ struct EvoInfo
static EWRAM_DATA struct EvoInfo *sEvoStructPtr = NULL;
static EWRAM_DATA u16 *sBgAnimPal = NULL;
-void (*gCB2_AfterEvolution)(void);
+COMMON_DATA void (*gCB2_AfterEvolution)(void) = NULL;
#define sEvoCursorPos gBattleCommunication[1] // when learning a new move
#define sEvoGraphicsTaskId gBattleCommunication[2]
@@ -211,7 +211,7 @@ void EvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u
u8 name[POKEMON_NAME_BUFFER_SIZE];
u16 currSpecies;
u32 trainerId, personality;
- const struct CompressedSpritePalette* pokePal;
+ const struct CompressedSpritePalette *pokePal;
u8 id;
SetHBlankCallback(NULL);
@@ -237,7 +237,7 @@ void EvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u
gBattle_BG3_X = 256;
gBattle_BG3_Y = 0;
- gBattleTerrain = BATTLE_TERRAIN_PLAIN;
+ gBattleEnvironment = BATTLE_ENVIRONMENT_PLAIN;
InitBattleBgsVideo();
LoadBattleTextboxAndBackground();
@@ -311,7 +311,7 @@ void EvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u
static void CB2_EvolutionSceneLoadGraphics(void)
{
u8 id;
- const struct CompressedSpritePalette* pokePal;
+ const struct CompressedSpritePalette *pokePal;
u16 postEvoSpecies;
u32 trainerId, personality;
struct Pokemon *mon = &gPlayerParty[gTasks[sEvoStructPtr->evoTaskId].tPartyId];
@@ -343,7 +343,7 @@ static void CB2_EvolutionSceneLoadGraphics(void)
gBattle_BG3_X = 256;
gBattle_BG3_Y = 0;
- gBattleTerrain = BATTLE_TERRAIN_PLAIN;
+ gBattleEnvironment = BATTLE_ENVIRONMENT_PLAIN;
InitBattleBgsVideo();
LoadBattleTextboxAndBackground();
@@ -420,7 +420,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void)
break;
case 4:
{
- const struct CompressedSpritePalette* pokePal;
+ const struct CompressedSpritePalette *pokePal;
u32 trainerId = GetMonData(mon, MON_DATA_OT_ID);
u32 personality = GetMonData(mon, MON_DATA_PERSONALITY);
DecompressPicFromTable_2(&gMonFrontPicTable[postEvoSpecies],
@@ -470,7 +470,7 @@ void TradeEvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, u8 preEvoSprit
u8 name[POKEMON_NAME_BUFFER_SIZE];
u16 currSpecies;
u32 trainerId, personality;
- const struct CompressedSpritePalette* pokePal;
+ const struct CompressedSpritePalette *pokePal;
u8 id;
GetMonData(mon, MON_DATA_NICKNAME, name);
diff --git a/src/faraway_island.c b/src/faraway_island.c
index 4f34cf30e6..fc3a714e5f 100755
--- a/src/faraway_island.c
+++ b/src/faraway_island.c
@@ -321,8 +321,8 @@ static u8 GetValidMewMoveDirection(u8 ignoredDir)
void UpdateFarawayIslandStepCounter(void)
{
u16 steps = VarGet(VAR_FARAWAY_ISLAND_STEP_COUNTER);
- if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(FARAWAY_ISLAND_INTERIOR)
- && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(FARAWAY_ISLAND_INTERIOR))
+ if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_FARAWAY_ISLAND_INTERIOR)
+ && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_FARAWAY_ISLAND_INTERIOR))
{
steps++;
if (steps >= 9999)
@@ -334,8 +334,8 @@ void UpdateFarawayIslandStepCounter(void)
bool8 ObjectEventIsFarawayIslandMew(struct ObjectEvent *objectEvent)
{
- if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(FARAWAY_ISLAND_INTERIOR)
- && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(FARAWAY_ISLAND_INTERIOR))
+ if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_FARAWAY_ISLAND_INTERIOR)
+ && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_FARAWAY_ISLAND_INTERIOR))
{
if (objectEvent->graphicsId == OBJ_EVENT_GFX_MEW)
return TRUE;
@@ -346,8 +346,8 @@ bool8 ObjectEventIsFarawayIslandMew(struct ObjectEvent *objectEvent)
bool8 IsMewPlayingHideAndSeek(void)
{
- if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(FARAWAY_ISLAND_INTERIOR)
- && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(FARAWAY_ISLAND_INTERIOR))
+ if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_FARAWAY_ISLAND_INTERIOR)
+ && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_FARAWAY_ISLAND_INTERIOR))
{
if (FlagGet(FLAG_CAUGHT_MEW) != TRUE && FlagGet(FLAG_HIDE_MEW) != TRUE)
return TRUE;
diff --git a/src/field_camera.c b/src/field_camera.c
index 3f7e29208c..e76ba3d855 100644
--- a/src/field_camera.c
+++ b/src/field_camera.c
@@ -39,9 +39,9 @@ static s16 sVerticalCameraPan;
static bool8 sBikeCameraPanFlag;
static void (*sFieldCameraPanningCallback)(void);
-struct CameraObject gFieldCamera;
-u16 gTotalCameraPixelOffsetY;
-u16 gTotalCameraPixelOffsetX;
+COMMON_DATA struct CameraObject gFieldCamera = {0};
+COMMON_DATA u16 gTotalCameraPixelOffsetY = 0;
+COMMON_DATA u16 gTotalCameraPixelOffsetX = 0;
static void ResetCameraOffset(struct FieldCameraOffset *cameraOffset)
{
@@ -231,7 +231,9 @@ static void DrawMetatileAt(const struct MapLayout *mapLayout, u16 offset, int x,
if (metatileId > NUM_METATILES_TOTAL)
metatileId = 0;
if (metatileId < NUM_METATILES_IN_PRIMARY)
+ {
metatiles = mapLayout->primaryTileset->metatiles;
+ }
else
{
metatiles = mapLayout->secondaryTileset->metatiles;
@@ -331,8 +333,8 @@ static void CameraUpdateCallback(struct CameraObject *fieldCamera)
{
if (fieldCamera->spriteId != 0)
{
- fieldCamera->movementSpeedX = gSprites[fieldCamera->spriteId].data[2];
- fieldCamera->movementSpeedY = gSprites[fieldCamera->spriteId].data[3];
+ fieldCamera->movementSpeedX = gSprites[fieldCamera->spriteId].sCamera_MoveX;
+ fieldCamera->movementSpeedY = gSprites[fieldCamera->spriteId].sCamera_MoveY;
}
}
diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c
index 09d6ae7838..8ddeda77ac 100644
--- a/src/field_control_avatar.c
+++ b/src/field_control_avatar.c
@@ -38,7 +38,7 @@
static EWRAM_DATA u8 sWildEncounterImmunitySteps = 0;
static EWRAM_DATA u16 sPrevMetatileBehavior = 0;
-u8 gSelectedObjectEvent;
+COMMON_DATA u8 gSelectedObjectEvent = 0;
static void GetPlayerPosition(struct MapPosition *);
static void GetInFrontOfPlayerPosition(struct MapPosition *);
@@ -137,7 +137,7 @@ int ProcessPlayerFieldInput(struct FieldInput *input)
u8 playerDirection;
u16 metatileBehavior;
- gSpecialVar_LastTalked = 0;
+ gSpecialVar_LastTalked = LOCALID_NONE;
gSelectedObjectEvent = 0;
playerDirection = GetPlayerFacingDirection();
@@ -268,7 +268,7 @@ const u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatil
else
objectEventId = GetObjectEventIdByPosition(position->x + gDirectionToVectors[direction].x, position->y + gDirectionToVectors[direction].y, position->elevation);
- if (objectEventId == OBJECT_EVENTS_COUNT || gObjectEvents[objectEventId].localId == OBJ_EVENT_ID_PLAYER)
+ if (objectEventId == OBJECT_EVENTS_COUNT || gObjectEvents[objectEventId].localId == LOCALID_PLAYER)
return NULL;
for (i = 0; i < 4; i++)
@@ -289,14 +289,14 @@ static const u8 *GetInteractedObjectEventScript(struct MapPosition *position, u8
const u8 *script;
objectEventId = GetObjectEventIdByPosition(position->x, position->y, position->elevation);
- if (objectEventId == OBJECT_EVENTS_COUNT || gObjectEvents[objectEventId].localId == OBJ_EVENT_ID_PLAYER)
+ if (objectEventId == OBJECT_EVENTS_COUNT || gObjectEvents[objectEventId].localId == LOCALID_PLAYER)
{
if (MetatileBehavior_IsCounter(metatileBehavior) != TRUE)
return NULL;
// Look for an object event on the other side of the counter.
objectEventId = GetObjectEventIdByPosition(position->x + gDirectionToVectors[direction].x, position->y + gDirectionToVectors[direction].y, position->elevation);
- if (objectEventId == OBJECT_EVENTS_COUNT || gObjectEvents[objectEventId].localId == OBJ_EVENT_ID_PLAYER)
+ if (objectEventId == OBJECT_EVENTS_COUNT || gObjectEvents[objectEventId].localId == LOCALID_PLAYER)
return NULL;
}
@@ -814,7 +814,7 @@ static void SetupWarp(struct MapHeader *unused, s8 warpEventId, struct MapPositi
warpEvent = &gMapHeader.events->warps[warpEventId];
}
- if (warpEvent->mapNum == MAP_NUM(DYNAMIC))
+ if (warpEvent->mapNum == MAP_NUM(MAP_DYNAMIC))
{
SetWarpDestinationToDynamicWarp(warpEvent->warpId);
}
@@ -825,7 +825,7 @@ static void SetupWarp(struct MapHeader *unused, s8 warpEventId, struct MapPositi
SetWarpDestinationToMapWarp(warpEvent->mapGroup, warpEvent->mapNum, warpEvent->warpId);
UpdateEscapeWarp(position->x, position->y);
mapHeader = Overworld_GetMapHeaderByGroupAndId(warpEvent->mapGroup, warpEvent->mapNum);
- if (mapHeader->events->warps[warpEvent->warpId].mapNum == MAP_NUM(DYNAMIC))
+ if (mapHeader->events->warps[warpEvent->warpId].mapNum == MAP_NUM(MAP_DYNAMIC))
SetDynamicWarp(mapHeader->events->warps[warpEventId].warpId, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, warpEventId);
}
}
diff --git a/src/field_door.c b/src/field_door.c
index 255233ec23..9d69337c0e 100644
--- a/src/field_door.c
+++ b/src/field_door.c
@@ -437,7 +437,9 @@ static const struct DoorGraphics *GetDoorGraphics(const struct DoorGraphics *gfx
static s8 StartDoorAnimationTask(const struct DoorGraphics *gfx, const struct DoorAnimFrame *frames, u32 x, u32 y)
{
if (FuncIsActiveTask(Task_AnimateDoor) == TRUE)
+ {
return -1;
+ }
else
{
u8 taskId = CreateTask(Task_AnimateDoor, 0x50);
@@ -560,8 +562,8 @@ static bool8 ShouldUseMultiCorridorDoor(void)
{
if (FlagGet(FLAG_ENABLE_MULTI_CORRIDOR_DOOR))
{
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR))
{
return TRUE;
}
diff --git a/src/field_effect.c b/src/field_effect.c
index 86f1ca97d2..5dcc4b3c08 100644
--- a/src/field_effect.c
+++ b/src/field_effect.c
@@ -254,7 +254,7 @@ static const u32 sHofMonitorBig_Gfx[] = INCBIN_U32("graphics/field_effects/pics/
static const u8 sHofMonitorSmall_Gfx[] = INCBIN_U8("graphics/field_effects/pics/hof_monitor_small.4bpp");
static const u16 sHofMonitor_Pal[16] = INCBIN_U16("graphics/field_effects/palettes/hof_monitor.gbapal");
-// Graphics for the lights streaking past your Pokemon when it uses a field move.
+// Graphics for the lights streaking past your Pokémon when it uses a field move.
static const u32 sFieldMoveStreaksOutdoors_Gfx[] = INCBIN_U32("graphics/field_effects/pics/field_move_streaks.4bpp");
static const u16 sFieldMoveStreaksOutdoors_Pal[16] = INCBIN_U16("graphics/field_effects/pics/field_move_streaks.gbapal");
static const u16 sFieldMoveStreaksOutdoors_Tilemap[320] = INCBIN_U16("graphics/field_effects/pics/field_move_streaks.bin");
@@ -1293,7 +1293,8 @@ static void CreateHofMonitorSprite(s16 taskId, s16 x, s16 y, bool8 isSmallMonito
{
spriteId = CreateSpriteAtEnd(&sSpriteTemplate_HofMonitorBig, x, y, 0);
SetSubspriteTables(&gSprites[spriteId], &sSubspriteTable_HofMonitorBig);
- } else
+ }
+ else
{
spriteId = CreateSpriteAtEnd(&sSpriteTemplate_HofMonitorSmall, x, y, 0);
}
@@ -1444,7 +1445,7 @@ static bool8 FallWarpEffect_Init(struct Task *task)
struct Sprite *playerSprite;
playerObject = &gObjectEvents[gPlayerAvatar.objectEventId];
playerSprite = &gSprites[gPlayerAvatar.spriteId];
- CameraObjectReset2();
+ CameraObjectFreeze();
gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE;
gPlayerAvatar.preventStep = TRUE;
ObjectEventSetHeldMovement(playerObject, GetFaceDirectionMovementAction(GetPlayerFacingDirection()));
@@ -1540,7 +1541,7 @@ static bool8 FallWarpEffect_End(struct Task *task)
{
gPlayerAvatar.preventStep = FALSE;
UnlockPlayerFieldControls();
- CameraObjectReset1();
+ CameraObjectReset();
UnfreezeObjectEvents();
InstallCameraPanAheadCallback();
DestroyTask(FindTaskIdByFunc(Task_FallWarpFieldEffect));
@@ -1579,7 +1580,7 @@ static void Task_EscalatorWarpOut(u8 taskId)
static bool8 EscalatorWarpOut_Init(struct Task *task)
{
FreezeObjectEvents();
- CameraObjectReset2();
+ CameraObjectFreeze();
StartEscalator(task->tGoingUp);
task->tState++;
return FALSE;
@@ -1711,7 +1712,7 @@ static bool8 EscalatorWarpIn_Init(struct Task *task)
s16 x;
s16 y;
u8 behavior;
- CameraObjectReset2();
+ CameraObjectFreeze();
objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(DIR_EAST));
PlayerGetDestCoords(&x, &y);
@@ -1811,7 +1812,7 @@ static bool8 EscalatorWarpIn_End(struct Task *task)
objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
if (ObjectEventClearHeldMovementIfFinished(objectEvent))
{
- CameraObjectReset1();
+ CameraObjectReset();
UnlockPlayerFieldControls();
ObjectEventSetHeldMovement(objectEvent, GetWalkNormalMovementAction(DIR_EAST));
DestroyTask(FindTaskIdByFunc(Task_EscalatorWarpIn));
@@ -1957,7 +1958,7 @@ static void Task_LavaridgeGymB1FWarp(u8 taskId)
static bool8 LavaridgeGymB1FWarpEffect_Init(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
FreezeObjectEvents();
- CameraObjectReset2();
+ CameraObjectFreeze();
SetCameraPanningCallback(NULL);
gPlayerAvatar.preventStep = TRUE;
objectEvent->fixedPriority = 1;
@@ -2003,7 +2004,8 @@ static bool8 LavaridgeGymB1FWarpEffect_Rise(struct Task *task, struct ObjectEven
{
task->data[1] <<= 1;
}
- } else if (!(task->data[2] & 4) && (task->data[1] > 0))
+ }
+ else if (!(task->data[2] & 4) && (task->data[1] > 0))
{
task->data[1] >>= 1;
}
@@ -2017,7 +2019,8 @@ static bool8 LavaridgeGymB1FWarpEffect_Rise(struct Task *task, struct ObjectEven
{
task->data[3]++;
}
- } else
+ }
+ else
{
task->data[4] = 1;
}
@@ -2072,7 +2075,7 @@ static void Task_LavaridgeGymB1FWarpExit(u8 taskId)
static bool8 LavaridgeGymB1FWarpExitEffect_Init(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
- CameraObjectReset2();
+ CameraObjectFreeze();
FreezeObjectEvents();
gPlayerAvatar.preventStep = TRUE;
objectEvent->invisible = TRUE;
@@ -2101,7 +2104,7 @@ static bool8 LavaridgeGymB1FWarpExitEffect_PopOut(struct Task *task, struct Obje
{
task->data[0]++;
objectEvent->invisible = FALSE;
- CameraObjectReset1();
+ CameraObjectReset();
PlaySE(SE_M_DIG);
ObjectEventSetHeldMovement(objectEvent, GetJumpMovementAction(DIR_EAST));
}
@@ -2150,7 +2153,7 @@ static void Task_LavaridgeGym1FWarp(u8 taskId)
static bool8 LavaridgeGym1FWarpEffect_Init(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
FreezeObjectEvents();
- CameraObjectReset2();
+ CameraObjectFreeze();
gPlayerAvatar.preventStep = TRUE;
objectEvent->fixedPriority = 1;
task->data[0]++;
@@ -2169,7 +2172,8 @@ static bool8 LavaridgeGym1FWarpEffect_AshPuff(struct Task *task, struct ObjectEv
gFieldEffectArguments[3] = sprite->oam.priority;
task->data[1] = FieldEffectStart(FLDEFF_ASH_PUFF);
task->data[0]++;
- } else
+ }
+ else
{
task->data[1]++;
ObjectEventSetHeldMovement(objectEvent, GetWalkInPlaceFasterMovementAction(objectEvent->facingDirection));
@@ -2370,7 +2374,7 @@ static void TeleportWarpOutFieldEffect_Init(struct Task *task)
{
LockPlayerFieldControls();
FreezeObjectEvents();
- CameraObjectReset2();
+ CameraObjectFreeze();
task->data[15] = GetPlayerFacingDirection();
task->tState++;
}
@@ -2452,7 +2456,7 @@ static void FieldCallback_TeleportWarpIn(void)
FreezeObjectEvents();
gFieldCallback = NULL;
gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE;
- CameraObjectReset2();
+ CameraObjectFreeze();
CreateTask(Task_TeleportWarpIn, 0);
}
@@ -2496,10 +2500,11 @@ static void TeleportWarpInFieldEffect_SpinEnter(struct Task *task)
if (task->data[13] == 0)
{
task->data[13]++;
- objectEvent->triggerGroundEffectsOnMove = 1;
+ objectEvent->triggerGroundEffectsOnMove = TRUE;
sprite->subspriteMode = task->data[14];
}
- } else
+ }
+ else
{
sprite->oam.priority = 1;
if (sprite->subspriteMode != SUBSPRITES_OFF)
@@ -2536,7 +2541,7 @@ static void TeleportWarpInFieldEffect_SpinGround(struct Task *task)
if ((++task->data[2]) > 4 && task->data[14] == objectEvent->facingDirection)
{
UnlockPlayerFieldControls();
- CameraObjectReset1();
+ CameraObjectReset();
UnfreezeObjectEvents();
DestroyTask(FindTaskIdByFunc(Task_TeleportWarpIn));
}
@@ -3268,7 +3273,7 @@ static void FlyOutFieldEffect_FlyOffWithBird(struct Task *task)
objectEvent->inanimate = FALSE;
objectEvent->hasShadow = FALSE;
SetFlyBirdPlayerSpriteId(task->tBirdSpriteId, objectEvent->spriteId);
- CameraObjectReset2();
+ CameraObjectFreeze();
task->tState++;
}
}
@@ -3483,7 +3488,7 @@ static void FlyInFieldEffect_BirdSwoopDown(struct Task *task)
SetSurfBlob_BobState(objectEvent->fieldEffectSpriteId, BOB_NONE);
}
ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
- CameraObjectReset2();
+ CameraObjectFreeze();
ObjectEventTurn(objectEvent, DIR_WEST);
StartSpriteAnim(&gSprites[objectEvent->spriteId], ANIM_GET_ON_OFF_POKEMON_WEST);
objectEvent->invisible = FALSE;
diff --git a/src/field_message_box.c b/src/field_message_box.c
index 55124e7dfc..b797e1d353 100755
--- a/src/field_message_box.c
+++ b/src/field_message_box.c
@@ -84,7 +84,7 @@ bool8 ShowPokenavFieldMessage(const u8 *str)
StringExpandPlaceholders(gStringVar4, str);
CreateTask(Task_HidePokenavMessageWhenDone, 0);
StartMatchCallFromScript(str);
- sFieldMessageBoxMode = 2;
+ sFieldMessageBoxMode = FIELD_MESSAGE_BOX_NORMAL;
return TRUE;
}
diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c
index 5f4573c533..90e19e27f3 100644
--- a/src/field_player_avatar.c
+++ b/src/field_player_avatar.c
@@ -38,14 +38,13 @@ EWRAM_DATA struct ObjectEvent gObjectEvents[OBJECT_EVENTS_COUNT] = {};
EWRAM_DATA struct PlayerAvatar gPlayerAvatar = {};
// static declarations
-
-static u8 ObjectEventCB2_NoMovement2();
+static u8 ObjectEventCB2_NoMovement2(void);
static bool8 TryInterruptObjectEventSpecialAnim(struct ObjectEvent *, u8);
static void npc_clear_strange_bits(struct ObjectEvent *);
static void MovePlayerAvatarUsingKeypadInput(u8, u16, u16);
-static void PlayerAllowForcedMovementIfMovingSameDirection();
-static bool8 TryDoMetatileBehaviorForcedMovement();
-static u8 GetForcedMovementByMetatileBehavior();
+static void PlayerAllowForcedMovementIfMovingSameDirection(void);
+static bool8 TryDoMetatileBehaviorForcedMovement(void);
+static u8 GetForcedMovementByMetatileBehavior(void);
static bool8 ForcedMovement_None(void);
static bool8 ForcedMovement_Slip(void);
@@ -232,7 +231,7 @@ static bool8 (*const sArrowWarpMetatileBehaviorChecks[])(u8) =
[DIR_EAST - 1] = MetatileBehavior_IsEastArrowWarp,
};
-static const u8 sRivalAvatarGfxIds[][2] =
+static const u8 sRivalAvatarGfxIds[][GENDER_COUNT] =
{
[PLAYER_AVATAR_STATE_NORMAL] = {OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL},
[PLAYER_AVATAR_STATE_MACH_BIKE] = {OBJ_EVENT_GFX_RIVAL_BRENDAN_MACH_BIKE, OBJ_EVENT_GFX_RIVAL_MAY_MACH_BIKE},
@@ -244,7 +243,7 @@ static const u8 sRivalAvatarGfxIds[][2] =
[PLAYER_AVATAR_STATE_WATERING] = {OBJ_EVENT_GFX_BRENDAN_WATERING, OBJ_EVENT_GFX_MAY_WATERING}
};
-static const u8 sPlayerAvatarGfxIds[][2] =
+static const u8 sPlayerAvatarGfxIds[][GENDER_COUNT] =
{
[PLAYER_AVATAR_STATE_NORMAL] = {OBJ_EVENT_GFX_BRENDAN_NORMAL, OBJ_EVENT_GFX_MAY_NORMAL},
[PLAYER_AVATAR_STATE_MACH_BIKE] = {OBJ_EVENT_GFX_BRENDAN_MACH_BIKE, OBJ_EVENT_GFX_MAY_MACH_BIKE},
@@ -318,7 +317,7 @@ static bool8 (*const sPlayerAvatarSecretBaseMatSpin[])(struct Task *, struct Obj
void MovementType_Player(struct Sprite *sprite)
{
- UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, ObjectEventCB2_NoMovement2);
+ UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, (bool8 (*)(struct ObjectEvent *, struct Sprite *))ObjectEventCB2_NoMovement2);
}
static u8 ObjectEventCB2_NoMovement2(void)
@@ -620,9 +619,27 @@ static void PlayerNotOnBikeMoving(u8 direction, u16 heldKeys)
}
else
{
- u8 adjustedCollision = collision - COLLISION_STOP_SURFING;
- if (adjustedCollision > 3)
+ // Player collided with something. Certain collisions have special handling that precludes the normal collision effect.
+ // COLLISION_STOP_SURFING and COLLISION_PUSHED_BOULDER's effects are started by CheckForObjectEventCollision.
+ // COLLISION_LEDGE_JUMP's effect is handled further up in this function, so it will never reach this point.
+ // COLLISION_ROTATING_GATE is unusual however, this was probably included by mistake. When the player walks into a
+ // rotating gate that cannot rotate there is no additional handling, it's just a regular collision. Its exclusion here
+ // means that the player avatar won't update if they encounter this kind of collision. This has two noticeable effects:
+ // - Colliding with it head-on stops the player dead, rather than playing the walking animation and playing a bump sound effect
+ // - Colliding with it by changing direction won't turn the player avatar, their walking animation will just speed up.
+#ifdef BUGFIX
+ if (collision != COLLISION_STOP_SURFING
+ && collision != COLLISION_LEDGE_JUMP
+ && collision != COLLISION_PUSHED_BOULDER)
+#else
+ if (collision != COLLISION_STOP_SURFING
+ && collision != COLLISION_LEDGE_JUMP
+ && collision != COLLISION_PUSHED_BOULDER
+ && collision != COLLISION_ROTATING_GATE)
+#endif
+ {
PlayerNotOnBikeCollide(direction);
+ }
return;
}
}
@@ -777,7 +794,7 @@ bool8 IsPlayerCollidingWithFarawayIslandMew(u8 direction)
playerY = object->currentCoords.y;
MoveCoords(direction, &playerX, &playerY);
- mewObjectId = GetObjectEventIdByLocalIdAndMap(1, MAP_NUM(FARAWAY_ISLAND_INTERIOR), MAP_GROUP(FARAWAY_ISLAND_INTERIOR));
+ mewObjectId = GetObjectEventIdByLocalIdAndMap(LOCALID_FARAWAY_ISLAND_MEW, MAP_NUM(MAP_FARAWAY_ISLAND_INTERIOR), MAP_GROUP(MAP_FARAWAY_ISLAND_INTERIOR));
if (mewObjectId == OBJECT_EVENTS_COUNT)
return FALSE;
@@ -1363,7 +1380,7 @@ void InitPlayerAvatar(s16 x, s16 y, u8 direction, u8 gender)
u8 objectEventId;
struct ObjectEvent *objectEvent;
- playerObjEventTemplate.localId = OBJ_EVENT_ID_PLAYER;
+ playerObjEventTemplate.localId = LOCALID_PLAYER;
playerObjEventTemplate.graphicsId = GetPlayerAvatarGraphicsIdByStateIdAndGender(PLAYER_AVATAR_STATE_NORMAL, gender);
playerObjEventTemplate.x = x - MAP_OFFSET;
playerObjEventTemplate.y = y - MAP_OFFSET;
@@ -1663,6 +1680,10 @@ static void Task_WaitStopSurfing(u8 taskId)
gPlayerAvatar.preventStep = FALSE;
UnlockPlayerFieldControls();
DestroySprite(&gSprites[playerObjEvent->fieldEffectSpriteId]);
+#ifdef BUGFIX
+ // If this is not defined but the player steps into grass from surfing, they will appear over the grass instead of in the grass.
+ playerObjEvent->triggerGroundEffectsOnMove = TRUE;
+#endif
DestroyTask(taskId);
}
}
@@ -2093,7 +2114,7 @@ static void Task_DoPlayerSpinExit(u8 taskId)
tSpeed = 1;
tCurY = (u16)(sprite->y + sprite->y2) << 4;
sprite->y2 = 0;
- CameraObjectReset2();
+ CameraObjectFreeze();
object->fixedPriority = TRUE;
sprite->oam.priority = 0;
sprite->subpriority = 0;
@@ -2162,7 +2183,7 @@ static void Task_DoPlayerSpinEntrance(u8 taskId)
tSubpriority = sprite->subpriority;
tCurY = -((u16)sprite->y2 + 32) * 16;
sprite->y2 = 0;
- CameraObjectReset2();
+ CameraObjectFreeze();
object->fixedPriority = TRUE;
sprite->oam.priority = 1;
sprite->subpriority = 0;
@@ -2197,7 +2218,7 @@ static void Task_DoPlayerSpinEntrance(u8 taskId)
object->fixedPriority = 0;
sprite->oam.priority = tPriority;
sprite->subpriority = tSubpriority;
- CameraObjectReset1();
+ CameraObjectReset();
DestroyTask(taskId);
}
break;
diff --git a/src/field_poison.c b/src/field_poison.c
index f254a6d142..1b8ae94094 100644
--- a/src/field_poison.c
+++ b/src/field_poison.c
@@ -89,7 +89,11 @@ static void Task_TryFieldPoisonWhiteOut(u8 taskId)
if (AllMonsFainted())
{
// Battle facilities have their own white out script to handle the challenge loss
- if (InBattlePyramid() | InBattlePike() || InTrainerHillChallenge())
+#ifdef BUGFIX
+ if (CurrentBattlePyramidLocation() || InBattlePike() || InTrainerHillChallenge())
+#else
+ if (CurrentBattlePyramidLocation() | InBattlePike() || InTrainerHillChallenge())
+#endif
gSpecialVar_Result = FLDPSN_FRONTIER_WHITEOUT;
else
gSpecialVar_Result = FLDPSN_WHITEOUT;
diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c
index 616444116c..bd354c8a44 100644
--- a/src/field_screen_effect.c
+++ b/src/field_screen_effect.c
@@ -334,7 +334,7 @@ static void Task_ExitDoor(u8 taskId)
{
u8 objEventId;
SetPlayerVisibility(TRUE);
- objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ objEventId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventSetHeldMovement(&gObjectEvents[objEventId], MOVEMENT_ACTION_WALK_NORMAL_DOWN);
task->tState = 2;
}
@@ -344,7 +344,7 @@ static void Task_ExitDoor(u8 taskId)
{
u8 objEventId;
task->data[1] = FieldAnimateDoorClose(*x, *y);
- objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ objEventId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[objEventId]);
task->tState = 3;
}
@@ -382,7 +382,7 @@ static void Task_ExitNonAnimDoor(u8 taskId)
{
u8 objEventId;
SetPlayerVisibility(TRUE);
- objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ objEventId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventSetHeldMovement(&gObjectEvents[objEventId], GetWalkNormalMovementAction(GetPlayerFacingDirection()));
task->tState = 2;
}
@@ -693,9 +693,9 @@ static void Task_DoDoorWarp(u8 taskId)
if (task->data[1] < 0 || gTasks[task->data[1]].isActive != TRUE)
{
u8 objEventId;
- objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ objEventId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfActive(&gObjectEvents[objEventId]);
- objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ objEventId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventSetHeldMovement(&gObjectEvents[objEventId], MOVEMENT_ACTION_WALK_NORMAL_UP);
task->tState = 2;
}
@@ -705,7 +705,7 @@ static void Task_DoDoorWarp(u8 taskId)
{
u8 objEventId;
task->data[1] = FieldAnimateDoorClose(*x, *y - 1);
- objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ objEventId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[objEventId]);
SetPlayerVisibility(FALSE);
task->tState = 3;
diff --git a/src/field_special_scene.c b/src/field_special_scene.c
index a2b3d6366f..ccb15f02b4 100644
--- a/src/field_special_scene.c
+++ b/src/field_special_scene.c
@@ -312,7 +312,7 @@ void Task_HandlePorthole(u8 taskId)
case IDLE_CHECK:
if (JOY_NEW(A_BUTTON))
data[1] = 1;
- if (!ScriptMovement_IsObjectMovementFinished(OBJ_EVENT_ID_PLAYER, location->mapNum, location->mapGroup))
+ if (!ScriptMovement_IsObjectMovementFinished(LOCALID_PLAYER, location->mapNum, location->mapGroup))
return;
if (CountSSTidalStep(1) == TRUE)
{
@@ -334,12 +334,12 @@ void Task_HandlePorthole(u8 taskId)
if (*cruiseState == SS_TIDAL_DEPART_SLATEPORT)
{
- ScriptMovement_StartObjectMovementScript(OBJ_EVENT_ID_PLAYER, location->mapNum, location->mapGroup, sSSTidalSailEastMovementScript);
+ ScriptMovement_StartObjectMovementScript(LOCALID_PLAYER, location->mapNum, location->mapGroup, sSSTidalSailEastMovementScript);
data[0] = IDLE_CHECK;
}
else
{
- ScriptMovement_StartObjectMovementScript(OBJ_EVENT_ID_PLAYER, location->mapNum, location->mapGroup, sSSTidalSailWestMovementScript);
+ ScriptMovement_StartObjectMovementScript(LOCALID_PLAYER, location->mapNum, location->mapGroup, sSSTidalSailWestMovementScript);
data[0] = IDLE_CHECK;
}
break;
diff --git a/src/field_specials.c b/src/field_specials.c
index 7d20d3571d..98384d52ab 100644
--- a/src/field_specials.c
+++ b/src/field_specials.c
@@ -92,7 +92,7 @@ static EWRAM_DATA u8 sFrontierExchangeCorner_ItemIconWindowId = 0;
static EWRAM_DATA u8 sPCBoxToSendMon = 0;
static EWRAM_DATA u32 sBattleTowerMultiBattleTypeFlags = 0;
-struct ListMenuTemplate gScrollableMultichoice_ListMenuTemplate;
+COMMON_DATA struct ListMenuTemplate gScrollableMultichoice_ListMenuTemplate = {0};
void TryLoseFansFromPlayTime(void);
void SetPlayerGotFirstFans(void);
@@ -263,7 +263,7 @@ u16 GetRecordedCyclingRoadResults(void)
void UpdateCyclingRoadState(void)
{
- if (gLastUsedWarp.mapNum == MAP_NUM(ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE) && gLastUsedWarp.mapGroup == MAP_GROUP(ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE))
+ if (gLastUsedWarp.mapNum == MAP_NUM(MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE) && gLastUsedWarp.mapGroup == MAP_GROUP(MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE))
return;
if (VarGet(VAR_CYCLING_CHALLENGE_STATE) == 2 || VarGet(VAR_CYCLING_CHALLENGE_STATE) == 3)
@@ -313,39 +313,39 @@ u8 GetSSTidalLocation(s8 *mapGroup, s8 *mapNum, s16 *x, s16 *y)
case SS_TIDAL_DEPART_SLATEPORT:
if (*varCruiseStepCount < 60)
{
- *mapNum = MAP_NUM(ROUTE134);
+ *mapNum = MAP_NUM(MAP_ROUTE134);
*x = *varCruiseStepCount + 19;
}
else if (*varCruiseStepCount < 140)
{
- *mapNum = MAP_NUM(ROUTE133);
+ *mapNum = MAP_NUM(MAP_ROUTE133);
*x = *varCruiseStepCount - 60;
}
else
{
- *mapNum = MAP_NUM(ROUTE132);
+ *mapNum = MAP_NUM(MAP_ROUTE132);
*x = *varCruiseStepCount - 140;
}
break;
case SS_TIDAL_HALFWAY_SLATEPORT:
if (*varCruiseStepCount < 66)
{
- *mapNum = MAP_NUM(ROUTE132);
+ *mapNum = MAP_NUM(MAP_ROUTE132);
*x = 65 - *varCruiseStepCount;
}
else if (*varCruiseStepCount < 146)
{
- *mapNum = MAP_NUM(ROUTE133);
+ *mapNum = MAP_NUM(MAP_ROUTE133);
*x = 145 - *varCruiseStepCount;
}
else
{
- *mapNum = MAP_NUM(ROUTE134);
+ *mapNum = MAP_NUM(MAP_ROUTE134);
*x = 224 - *varCruiseStepCount;
}
break;
}
- *mapGroup = MAP_GROUP(ROUTE132);
+ *mapGroup = MAP_GROUP(MAP_ROUTE132);
*y = 20;
return SS_TIDAL_LOCATION_CURRENTS;
}
@@ -563,8 +563,8 @@ void SpawnLinkPartnerObjectEvent(void)
linkSpriteId = OBJ_EVENT_GFX_RIVAL_MAY_NORMAL;
break;
}
- SpawnSpecialObjectEventParameterized(linkSpriteId, movementTypes[j], 240 - i, coordOffsets[j][0] + x + MAP_OFFSET, coordOffsets[j][1] + y + MAP_OFFSET, 0);
- LoadLinkPartnerObjectEventSpritePalette(linkSpriteId, 240 - i, i);
+ SpawnSpecialObjectEventParameterized(linkSpriteId, movementTypes[j], LOCALID_BERRY_BLENDER_PLAYER_END - i, coordOffsets[j][0] + x + MAP_OFFSET, coordOffsets[j][1] + y + MAP_OFFSET, 0);
+ LoadLinkPartnerObjectEventSpritePalette(linkSpriteId, LOCALID_BERRY_BLENDER_PLAYER_END - i, i);
j++;
if (j == MAX_LINK_PLAYERS)
j = 0;
@@ -927,9 +927,9 @@ u8 GetBattleOutcome(void)
void CableCarWarp(void)
{
if (gSpecialVar_0x8004 != 0)
- SetWarpDestination(MAP_GROUP(ROUTE112_CABLE_CAR_STATION), MAP_NUM(ROUTE112_CABLE_CAR_STATION), WARP_ID_NONE, 6, 4);
+ SetWarpDestination(MAP_GROUP(MAP_ROUTE112_CABLE_CAR_STATION), MAP_NUM(MAP_ROUTE112_CABLE_CAR_STATION), WARP_ID_NONE, 6, 4);
else
- SetWarpDestination(MAP_GROUP(MT_CHIMNEY_CABLE_CAR_STATION), MAP_NUM(MT_CHIMNEY_CABLE_CAR_STATION), WARP_ID_NONE, 6, 4);
+ SetWarpDestination(MAP_GROUP(MAP_MT_CHIMNEY_CABLE_CAR_STATION), MAP_NUM(MAP_MT_CHIMNEY_CABLE_CAR_STATION), WARP_ID_NONE, 6, 4);
}
void SetHiddenItemFlag(void)
@@ -1252,7 +1252,7 @@ void SpawnCameraObject(void)
{
u8 obj = SpawnSpecialObjectEventParameterized(OBJ_EVENT_GFX_BOY_1,
MOVEMENT_TYPE_FACE_DOWN,
- OBJ_EVENT_ID_CAMERA,
+ LOCALID_CAMERA,
gSaveBlock1Ptr->pos.x + MAP_OFFSET,
gSaveBlock1Ptr->pos.y + MAP_OFFSET,
3); // elevation
@@ -1263,7 +1263,7 @@ void SpawnCameraObject(void)
void RemoveCameraObject(void)
{
CameraObjectSetFollowedSpriteId(GetPlayerAvatarSpriteId());
- RemoveObjectEventByLocalIdAndMap(OBJ_EVENT_ID_CAMERA, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
+ RemoveObjectEventByLocalIdAndMap(LOCALID_CAMERA, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
}
u8 GetPokeblockNameByMonNature(void)
@@ -1398,8 +1398,8 @@ bool8 Special_AreLeadMonEVsMaxedOut(void)
u8 TryUpdateRusturfTunnelState(void)
{
if (!FlagGet(FLAG_RUSTURF_TUNNEL_OPENED)
- && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(RUSTURF_TUNNEL)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(RUSTURF_TUNNEL))
+ && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_RUSTURF_TUNNEL)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_RUSTURF_TUNNEL))
{
if (FlagGet(FLAG_HIDE_RUSTURF_TUNNEL_ROCK_1))
{
@@ -1662,8 +1662,8 @@ bool8 IsBadEggInParty(void)
bool8 InMultiPartnerRoom(void)
{
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM) &&
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM) &&
VarGet(VAR_FRONTIER_BATTLE_MODE) == FRONTIER_MODE_MULTIS)
return TRUE;
return FALSE;
@@ -1749,22 +1749,22 @@ void SetDeptStoreFloor(void)
u8 deptStoreFloor;
switch (gSaveBlock1Ptr->dynamicWarp.mapNum)
{
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_1F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F):
deptStoreFloor = DEPT_STORE_FLOORNUM_1F;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_2F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F):
deptStoreFloor = DEPT_STORE_FLOORNUM_2F;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_3F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F):
deptStoreFloor = DEPT_STORE_FLOORNUM_3F;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_4F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F):
deptStoreFloor = DEPT_STORE_FLOORNUM_4F;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_5F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F):
deptStoreFloor = DEPT_STORE_FLOORNUM_5F;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP):
deptStoreFloor = DEPT_STORE_FLOORNUM_ROOFTOP;
break;
default:
@@ -1779,27 +1779,27 @@ u16 GetDeptStoreDefaultFloorChoice(void)
sLilycoveDeptStore_NeverRead = 0;
sLilycoveDeptStore_DefaultFloorChoice = 0;
- if (gSaveBlock1Ptr->dynamicWarp.mapGroup == MAP_GROUP(LILYCOVE_CITY_DEPARTMENT_STORE_1F))
+ if (gSaveBlock1Ptr->dynamicWarp.mapGroup == MAP_GROUP(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F))
{
switch (gSaveBlock1Ptr->dynamicWarp.mapNum)
{
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_5F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F):
sLilycoveDeptStore_NeverRead = 0;
sLilycoveDeptStore_DefaultFloorChoice = 0;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_4F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F):
sLilycoveDeptStore_NeverRead = 0;
sLilycoveDeptStore_DefaultFloorChoice = 1;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_3F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F):
sLilycoveDeptStore_NeverRead = 0;
sLilycoveDeptStore_DefaultFloorChoice = 2;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_2F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F):
sLilycoveDeptStore_NeverRead = 0;
sLilycoveDeptStore_DefaultFloorChoice = 3;
break;
- case MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_1F):
+ case MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F):
sLilycoveDeptStore_NeverRead = 0;
sLilycoveDeptStore_DefaultFloorChoice = 4;
break;
@@ -2044,7 +2044,7 @@ bool8 UsedPokemonCenterWarp(void)
bool32 PlayerNotAtTrainerHillEntrance(void)
{
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRAINER_HILL_ENTRANCE) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRAINER_HILL_ENTRANCE))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_TRAINER_HILL_ENTRANCE) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_TRAINER_HILL_ENTRANCE))
return FALSE;
return TRUE;
@@ -3349,8 +3349,8 @@ static void ChangeDeoxysRockLevel(u8 rockLevel)
CreateTask(WaitForDeoxysRockMovement, 8);
gFieldEffectArguments[0] = LOCALID_BIRTH_ISLAND_EXTERIOR_ROCK;
- gFieldEffectArguments[1] = MAP_NUM(BIRTH_ISLAND_EXTERIOR);
- gFieldEffectArguments[2] = MAP_GROUP(BIRTH_ISLAND_EXTERIOR);
+ gFieldEffectArguments[1] = MAP_NUM(MAP_BIRTH_ISLAND_EXTERIOR);
+ gFieldEffectArguments[2] = MAP_GROUP(MAP_BIRTH_ISLAND_EXTERIOR);
gFieldEffectArguments[3] = sDeoxysRockCoords[rockLevel][0];
gFieldEffectArguments[4] = sDeoxysRockCoords[rockLevel][1];
@@ -3377,7 +3377,7 @@ static void WaitForDeoxysRockMovement(u8 taskId)
void IncrementBirthIslandRockStepCount(void)
{
u16 stepCount = VarGet(VAR_DEOXYS_ROCK_STEP_COUNT);
- if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(BIRTH_ISLAND_EXTERIOR) && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BIRTH_ISLAND_EXTERIOR))
+ if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_BIRTH_ISLAND_EXTERIOR) && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_BIRTH_ISLAND_EXTERIOR))
{
if (++stepCount > 99)
VarSet(VAR_DEOXYS_ROCK_STEP_COUNT, 0);
@@ -3470,22 +3470,22 @@ void CreateAbnormalWeatherEvent(void)
bool32 GetAbnormalWeatherMapNameAndType(void)
{
static const u8 sAbnormalWeatherMapNumbers[] = {
- MAP_NUM(ROUTE114),
- MAP_NUM(ROUTE114),
- MAP_NUM(ROUTE115),
- MAP_NUM(ROUTE115),
- MAP_NUM(ROUTE116),
- MAP_NUM(ROUTE116),
- MAP_NUM(ROUTE118),
- MAP_NUM(ROUTE118),
- MAP_NUM(ROUTE105),
- MAP_NUM(ROUTE105),
- MAP_NUM(ROUTE125),
- MAP_NUM(ROUTE125),
- MAP_NUM(ROUTE127),
- MAP_NUM(ROUTE127),
- MAP_NUM(ROUTE129),
- MAP_NUM(ROUTE129)
+ MAP_NUM(MAP_ROUTE114),
+ MAP_NUM(MAP_ROUTE114),
+ MAP_NUM(MAP_ROUTE115),
+ MAP_NUM(MAP_ROUTE115),
+ MAP_NUM(MAP_ROUTE116),
+ MAP_NUM(MAP_ROUTE116),
+ MAP_NUM(MAP_ROUTE118),
+ MAP_NUM(MAP_ROUTE118),
+ MAP_NUM(MAP_ROUTE105),
+ MAP_NUM(MAP_ROUTE105),
+ MAP_NUM(MAP_ROUTE125),
+ MAP_NUM(MAP_ROUTE125),
+ MAP_NUM(MAP_ROUTE127),
+ MAP_NUM(MAP_ROUTE127),
+ MAP_NUM(MAP_ROUTE129),
+ MAP_NUM(MAP_ROUTE129)
};
u16 abnormalWeather = VarGet(VAR_ABNORMAL_WEATHER_LOCATION);
@@ -3503,22 +3503,22 @@ bool8 AbnormalWeatherHasExpired(void)
// Duplicate array.
static const u8 sAbnormalWeatherMapNumbers[] =
{
- MAP_NUM(ROUTE114),
- MAP_NUM(ROUTE114),
- MAP_NUM(ROUTE115),
- MAP_NUM(ROUTE115),
- MAP_NUM(ROUTE116),
- MAP_NUM(ROUTE116),
- MAP_NUM(ROUTE118),
- MAP_NUM(ROUTE118),
- MAP_NUM(ROUTE105),
- MAP_NUM(ROUTE105),
- MAP_NUM(ROUTE125),
- MAP_NUM(ROUTE125),
- MAP_NUM(ROUTE127),
- MAP_NUM(ROUTE127),
- MAP_NUM(ROUTE129),
- MAP_NUM(ROUTE129)
+ MAP_NUM(MAP_ROUTE114),
+ MAP_NUM(MAP_ROUTE114),
+ MAP_NUM(MAP_ROUTE115),
+ MAP_NUM(MAP_ROUTE115),
+ MAP_NUM(MAP_ROUTE116),
+ MAP_NUM(MAP_ROUTE116),
+ MAP_NUM(MAP_ROUTE118),
+ MAP_NUM(MAP_ROUTE118),
+ MAP_NUM(MAP_ROUTE105),
+ MAP_NUM(MAP_ROUTE105),
+ MAP_NUM(MAP_ROUTE125),
+ MAP_NUM(MAP_ROUTE125),
+ MAP_NUM(MAP_ROUTE127),
+ MAP_NUM(MAP_ROUTE127),
+ MAP_NUM(MAP_ROUTE129),
+ MAP_NUM(MAP_ROUTE129)
};
u16 steps = VarGet(VAR_ABNORMAL_WEATHER_STEP_COUNTER);
@@ -3530,15 +3530,15 @@ bool8 AbnormalWeatherHasExpired(void)
if (++steps > 999)
{
VarSet(VAR_ABNORMAL_WEATHER_STEP_COUNTER, 0);
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(UNDERWATER_MARINE_CAVE))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_UNDERWATER_MARINE_CAVE))
{
switch (gSaveBlock1Ptr->location.mapNum)
{
- case MAP_NUM(UNDERWATER_MARINE_CAVE):
- case MAP_NUM(MARINE_CAVE_ENTRANCE):
- case MAP_NUM(MARINE_CAVE_END):
- case MAP_NUM(TERRA_CAVE_ENTRANCE):
- case MAP_NUM(TERRA_CAVE_END):
+ case MAP_NUM(MAP_UNDERWATER_MARINE_CAVE):
+ case MAP_NUM(MAP_MARINE_CAVE_ENTRANCE):
+ case MAP_NUM(MAP_MARINE_CAVE_END):
+ case MAP_NUM(MAP_TERRA_CAVE_ENTRANCE):
+ case MAP_NUM(MAP_TERRA_CAVE_END):
VarSet(VAR_SHOULD_END_ABNORMAL_WEATHER, 1);
return FALSE;
default:
@@ -3546,14 +3546,14 @@ bool8 AbnormalWeatherHasExpired(void)
}
}
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(UNDERWATER_ROUTE127))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_UNDERWATER_ROUTE127))
{
switch (gSaveBlock1Ptr->location.mapNum)
{
- case MAP_NUM(UNDERWATER_ROUTE127):
- case MAP_NUM(UNDERWATER_ROUTE129):
- case MAP_NUM(UNDERWATER_ROUTE105):
- case MAP_NUM(UNDERWATER_ROUTE125):
+ case MAP_NUM(MAP_UNDERWATER_ROUTE127):
+ case MAP_NUM(MAP_UNDERWATER_ROUTE129):
+ case MAP_NUM(MAP_UNDERWATER_ROUTE105):
+ case MAP_NUM(MAP_UNDERWATER_ROUTE125):
VarSet(VAR_SHOULD_END_ABNORMAL_WEATHER, 1);
return FALSE;
default:
@@ -3589,18 +3589,18 @@ u32 GetMartEmployeeObjectEventId(void)
{
static const u8 sPokeMarts[][3] =
{
- { MAP_GROUP(OLDALE_TOWN_MART), MAP_NUM(OLDALE_TOWN_MART), LOCALID_OLDALE_MART_CLERK },
- { MAP_GROUP(LAVARIDGE_TOWN_MART), MAP_NUM(LAVARIDGE_TOWN_MART), LOCALID_LAVARIDGE_MART_CLERK },
- { MAP_GROUP(FALLARBOR_TOWN_MART), MAP_NUM(FALLARBOR_TOWN_MART), LOCALID_FALLARBOR_MART_CLERK },
- { MAP_GROUP(VERDANTURF_TOWN_MART), MAP_NUM(VERDANTURF_TOWN_MART), LOCALID_VERDANTURF_MART_CLERK },
- { MAP_GROUP(PETALBURG_CITY_MART), MAP_NUM(PETALBURG_CITY_MART), LOCALID_PETALBURG_MART_CLERK },
- { MAP_GROUP(SLATEPORT_CITY_MART), MAP_NUM(SLATEPORT_CITY_MART), LOCALID_SLATEPORT_MART_CLERK },
- { MAP_GROUP(MAUVILLE_CITY_MART), MAP_NUM(MAUVILLE_CITY_MART), LOCALID_MAUVILLE_MART_CLERK },
- { MAP_GROUP(RUSTBORO_CITY_MART), MAP_NUM(RUSTBORO_CITY_MART), LOCALID_RUSTBORO_MART_CLERK },
- { MAP_GROUP(FORTREE_CITY_MART), MAP_NUM(FORTREE_CITY_MART), LOCALID_FORTREE_MART_CLERK },
- { MAP_GROUP(MOSSDEEP_CITY_MART), MAP_NUM(MOSSDEEP_CITY_MART), LOCALID_MOSSDEEP_MART_CLERK },
- { MAP_GROUP(SOOTOPOLIS_CITY_MART), MAP_NUM(SOOTOPOLIS_CITY_MART), LOCALID_SOOTOPOLIS_MART_CLERK },
- { MAP_GROUP(BATTLE_FRONTIER_MART), MAP_NUM(BATTLE_FRONTIER_MART), LOCALID_BATTLE_FRONTIER_MART_CLERK }
+ { MAP_GROUP(MAP_OLDALE_TOWN_MART), MAP_NUM(MAP_OLDALE_TOWN_MART), LOCALID_OLDALE_MART_CLERK },
+ { MAP_GROUP(MAP_LAVARIDGE_TOWN_MART), MAP_NUM(MAP_LAVARIDGE_TOWN_MART), LOCALID_LAVARIDGE_MART_CLERK },
+ { MAP_GROUP(MAP_FALLARBOR_TOWN_MART), MAP_NUM(MAP_FALLARBOR_TOWN_MART), LOCALID_FALLARBOR_MART_CLERK },
+ { MAP_GROUP(MAP_VERDANTURF_TOWN_MART), MAP_NUM(MAP_VERDANTURF_TOWN_MART), LOCALID_VERDANTURF_MART_CLERK },
+ { MAP_GROUP(MAP_PETALBURG_CITY_MART), MAP_NUM(MAP_PETALBURG_CITY_MART), LOCALID_PETALBURG_MART_CLERK },
+ { MAP_GROUP(MAP_SLATEPORT_CITY_MART), MAP_NUM(MAP_SLATEPORT_CITY_MART), LOCALID_SLATEPORT_MART_CLERK },
+ { MAP_GROUP(MAP_MAUVILLE_CITY_MART), MAP_NUM(MAP_MAUVILLE_CITY_MART), LOCALID_MAUVILLE_MART_CLERK },
+ { MAP_GROUP(MAP_RUSTBORO_CITY_MART), MAP_NUM(MAP_RUSTBORO_CITY_MART), LOCALID_RUSTBORO_MART_CLERK },
+ { MAP_GROUP(MAP_FORTREE_CITY_MART), MAP_NUM(MAP_FORTREE_CITY_MART), LOCALID_FORTREE_MART_CLERK },
+ { MAP_GROUP(MAP_MOSSDEEP_CITY_MART), MAP_NUM(MAP_MOSSDEEP_CITY_MART), LOCALID_MOSSDEEP_MART_CLERK },
+ { MAP_GROUP(MAP_SOOTOPOLIS_CITY_MART), MAP_NUM(MAP_SOOTOPOLIS_CITY_MART), LOCALID_SOOTOPOLIS_MART_CLERK },
+ { MAP_GROUP(MAP_BATTLE_FRONTIER_MART), MAP_NUM(MAP_BATTLE_FRONTIER_MART), LOCALID_FRONTIER_MART_CLERK },
};
u8 i;
@@ -3620,7 +3620,7 @@ bool32 IsTrainerRegistered(void)
int index = GetRematchIdxByTrainerIdx(gSpecialVar_0x8004);
if (index >= 0)
{
- if (FlagGet(FLAG_MATCH_CALL_REGISTERED + index) == TRUE)
+ if (FlagGet(TRAINER_REGISTERED_FLAGS_START + index) == TRUE)
return TRUE;
}
return FALSE;
@@ -3880,7 +3880,7 @@ void GetBattlePyramidHint(void)
// Used to avoid a potential softlock if the player respawns on Dewford with no way off
void ResetHealLocationFromDewford(void)
{
- if (gSaveBlock1Ptr->lastHealLocation.mapGroup == MAP_GROUP(DEWFORD_TOWN) && gSaveBlock1Ptr->lastHealLocation.mapNum == MAP_NUM(DEWFORD_TOWN))
+ if (gSaveBlock1Ptr->lastHealLocation.mapGroup == MAP_GROUP(MAP_DEWFORD_TOWN) && gSaveBlock1Ptr->lastHealLocation.mapNum == MAP_NUM(MAP_DEWFORD_TOWN))
SetLastHealLocationWarp(HEAL_LOCATION_PETALBURG_CITY);
}
@@ -3957,14 +3957,14 @@ bool8 InPokemonCenter(void)
#define FANCLUB_BITFIELD (gSaveBlock1Ptr->vars[VAR_FANCLUB_FAN_COUNTER - VARS_START])
#define FANCLUB_COUNTER 0x007F
-#define GET_TRAINER_FAN_CLUB_FLAG(flag) (FANCLUB_BITFIELD >> (flag) & 1)
-#define SET_TRAINER_FAN_CLUB_FLAG(flag) (FANCLUB_BITFIELD |= 1 << (flag))
-#define FLIP_TRAINER_FAN_CLUB_FLAG(flag)(FANCLUB_BITFIELD ^= 1 << (flag))
+#define GET_TRAINER_FAN_CLUB_FLAG(flag) (FANCLUB_BITFIELD >> (flag) & 1)
+#define SET_TRAINER_FAN_CLUB_FLAG(flag) (FANCLUB_BITFIELD |= 1 << (flag))
+#define FLIP_TRAINER_FAN_CLUB_FLAG(flag) (FANCLUB_BITFIELD ^= 1 << (flag))
-#define GET_TRAINER_FAN_CLUB_COUNTER (FANCLUB_BITFIELD & FANCLUB_COUNTER)
-#define SET_TRAINER_FAN_CLUB_COUNTER(count) (FANCLUB_BITFIELD = (FANCLUB_BITFIELD & ~FANCLUB_COUNTER) | (count))
-#define INCR_TRAINER_FAN_CLUB_COUNTER(count)(FANCLUB_BITFIELD += (count))
-#define CLEAR_TRAINER_FAN_CLUB_COUNTER (FANCLUB_BITFIELD &= ~FANCLUB_COUNTER)
+#define GET_TRAINER_FAN_CLUB_COUNTER (FANCLUB_BITFIELD & FANCLUB_COUNTER)
+#define SET_TRAINER_FAN_CLUB_COUNTER(count) (FANCLUB_BITFIELD = (FANCLUB_BITFIELD & ~FANCLUB_COUNTER) | (count))
+#define INCR_TRAINER_FAN_CLUB_COUNTER(count) (FANCLUB_BITFIELD += (count))
+#define CLEAR_TRAINER_FAN_CLUB_COUNTER (FANCLUB_BITFIELD &= ~FANCLUB_COUNTER)
void ResetFanClub(void)
{
diff --git a/src/field_weather.c b/src/field_weather.c
index 5ca9075250..bc86bcdc7d 100644
--- a/src/field_weather.c
+++ b/src/field_weather.c
@@ -277,7 +277,6 @@ static void BuildColorMaps(void)
u16 brightnessDelta;
u16 colorMapIndex;
u16 baseBrightness;
- u32 remainingBrightness;
s16 diff;
sPaletteColorMapTypes = sBasePaletteColorMapTypes;
@@ -305,11 +304,7 @@ static void BuildColorMaps(void)
}
baseBrightness = curBrightness;
- remainingBrightness = 0x1f00 - curBrightness;
- if ((0x1f00 - curBrightness) < 0)
- remainingBrightness += 0xf;
-
- brightnessDelta = remainingBrightness / (NUM_WEATHER_COLOR_MAPS - 3);
+ brightnessDelta = (0x1f00 - curBrightness) / (NUM_WEATHER_COLOR_MAPS - 3);
if (colorVal < 12)
{
// For shadows (color values < 12), the remaining color mappings are
diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c
index de0b90c480..10ce1bc37a 100644
--- a/src/field_weather_effect.c
+++ b/src/field_weather_effect.c
@@ -770,7 +770,7 @@ void Snow_InitVars(void)
gWeatherPtr->weatherGfxLoaded = FALSE;
gWeatherPtr->targetColorMapIndex = 3;
gWeatherPtr->colorMapStepDelay = 20;
- gWeatherPtr->targetSnowflakeSpriteCount = 16;
+ gWeatherPtr->targetSnowflakeSpriteCount = NUM_SNOWFLAKE_SPRITES;
gWeatherPtr->snowflakeVisibleCounter = 0;
}
diff --git a/src/fieldmap.c b/src/fieldmap.c
index d9c4fa371a..8c0e416f45 100644
--- a/src/fieldmap.c
+++ b/src/fieldmap.c
@@ -31,7 +31,7 @@ EWRAM_DATA struct Camera gCamera = {0};
EWRAM_DATA static struct ConnectionFlags sMapConnectionFlags = {0};
EWRAM_DATA static u32 UNUSED sFiller = 0; // without this, the next file won't align properly
-struct BackupMapLayout gBackupMapLayout;
+COMMON_DATA struct BackupMapLayout gBackupMapLayout = {0};
static const struct ConnectionFlags sDummyConnectionFlags = {0};
@@ -48,7 +48,7 @@ static const struct MapConnection *GetIncomingConnection(u8 direction, int x, in
static bool8 IsPosInIncomingConnectingMap(u8 direction, int x, int y, const struct MapConnection *connection);
static bool8 IsCoordInIncomingConnectingMap(int coord, int srcMax, int destMax, int offset);
-#define GetBorderBlockAt(x, y)({ \
+#define GetBorderBlockAt(x, y) ({ \
u16 block; \
int i; \
const u16 *border = gMapHeader.mapLayout->border; /* Unused, they read it again below */ \
@@ -144,7 +144,7 @@ static void InitBackupMapLayoutConnections(struct MapHeader *mapHeader)
for (i = 0; i < count; i++, connection++)
{
struct MapHeader const *cMap = GetMapHeaderFromConnection(connection);
- u32 offset = connection->offset;
+ s32 offset = connection->offset;
switch (connection->direction)
{
case CONNECTION_SOUTH:
diff --git a/src/fldeff_flash.c b/src/fldeff_flash.c
index 5c7d23b5ac..1e2b9a95fc 100644
--- a/src/fldeff_flash.c
+++ b/src/fldeff_flash.c
@@ -65,7 +65,7 @@ static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/cave_tran
static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/cave_transition/black.gbapal");
static const u16 sCaveTransitionPalette_Enter[] = INCBIN_U16("graphics/cave_transition/enter.gbapal");
-static const u16 sCaveTransitionPalette_Exit[] = INCBIN_U16("graphics/cave_transition/exit.gbapal");
+
static const u32 sCaveTransitionTilemap[] = INCBIN_U32("graphics/cave_transition/tilemap.bin.lz");
static const u32 sCaveTransitionTiles[] = INCBIN_U32("graphics/cave_transition/tiles.4bpp.lz");
@@ -219,7 +219,7 @@ static void Task_ExitCaveTransition2(u8 taskId)
LZ77UnCompVram(sCaveTransitionTiles, (void *)(VRAM + 0xC000));
LZ77UnCompVram(sCaveTransitionTilemap, (void *)(VRAM + 0xF800));
LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(14), PLTT_SIZE_4BPP);
- LoadPalette(sCaveTransitionPalette_Exit, BG_PLTT_ID(14), PLTT_SIZEOF(8));
+ LoadPalette(&sCaveTransitionPalette_Enter[8], BG_PLTT_ID(14), PLTT_SIZEOF(8));
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0
| BLDCNT_EFFECT_BLEND
| BLDCNT_TGT2_BG1
@@ -249,7 +249,7 @@ static void Task_ExitCaveTransition3(u8 taskId)
u16 blend = count + 0x1000;
SetGpuReg(REG_OFFSET_BLDALPHA, blend);
- if (count <= 0x10)
+ if (count <= 16)
{
gTasks[taskId].data[1]++;
}
@@ -270,7 +270,7 @@ static void Task_ExitCaveTransition4(u8 taskId)
if (count < 8)
{
gTasks[taskId].data[2]++;
- LoadPalette(&sCaveTransitionPalette_Exit[count], BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_Exit) - PLTT_SIZEOF(count));
+ LoadPalette(&sCaveTransitionPalette_Enter[8 + count], BG_PLTT_ID(14), PLTT_SIZEOF(8) - PLTT_SIZEOF(count));
}
else
{
diff --git a/src/fldeff_misc.c b/src/fldeff_misc.c
index c01e88b512..513cd13e76 100644
--- a/src/fldeff_misc.c
+++ b/src/fldeff_misc.c
@@ -308,7 +308,7 @@ static const struct SpriteTemplate sSpriteTemplate_RecordMixLights =
.callback = SpriteCallbackDummy,
};
-// For accessing pokemon storage PC or the Hall of Fame PC
+// For accessing Pokémon storage PC or the Hall of Fame PC
void ComputerScreenOpenEffect(u16 increment, u16 unused, u8 priority)
{
CreateComputerScreenEffectTask(Task_ComputerScreenOpenEffect, increment, unused, priority);
diff --git a/src/frontier_pass.c b/src/frontier_pass.c
index 07e06ad3b9..54d25a11e0 100644
--- a/src/frontier_pass.c
+++ b/src/frontier_pass.c
@@ -917,12 +917,12 @@ static void CB2_ReturnFromRecord(void)
sPassData->cursorX = sSavedPassData.cursorX;
sPassData->cursorY = sSavedPassData.cursorY;
memset(&sSavedPassData, 0, sizeof(sSavedPassData));
- switch (InBattlePyramid())
+ switch (CurrentBattlePyramidLocation())
{
- case 1:
+ case PYRAMID_LOCATION_FLOOR:
PlayBGM(MUS_B_PYRAMID);
break;
- case 2:
+ case PYRAMID_LOCATION_TOP:
PlayBGM(MUS_B_PYRAMID_TOP);
break;
default:
@@ -1241,7 +1241,7 @@ static void ShowHideZoomingArea(bool8 show, bool8 zoomedIn)
static void UpdateAreaHighlight(u8 cursorArea, u8 previousCursorArea)
{
- #define NON_HIGHLIGHT_AREA(area)((area) == CURSOR_AREA_NOTHING || (area) > CURSOR_AREA_CANCEL)
+ #define NON_HIGHLIGHT_AREA(area) ((area) == CURSOR_AREA_NOTHING || (area) > CURSOR_AREA_CANCEL)
// If moving off highlightable area, unhighlight it
switch (previousCursorArea)
@@ -1580,48 +1580,48 @@ static void Task_HandleFrontierMap(u8 taskId)
static u8 MapNumToFrontierFacilityId(u16 mapNum) // id + 1, zero means not a frontier map number
{
// In Battle Tower
- if ((mapNum >= MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_LOBBY) && mapNum <= MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM))
- || (mapNum >= MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM) && mapNum <= MAP_NUM(BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM)))
+ if ((mapNum >= MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY) && mapNum <= MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM))
+ || (mapNum >= MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM) && mapNum <= MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM)))
return FRONTIER_FACILITY_TOWER + 1;
// In Battle Dome
- else if (mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_DOME_LOBBY)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM))
+ else if (mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM))
return FRONTIER_FACILITY_DOME + 1;
// In Battle Palace
- else if (mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PALACE_LOBBY)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM))
+ else if (mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM))
return FRONTIER_FACILITY_PALACE + 1;
// In Battle Arena
- else if (mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_ARENA_LOBBY)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM))
+ else if (mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM))
return FRONTIER_FACILITY_ARENA + 1;
// In Battle Factory
- else if (mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM))
+ else if (mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM))
return FRONTIER_FACILITY_FACTORY + 1;
// In Battle Pike
- else if (mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PIKE_LOBBY)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS))
+ else if (mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS))
return FRONTIER_FACILITY_PIKE + 1;
// In Battle Pyramid
- else if (mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR)
- || mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PYRAMID_TOP))
+ else if (mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR)
+ || mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP))
return FRONTIER_FACILITY_PYRAMID + 1;
else
@@ -1657,8 +1657,8 @@ static void InitFrontierMapSprites(void)
{
s8 mapNum = gSaveBlock1Ptr->location.mapNum;
- if (mapNum == MAP_NUM(BATTLE_FRONTIER_OUTSIDE_WEST)
- || (mapNum == MAP_NUM(BATTLE_FRONTIER_OUTSIDE_EAST) && (x = 55)))
+ if (mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_OUTSIDE_WEST)
+ || (mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_OUTSIDE_EAST) && (x = 55)))
{
x += gSaveBlock1Ptr->pos.x;
y = gSaveBlock1Ptr->pos.y;
@@ -1679,7 +1679,7 @@ static void InitFrontierMapSprites(void)
else
{
// Handle Artisan Cave.
- if (gSaveBlock1Ptr->escapeWarp.mapNum == MAP_NUM(BATTLE_FRONTIER_OUTSIDE_EAST))
+ if (gSaveBlock1Ptr->escapeWarp.mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_OUTSIDE_EAST))
x = gSaveBlock1Ptr->escapeWarp.x + 55;
else
x = gSaveBlock1Ptr->escapeWarp.x;
diff --git a/src/frontier_util.c b/src/frontier_util.c
index 08b0e68d2e..66fb74da03 100644
--- a/src/frontier_util.c
+++ b/src/frontier_util.c
@@ -326,7 +326,7 @@ static const struct FrontierBrainMon sFrontierBrainsMons[][2][FRONTIER_PARTY_SIZ
},
[FRONTIER_FACILITY_FACTORY] =
{
- // Because Factory's pokemon are random, this facility's Brain also uses random pokemon.
+ // Because Factory's Pokémon are random, this facility's Brain also uses random Pokémon.
// What is interesting, this team is actually the one Steven uses in the multi tag battle alongside the player.
{
{
@@ -604,7 +604,7 @@ static const u16 sBattledBrainBitFlags[NUM_FRONTIER_FACILITIES][2] =
[FRONTIER_FACILITY_PYRAMID] = {1 << 12, 1 << 13},
};
-static void (* const sFrontierUtilFuncs[])(void) =
+static void (*const sFrontierUtilFuncs[])(void) =
{
[FRONTIER_UTIL_FUNC_GET_STATUS] = GetChallengeStatus,
[FRONTIER_UTIL_FUNC_GET_DATA] = GetFrontierData,
@@ -2006,7 +2006,7 @@ static void AppendIfValid(u16 species, u16 heldItem, u16 hp, u8 lvlMode, u8 monL
// gSpecialVar_Result is the level mode before and after calls to this function
// gSpecialVar_0x8004 is used to store the return value instead (TRUE if there are insufficient eligible mons)
-// The names of ineligible pokemon that have been caught are also buffered to print
+// The names of ineligible Pokémon that have been caught are also buffered to print
static void CheckPartyIneligibility(void)
{
u16 speciesArray[PARTY_SIZE];
diff --git a/gflib/gpu_regs.c b/src/gpu_regs.c
similarity index 97%
rename from gflib/gpu_regs.c
rename to src/gpu_regs.c
index 3bcc4fd931..d645c1442d 100644
--- a/gflib/gpu_regs.c
+++ b/src/gpu_regs.c
@@ -8,7 +8,7 @@
#define EMPTY_SLOT 0xFF
-static u8 sGpuRegBuffer[GPU_REG_BUF_SIZE];
+static ALIGNED(2) u8 sGpuRegBuffer[GPU_REG_BUF_SIZE]; // sGpuRegBuffer is read as u16 so it needs to be properly aligned
static u8 sGpuRegWaitingList[GPU_REG_BUF_SIZE];
static volatile bool8 sGpuRegBufferLocked;
static volatile bool8 sShouldSyncRegIE;
diff --git a/src/graphics.c b/src/graphics.c
index 17ea237df2..3d7f2fa08b 100644
--- a/src/graphics.c
+++ b/src/graphics.c
@@ -1,4 +1,5 @@
#include "global.h"
+#include "graphics.h"
const u32 gBattleTextboxTiles[] = INCBIN_U32("graphics/battle_interface/textbox.4bpp.lz");
const u32 gBattleTextboxPalette[] = INCBIN_U32("graphics/battle_interface/textbox.gbapal.lz");
@@ -257,7 +258,7 @@ const u16 gBattleAnimUnused_Unknown2[] = INCBIN_U16("graphics/battle_anims/unuse
const u16 gBattleAnimUnused_Unknown3[] = INCBIN_U16("graphics/battle_anims/unused/unknown_3.bin");
const u32 gBattleAnimUnusedGfx_LineSketch2[] = INCBIN_U32("graphics/battle_anims/unused/line_sketch_2.8bpp.lz");
-const u16 gBattleAnimUnusedPal_LineSketch2[] = INCBIN_U16("graphics/battle_anims/unused/line_sketch_2.gbapal.lz");
+const u32 gBattleAnimUnusedPal_LineSketch2[] = INCBIN_U32("graphics/battle_anims/unused/line_sketch_2.gbapal.lz");
const u32 gBattleAnimUnusedTilemap_LineSketch2[] = INCBIN_U32("graphics/battle_anims/unused/line_sketch_2.bin.lz");
const u32 gBattleAnimSpriteGfx_BlueLines[] = INCBIN_U32("graphics/battle_anims/sprites/blue_lines.4bpp.lz");
@@ -354,7 +355,7 @@ const u16 gBattleInterface_BallStatusBarPal[] = INCBIN_U16("graphics/battle_inte
const u16 gBattleInterface_BallDisplayPal[] = INCBIN_U16("graphics/battle_interface/ball_display.gbapal");
-const u8 gHealthboxElementsGfxTable[] = INCBIN_U8("graphics/battle_interface/hpbar.4bpp",
+const u8 gHealthboxElementsGfxTable[][32] = INCBIN_U8("graphics/battle_interface/hpbar.4bpp",
"graphics/battle_interface/expbar.4bpp",
"graphics/battle_interface/status.4bpp",
"graphics/battle_interface/misc.4bpp",
@@ -362,7 +363,7 @@ const u8 gHealthboxElementsGfxTable[] = INCBIN_U8("graphics/battle_interface/hpb
"graphics/battle_interface/misc_frameend.4bpp",
"graphics/battle_interface/ball_display.4bpp",
"graphics/battle_interface/ball_caught_indicator.4bpp",
- "graphics/battle_interface/status2.4bpp", // these three duplicate sets of graphics are for the opponent/partner pokemon
+ "graphics/battle_interface/status2.4bpp", // these three duplicate sets of graphics are for the opponent/partner Pokémon
"graphics/battle_interface/status3.4bpp",
"graphics/battle_interface/status4.4bpp",
"graphics/battle_interface/healthbox_doubles_frameend.4bpp",
@@ -942,7 +943,7 @@ const u32 gBattleVSFrame_Pal[] = INCBIN_U32("graphics/battle_transitions/vs_fram
const u32 gVsLettersGfx[] = INCBIN_U32("graphics/battle_transitions/vs.4bpp.lz");
-#include "data/graphics/battle_terrain.h"
+#include "data/graphics/battle_environment.h"
// Battle Dome
const u32 gDomeTourneyTree_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_tree.4bpp.lz");
@@ -953,7 +954,7 @@ const u32 gDomeTourneyLineUp_Tilemap[] = INCBIN_U32("graphics/battle_frontier/to
const u32 gDomeTourneyInfoCard_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_info_card.4bpp.lz");
const u32 gDomeTourneyInfoCard_Tilemap[] = INCBIN_U32("graphics/battle_frontier/tourney_info_card_tilemap.bin.lz");
const u32 gDomeTourneyInfoCardBg_Tilemap[] = INCBIN_U32("graphics/battle_frontier/tourney_info_card_bg.bin.lz");
-const u32 gDomeTourneyTreeButtons_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_buttons.4bpp.lz"); // exit/cancel and pokeball buttons
+const u32 gDomeTourneyTreeButtons_Gfx[] = INCBIN_U32("graphics/battle_frontier/tourney_buttons.4bpp.lz"); // exit/cancel and Poké Ball buttons
const u32 gDomeTourneyTree_Pal[] = INCBIN_U32("graphics/battle_frontier/tourney_tree.gbapal.lz");
const u32 gDomeTourneyTreeButtons_Pal[] = INCBIN_U32("graphics/battle_frontier/tourney_buttons.gbapal.lz");
const u32 gDomeTourneyMatchCardBg_Pal[] = INCBIN_U32("graphics/battle_frontier/tourney_match_card_bg.gbapal.lz");
@@ -971,7 +972,7 @@ const u16 gTilesetAnims_BattleDomePals0_3[] = INCBIN_U16("graphics/battle_fronti
static const u16 sUnused0[] = {0x13F, 0x119, 0x113, 0x10E};
-const u16 gBattlePyramidFloor_Pal[] = INCBIN_U16("graphics/battle_frontier/pyramid_floor.gbapal");
+const u16 gBattlePyramidFloor_Pal[][16] = INCBIN_U16("graphics/battle_frontier/pyramid_floor.gbapal");
const u32 gMultiBattleIntroBg_Opponent_Tilemap[] = INCBIN_U32("graphics/battle_frontier/multi_battle_intro_bg_opponent.bin.lz");
const u32 gMultiBattleIntroBg_Player_Tilemap[] = INCBIN_U32("graphics/battle_frontier/multi_battle_intro_bg_player.bin.lz");
@@ -1228,9 +1229,8 @@ const u16 gFrontierPassMapCursor_Pal[] = INCBIN_U16("graphics/frontier_pass/map_
const u16 gFrontierPassMedalsSilver_Pal[] = INCBIN_U16("graphics/frontier_pass/silver.gbapal");
const u16 gFrontierPassMedalsGold_Pal[] = INCBIN_U16("graphics/frontier_pass/gold.gbapal");
-// Pokedex
+// Pokédex
const u16 gPokedexBgHoenn_Pal[] = INCBIN_U16("graphics/pokedex/bg_hoenn.gbapal");
-const u16 gPokedexCaughtScreen_Pal[] = INCBIN_U16("graphics/pokedex/caught_screen.gbapal");
const u16 gPokedexSearchResults_Pal[] = INCBIN_U16("graphics/pokedex/search_results_bg.gbapal");
const u16 gPokedexBgNational_Pal[] = INCBIN_U16("graphics/pokedex/bg_national.gbapal");
const u32 gPokedexMenu_Gfx[] = INCBIN_U32("graphics/pokedex/menu.4bpp.lz");
@@ -1282,7 +1282,7 @@ const u16 gContestResultsTitle_Smart_Tilemap[] = INCBIN_U16("graphics/contest/r
const u16 gContestResultsTitle_Tough_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title_tough.bin");
const u16 gContestResultsTitle_Tilemap[] = INCBIN_U16("graphics/contest/results_screen/title.bin");
-// pokenav
+// PokéNav
const u16 gPokenavCondition_Pal[] = INCBIN_U16("graphics/pokenav/condition/graph.gbapal");
const u32 gPokenavCondition_Gfx[] = INCBIN_U32("graphics/pokenav/condition/graph.4bpp.lz");
@@ -1383,7 +1383,7 @@ const u32 gKantoTrainerCardFront_Tilemap[] = INCBIN_U32("graphics/trainer_card/f
const u32 gKantoTrainerCardBack_Tilemap[] = INCBIN_U32("graphics/trainer_card/frlg/back.bin.lz");
const u32 gKantoTrainerCardFrontLink_Tilemap[] = INCBIN_U32("graphics/trainer_card/frlg/front_link.bin.lz");
-// pokemon storage system
+// Pokémon storage system
const u32 gStorageSystemMenu_Gfx[] = INCBIN_U32("graphics/pokemon_storage/menu.4bpp.lz");
const u16 gStorageSystemPartyMenu_Pal[] = INCBIN_U16("graphics/pokemon_storage/party_menu.gbapal");
@@ -1515,12 +1515,12 @@ const u16 gTitleScreenPressStartPal[] = INCBIN_U16("graphics/title_screen/p
const u32 gTitleScreenPressStartGfx[] = INCBIN_U32("graphics/title_screen/press_start.4bpp.lz");
const u32 gTitleScreenPokemonLogoTilemap[] = INCBIN_U32("graphics/title_screen/pokemon_logo.bin.lz");
-const u16 gFrontierPassBg_Pal[] = INCBIN_U16("graphics/frontier_pass/bg.gbapal"); // 8 x 16
+const u16 gFrontierPassBg_Pal[][16] = INCBIN_U16("graphics/frontier_pass/bg.gbapal"); // 8 x 16
const u32 gFrontierPassBg_Gfx[] = INCBIN_U32("graphics/frontier_pass/bg.4bpp.lz");
const u32 gFrontierPassMapAndCard_Gfx[] = INCBIN_U32("graphics/frontier_pass/map_and_card.8bpp.lz");
const u32 gFrontierPassBg_Tilemap[] = INCBIN_U32("graphics/frontier_pass/bg.bin.lz");
-const u16 gFrontierPassCancelButton_Tilemap[] = INCBIN_U16("graphics/frontier_pass/cancel.bin");
-const u16 gFrontierPassCancelButtonHighlighted_Tilemap[] = INCBIN_U16("graphics/frontier_pass/cancel_highlighted.bin");
+const u32 gFrontierPassCancelButton_Tilemap[] = INCBIN_U32("graphics/frontier_pass/cancel.bin");
+const u32 gFrontierPassCancelButtonHighlighted_Tilemap[] = INCBIN_U32("graphics/frontier_pass/cancel_highlighted.bin");
// Berry Crush
const u16 gBerryCrush_Crusher_Pal[] = INCBIN_U16("graphics/berry_crush/crusher.gbapal");
diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c
index 63c7c30c26..c9038ecf64 100644
--- a/src/hall_of_fame.c
+++ b/src/hall_of_fame.c
@@ -97,7 +97,7 @@ static void Task_HofPC_HandlePaletteOnExit(u8 taskId);
static void Task_HofPC_HandleExit(u8 taskId);
static void Task_HofPC_ExitOnButtonPress(u8 taskId);
static void SpriteCB_GetOnScreenAndAnimate(struct Sprite *sprite);
-static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u8 unused2);
+static void HallOfFame_PrintMonInfo(struct HallofFameMon *currMon, u8 unused1, u8 unused2);
static void HallOfFame_PrintWelcomeText(u8 unusedPossiblyWindowId, u8 unused2);
static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2);
static void Task_DoDomeConfetti(u8 taskId);
@@ -296,7 +296,7 @@ static const union AnimCmd sAnim_WhiteConfettiC[] =
ANIMCMD_END
};
-static const union AnimCmd * const sAnims_Confetti[] =
+static const union AnimCmd *const sAnims_Confetti[] =
{
sAnim_PinkConfettiA,
sAnim_RedConfettiA,
@@ -563,7 +563,7 @@ static void Task_Hof_DisplayMon(u8 taskId)
s16 startX, startY, destX, destY;
u16 currMonId = gTasks[taskId].tDisplayedMonId;
- struct HallofFameMon* currMon = &sHofMonPtr->mon[currMonId];
+ struct HallofFameMon *currMon = &sHofMonPtr->mon[currMonId];
if (gTasks[taskId].tMonNumber > PARTY_SIZE / 2)
{
@@ -597,7 +597,7 @@ static void Task_Hof_DisplayMon(u8 taskId)
static void Task_Hof_PrintMonInfoAfterAnimating(u8 taskId)
{
u16 currMonId = gTasks[taskId].tDisplayedMonId;
- struct HallofFameMon* currMon = &sHofMonPtr->mon[currMonId];
+ struct HallofFameMon *currMon = &sHofMonPtr->mon[currMonId];
struct Sprite *monSprite = &gSprites[gTasks[taskId].tMonSpriteId(currMonId)];
if (monSprite->callback == SpriteCallbackDummy)
@@ -612,7 +612,7 @@ static void Task_Hof_PrintMonInfoAfterAnimating(u8 taskId)
static void Task_Hof_TryDisplayAnotherMon(u8 taskId)
{
u16 currPokeID = gTasks[taskId].tDisplayedMonId;
- struct HallofFameMon* currMon = &sHofMonPtr->mon[currPokeID];
+ struct HallofFameMon *currMon = &sHofMonPtr->mon[currPokeID];
if (gTasks[taskId].tFrameCount != 0)
{
@@ -621,7 +621,7 @@ static void Task_Hof_TryDisplayAnotherMon(u8 taskId)
else
{
sHofFadePalettes |= (0x10000 << gSprites[gTasks[taskId].tMonSpriteId(currPokeID)].oam.paletteNum);
- if (gTasks[taskId].tDisplayedMonId < PARTY_SIZE - 1 && currMon[1].species != SPECIES_NONE) // there is another pokemon to display
+ if (gTasks[taskId].tDisplayedMonId < PARTY_SIZE - 1 && currMon[1].species != SPECIES_NONE) // there is another Pokémon to display
{
gTasks[taskId].tDisplayedMonId++;
BeginNormalPaletteFade(sHofFadePalettes, 0, 12, 12, RGB(16, 29, 24));
@@ -889,7 +889,7 @@ static void Task_HofPC_CopySaveData(u8 taskId)
static void Task_HofPC_DrawSpritesPrintText(u8 taskId)
{
struct HallofFameTeam *savedTeams = sHofMonPtr;
- struct HallofFameMon* currMon;
+ struct HallofFameMon *currMon;
u16 i;
for (i = 0; i < gTasks[taskId].tCurrTeamNo; i++)
@@ -955,7 +955,7 @@ static void Task_HofPC_DrawSpritesPrintText(u8 taskId)
static void Task_HofPC_PrintMonInfo(u8 taskId)
{
struct HallofFameTeam *savedTeams = sHofMonPtr;
- struct HallofFameMon* currMon;
+ struct HallofFameMon *currMon;
u16 i;
u16 currMonID;
@@ -1111,7 +1111,7 @@ static void HallOfFame_PrintWelcomeText(u8 unusedPossiblyWindowId, u8 unused2)
CopyWindowToVram(0, COPYWIN_FULL);
}
-static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u8 unused2)
+static void HallOfFame_PrintMonInfo(struct HallofFameMon *currMon, u8 unused1, u8 unused2)
{
u8 text[max(32, POKEMON_NAME_LENGTH + 1)];
u8 *stringPtr;
diff --git a/src/heal_location.c b/src/heal_location.c
index 0ab5540346..a787b33590 100644
--- a/src/heal_location.c
+++ b/src/heal_location.c
@@ -10,7 +10,7 @@ u32 GetHealLocationIndexByMap(u16 mapGroup, u16 mapNum)
for (i = 0; i < ARRAY_COUNT(sHealLocations); i++)
{
- if (sHealLocations[i].group == mapGroup && sHealLocations[i].map == mapNum)
+ if (sHealLocations[i].mapGroup == mapGroup && sHealLocations[i].mapNum == mapNum)
return i + 1;
}
return HEAL_LOCATION_NONE;
diff --git a/src/image_processing_effects.c b/src/image_processing_effects.c
index 51a5d13993..b09e881fe0 100644
--- a/src/image_processing_effects.c
+++ b/src/image_processing_effects.c
@@ -4,16 +4,16 @@
#include "constants/rgb.h"
// IWRAM common
-u8 gCanvasColumnStart;
-u16 *gCanvasPixels;
-u8 gCanvasRowEnd;
-u8 gCanvasHeight;
-u8 gCanvasColumnEnd;
-u8 gCanvasRowStart;
-u8 gCanvasMonPersonality;
-u8 gCanvasWidth;
-u16 *gCanvasPalette;
-u16 gCanvasPaletteStart;
+COMMON_DATA u8 gCanvasColumnStart = 0;
+COMMON_DATA u16 *gCanvasPixels = NULL;
+COMMON_DATA u8 gCanvasRowEnd = 0;
+COMMON_DATA u8 gCanvasHeight = 0;
+COMMON_DATA u8 gCanvasColumnEnd = 0;
+COMMON_DATA u8 gCanvasRowStart = 0;
+COMMON_DATA u8 gCanvasMonPersonality = 0;
+COMMON_DATA u8 gCanvasWidth = 0;
+COMMON_DATA u16 *gCanvasPalette = NULL;
+COMMON_DATA u16 gCanvasPaletteStart = 0;
static void ApplyImageEffect_Pointillism(void);
static void ApplyImageEffect_Blur(void);
diff --git a/src/international_string_util.c b/src/international_string_util.c
index 457e3260be..6186bd116c 100644
--- a/src/international_string_util.c
+++ b/src/international_string_util.c
@@ -76,10 +76,7 @@ int Intl_GetListMenuWidth(const struct ListMenuTemplate *listMenu)
}
finalWidth = maxWidth + listMenu->item_X + 9;
- if (finalWidth < 0)
- finalWidth += 7;
-
- finalWidth >>= 3;
+ finalWidth /= 8;
if (finalWidth > 28)
finalWidth = 28;
diff --git a/src/intro.c b/src/intro.c
index 195374bba0..169ef002a6 100644
--- a/src/intro.c
+++ b/src/intro.c
@@ -110,7 +110,13 @@ static void MainCB2_EndIntro(void);
extern const struct CompressedSpriteSheet gBattleAnimPicTable[];
extern const struct CompressedSpritePalette gBattleAnimPaletteTable[];
-extern const struct SpriteTemplate gAncientPowerRockSpriteTemplate[];
+extern const struct SpriteTemplate gAncientPowerRockSpriteTemplate;
+
+enum {
+ COPYRIGHT_INITIALIZE,
+ COPYRIGHT_START_FADE = 140,
+ COPYRIGHT_START_INTRO,
+};
#define TAG_VOLBEAT 1500
#define TAG_TORCHIC 1501
@@ -172,8 +178,8 @@ static EWRAM_DATA u16 sIntroCharacterGender = 0;
static EWRAM_DATA u16 UNUSED sUnusedVar = 0;
static EWRAM_DATA u16 sFlygonYOffset = 0;
-u32 gIntroFrameCounter;
-struct GcmbStruct gMultibootProgramStruct;
+COMMON_DATA u32 gIntroFrameCounter = 0;
+COMMON_DATA struct GcmbStruct gMultibootProgramStruct = {0};
static const u16 sIntroDrops_Pal[] = INCBIN_U16("graphics/intro/scene_1/drops.gbapal");
static const u16 sIntroLogo_Pal[] = INCBIN_U16("graphics/intro/scene_1/logo.gbapal");
@@ -1067,7 +1073,7 @@ static u8 SetUpCopyrightScreen(void)
{
switch (gMain.state)
{
- case 0:
+ case COPYRIGHT_INITIALIZE:
SetVBlankCallback(NULL);
SetGpuReg(REG_OFFSET_BLDCNT, 0);
SetGpuReg(REG_OFFSET_BLDALPHA, 0);
@@ -1101,7 +1107,7 @@ static u8 SetUpCopyrightScreen(void)
gMain.state++;
GameCubeMultiBoot_Main(&gMultibootProgramStruct);
break;
- case 140:
+ case COPYRIGHT_START_FADE:
GameCubeMultiBoot_Main(&gMultibootProgramStruct);
if (gMultibootProgramStruct.gcmb_field_2 != 1)
{
@@ -1109,7 +1115,7 @@ static u8 SetUpCopyrightScreen(void)
gMain.state++;
}
break;
- case 141:
+ case COPYRIGHT_START_INTRO:
if (UpdatePaletteFade())
break;
CreateTask(Task_Scene1_Load, 0);
@@ -1860,12 +1866,15 @@ static void Task_Scene3_StartGroudon(u8 taskId)
#define tTrigIdx data[6] // Re-used
#define tPalIdx data[7]
+// Treats gIntro3Bg_Pal as u8* and iterates by 1
+#define INTRO3_RAW_PTR(palId)(((void *) &gIntro3Bg_Pal) + palId)
+
static void Task_Scene3_Groudon(u8 taskId)
{
s16 *data = gTasks[taskId].data;
tTimer++;
- if ((u16)(tState - 1) < 7 && tTimer % 2 == 0)
+ if ((tState >= 1 && tState <= 7) && tTimer % 2 == 0)
tYShake ^= 3;
PanFadeAndZoomScreen(tScreenX, tScreenY + tYShake, tZoom, 0);
switch (tState)
@@ -1884,7 +1893,7 @@ static void Task_Scene3_Groudon(u8 taskId)
if (--tDelay == 0)
{
tDelay = 2;
- CpuCopy16(&gIntro3Bg_Pal[tPalIdx], &gPlttBufferFaded[BG_PLTT_ID(1) + 15], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(tPalIdx), &gPlttBufferFaded[BG_PLTT_ID(1) + 15], PLTT_SIZEOF(1));
tPalIdx += 2;
if (tPalIdx == 0x1EC)
tState++;
@@ -1901,7 +1910,7 @@ static void Task_Scene3_Groudon(u8 taskId)
if (--tDelay == 0)
{
tDelay = 2;
- CpuCopy16(&gIntro3Bg_Pal[tPalIdx], &gPlttBufferFaded[BG_PLTT_ID(1) + 15], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(tPalIdx), &gPlttBufferFaded[BG_PLTT_ID(1) + 15], PLTT_SIZEOF(1));
tPalIdx -= 2;
if (tPalIdx == 0x1E0)
{
@@ -1987,7 +1996,7 @@ static void CreateGroudonRockSprites(u8 taskId)
for (i = 0; i < (int)ARRAY_COUNT(sGroudonRockData); i++)
{
- spriteId = CreateSprite(gAncientPowerRockSpriteTemplate, sGroudonRockData[i][0], DISPLAY_HEIGHT, i);
+ spriteId = CreateSprite(&gAncientPowerRockSpriteTemplate, sGroudonRockData[i][0], DISPLAY_HEIGHT, i);
gSprites[spriteId].callback = SpriteCB_GroudonRocks;
gSprites[spriteId].oam.priority = 0;
gSprites[spriteId].sRockId = i;
@@ -2143,7 +2152,7 @@ static void Task_Scene3_Kyogre(u8 taskId)
if (--tDelay == 0)
{
tDelay = 4;
- CpuCopy16(&gIntro3Bg_Pal[tPalIdx], &gPlttBufferFaded[BG_PLTT_ID(2) + 15], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(tPalIdx), &gPlttBufferFaded[BG_PLTT_ID(2) + 15], PLTT_SIZEOF(1));
tPalIdx -= 2;
if (tPalIdx == 0x1E0)
tState++;
@@ -2161,7 +2170,7 @@ static void Task_Scene3_Kyogre(u8 taskId)
if (--tDelay == 0)
{
tDelay = 4;
- CpuCopy16(&gIntro3Bg_Pal[tPalIdx], &gPlttBufferFaded[BG_PLTT_ID(2) + 15], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(tPalIdx), &gPlttBufferFaded[BG_PLTT_ID(2) + 15], PLTT_SIZEOF(1));
tPalIdx += 2;
if (tPalIdx == 0x1EE)
{
@@ -2492,7 +2501,7 @@ static void SpriteCB_Lightning(struct Sprite *sprite)
sprite->sPalIdx = 0x1C2;
sprite->sState++;
case 1:
- CpuCopy16(&gIntro3Bg_Pal[sprite->sPalIdx], &gPlttBufferFaded[BG_PLTT_ID(5) + 13], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(sprite->sPalIdx), &gPlttBufferFaded[BG_PLTT_ID(5) + 13], PLTT_SIZEOF(1));
sprite->sPalIdx += 2;
if (sprite->sPalIdx != 0x1CE)
break;
@@ -2503,7 +2512,7 @@ static void SpriteCB_Lightning(struct Sprite *sprite)
if (--sprite->sDelay == 0)
{
sprite->sDelay = 4;
- CpuCopy16(&gIntro3Bg_Pal[sprite->sPalIdx], &gPlttBufferFaded[BG_PLTT_ID(5) + 13], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(sprite->sPalIdx), &gPlttBufferFaded[BG_PLTT_ID(5) + 13], PLTT_SIZEOF(1));
sprite->sPalIdx -= 2;
if (sprite->sPalIdx == 0x1C0)
DestroySprite(sprite);
@@ -2606,7 +2615,7 @@ static void Task_RayquazaAttack(u8 taskId)
case 0:
if ((data[2] & 1) != 0)
{
- CpuCopy16(&gIntro3Bg_Pal[0x1A2 + data[1] * 2], &gPlttBufferFaded[BG_PLTT_ID(5) + 14], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(0x1A2 + data[1] * 2), &gPlttBufferFaded[BG_PLTT_ID(5) + 14], PLTT_SIZEOF(1));
data[1]++;
}
if (data[1] == 6)
@@ -2621,7 +2630,7 @@ static void Task_RayquazaAttack(u8 taskId)
{
if ((data[2] & 1) != 0)
{
- CpuCopy16(&gIntro3Bg_Pal[0x1A2 + data[1] * 2], &gPlttBufferFaded[BG_PLTT_ID(5) + 8], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(0x1A2 + data[1] * 2), &gPlttBufferFaded[BG_PLTT_ID(5) + 8], PLTT_SIZEOF(1));
data[1]++;
}
if (data[1] == 6)
@@ -2640,7 +2649,7 @@ static void Task_RayquazaAttack(u8 taskId)
{
if ((data[2] & 1) != 0)
{
- CpuCopy16(&gIntro3Bg_Pal[0x182 + data[1] * 2], &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(0x182 + data[1] * 2), &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(1));
data[1]++;
}
if (data[1] == 6)
@@ -2664,9 +2673,9 @@ static void Task_RayquazaAttack(u8 taskId)
if (--data[3] != 0)
{
BlendPalette(BG_PLTT_ID(5), 16, data[3], RGB(9, 10, 10));
- CpuCopy16(&gIntro3Bg_Pal[428], &gPlttBufferFaded[BG_PLTT_ID(5) + 14], PLTT_SIZEOF(1));
- CpuCopy16(&gIntro3Bg_Pal[428], &gPlttBufferFaded[BG_PLTT_ID(5) + 8], PLTT_SIZEOF(1));
- CpuCopy16(&gIntro3Bg_Pal[396], &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(428), &gPlttBufferFaded[BG_PLTT_ID(5) + 14], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(428), &gPlttBufferFaded[BG_PLTT_ID(5) + 8], PLTT_SIZEOF(1));
+ CpuCopy16(INTRO3_RAW_PTR(396), &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(1));
}
else
{
diff --git a/gflib/io_reg.c b/src/io_reg.c
similarity index 100%
rename from gflib/io_reg.c
rename to src/io_reg.c
diff --git a/src/item.c b/src/item.c
index b67cf5f218..a22eaaec91 100644
--- a/src/item.c
+++ b/src/item.c
@@ -78,7 +78,7 @@ void SetBagItemsPointers(void)
void CopyItemName(u16 itemId, u8 *dst)
{
- StringCopy(dst, ItemId_GetName(itemId));
+ StringCopy(dst, GetItemName(itemId));
}
void CopyItemNameHandlePlural(u16 itemId, u8 *dst, u32 quantity)
@@ -86,7 +86,7 @@ void CopyItemNameHandlePlural(u16 itemId, u8 *dst, u32 quantity)
if (itemId == ITEM_POKE_BALL)
{
if (quantity < 2)
- StringCopy(dst, ItemId_GetName(ITEM_POKE_BALL));
+ StringCopy(dst, GetItemName(ITEM_POKE_BALL));
else
StringCopy(dst, gText_PokeBalls);
}
@@ -95,7 +95,7 @@ void CopyItemNameHandlePlural(u16 itemId, u8 *dst, u32 quantity)
if (itemId >= FIRST_BERRY_INDEX && itemId <= LAST_BERRY_INDEX)
GetBerryCountString(dst, gBerries[itemId - FIRST_BERRY_INDEX].name, quantity);
else
- StringCopy(dst, ItemId_GetName(itemId));
+ StringCopy(dst, GetItemName(itemId));
}
}
@@ -131,11 +131,11 @@ bool8 CheckBagHasItem(u16 itemId, u16 count)
u8 i;
u8 pocket;
- if (ItemId_GetPocket(itemId) == 0)
+ if (GetItemPocket(itemId) == 0)
return FALSE;
- if (InBattlePyramid() || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
return CheckPyramidBagHasItem(itemId, count);
- pocket = ItemId_GetPocket(itemId) - 1;
+ pocket = GetItemPocket(itemId) - 1;
// Check for item slots that contain the item
for (i = 0; i < gBagPockets[pocket].capacity; i++)
{
@@ -178,15 +178,15 @@ bool8 CheckBagHasSpace(u16 itemId, u16 count)
u16 slotCapacity;
u16 ownedCount;
- if (ItemId_GetPocket(itemId) == POCKET_NONE)
+ if (GetItemPocket(itemId) == POCKET_NONE)
return FALSE;
- if (InBattlePyramid() || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
{
return CheckPyramidBagHasSpace(itemId, count);
}
- pocket = ItemId_GetPocket(itemId) - 1;
+ pocket = GetItemPocket(itemId) - 1;
if (pocket != BERRIES_POCKET)
slotCapacity = MAX_BAG_ITEM_CAPACITY;
else
@@ -239,11 +239,11 @@ bool8 AddBagItem(u16 itemId, u16 count)
{
u8 i;
- if (ItemId_GetPocket(itemId) == POCKET_NONE)
+ if (GetItemPocket(itemId) == POCKET_NONE)
return FALSE;
// check Battle Pyramid Bag
- if (InBattlePyramid() || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
{
return AddPyramidBagItem(itemId, count);
}
@@ -253,7 +253,7 @@ bool8 AddBagItem(u16 itemId, u16 count)
struct ItemSlot *newItems;
u16 slotCapacity;
u16 ownedCount;
- u8 pocket = ItemId_GetPocket(itemId) - 1;
+ u8 pocket = GetItemPocket(itemId) - 1;
itemPocket = &gBagPockets[pocket];
newItems = AllocZeroed(itemPocket->capacity * sizeof(struct ItemSlot));
@@ -347,11 +347,11 @@ bool8 RemoveBagItem(u16 itemId, u16 count)
u8 i;
u16 totalQuantity = 0;
- if (ItemId_GetPocket(itemId) == POCKET_NONE || itemId == ITEM_NONE)
+ if (GetItemPocket(itemId) == POCKET_NONE || itemId == ITEM_NONE)
return FALSE;
// check Battle Pyramid Bag
- if (InBattlePyramid() || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
{
return RemovePyramidBagItem(itemId, count);
}
@@ -362,7 +362,7 @@ bool8 RemoveBagItem(u16 itemId, u16 count)
u16 ownedCount;
struct BagPocket *itemPocket;
- pocket = ItemId_GetPocket(itemId) - 1;
+ pocket = GetItemPocket(itemId) - 1;
itemPocket = &gBagPockets[pocket];
for (i = 0; i < itemPocket->capacity; i++)
@@ -432,7 +432,7 @@ bool8 RemoveBagItem(u16 itemId, u16 count)
u8 GetPocketByItemId(u16 itemId)
{
- return ItemId_GetPocket(itemId);
+ return GetItemPocket(itemId);
}
void ClearItemSlots(struct ItemSlot *itemSlots, u8 itemCount)
@@ -632,7 +632,7 @@ void SortBerriesOrTMHMs(struct BagPocket *bagPocket)
}
}
-void MoveItemSlotInList(struct ItemSlot* itemSlots_, u32 from, u32 to_)
+void MoveItemSlotInList(struct ItemSlot *itemSlots_, u32 from, u32 to_)
{
// dumb assignments needed to match
struct ItemSlot *itemSlots = itemSlots_;
@@ -672,7 +672,7 @@ u16 CountTotalItemQuantityInBag(u16 itemId)
{
u16 i;
u16 ownedCount = 0;
- struct BagPocket *bagPocket = &gBagPockets[ItemId_GetPocket(itemId) - 1];
+ struct BagPocket *bagPocket = &gBagPockets[GetItemPocket(itemId) - 1];
for (i = 0; i < bagPocket->capacity; i++)
{
@@ -871,74 +871,74 @@ static u16 SanitizeItemId(u16 itemId)
return itemId;
}
-const u8 *ItemId_GetName(u16 itemId)
+const u8 *GetItemName(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].name;
}
// Unused
-u16 ItemId_GetId(u16 itemId)
+u16 GetItemId(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].itemId;
}
-u16 ItemId_GetPrice(u16 itemId)
+u16 GetItemPrice(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].price;
}
-u8 ItemId_GetHoldEffect(u16 itemId)
+u8 GetItemHoldEffect(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].holdEffect;
}
-u8 ItemId_GetHoldEffectParam(u16 itemId)
+u8 GetItemHoldEffectParam(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].holdEffectParam;
}
-const u8 *ItemId_GetDescription(u16 itemId)
+const u8 *GetItemDescription(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].description;
}
-u8 ItemId_GetImportance(u16 itemId)
+u8 GetItemImportance(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].importance;
}
// Unused
-u8 ItemId_GetRegistrability(u16 itemId)
+u8 GetItemRegistrability(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].registrability;
}
-u8 ItemId_GetPocket(u16 itemId)
+u8 GetItemPocket(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].pocket;
}
-u8 ItemId_GetType(u16 itemId)
+u8 GetItemType(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].type;
}
-ItemUseFunc ItemId_GetFieldFunc(u16 itemId)
+ItemUseFunc GetItemFieldFunc(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].fieldUseFunc;
}
-u8 ItemId_GetBattleUsage(u16 itemId)
+u8 GetItemBattleUsage(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].battleUsage;
}
-ItemUseFunc ItemId_GetBattleFunc(u16 itemId)
+ItemUseFunc GetItemBattleFunc(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].battleUseFunc;
}
-u8 ItemId_GetSecondaryId(u16 itemId)
+u8 GetItemSecondaryId(u16 itemId)
{
return gItems[SanitizeItemId(itemId)].secondaryId;
}
diff --git a/src/item_menu.c b/src/item_menu.c
index f0abfcf62a..e5e3e88f4e 100755
--- a/src/item_menu.c
+++ b/src/item_menu.c
@@ -138,7 +138,7 @@ static void PrepareTMHMMoveWindow(void);
static bool8 IsWallysBag(void);
static void Task_WallyTutorialBagMenu(u8);
static void Task_BagMenu_HandleInput(u8);
-static void GetItemName(u8 *, u16);
+static void GetItemNameFromPocket(u8 *, u16);
static void PrintItemDescription(int);
static void BagMenu_PrintCursorAtPos(u8, u8);
static void BagMenu_Print(u8, u8, const u8 *, u8, u8, u8, u8, u8, u8);
@@ -565,7 +565,7 @@ void CB2_BagMenuFromStartMenu(void)
void CB2_BagMenuFromBattle(void)
{
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
GoToBagMenu(ITEMMENULOCATION_BATTLE, POCKETS_COUNT, CB2_SetUpReshowBattleScreenAfterMenu2);
else
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_BATTLE, CB2_SetUpReshowBattleScreenAfterMenu2);
@@ -868,7 +868,7 @@ static void LoadBagItemListBuffers(u8 pocketId)
{
for (i = 0; i < gBagMenu->numItemStacks[pocketId] - 1; i++)
{
- GetItemName(sListBuffer2->name[i], pocket->itemSlots[i].itemId);
+ GetItemNameFromPocket(sListBuffer2->name[i], pocket->itemSlots[i].itemId);
subBuffer = sListBuffer1->subBuffers;
subBuffer[i].name = sListBuffer2->name[i];
subBuffer[i].id = i;
@@ -882,7 +882,7 @@ static void LoadBagItemListBuffers(u8 pocketId)
{
for (i = 0; i < gBagMenu->numItemStacks[pocketId]; i++)
{
- GetItemName(sListBuffer2->name[i], pocket->itemSlots[i].itemId);
+ GetItemNameFromPocket(sListBuffer2->name[i], pocket->itemSlots[i].itemId);
subBuffer = sListBuffer1->subBuffers;
subBuffer[i].name = sListBuffer2->name[i];
subBuffer[i].id = i;
@@ -894,7 +894,7 @@ static void LoadBagItemListBuffers(u8 pocketId)
gMultiuseListMenuTemplate.maxShowed = gBagMenu->numShownItems[pocketId];
}
-static void GetItemName(u8 *dest, u16 itemId)
+static void GetItemNameFromPocket(u8 *dest, u16 itemId)
{
switch (gBagPosition.pocket)
{
@@ -976,7 +976,7 @@ static void BagMenu_ItemPrintCallback(u8 windowId, u32 itemIndex, u8 y)
offset = GetStringRightAlignXOffset(FONT_NARROW, gStringVar4, 119);
BagMenu_Print(windowId, FONT_NARROW, gStringVar4, offset, y, 0, 0, TEXT_SKIP_DRAW, COLORID_NORMAL);
}
- else if (gBagPosition.pocket != KEYITEMS_POCKET && ItemId_GetImportance(itemId) == FALSE)
+ else if (gBagPosition.pocket != KEYITEMS_POCKET && GetItemImportance(itemId) == FALSE)
{
// Print item quantity
ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, BAG_ITEM_CAPACITY_DIGITS);
@@ -998,7 +998,7 @@ static void PrintItemDescription(int itemIndex)
const u8 *str;
if (itemIndex != LIST_CANCEL)
{
- str = ItemId_GetDescription(BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, itemIndex));
+ str = GetItemDescription(BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, itemIndex));
}
else
{
@@ -1432,7 +1432,7 @@ static void StartItemSwap(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- ListMenuSetUnkIndicatorsStructField(tListTaskId, 16, 1);
+ ListMenuSetTemplateField(tListTaskId, LISTFIELD_CURSORKIND, CURSOR_INVISIBLE);
tListPosition = gBagPosition.scrollPosition[gBagPosition.pocket] + gBagPosition.cursorPosition[gBagPosition.pocket];
gBagMenu->toSwapPos = tListPosition;
CopyItemName(BagGetItemIdByPocketPosition(gBagPosition.pocket + 1, tListPosition), gStringVar1);
@@ -1533,7 +1533,7 @@ static void OpenContextMenu(u8 taskId)
{
case ITEMMENULOCATION_BATTLE:
case ITEMMENULOCATION_WALLY:
- if (ItemId_GetBattleUsage(gSpecialVar_ItemId))
+ if (GetItemBattleUsage(gSpecialVar_ItemId))
{
gBagMenu->contextMenuItemsPtr = sContextMenuItems_BattleUse;
gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BattleUse);
@@ -1549,7 +1549,7 @@ static void OpenContextMenu(u8 taskId)
gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_BerryBlenderCrush);
break;
case ITEMMENULOCATION_APPRENTICE:
- if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY)
+ if (!GetItemImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY)
{
gBagMenu->contextMenuItemsPtr = sContextMenuItems_Apprentice;
gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_Apprentice);
@@ -1561,7 +1561,7 @@ static void OpenContextMenu(u8 taskId)
}
break;
case ITEMMENULOCATION_FAVOR_LADY:
- if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY)
+ if (!GetItemImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY)
{
gBagMenu->contextMenuItemsPtr = sContextMenuItems_FavorLady;
gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_FavorLady);
@@ -1573,7 +1573,7 @@ static void OpenContextMenu(u8 taskId)
}
break;
case ITEMMENULOCATION_QUIZ_LADY:
- if (!ItemId_GetImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY)
+ if (!GetItemImportance(gSpecialVar_ItemId) && gSpecialVar_ItemId != ITEM_ENIGMA_BERRY)
{
gBagMenu->contextMenuItemsPtr = sContextMenuItems_QuizLady;
gBagMenu->contextMenuNumItems = ARRAY_COUNT(sContextMenuItems_QuizLady);
@@ -1785,10 +1785,10 @@ static void RemoveContextWindow(void)
static void ItemMenu_UseOutOfBattle(u8 taskId)
{
- if (ItemId_GetFieldFunc(gSpecialVar_ItemId))
+ if (GetItemFieldFunc(gSpecialVar_ItemId))
{
RemoveContextWindow();
- if (CalculatePlayerPartyCount() == 0 && ItemId_GetType(gSpecialVar_ItemId) == ITEM_USE_PARTY_MENU)
+ if (CalculatePlayerPartyCount() == 0 && GetItemType(gSpecialVar_ItemId) == ITEM_USE_PARTY_MENU)
{
PrintThereIsNoPokemon(taskId);
}
@@ -1797,7 +1797,7 @@ static void ItemMenu_UseOutOfBattle(u8 taskId)
FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0));
ScheduleBgCopyTilemapToVram(0);
if (gBagPosition.pocket != BERRIES_POCKET)
- ItemId_GetFieldFunc(gSpecialVar_ItemId)(taskId);
+ GetItemFieldFunc(gSpecialVar_ItemId)(taskId);
else
ItemUseOutOfBattle_Berry(taskId);
}
@@ -1926,7 +1926,7 @@ static void ItemMenu_Give(u8 taskId)
{
DisplayItemMessage(taskId, FONT_NORMAL, gText_CantWriteMail, HandleErrorMessage);
}
- else if (!ItemId_GetImportance(gSpecialVar_ItemId))
+ else if (!GetItemImportance(gSpecialVar_ItemId))
{
if (CalculatePlayerPartyCount() == 0)
{
@@ -1985,10 +1985,10 @@ static void ItemMenu_Cancel(u8 taskId)
static void ItemMenu_UseInBattle(u8 taskId)
{
- if (ItemId_GetBattleFunc(gSpecialVar_ItemId))
+ if (GetItemBattleFunc(gSpecialVar_ItemId))
{
RemoveContextWindow();
- ItemId_GetBattleFunc(gSpecialVar_ItemId)(taskId);
+ GetItemBattleFunc(gSpecialVar_ItemId)(taskId);
}
}
@@ -2009,7 +2009,7 @@ static void Task_ItemContext_GiveToParty(u8 taskId)
StringExpandPlaceholders(gStringVar4, gText_Var1CantBeHeldHere);
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, HandleErrorMessage);
}
- else if (gBagPosition.pocket != KEYITEMS_POCKET && !ItemId_GetImportance(gSpecialVar_ItemId))
+ else if (gBagPosition.pocket != KEYITEMS_POCKET && !GetItemImportance(gSpecialVar_ItemId))
{
Task_FadeAndCloseBagMenu(taskId);
}
@@ -2024,7 +2024,7 @@ static void Task_ItemContext_GiveToPC(u8 taskId)
{
if (ItemIsMail(gSpecialVar_ItemId) == TRUE)
DisplayItemMessage(taskId, FONT_NORMAL, gText_CantWriteMail, HandleErrorMessage);
- else if (gBagPosition.pocket != KEYITEMS_POCKET && !ItemId_GetImportance(gSpecialVar_ItemId))
+ else if (gBagPosition.pocket != KEYITEMS_POCKET && !GetItemImportance(gSpecialVar_ItemId))
gTasks[taskId].func = Task_FadeAndCloseBagMenu;
else
PrintItemCantBeHeld(taskId);
@@ -2036,7 +2036,7 @@ bool8 UseRegisteredKeyItemOnField(void)
{
u8 taskId;
- if (InUnionRoom() == TRUE || InBattlePyramid() || InBattlePike() || InMultiPartnerRoom() == TRUE)
+ if (InUnionRoom() == TRUE || CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || InBattlePike() || InMultiPartnerRoom() == TRUE)
return FALSE;
HideMapNamePopUpWindow();
ChangeBgY_ScreenOff(0, 0, BG_COORD_SET);
@@ -2049,7 +2049,7 @@ bool8 UseRegisteredKeyItemOnField(void)
PlayerFreeze();
StopPlayerAvatar();
gSpecialVar_ItemId = gSaveBlock1Ptr->registeredItem;
- taskId = CreateTask(ItemId_GetFieldFunc(gSaveBlock1Ptr->registeredItem), 8);
+ taskId = CreateTask(GetItemFieldFunc(gSaveBlock1Ptr->registeredItem), 8);
gTasks[taskId].tUsingRegisteredKeyItem = TRUE;
return TRUE;
}
@@ -2068,7 +2068,7 @@ static void Task_ItemContext_Sell(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- if (ItemId_GetPrice(gSpecialVar_ItemId) == 0)
+ if (GetItemPrice(gSpecialVar_ItemId) == 0)
{
CopyItemName(gSpecialVar_ItemId, gStringVar2);
StringExpandPlaceholders(gStringVar4, gText_CantBuyKeyItem);
@@ -2095,7 +2095,7 @@ static void DisplaySellItemPriceAndConfirm(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6);
+ ConvertIntToDecimalStringN(gStringVar1, (GetItemPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6);
StringExpandPlaceholders(gStringVar4, gText_ICanPayVar1);
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, AskSellItems);
}
@@ -2120,7 +2120,7 @@ static void InitSellHowManyInput(u8 taskId)
s16 *data = gTasks[taskId].data;
u8 windowId = BagMenu_AddWindow(ITEMWIN_QUANTITY_WIDE);
- PrintItemSoldAmount(windowId, 1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount);
+ PrintItemSoldAmount(windowId, 1, (GetItemPrice(gSpecialVar_ItemId) / 2) * tItemCount);
DisplayCurrentMoneyWindow();
gTasks[taskId].func = Task_ChooseHowManyToSell;
}
@@ -2131,7 +2131,7 @@ static void Task_ChooseHowManyToSell(u8 taskId)
if (AdjustQuantityAccordingToDPadInput(&tItemCount, tQuantity) == TRUE)
{
- PrintItemSoldAmount(gBagMenu->windowIds[ITEMWIN_QUANTITY_WIDE], tItemCount, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount);
+ PrintItemSoldAmount(gBagMenu->windowIds[ITEMWIN_QUANTITY_WIDE], tItemCount, (GetItemPrice(gSpecialVar_ItemId) / 2) * tItemCount);
}
else if (JOY_NEW(A_BUTTON))
{
@@ -2155,7 +2155,7 @@ static void ConfirmSell(u8 taskId)
s16 *data = gTasks[taskId].data;
CopyItemName(gSpecialVar_ItemId, gStringVar2);
- ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6);
+ ConvertIntToDecimalStringN(gStringVar1, (GetItemPrice(gSpecialVar_ItemId) / 2) * tItemCount, STR_CONV_MODE_LEFT_ALIGN, 6);
StringExpandPlaceholders(gStringVar4, gText_TurnedOverVar1ForVar2);
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, SellItem);
}
@@ -2168,7 +2168,7 @@ static void SellItem(u8 taskId)
PlaySE(SE_SHOP);
RemoveBagItem(gSpecialVar_ItemId, tItemCount);
- AddMoney(&gSaveBlock1Ptr->money, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * tItemCount);
+ AddMoney(&gSaveBlock1Ptr->money, (GetItemPrice(gSpecialVar_ItemId) / 2) * tItemCount);
DestroyListMenuTask(tListTaskId, scrollPos, cursorPos);
UpdatePocketItemList(gBagPosition.pocket);
UpdatePocketListPosition(gBagPosition.pocket);
@@ -2238,7 +2238,7 @@ static void TryDepositItem(u8 taskId)
s16 *data = gTasks[taskId].data;
FillWindowPixelBuffer(WIN_DESCRIPTION, PIXEL_FILL(0));
- if (ItemId_GetImportance(gSpecialVar_ItemId))
+ if (GetItemImportance(gSpecialVar_ItemId))
{
// Can't deposit important items
BagMenu_Print(WIN_DESCRIPTION, FONT_NORMAL, gText_CantStoreImportantItems, 3, 1, 0, 0, 0, COLORID_NORMAL);
@@ -2549,7 +2549,7 @@ static void PrepareTMHMMoveWindow(void)
static void PrintTMHMMoveData(u16 itemId)
{
u8 i;
- u16 moveId;
+ u16 move;
const u8 *text;
FillWindowPixelBuffer(WIN_TMHM_INFO, PIXEL_FILL(0));
@@ -2561,35 +2561,35 @@ static void PrintTMHMMoveData(u16 itemId)
}
else
{
- moveId = ItemIdToBattleMoveId(itemId);
- BlitMenuInfoIcon(WIN_TMHM_INFO, gBattleMoves[moveId].type + 1, 0, 0);
+ move = ItemIdToBattleMoveId(itemId);
+ BlitMenuInfoIcon(WIN_TMHM_INFO, gBattleMoves[move].type + 1, 0, 0);
// Print TMHM power
- if (gBattleMoves[moveId].power <= 1)
+ if (gBattleMoves[move].power <= 1)
{
text = gText_ThreeDashes;
}
else
{
- ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].power, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[move].power, STR_CONV_MODE_RIGHT_ALIGN, 3);
text = gStringVar1;
}
BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, text, 7, 12, 0, 0, TEXT_SKIP_DRAW, COLORID_TMHM_INFO);
// Print TMHM accuracy
- if (gBattleMoves[moveId].accuracy == 0)
+ if (gBattleMoves[move].accuracy == 0)
{
text = gText_ThreeDashes;
}
else
{
- ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].accuracy, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[move].accuracy, STR_CONV_MODE_RIGHT_ALIGN, 3);
text = gStringVar1;
}
BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, text, 7, 24, 0, 0, TEXT_SKIP_DRAW, COLORID_TMHM_INFO);
// Print TMHM pp
- ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].pp, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[move].pp, STR_CONV_MODE_RIGHT_ALIGN, 3);
BagMenu_Print(WIN_TMHM_INFO, FONT_NORMAL, gStringVar1, 7, 36, 0, 0, TEXT_SKIP_DRAW, COLORID_TMHM_INFO);
CopyWindowToVram(WIN_TMHM_INFO, COPYWIN_GFX);
diff --git a/src/item_use.c b/src/item_use.c
index 60338e437a..6ae235675a 100755
--- a/src/item_use.c
+++ b/src/item_use.c
@@ -101,8 +101,8 @@ static void SetUpItemUseCallback(u8 taskId)
if (gSpecialVar_ItemId == ITEM_ENIGMA_BERRY)
type = gTasks[taskId].tEnigmaBerryType - 1;
else
- type = ItemId_GetType(gSpecialVar_ItemId) - 1;
- if (!InBattlePyramid())
+ type = GetItemType(gSpecialVar_ItemId) - 1;
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
{
gBagMenu->newScreenCallback = sItemUseCallbacks[type];
Task_FadeAndCloseBagMenu(taskId);
@@ -122,7 +122,9 @@ static void SetUpItemUseOnFieldCallback(u8 taskId)
SetUpItemUseCallback(taskId);
}
else
+ {
sItemUseOnFieldCB(taskId);
+ }
}
static void FieldCB_UseItemOnField(void)
@@ -142,13 +144,15 @@ static void DisplayCannotUseItemMessage(u8 taskId, bool8 isUsingRegisteredKeyIte
StringExpandPlaceholders(gStringVar4, str);
if (!isUsingRegisteredKeyItemOnField)
{
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
else
DisplayItemMessageInBattlePyramid(taskId, gText_DadsAdvice, Task_CloseBattlePyramidBagMessage);
}
else
+ {
DisplayItemMessageOnField(taskId, gStringVar4, Task_CloseCantUseKeyItemMessage);
+ }
}
static void DisplayDadsAdviceCannotUseItemMessage(u8 taskId, bool8 isUsingRegisteredKeyItemOnField)
@@ -171,9 +175,9 @@ static void Task_CloseCantUseKeyItemMessage(u8 taskId)
u8 CheckIfItemIsTMHMOrEvolutionStone(u16 itemId)
{
- if (ItemId_GetFieldFunc(itemId) == ItemUseOutOfBattle_TMHM)
+ if (GetItemFieldFunc(itemId) == ItemUseOutOfBattle_TMHM)
return 1;
- else if (ItemId_GetFieldFunc(itemId) == ItemUseOutOfBattle_EvolutionStone)
+ else if (GetItemFieldFunc(itemId) == ItemUseOutOfBattle_EvolutionStone)
return 2;
else
return 0;
@@ -202,7 +206,9 @@ void ItemUseOutOfBattle_Bike(u8 taskId)
PlayerGetDestCoords(&coordsX, &coordsY);
behavior = MapGridGetMetatileBehaviorAt(coordsX, coordsY);
if (FlagGet(FLAG_SYS_CYCLING_ROAD) == TRUE || MetatileBehavior_IsVerticalRail(behavior) == TRUE || MetatileBehavior_IsHorizontalRail(behavior) == TRUE || MetatileBehavior_IsIsolatedVerticalRail(behavior) == TRUE || MetatileBehavior_IsIsolatedHorizontalRail(behavior) == TRUE)
+ {
DisplayCannotDismountBikeMessage(taskId, tUsingRegisteredKeyItem);
+ }
else
{
if (Overworld_IsBikingAllowed() == TRUE && IsBikingDisallowedByPlayer() == 0)
@@ -211,13 +217,15 @@ void ItemUseOutOfBattle_Bike(u8 taskId)
SetUpItemUseOnFieldCallback(taskId);
}
else
+ {
DisplayDadsAdviceCannotUseItemMessage(taskId, tUsingRegisteredKeyItem);
+ }
}
}
static void ItemUseOnFieldCB_Bike(u8 taskId)
{
- if (ItemId_GetSecondaryId(gSpecialVar_ItemId) == MACH_BIKE)
+ if (GetItemSecondaryId(gSpecialVar_ItemId) == MACH_BIKE)
GetOnOffBike(PLAYER_AVATAR_FLAG_MACH_BIKE);
else // ACRO_BIKE
GetOnOffBike(PLAYER_AVATAR_FLAG_ACRO_BIKE);
@@ -264,12 +272,14 @@ void ItemUseOutOfBattle_Rod(u8 taskId)
SetUpItemUseOnFieldCallback(taskId);
}
else
+ {
DisplayDadsAdviceCannotUseItemMessage(taskId, gTasks[taskId].tUsingRegisteredKeyItem);
+ }
}
static void ItemUseOnFieldCB_Rod(u8 taskId)
{
- StartFishing(ItemId_GetSecondaryId(gSpecialVar_ItemId));
+ StartFishing(GetItemSecondaryId(gSpecialVar_ItemId));
DestroyTask(taskId);
}
@@ -393,46 +403,43 @@ static bool8 IsHiddenItemPresentAtCoords(const struct MapEvents *events, s16 x,
static bool8 IsHiddenItemPresentInConnection(const struct MapConnection *connection, int x, int y)
{
+ s16 connectionX, connectionY;
+ struct MapHeader const *const connectionHeader = GetMapHeaderFromConnection(connection);
- u16 localX, localY;
- u32 localOffset;
- s32 localLength;
-
- struct MapHeader const *const mapHeader = GetMapHeaderFromConnection(connection);
-
+// To convert our x/y into coordinates that are relative to the connected map, we must:
+// - Subtract the virtual offset used for the border buffer (MAP_OFFSET).
+// - Subtract the horizontal offset between North/South connections, or the vertical offset for East/West
+// - Account for map size. (0,0) is in the NW corner of our map, so when looking North/West we have to add the height/width of the connected map,
+// and when looking South/East we have to subtract the height/width of our current map.
+#define localX (x - MAP_OFFSET)
+#define localY (y - MAP_OFFSET)
switch (connection->direction)
{
- // same weird temp variable behavior seen in IsHiddenItemPresentAtCoords
case CONNECTION_NORTH:
- localOffset = connection->offset + MAP_OFFSET;
- localX = x - localOffset;
- localLength = mapHeader->mapLayout->height - MAP_OFFSET;
- localY = localLength + y; // additions are reversed for some reason
+ connectionX = localX - connection->offset;
+ connectionY = connectionHeader->mapLayout->height + localY;
break;
case CONNECTION_SOUTH:
- localOffset = connection->offset + MAP_OFFSET;
- localX = x - localOffset;
- localLength = gMapHeader.mapLayout->height + MAP_OFFSET;
- localY = y - localLength;
+ connectionX = localX - connection->offset;
+ connectionY = localY - gMapHeader.mapLayout->height;
break;
case CONNECTION_WEST:
- localLength = mapHeader->mapLayout->width - MAP_OFFSET;
- localX = localLength + x; // additions are reversed for some reason
- localOffset = connection->offset + MAP_OFFSET;
- localY = y - localOffset;
+ connectionX = connectionHeader->mapLayout->width + localX;
+ connectionY = localY - connection->offset;
break;
case CONNECTION_EAST:
- localLength = gMapHeader.mapLayout->width + MAP_OFFSET;
- localX = x - localLength;
- localOffset = connection->offset + MAP_OFFSET;
- localY = y - localOffset;
+ connectionX = localX - gMapHeader.mapLayout->width;
+ connectionY = localY - connection->offset;
break;
default:
return FALSE;
}
- return IsHiddenItemPresentAtCoords(mapHeader->events, localX, localY);
+ return IsHiddenItemPresentAtCoords(connectionHeader->events, connectionX, connectionY);
}
+#undef localX
+#undef localY
+
static void CheckForHiddenItemsInMapConnection(u8 taskId)
{
s16 playerX, playerY;
@@ -572,15 +579,15 @@ static u8 GetDirectionToHiddenItem(s16 itemDistanceX, s16 itemDistanceY)
static void PlayerFaceHiddenItem(u8 direction)
{
- ObjectEventClearHeldMovementIfFinished(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]);
- ObjectEventClearHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]);
- UnfreezeObjectEvent(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]);
+ ObjectEventClearHeldMovementIfFinished(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0)]);
+ ObjectEventClearHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0)]);
+ UnfreezeObjectEvent(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0)]);
PlayerTurnInPlace(direction);
}
static void Task_HiddenItemNearby(u8 taskId)
{
- if (ObjectEventCheckHeldMovementStatus(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]) == TRUE)
+ if (ObjectEventCheckHeldMovementStatus(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0)]) == TRUE)
DisplayItemMessageOnField(taskId, gText_ItemFinderNearby, Task_CloseItemfinderMessage);
}
@@ -588,7 +595,7 @@ static void Task_StandingOnHiddenItem(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- if (ObjectEventCheckHeldMovementStatus(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]) == TRUE
+ if (ObjectEventCheckHeldMovementStatus(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0)]) == TRUE
|| tItemFound == FALSE)
{
// Spin player around on item
@@ -685,7 +692,7 @@ void ItemUseOutOfBattle_Berry(u8 taskId)
}
else
{
- ItemId_GetFieldFunc(gSpecialVar_ItemId)(taskId);
+ GetItemFieldFunc(gSpecialVar_ItemId)(taskId);
}
}
@@ -819,10 +826,10 @@ static void RemoveUsedItem(void)
RemoveBagItem(gSpecialVar_ItemId, 1);
CopyItemName(gSpecialVar_ItemId, gStringVar2);
StringExpandPlaceholders(gStringVar4, gText_PlayerUsedVar2);
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
{
- UpdatePocketItemList(ItemId_GetPocket(gSpecialVar_ItemId));
- UpdatePocketListPosition(ItemId_GetPocket(gSpecialVar_ItemId));
+ UpdatePocketItemList(GetItemPocket(gSpecialVar_ItemId));
+ UpdatePocketListPosition(GetItemPocket(gSpecialVar_ItemId));
}
else
{
@@ -835,7 +842,7 @@ void ItemUseOutOfBattle_Repel(u8 taskId)
{
if (VarGet(VAR_REPEL_STEP_COUNT) == 0)
gTasks[taskId].func = Task_StartUseRepel;
- else if (!InBattlePyramid())
+ else if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
DisplayItemMessage(taskId, FONT_NORMAL, gText_RepelEffectsLingered, CloseItemMessage);
else
DisplayItemMessageInBattlePyramid(taskId, gText_RepelEffectsLingered, Task_CloseBattlePyramidBagMessage);
@@ -857,9 +864,9 @@ static void Task_UseRepel(u8 taskId)
{
if (!IsSEPlaying())
{
- VarSet(VAR_REPEL_STEP_COUNT, ItemId_GetHoldEffectParam(gSpecialVar_ItemId));
+ VarSet(VAR_REPEL_STEP_COUNT, GetItemHoldEffectParam(gSpecialVar_ItemId));
RemoveUsedItem();
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
else
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage);
@@ -871,7 +878,7 @@ static void Task_UsedBlackWhiteFlute(u8 taskId)
if(++gTasks[taskId].data[8] > 7)
{
PlaySE(SE_GLASS_FLUTE);
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
else
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage);
@@ -944,24 +951,26 @@ void ItemUseInBattle_PokeBall(u8 taskId)
if (IsPlayerPartyAndPokemonStorageFull() == FALSE) // have room for mon?
{
RemoveBagItem(gSpecialVar_ItemId, 1);
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
Task_FadeAndCloseBagMenu(taskId);
else
CloseBattlePyramidBag(taskId);
}
- else if (!InBattlePyramid())
+ else if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
{
DisplayItemMessage(taskId, FONT_NORMAL, gText_BoxFull, CloseItemMessage);
}
else
+ {
DisplayItemMessageInBattlePyramid(taskId, gText_BoxFull, Task_CloseBattlePyramidBagMessage);
+ }
}
static void Task_CloseStatIncreaseMessage(u8 taskId)
{
if (JOY_NEW(A_BUTTON | B_BUTTON))
{
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
Task_FadeAndCloseBagMenu(taskId);
else
CloseBattlePyramidBag(taskId);
@@ -974,7 +983,7 @@ static void Task_UseStatIncreaseItem(u8 taskId)
{
PlaySE(SE_USE_ITEM);
RemoveBagItem(gSpecialVar_ItemId, 1);
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
DisplayItemMessage(taskId, FONT_NORMAL, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage);
else
DisplayItemMessageInBattlePyramid(taskId, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage);
@@ -988,7 +997,7 @@ void ItemUseInBattle_StatIncrease(u8 taskId)
if (ExecuteTableBasedItemEffect(&gPlayerParty[partyId], gSpecialVar_ItemId, partyId, 0) != FALSE)
{
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
DisplayItemMessage(taskId, FONT_NORMAL, gText_WontHaveEffect, CloseItemMessage);
else
DisplayItemMessageInBattlePyramid(taskId, gText_WontHaveEffect, Task_CloseBattlePyramidBagMessage);
@@ -1002,7 +1011,7 @@ void ItemUseInBattle_StatIncrease(u8 taskId)
static void ItemUseInBattle_ShowPartyMenu(u8 taskId)
{
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
{
gBagMenu->newScreenCallback = ChooseMonForInBattleItem;
Task_FadeAndCloseBagMenu(taskId);
@@ -1040,7 +1049,7 @@ void ItemUseInBattle_Escape(u8 taskId)
if((gBattleTypeFlags & BATTLE_TYPE_TRAINER) == FALSE)
{
RemoveUsedItem();
- if (!InBattlePyramid())
+ if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, Task_FadeAndCloseBagMenu);
else
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, CloseBattlePyramidBag);
diff --git a/src/landmark.c b/src/landmark.c
index 615a9bfe3e..d2bb3c4105 100644
--- a/src/landmark.c
+++ b/src/landmark.c
@@ -369,8 +369,13 @@ static const struct LandmarkList sLandmarkLists[] =
{MAPSEC_ROUTE_120, 2, Landmarks_Route120_2},
{MAPSEC_ROUTE_121, 2, Landmarks_Route121_2},
{MAPSEC_ROUTE_122, 0, Landmarks_Route122_0},
+#ifdef BUGFIX
+ {MAPSEC_ROUTE_122, 1, Landmarks_Route122_0},
+ {MAPSEC_ROUTE_123, 0, Landmarks_Route123_0},
+#else
{MAPSEC_ROUTE_123, 0, Landmarks_Route123_0},
{MAPSEC_ROUTE_122, 1, Landmarks_Route122_0},
+#endif
{MAPSEC_ROUTE_124, 7, Landmarks_Route124_7},
{MAPSEC_ROUTE_125, 2, Landmarks_Route125_2},
{MAPSEC_ROUTE_128, 1, Landmarks_Route128_1},
diff --git a/src/libisagbprn.c b/src/libisagbprn.c
index fab9b5990b..a7de7df088 100644
--- a/src/libisagbprn.c
+++ b/src/libisagbprn.c
@@ -224,7 +224,7 @@ void MgbaClose(void)
*REG_DEBUG_ENABLE = 0;
}
-void MgbaPrintf(s32 level, const char* ptr, ...)
+void MgbaPrintf(s32 level, const char *ptr, ...)
{
va_list args;
diff --git a/src/librfu_intr.c b/src/librfu_intr.c
index ab4392e229..5ae53ab4e3 100644
--- a/src/librfu_intr.c
+++ b/src/librfu_intr.c
@@ -7,7 +7,11 @@ static u16 handshake_wait(u16 slot);
static void STWI_set_timer_in_RAM(u8 count);
static void STWI_stop_timer_in_RAM(void);
static void STWI_init_slave(void);
+#if __STDC_VERSION__ < 202311L
static void Callback_Dummy_M(int reqCommandId, int error, void (*callbackM)());
+#else
+static void Callback_Dummy_M(int reqCommandId, int error, void (*callbackM)(...));
+#endif
static void Callback_Dummy_S(u16 reqCommandId, void (*callbackS)(u16));
static void Callback_Dummy_ID(void (*callbackId)(void));
@@ -135,7 +139,11 @@ static void sio32intr_clock_master(void)
}
gSTWIStatus->sending = 0;
if (gSTWIStatus->callbackM != NULL)
+#if __STDC_VERSION__ < 202311L
Callback_Dummy_M(gSTWIStatus->reqActiveCommand, gSTWIStatus->error, gSTWIStatus->callbackM);
+#else
+ Callback_Dummy_M(gSTWIStatus->reqActiveCommand, gSTWIStatus->error, (void (*)(...))gSTWIStatus->callbackM);
+#endif
}
else
{
@@ -388,7 +396,11 @@ static void STWI_init_slave(void)
}
NAKED
+#if __STDC_VERSION__ < 202311L
static void Callback_Dummy_M(int reqCommandId, int error, void (*callbackM)())
+#else
+static void Callback_Dummy_M(int reqCommandId, int error, void (*callbackM)(...))
+#endif
{
asm("bx r2");
}
diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c
index 828d6450bc..ee5dbe6af4 100644
--- a/src/librfu_rfu.c
+++ b/src/librfu_rfu.c
@@ -76,11 +76,11 @@ static void rfu_STC_NI_receive_Sender(u8, u8, const struct RfuLocalStruct *, UNU
static void rfu_STC_NI_initSlot_asRecvDataEntity(u8, struct NIComm *);
static void rfu_STC_NI_initSlot_asRecvControllData(u8, struct NIComm *);
-struct RfuSlotStatusUNI *gRfuSlotStatusUNI[RFU_CHILD_MAX];
-struct RfuSlotStatusNI *gRfuSlotStatusNI[RFU_CHILD_MAX];
-struct RfuLinkStatus *gRfuLinkStatus;
-struct RfuStatic *gRfuStatic;
-struct RfuFixed *gRfuFixed;
+COMMON_DATA struct RfuSlotStatusUNI *gRfuSlotStatusUNI[RFU_CHILD_MAX] = {0};
+COMMON_DATA struct RfuSlotStatusNI *gRfuSlotStatusNI[RFU_CHILD_MAX] = {0};
+COMMON_DATA struct RfuLinkStatus *gRfuLinkStatus = NULL;
+COMMON_DATA struct RfuStatic *gRfuStatic = NULL;
+COMMON_DATA struct RfuFixed *gRfuFixed = NULL;
static const struct LLSFStruct llsf_struct[2] = {
[MODE_CHILD] = {
diff --git a/src/librfu_sio32id.c b/src/librfu_sio32id.c
index 1c02840e85..c40bb825b3 100644
--- a/src/librfu_sio32id.c
+++ b/src/librfu_sio32id.c
@@ -15,7 +15,7 @@ struct RfuSIO32Id
u16 lastId;
};
-struct RfuSIO32Id gRfuSIO32Id;
+COMMON_DATA struct RfuSIO32Id gRfuSIO32Id = {0};
static const u16 Sio32ConnectionData[] = { 0x494e, 0x544e, 0x4e45, 0x4f44 }; // NINTENDO
static const char Sio32IDLib_Var[] = "Sio32ID_030820";
@@ -145,7 +145,9 @@ static void Sio32IDIntr(void)
}
}
else
+ {
gRfuSIO32Id.lastId = regSIODATA32;
+ }
}
else
{
diff --git a/src/librfu_stwi.c b/src/librfu_stwi.c
index b515f338e0..13a7e34082 100644
--- a/src/librfu_stwi.c
+++ b/src/librfu_stwi.c
@@ -8,7 +8,7 @@ static void STWI_stop_timer(void);
static s32 STWI_restart_Command(void);
static s32 STWI_reset_ClockCounter(void);
-struct STWIStatus *gSTWIStatus;
+COMMON_DATA struct STWIStatus *gSTWIStatus = NULL;
void STWI_init_all(struct RfuIntrStruct *interruptStruct, IntrFunc *interrupt, bool8 copyInterruptToRam)
{
diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c
index e7a5862f07..17020d2716 100644
--- a/src/lilycove_lady.c
+++ b/src/lilycove_lady.c
@@ -192,7 +192,7 @@ bool8 HasAnotherPlayerGivenFavorLadyItem(void)
static void BufferItemName(u8 *dest, u16 itemId)
{
- StringCopy(dest, ItemId_GetName(itemId));
+ StringCopy(dest, GetItemName(itemId));
}
void BufferFavorLadyItemName(void)
@@ -451,7 +451,7 @@ static u8 GetPlayerNameLength(const u8 *playerName)
void BufferQuizPrizeName(void)
{
- StringCopy(gStringVar1, ItemId_GetName(sQuizLadyPtr->prize));
+ StringCopy(gStringVar1, GetItemName(sQuizLadyPtr->prize));
}
bool8 BufferQuizAuthorNameAndCheckIfLady(void)
diff --git a/src/link.c b/src/link.c
index f784a36c67..bb74574a31 100644
--- a/src/link.c
+++ b/src/link.c
@@ -68,41 +68,41 @@ static u16 sRecvNonzeroCheck;
static u8 sChecksumAvailable;
static u8 sHandshakePlayerCount;
-u16 gLinkPartnersHeldKeys[6];
-u32 gLinkDebugSeed;
-struct LinkPlayerBlock gLocalLinkPlayerBlock;
-bool8 gLinkErrorOccurred;
-u32 gLinkDebugFlags;
-u32 gLinkFiller1;
-bool8 gRemoteLinkPlayersNotReceived[MAX_LINK_PLAYERS];
-u8 gBlockReceivedStatus[MAX_LINK_PLAYERS];
-u32 gLinkFiller2;
-u16 gLinkHeldKeys;
-u16 ALIGNED(4) gRecvCmds[MAX_RFU_PLAYERS][CMD_LENGTH];
-u32 gLinkStatus;
-bool8 gLinkDummy1; // Never read
-bool8 gLinkDummy2; // Never read
-bool8 gReadyToExitStandby[MAX_LINK_PLAYERS];
-bool8 gReadyToCloseLink[MAX_LINK_PLAYERS];
-u16 gReadyCloseLinkType; // Never read
-u8 gSuppressLinkErrorMessage;
-bool8 gWirelessCommType;
-bool8 gSavedLinkPlayerCount;
-u16 gSendCmd[CMD_LENGTH];
-u8 gSavedMultiplayerId;
-bool8 gReceivedRemoteLinkPlayers;
-struct LinkTestBGInfo gLinkTestBGInfo;
-void (*gLinkCallback)(void);
-u8 gShouldAdvanceLinkState;
-u16 gLinkTestBlockChecksums[MAX_LINK_PLAYERS];
-u8 gBlockRequestType;
-u32 gLinkFiller3;
-u32 gLinkFiller4;
-u32 gLinkFiller5;
-u8 gLastSendQueueCount;
-struct Link gLink;
-u8 gLastRecvQueueCount;
-u16 gLinkSavedIme;
+COMMON_DATA u16 gLinkPartnersHeldKeys[6] = {0};
+COMMON_DATA u32 gLinkDebugSeed = 0;
+COMMON_DATA struct LinkPlayerBlock gLocalLinkPlayerBlock = {0};
+COMMON_DATA bool8 gLinkErrorOccurred = 0;
+COMMON_DATA u32 gLinkDebugFlags = 0;
+COMMON_DATA u32 gLinkFiller1 = 0;
+COMMON_DATA bool8 gRemoteLinkPlayersNotReceived[MAX_LINK_PLAYERS] = {0};
+COMMON_DATA u8 gBlockReceivedStatus[MAX_LINK_PLAYERS] = {0};
+COMMON_DATA u32 gLinkFiller2 = 0;
+COMMON_DATA u16 gLinkHeldKeys = 0;
+COMMON_DATA u16 ALIGNED(4) gRecvCmds[MAX_RFU_PLAYERS][CMD_LENGTH] = {0};
+COMMON_DATA u32 gLinkStatus = 0;
+COMMON_DATA bool8 gLinkDummy1 = 0; // Never read
+COMMON_DATA bool8 gLinkDummy2 = 0; // Never read
+COMMON_DATA bool8 gReadyToExitStandby[MAX_LINK_PLAYERS] = {0};
+COMMON_DATA bool8 gReadyToCloseLink[MAX_LINK_PLAYERS] = {0};
+COMMON_DATA u16 gReadyCloseLinkType = 0; // Never read
+COMMON_DATA u8 gSuppressLinkErrorMessage = 0;
+COMMON_DATA bool8 gWirelessCommType = 0;
+COMMON_DATA bool8 gSavedLinkPlayerCount = 0;
+COMMON_DATA u16 gSendCmd[CMD_LENGTH] = {0};
+COMMON_DATA u8 gSavedMultiplayerId = 0;
+COMMON_DATA bool8 gReceivedRemoteLinkPlayers = 0;
+COMMON_DATA struct LinkTestBGInfo gLinkTestBGInfo = {0};
+COMMON_DATA void (*gLinkCallback)(void) = NULL;
+COMMON_DATA u8 gShouldAdvanceLinkState = 0;
+COMMON_DATA u16 gLinkTestBlockChecksums[MAX_LINK_PLAYERS] = {0};
+COMMON_DATA u8 gBlockRequestType = 0;
+COMMON_DATA u32 gLinkFiller3 = 0;
+COMMON_DATA u32 gLinkFiller4 = 0;
+COMMON_DATA u32 gLinkFiller5 = 0;
+COMMON_DATA u8 gLastSendQueueCount = 0;
+COMMON_DATA struct Link gLink = {0};
+COMMON_DATA u8 gLastRecvQueueCount = 0;
+COMMON_DATA u16 gLinkSavedIme = 0;
static EWRAM_DATA u8 sLinkTestDebugValuesEnabled = 0;
static EWRAM_DATA u8 sDummyFlag = FALSE;
diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c
index 9979097a49..6b20cf9678 100644
--- a/src/link_rfu_2.c
+++ b/src/link_rfu_2.c
@@ -77,8 +77,8 @@ struct RfuDebug
u8 unused4[88];
};
-u32 gRfuAPIBuffer[RFU_API_BUFF_SIZE_RAM / 4];
-struct RfuManager gRfu;
+COMMON_DATA u32 gRfuAPIBuffer[RFU_API_BUFF_SIZE_RAM / 4] = {0};
+COMMON_DATA struct RfuManager gRfu = {0};
static u8 sHeldKeyCount;
static u8 sResendBlock8[CMD_LENGTH * 2];
@@ -138,7 +138,7 @@ static const u8 sAvailSlots[] = {
[4] = AVAIL_SLOT4
};
-#define BLOCK_MASK(bitNum)((1 << (bitNum)) - 1)
+#define BLOCK_MASK(bitNum) ((1 << (bitNum)) - 1)
static const u32 sAllBlocksReceived[] = {
BLOCK_MASK(0),
BLOCK_MASK(1),
@@ -1175,7 +1175,9 @@ static void RfuHandleReceiveCommand(u8 unused)
gRfu.numBlocksReceived[i] = 0;
}
else
+ {
gRfu.numBlocksReceived[i]++;
+ }
}
}
}
@@ -1302,7 +1304,9 @@ bool32 Rfu_InitBlockSend(const u8 *src, size_t size)
gRfu.sendBlock.count = (size / 12) + r4;
gRfu.sendBlock.next = 0;
if (size > BLOCK_BUFFER_SIZE)
+ {
gRfu.sendBlock.payload = src;
+ }
else
{
if (src != gBlockSendBuffer)
@@ -1629,9 +1633,8 @@ static bool8 CheckForLeavingGroupMembers(void)
}
else if (gRfuSlotStatusNI[gRfu.childSlot]->recv.state == SLOT_STATE_RECV_FAILED)
- rfu_clearSlot(TYPE_NI_RECV, i);
{
-
+ rfu_clearSlot(TYPE_NI_RECV, i);
}
}
}
@@ -1777,7 +1780,9 @@ static void Task_PlayerExchange(u8 taskId)
gTasks[taskId].tState = 101;
}
else
+ {
gTasks[taskId].tState = 2;
+ }
break;
case 101:
if (gSendCmd[0] == 0)
@@ -1798,7 +1803,9 @@ static void Task_PlayerExchange(u8 taskId)
}
}
else
+ {
gTasks[taskId].tState++;
+ }
break;
case 4:
if (AreAllPlayersFinishedReceiving())
diff --git a/src/list_menu.c b/src/list_menu.c
index e24442ca02..8257712a0a 100644
--- a/src/list_menu.c
+++ b/src/list_menu.c
@@ -17,29 +17,6 @@
// This allows them to have idle animations. Cursors prior to this are simply printed text.
#define CURSOR_OBJECT_START CURSOR_RED_OUTLINE
-struct UnkIndicatorsStruct
-{
- u8 field_0;
- u16 *field_4;
- u16 field_8;
- u16 field_A;
- u16 field_C;
- u16 field_E;
- u8 field_10;
- u8 field_11;
- u8 field_12;
- u8 field_13;
- u8 field_14_0:4;
- u8 field_14_1:4;
- u8 field_15_0:4;
- u8 field_15_1:4;
- u8 field_16_0:3;
- u8 field_16_1:3;
- u8 field_16_2:2;
- u8 field_17_0:6;
- u8 field_17_1:2;
-};
-
struct ScrollIndicatorPair
{
u8 field_0;
@@ -99,7 +76,7 @@ static EWRAM_DATA struct {
EWRAM_DATA struct ScrollArrowsTemplate gTempScrollArrowTemplate = {0};
// IWRAM common
-struct {
+COMMON_DATA struct {
u8 cursorPal:4;
u8 fillValue:4;
u8 cursorShadowPal:4;
@@ -107,9 +84,9 @@ struct {
u8 field_2_2:6; // unused
u8 fontId:7;
bool8 enabled:1;
-} gListMenuOverride;
+} gListMenuOverride = {0};
-struct ListMenuTemplate gMultiuseListMenuTemplate;
+COMMON_DATA struct ListMenuTemplate gMultiuseListMenuTemplate = {0};
// const rom data
static const struct
@@ -678,8 +655,6 @@ static void ListMenuDrawCursor(struct ListMenu *list)
}
}
-#undef TASK_NONE
-
static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorObjId)
{
struct CursorStruct cursor;
@@ -906,104 +881,104 @@ void ListMenuDefaultCursorMoveFunc(s32 itemIndex, bool8 onInit, struct ListMenu
}
// unused
-s32 ListMenuGetUnkIndicatorsStructFields(u8 taskId, u8 field)
+s32 ListMenuGetTemplateField(u8 taskId, u8 field)
{
- struct UnkIndicatorsStruct *data = (void *) gTasks[taskId].data;
+ struct ListMenu *data = (void *) gTasks[taskId].data;
switch (field)
{
- case 0:
- case 1:
- return (s32)(data->field_4);
- case 2:
- return data->field_C;
- case 3:
- return data->field_E;
- case 4:
- return data->field_10;
- case 5:
- return data->field_11;
- case 6:
- return data->field_12;
- case 7:
- return data->field_13;
- case 8:
- return data->field_14_0;
- case 9:
- return data->field_14_1;
- case 10:
- return data->field_15_0;
- case 11:
- return data->field_15_1;
- case 12:
- return data->field_16_0;
- case 13:
- return data->field_16_1;
- case 14:
- return data->field_16_2;
- case 15:
- return data->field_17_0;
- case 16:
- return data->field_17_1;
+ case LISTFIELD_MOVECURSORFUNC:
+ case LISTFIELD_MOVECURSORFUNC2:
+ return (s32)(data->template.moveCursorFunc);
+ case LISTFIELD_TOTALITEMS:
+ return data->template.totalItems;
+ case LISTFIELD_MAXSHOWED:
+ return data->template.maxShowed;
+ case LISTFIELD_WINDOWID:
+ return data->template.windowId;
+ case LISTFIELD_HEADERX:
+ return data->template.header_X;
+ case LISTFIELD_ITEMX:
+ return data->template.item_X;
+ case LISTFIELD_CURSORX:
+ return data->template.cursor_X;
+ case LISTFIELD_UPTEXTY:
+ return data->template.upText_Y;
+ case LISTFIELD_CURSORPAL:
+ return data->template.cursorPal;
+ case LISTFIELD_FILLVALUE:
+ return data->template.fillValue;
+ case LISTFIELD_CURSORSHADOWPAL:
+ return data->template.cursorShadowPal;
+ case LISTFIELD_LETTERSPACING:
+ return data->template.lettersSpacing;
+ case LISTFIELD_ITEMVERTICALPADDING:
+ return data->template.itemVerticalPadding;
+ case LISTFIELD_SCROLLMULTIPLE:
+ return data->template.scrollMultiple;
+ case LISTFIELD_FONTID:
+ return data->template.fontId;
+ case LISTFIELD_CURSORKIND:
+ return data->template.cursorKind;
default:
return -1;
}
}
-void ListMenuSetUnkIndicatorsStructField(u8 taskId, u8 field, s32 value)
+void ListMenuSetTemplateField(u8 taskId, u8 field, s32 value)
{
- struct UnkIndicatorsStruct *data = (void *) &gTasks[taskId].data;
+ struct ListMenu *data = (void *) &gTasks[taskId].data;
switch (field)
{
- case 0:
- case 1:
- data->field_4 = (void *)(value);
+ case LISTFIELD_MOVECURSORFUNC:
+ case LISTFIELD_MOVECURSORFUNC2:
+ data->template.moveCursorFunc = (void *)value;
break;
- case 2:
- data->field_C = value;
+ case LISTFIELD_TOTALITEMS:
+ data->template.totalItems = value;
break;
- case 3:
- data->field_E = value;
+ case LISTFIELD_MAXSHOWED:
+ data->template.maxShowed = value;
break;
- case 4:
- data->field_10 = value;
+ case LISTFIELD_WINDOWID:
+ data->template.windowId = value;
break;
- case 5:
- data->field_11 = value;
+ case LISTFIELD_HEADERX:
+ data->template.header_X = value;
break;
- case 6:
- data->field_12 = value;
+ case LISTFIELD_ITEMX:
+ data->template.item_X = value;
break;
- case 7:
- data->field_13 = value;
+ case LISTFIELD_CURSORX:
+ data->template.cursor_X = value;
break;
- case 8:
- data->field_14_0 = value;
+ case LISTFIELD_UPTEXTY:
+ data->template.upText_Y = value;
break;
- case 9:
- data->field_14_1 = value;
+ case LISTFIELD_CURSORPAL:
+ data->template.cursorPal = value;
break;
- case 10:
- data->field_15_0 = value;
+ case LISTFIELD_FILLVALUE:
+ data->template.fillValue = value;
break;
- case 11:
- data->field_15_1 = value;
+ case LISTFIELD_CURSORSHADOWPAL:
+ data->template.cursorShadowPal = value;
break;
- case 12:
- data->field_16_0 = value;
+ case LISTFIELD_LETTERSPACING:
+ data->template.lettersSpacing = value;
break;
- case 13:
- data->field_16_1 = value;
+ case LISTFIELD_ITEMVERTICALPADDING:
+ data->template.itemVerticalPadding = value;
break;
- case 14:
- data->field_16_2 = value;
+ case LISTFIELD_SCROLLMULTIPLE:
+ data->template.scrollMultiple = value;
break;
- case 15:
- data->field_17_0 = value;
+ case LISTFIELD_FONTID:
+ data->template.fontId = value;
break;
- case 16:
- data->field_17_1 = value;
+ case LISTFIELD_CURSORKIND:
+ data->template.cursorKind = value;
break;
}
}
diff --git a/src/load_save.c b/src/load_save.c
index 44e08b5e9c..117ba3e27c 100644
--- a/src/load_save.c
+++ b/src/load_save.c
@@ -37,10 +37,10 @@ EWRAM_DATA struct LoadedSaveData gLoadedSaveData = {0};
EWRAM_DATA u32 gLastEncryptionKey = 0;
// IWRAM common
-bool32 gFlashMemoryPresent;
-struct SaveBlock1 *gSaveBlock1Ptr;
-struct SaveBlock2 *gSaveBlock2Ptr;
-struct PokemonStorage *gPokemonStoragePtr;
+COMMON_DATA bool32 gFlashMemoryPresent = 0;
+COMMON_DATA struct SaveBlock1 *gSaveBlock1Ptr = NULL;
+COMMON_DATA struct SaveBlock2 *gSaveBlock2Ptr = NULL;
+COMMON_DATA struct PokemonStorage *gPokemonStoragePtr = NULL;
// code
void CheckForFlashMemory(void)
@@ -69,7 +69,7 @@ void ClearSav1(void)
// Offset is the sum of the trainer id bytes
void SetSaveBlocksPointers(u16 offset)
{
- struct SaveBlock1** sav1_LocalVar = &gSaveBlock1Ptr;
+ struct SaveBlock1 **sav1_LocalVar = &gSaveBlock1Ptr;
offset = (offset + Random()) & (SAVEBLOCK_MOVE_RANGE - 4);
diff --git a/src/lottery_corner.c b/src/lottery_corner.c
index f19e9f7b7b..117a5d6331 100644
--- a/src/lottery_corner.c
+++ b/src/lottery_corner.c
@@ -75,8 +75,10 @@ void PickLotteryCornerTicket(void)
}
}
}
- else // pokemon are always arranged from populated spots first to unpopulated, so the moment a NONE species is found, that's the end of the list.
+ else // Pokémon are always arranged from populated spots first to unpopulated, so the moment a NONE species is found, that's the end of the list.
+ {
break;
+ }
}
for (i = 0; i < TOTAL_BOXES_COUNT; i++)
@@ -134,7 +136,9 @@ static u8 GetMatchingDigits(u16 winNumber, u16 otId)
matchingDigits++;
}
else
+ {
break;
+ }
}
return matchingDigits;
}
diff --git a/src/m4a.c b/src/m4a.c
index 7774d09cba..2ad2261d08 100644
--- a/src/m4a.c
+++ b/src/m4a.c
@@ -1,4 +1,4 @@
-#include
+#include "global.h"
#include "gba/m4a_internal.h"
extern const u8 gCgb3Vol[];
@@ -7,18 +7,18 @@ extern const u8 gCgb3Vol[];
BSS_CODE ALIGNED(4) char SoundMainRAM_Buffer[0x800] = {0};
-struct SoundInfo gSoundInfo;
-struct PokemonCrySong gPokemonCrySongs[MAX_POKEMON_CRIES];
-struct MusicPlayerInfo gPokemonCryMusicPlayers[MAX_POKEMON_CRIES];
-MPlayFunc gMPlayJumpTable[36];
-struct CgbChannel gCgbChans[4];
-struct MusicPlayerTrack gPokemonCryTracks[MAX_POKEMON_CRIES * 2];
-struct PokemonCrySong gPokemonCrySong;
-struct MusicPlayerInfo gMPlayInfo_BGM;
-struct MusicPlayerInfo gMPlayInfo_SE1;
-struct MusicPlayerInfo gMPlayInfo_SE2;
-struct MusicPlayerInfo gMPlayInfo_SE3;
-u8 gMPlayMemAccArea[0x10];
+COMMON_DATA struct SoundInfo gSoundInfo = {0};
+COMMON_DATA struct PokemonCrySong gPokemonCrySongs[MAX_POKEMON_CRIES] = {0};
+COMMON_DATA struct MusicPlayerInfo gPokemonCryMusicPlayers[MAX_POKEMON_CRIES] = {0};
+COMMON_DATA struct MusicPlayerInfo gMPlayInfo_BGM = {0};
+COMMON_DATA MPlayFunc gMPlayJumpTable[36] = {0};
+COMMON_DATA struct CgbChannel gCgbChans[4] = {0};
+COMMON_DATA struct MusicPlayerInfo gMPlayInfo_SE1 = {0};
+COMMON_DATA struct MusicPlayerInfo gMPlayInfo_SE2 = {0};
+COMMON_DATA struct MusicPlayerTrack gPokemonCryTracks[MAX_POKEMON_CRIES * 2] = {0};
+COMMON_DATA struct PokemonCrySong gPokemonCrySong = {0};
+COMMON_DATA u8 gMPlayMemAccArea[0x10] = {0};
+COMMON_DATA struct MusicPlayerInfo gMPlayInfo_SE3 = {0};
u32 MidiKeyToFreq(struct WaveData *wav, u8 key, u8 fineAdjust)
{
@@ -283,6 +283,7 @@ void MPlayExtender(struct CgbChannel *cgbChans)
soundInfo->ident++;
+#if __STDC_VERSION__ < 202311L
gMPlayJumpTable[8] = ply_memacc;
gMPlayJumpTable[17] = ply_lfos;
gMPlayJumpTable[19] = ply_mod;
@@ -292,6 +293,17 @@ void MPlayExtender(struct CgbChannel *cgbChans)
gMPlayJumpTable[31] = TrackStop;
gMPlayJumpTable[32] = FadeOutBody;
gMPlayJumpTable[33] = TrkVolPitSet;
+#else
+ gMPlayJumpTable[8] = (void (*)(...))ply_memacc;
+ gMPlayJumpTable[17] = (void (*)(...))ply_lfos;
+ gMPlayJumpTable[19] = (void (*)(...))ply_mod;
+ gMPlayJumpTable[28] = (void (*)(...))ply_xcmd;
+ gMPlayJumpTable[29] = (void (*)(...))ply_endtie;
+ gMPlayJumpTable[30] = (void (*)(...))SampleFreqSet;
+ gMPlayJumpTable[31] = (void (*)(...))TrackStop;
+ gMPlayJumpTable[32] = (void (*)(...))FadeOutBody;
+ gMPlayJumpTable[33] = (void (*)(...))TrkVolPitSet;
+#endif
soundInfo->cgbChans = cgbChans;
soundInfo->CgbSound = CgbSound;
@@ -320,13 +332,21 @@ void MusicPlayerJumpTableCopy(void)
void ClearChain(void *x)
{
+#if __STDC_VERSION__ < 202311L
void (*func)(void *) = *(&gMPlayJumpTable[34]);
+#else
+ void (*func)(...) = *(&gMPlayJumpTable[34]);
+#endif
func(x);
}
void Clear64byte(void *x)
{
+#if __STDC_VERSION__ < 202311L
void (*func)(void *) = *(&gMPlayJumpTable[35]);
+#else
+ void (*func)(...) = *(&gMPlayJumpTable[35]);
+#endif
func(x);
}
diff --git a/src/m4a_tables.c b/src/m4a_tables.c
index 4d012cea28..6fb3b273a3 100644
--- a/src/m4a_tables.c
+++ b/src/m4a_tables.c
@@ -3,7 +3,7 @@
// Some of these functions have different signatures, so we need to make this
// an array of void pointers or a struct. It's simpler to just make it an array
// for now.
-void * const gMPlayJumpTableTemplate[] =
+void *const gMPlayJumpTableTemplate[] =
{
ply_fine,
ply_goto,
diff --git a/src/mail.c b/src/mail.c
index 424a286f3f..e1aaa66873 100644
--- a/src/mail.c
+++ b/src/mail.c
@@ -48,8 +48,8 @@ struct MailLayout
struct MailGraphics
{
const u16 *palette;
- const u8 *tiles;
- const u8 *tileMap;
+ const u32 *tiles;
+ const u32 *tileMap;
u32 unused;
u16 textColor;
u16 textShadow;
diff --git a/src/main.c b/src/main.c
index 5f12a2996e..2a47ec51ac 100644
--- a/src/main.c
+++ b/src/main.c
@@ -59,15 +59,15 @@ const IntrFunc gIntrTableTemplate[] =
static u16 sUnusedVar; // Never read
-u16 gKeyRepeatStartDelay;
-bool8 gLinkTransferringData;
-struct Main gMain;
-u16 gKeyRepeatContinueDelay;
-bool8 gSoftResetDisabled;
-IntrFunc gIntrTable[INTR_COUNT];
-u8 gLinkVSyncDisabled;
-u32 IntrMain_Buffer[0x200];
-s8 gPcmDmaCounter;
+COMMON_DATA u16 gKeyRepeatStartDelay = 0;
+COMMON_DATA bool8 gLinkTransferringData = 0;
+COMMON_DATA struct Main gMain = {0};
+COMMON_DATA u16 gKeyRepeatContinueDelay = 0;
+COMMON_DATA bool8 gSoftResetDisabled = 0;
+COMMON_DATA IntrFunc gIntrTable[INTR_COUNT] = {0};
+COMMON_DATA u8 gLinkVSyncDisabled = 0;
+COMMON_DATA u32 IntrMain_Buffer[0x200] = {0};
+COMMON_DATA s8 gPcmDmaCounter = 0;
static EWRAM_DATA u16 sTrainerId = 0;
@@ -86,7 +86,7 @@ void EnableVCountIntrAtLine150(void);
#define B_START_SELECT (B_BUTTON | START_BUTTON | SELECT_BUTTON)
-void AgbMain()
+void AgbMain(void)
{
// Modern compilers are liberal with the stack on entry to this function,
// so RegisterRamReset may crash if it resets IWRAM.
@@ -125,7 +125,7 @@ void AgbMain()
#if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT)
(void) MgbaOpen();
#elif (LOG_HANDLER == LOG_HANDLER_AGB_PRINT)
- AGBPrintfInit();
+ AGBPrintInit();
#endif
#endif
for (;;)
diff --git a/src/main_menu.c b/src/main_menu.c
index 6a6ee99557..9565df886d 100644
--- a/src/main_menu.c
+++ b/src/main_menu.c
@@ -237,7 +237,7 @@ static void SpriteCB_MovePlayerDownWhileShrinking(struct Sprite *);
static void Task_NewGameBirchSpeech_WaitForPlayerShrink(u8);
static void Task_NewGameBirchSpeech_FadePlayerToWhite(u8);
static void Task_NewGameBirchSpeech_Cleanup(u8);
-static void SpriteCB_Null();
+static void SpriteCB_Null(struct Sprite *);
static void Task_NewGameBirchSpeech_ReturnFromNamingScreenShowTextbox(u8);
static void MainMenu_FormatSavegamePlayer(void);
static void MainMenu_FormatSavegamePokedex(void);
@@ -255,7 +255,6 @@ static const u16 sBirchSpeechBgPals[][16] = {
static const u32 sBirchSpeechShadowGfx[] = INCBIN_U32("graphics/birch_speech/shadow.4bpp.lz");
static const u32 sBirchSpeechBgMap[] = INCBIN_U32("graphics/birch_speech/map.bin.lz");
static const u16 sBirchSpeechBgGradientPal[] = INCBIN_U16("graphics/birch_speech/bg2.gbapal");
-static const u16 sBirchSpeechPlatformBlackPal[] = {RGB_BLACK, RGB_BLACK, RGB_BLACK, RGB_BLACK, RGB_BLACK, RGB_BLACK, RGB_BLACK, RGB_BLACK};
#define MENU_LEFT 2
#define MENU_TOP_WIN0 1
@@ -528,6 +527,7 @@ enum
};
#define MAIN_MENU_BORDER_TILE 0x1D5
+#define BIRCH_DLG_BASE_TILE_NUM 0xFC
static void CB2_MainMenu(void)
{
@@ -1278,7 +1278,7 @@ static void Task_NewGameBirchSpeech_Init(u8 taskId)
LZ77UnCompVram(sBirchSpeechShadowGfx, (void *)VRAM);
LZ77UnCompVram(sBirchSpeechBgMap, (void *)(BG_SCREEN_ADDR(7)));
LoadPalette(sBirchSpeechBgPals, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
- LoadPalette(sBirchSpeechPlatformBlackPal, BG_PLTT_ID(0) + 1, PLTT_SIZEOF(8));
+ LoadPalette(&sBirchSpeechBgGradientPal[8], BG_PLTT_ID(0) + 1, PLTT_SIZEOF(8));
ScanlineEffect_Stop();
ResetSpriteData();
FreeAllSpritePalettes();
@@ -1330,7 +1330,7 @@ static void Task_NewGameBirchSpeech_WaitForSpriteFadeInWelcome(u8 taskId)
{
InitWindows(sNewGameBirchSpeechTextWindows);
LoadMainMenuWindowFrameTiles(0, 0xF3);
- LoadMessageBoxGfx(0, 0xFC, BG_PLTT_ID(15));
+ LoadMessageBoxGfx(0, BIRCH_DLG_BASE_TILE_NUM, BG_PLTT_ID(15));
NewGameBirchSpeech_ShowDialogueWindow(0, 1);
PutWindowTilemap(0);
CopyWindowToVram(0, COPYWIN_GFX);
@@ -1856,7 +1856,7 @@ static void CB2_NewGameBirchSpeech_ReturnFromNamingScreen(void)
SetMainCallback2(CB2_MainMenu);
InitWindows(sNewGameBirchSpeechTextWindows);
LoadMainMenuWindowFrameTiles(0, 0xF3);
- LoadMessageBoxGfx(0, 0xFC, BG_PLTT_ID(15));
+ LoadMessageBoxGfx(0, BIRCH_DLG_BASE_TILE_NUM, BG_PLTT_ID(15));
PutWindowTilemap(0);
CopyWindowToVram(0, COPYWIN_FULL);
}
@@ -2278,20 +2278,20 @@ static void NewGameBirchSpeech_ShowDialogueWindow(u8 windowId, u8 copyToVram)
static void NewGameBirchSpeech_CreateDialogueWindowBorder(u8 bg, u8 x, u8 y, u8 width, u8 height, u8 palNum)
{
- FillBgTilemapBufferRect(bg, 0xFD, x-2, y-1, 1, 1, palNum);
- FillBgTilemapBufferRect(bg, 0xFF, x-1, y-1, 1, 1, palNum);
- FillBgTilemapBufferRect(bg, 0x100, x, y-1, width, 1, palNum);
- FillBgTilemapBufferRect(bg, 0x101, x+width-1, y-1, 1, 1, palNum);
- FillBgTilemapBufferRect(bg, 0x102, x+width, y-1, 1, 1, palNum);
- FillBgTilemapBufferRect(bg, 0x103, x-2, y, 1, 5, palNum);
- FillBgTilemapBufferRect(bg, 0x105, x-1, y, width+1, 5, palNum);
- FillBgTilemapBufferRect(bg, 0x106, x+width, y, 1, 5, palNum);
+ FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 1, x-2, y-1, 1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 3, x-1, y-1, 1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 4, x, y-1, width, 1, palNum);
+ FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 5, x+width-1, y-1, 1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 6, x+width, y-1, 1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 7, x-2, y, 1, 5, palNum);
+ FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 9, x-1, y, width+1, 5, palNum);
+ FillBgTilemapBufferRect(bg, BIRCH_DLG_BASE_TILE_NUM + 10, x+width, y, 1, 5, palNum);
- FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0xFD), x-2, y+height, 1, 1, palNum);
- FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0xFF), x-1, y+height, 1, 1, palNum);
- FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0x100), x, y+height, width-1, 1, palNum);
- FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0x101), x+width-1, y+height, 1, 1, palNum);
- FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(0x102), x+width, y+height, 1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 1), x-2, y+height, 1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 3), x-1, y+height, 1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 4), x, y+height, width-1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 5), x+width-1, y+height, 1, 1, palNum);
+ FillBgTilemapBufferRect(bg, BG_TILE_V_FLIP(BIRCH_DLG_BASE_TILE_NUM + 6), x+width, y+height, 1, 1, palNum);
}
static void Task_NewGameBirchSpeech_ReturnFromNamingScreenShowTextbox(u8 taskId)
diff --git a/gflib/malloc.c b/src/malloc.c
similarity index 91%
rename from gflib/malloc.c
rename to src/malloc.c
index d0b9497635..8573611bb9 100644
--- a/gflib/malloc.c
+++ b/src/malloc.c
@@ -1,8 +1,11 @@
#include "global.h"
+#include "malloc.h"
static void *sHeapStart;
static u32 sHeapSize;
+ALIGNED(4) EWRAM_DATA u8 gHeap[HEAP_SIZE] = {0};
+
#define MALLOC_SYSTEM_ID 0xA3A3
struct MemBlock {
@@ -52,18 +55,24 @@ void *AllocInternal(void *heapStart, u32 size)
if (size & 3)
size = 4 * ((size / 4) + 1);
- for (;;) {
+ for (;;)
+ {
// Loop through the blocks looking for unused block that's big enough.
- if (!pos->flag) {
+ if (!pos->flag)
+ {
foundBlockSize = pos->size;
- if (foundBlockSize >= size) {
- if (foundBlockSize - size < 2 * sizeof(struct MemBlock)) {
+ if (foundBlockSize >= size)
+ {
+ if (foundBlockSize - size < 2 * sizeof(struct MemBlock))
+ {
// The block isn't much bigger than the requested size,
// so just use it.
pos->flag = TRUE;
- } else {
+ }
+ else
+ {
// The block is significantly bigger than the requested
// size, so split the rest into a separate block.
foundBlockSize -= sizeof(struct MemBlock);
@@ -95,15 +104,18 @@ void *AllocInternal(void *heapStart, u32 size)
void FreeInternal(void *heapStart, void *pointer)
{
- if (pointer) {
+ if (pointer)
+ {
struct MemBlock *head = (struct MemBlock *)heapStart;
struct MemBlock *block = (struct MemBlock *)((u8 *)pointer - sizeof(struct MemBlock));
block->flag = FALSE;
// If the freed block isn't the last one, merge with the next block
// if it's not in use.
- if (block->next != head) {
- if (!block->next->flag) {
+ if (block->next != head)
+ {
+ if (!block->next->flag)
+ {
block->size += sizeof(struct MemBlock) + block->next->size;
block->next->magic = 0;
block->next = block->next->next;
@@ -114,8 +126,10 @@ void FreeInternal(void *heapStart, void *pointer)
// If the freed block isn't the first one, merge with the previous block
// if it's not in use.
- if (block != head) {
- if (!block->prev->flag) {
+ if (block != head)
+ {
+ if (!block->prev->flag)
+ {
block->prev->next = block->next;
if (block->next != head)
@@ -132,7 +146,8 @@ void *AllocZeroedInternal(void *heapStart, u32 size)
{
void *mem = AllocInternal(heapStart, size);
- if (mem != NULL) {
+ if (mem != NULL)
+ {
if (size & 3)
size = 4 * ((size / 4) + 1);
diff --git a/src/map_name_popup.c b/src/map_name_popup.c
index eed2f2b714..4b30068f3c 100644
--- a/src/map_name_popup.c
+++ b/src/map_name_popup.c
@@ -69,7 +69,10 @@ static const u16 sMapPopUp_PaletteTable[][16] =
static const u16 sMapPopUp_Palette_Underwater[16] = INCBIN_U16("graphics/map_popup/underwater.gbapal");
-static const u8 sRegionMapSectionId_To_PopUpThemeIdMapping[] =
+// -1 in the size excludes MAPSEC_NONE.
+// The MAPSEC values for Kanto (between MAPSEC_DYNAMIC and MAPSEC_AQUA_HIDEOUT) are also excluded,
+// and this is then handled by subtracting KANTO_MAPSEC_COUNT here and in LoadMapNamePopUpWindowBg.
+static const u8 sMapSectionToThemeId[MAPSEC_COUNT - KANTO_MAPSEC_COUNT - 1] =
{
[MAPSEC_LITTLEROOT_TOWN] = MAPPOPUP_THEME_WOOD,
[MAPSEC_OLDALE_TOWN] = MAPPOPUP_THEME_WOOD,
@@ -174,7 +177,7 @@ static const u8 sRegionMapSectionId_To_PopUpThemeIdMapping[] =
[MAPSEC_DESERT_UNDERPASS - KANTO_MAPSEC_COUNT] = MAPPOPUP_THEME_STONE,
[MAPSEC_ALTERING_CAVE - KANTO_MAPSEC_COUNT] = MAPPOPUP_THEME_STONE,
[MAPSEC_NAVEL_ROCK - KANTO_MAPSEC_COUNT] = MAPPOPUP_THEME_STONE,
- [MAPSEC_TRAINER_HILL - KANTO_MAPSEC_COUNT] = MAPPOPUP_THEME_MARBLE
+ [MAPSEC_TRAINER_HILL - KANTO_MAPSEC_COUNT] = MAPPOPUP_THEME_MARBLE,
};
static const u8 sText_PyramidFloor1[] = _("PYRAMID FLOOR 1");
@@ -186,7 +189,7 @@ static const u8 sText_PyramidFloor6[] = _("PYRAMID FLOOR 6");
static const u8 sText_PyramidFloor7[] = _("PYRAMID FLOOR 7");
static const u8 sText_Pyramid[] = _("PYRAMID");
-static const u8 * const sBattlePyramid_MapHeaderStrings[FRONTIER_STAGES_PER_CHALLENGE + 1] =
+static const u8 *const sBattlePyramid_MapHeaderStrings[FRONTIER_STAGES_PER_CHALLENGE + 1] =
{
sText_PyramidFloor1,
sText_PyramidFloor2,
@@ -317,8 +320,13 @@ void HideMapNamePopUpWindow(void)
{
if (FuncIsActiveTask(Task_MapNamePopUpWindow))
{
- ClearStdWindowAndFrame(GetMapNamePopUpWindowId(), TRUE);
- RemoveMapNamePopUpWindow();
+ #ifdef UBFIX
+ if (GetMapNamePopUpWindowId() != WINDOW_NONE)
+ #endif // UBFIX
+ {
+ ClearStdWindowAndFrame(GetMapNamePopUpWindowId(), TRUE);
+ RemoveMapNamePopUpWindow();
+ }
SetGpuReg_ForcedBlank(REG_OFFSET_BG0VOFS, 0);
DestroyTask(sPopupTaskId);
}
@@ -331,7 +339,7 @@ static void ShowMapNamePopUpWindow(void)
u8 x;
const u8 *mapDisplayHeaderSource;
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP)
{
@@ -405,7 +413,7 @@ static void LoadMapNamePopUpWindowBg(void)
else
regionMapSectionId = 0; // Discard kanto region sections;
}
- popUpThemeId = sRegionMapSectionId_To_PopUpThemeIdMapping[regionMapSectionId];
+ popUpThemeId = sMapSectionToThemeId[regionMapSectionId];
LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_BG), sMapPopUp_OutlineTable[popUpThemeId], 0x400, 0x21D);
CallWindowFunction(popupWindowId, DrawMapNamePopUpFrame);
diff --git a/src/match_call.c b/src/match_call.c
index a9d18b3477..e6a141a1bc 100644
--- a/src/match_call.c
+++ b/src/match_call.c
@@ -131,7 +131,7 @@ static EWRAM_DATA struct MatchCallState sMatchCallState = {0};
static EWRAM_DATA struct BattleFrontierStreakInfo sBattleFrontierStreakInfo = {0};
static u32 GetCurrentTotalMinutes(struct Time *);
-static u32 GetNumRegisteredNPCs(void);
+static u32 GetNumRegisteredTrainers(void);
static u32 GetActiveMatchCallTrainerId(u32);
static int GetTrainerMatchCallId(int);
static u16 GetRematchTrainerLocation(int);
@@ -1098,7 +1098,7 @@ static bool32 UpdateMatchCallStepCounter(void)
static bool32 SelectMatchCallTrainer(void)
{
u32 matchCallId;
- u32 numRegistered = GetNumRegisteredNPCs();
+ u32 numRegistered = GetNumRegisteredTrainers();
if (numRegistered == 0)
return FALSE;
@@ -1114,12 +1114,13 @@ static bool32 SelectMatchCallTrainer(void)
return TRUE;
}
-static u32 GetNumRegisteredNPCs(void)
+// Ignores registrable non-trainer NPCs, and special trainers like Wally and the gym leaders.
+static u32 GetNumRegisteredTrainers(void)
{
u32 i, count;
for (i = 0, count = 0; i < REMATCH_SPECIAL_TRAINER_START; i++)
{
- if (FlagGet(FLAG_MATCH_CALL_REGISTERED + i))
+ if (FlagGet(TRAINER_REGISTERED_FLAGS_START + i))
count++;
}
@@ -1131,7 +1132,7 @@ static u32 GetActiveMatchCallTrainerId(u32 activeMatchCallId)
u32 i;
for (i = 0; i < REMATCH_SPECIAL_TRAINER_START; i++)
{
- if (FlagGet(FLAG_MATCH_CALL_REGISTERED + i))
+ if (FlagGet(TRAINER_REGISTERED_FLAGS_START + i))
{
if (!activeMatchCallId)
return gRematchTable[i].trainerIds[0];
@@ -1367,7 +1368,7 @@ static bool32 MatchCall_EndCall(u8 taskId)
if (!sMatchCallState.triggeredFromScript)
{
LoadMessageBoxAndBorderGfx();
- playerObjectId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ playerObjectId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]);
ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents();
@@ -1747,9 +1748,9 @@ static void PopulateSpeciesFromTrainerLocation(int matchCallId, u8 *destStr)
u8 slot;
int i = 0;
- if (gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED)) // ??? This check is nonsense.
+ if (gWildMonHeaders[i].mapGroup != MAP_GROUP(MAP_UNDEFINED)) // ??? This check is nonsense.
{
- while (gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED))
+ while (gWildMonHeaders[i].mapGroup != MAP_GROUP(MAP_UNDEFINED))
{
if (gWildMonHeaders[i].mapGroup == gRematchTable[matchCallId].mapGroup
&& gWildMonHeaders[i].mapNum == gRematchTable[matchCallId].mapNum)
@@ -1758,7 +1759,7 @@ static void PopulateSpeciesFromTrainerLocation(int matchCallId, u8 *destStr)
i++;
}
- if (gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED))
+ if (gWildMonHeaders[i].mapGroup != MAP_GROUP(MAP_UNDEFINED))
{
numSpecies = 0;
if (gWildMonHeaders[i].landMonsInfo)
diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c
index 287419f901..03b4b6663a 100644
--- a/src/mauville_old_man.c
+++ b/src/mauville_old_man.c
@@ -24,20 +24,20 @@
#include "constants/mauville_old_man.h"
static void InitGiddyTaleList(void);
-static void StartBardSong(bool8 useTemporaryLyrics);
+static void StartBardSong(bool8 useNewSongLyrics);
static void Task_BardSong(u8 taskId);
static void StorytellerSetup(void);
static void Storyteller_ResetFlag(void);
static u8 sSelectedStory;
-struct BardSong gBardSong;
+COMMON_DATA struct BardSong gBardSong = {0};
-static EWRAM_DATA u16 sUnknownBardRelated = 0;
-static EWRAM_DATA struct MauvilleManStoryteller * sStorytellerPtr = NULL;
+static EWRAM_DATA u16 sUnusedPitchTableIndex = 0;
+static EWRAM_DATA struct MauvilleManStoryteller *sStorytellerPtr = NULL;
static EWRAM_DATA u8 sStorytellerWindowId = 0;
-static const u16 sDefaultBardSongLyrics[BARD_SONG_LENGTH] = {
+static const u16 sDefaultBardSongLyrics[NUM_BARD_SONG_WORDS] = {
EC_WORD_SHAKE,
EC_WORD_IT,
EC_WORD_DO,
@@ -46,7 +46,7 @@ static const u16 sDefaultBardSongLyrics[BARD_SONG_LENGTH] = {
EC_WORD_DANCE
};
-static const u8 * const sGiddyAdjectives[] = {
+static const u8 *const sGiddyAdjectives[] = {
GiddyText_SoPretty,
GiddyText_SoDarling,
GiddyText_SoRelaxed,
@@ -60,7 +60,7 @@ static const u8 * const sGiddyAdjectives[] = {
// Non-random lines Giddy can say. Not all are strictly
// questions, but most are, and the player will receive
// a Yes/No prompt afterwards regardless.
-static const u8 * const sGiddyQuestions[GIDDY_MAX_QUESTIONS] = {
+static const u8 *const sGiddyQuestions[GIDDY_MAX_QUESTIONS] = {
GiddyText_ISoWantToGoOnAVacation,
GiddyText_IBoughtCrayonsWith120Colors,
GiddyText_WouldntItBeNiceIfWeCouldFloat,
@@ -79,7 +79,7 @@ static void SetupBard(void)
bard->id = MAUVILLE_MAN_BARD;
bard->hasChangedSong = FALSE;
bard->language = gGameLanguage;
- for (i = 0; i < BARD_SONG_LENGTH; i++)
+ for (i = 0; i < NUM_BARD_SONG_WORDS; i++)
bard->songLyrics[i] = sDefaultBardSongLyrics[i];
}
@@ -163,24 +163,33 @@ void SaveBardSongLyrics(void)
for (i = 0; i < TRAINER_ID_LENGTH; i++)
bard->playerTrainerId[i] = gSaveBlock2Ptr->playerTrainerId[i];
- for (i = 0; i < BARD_SONG_LENGTH; i++)
- bard->songLyrics[i] = bard->temporaryLyrics[i];
+ for (i = 0; i < NUM_BARD_SONG_WORDS; i++)
+ bard->songLyrics[i] = bard->newSongLyrics[i];
bard->hasChangedSong = TRUE;
}
-// Copies lyrics into gStringVar4
+// Copies lyrics into gStringVar4.
+// gSpecialVar_0x8004 is used in these functions to indicate which song should be played.
+// If it's set to 0 the Bard's current song should be played, otherwise the new user-provided song should be played.
+// Its set in the scripts right before 'PlayBardSong' is called.
static void PrepareSongText(void)
{
struct MauvilleManBard *bard = &gSaveBlock1Ptr->oldMan.bard;
- u16 * lyrics = gSpecialVar_0x8004 == 0 ? bard->songLyrics : bard->temporaryLyrics;
- u8 * wordEnd = gStringVar4;
- u8 * str = wordEnd;
- u16 lineNum;
+ u16 *lyrics = !gSpecialVar_0x8004 ? bard->songLyrics : bard->newSongLyrics;
+ u8 *wordEnd = gStringVar4;
+ u8 *str = wordEnd;
+ u16 paragraphNum;
- // Put three words on each line
- for (lineNum = 0; lineNum < 2; lineNum++)
+ // Easy chat "words" aren't strictly single words, e.g. EC_WORD_MATCH_UP is the string "MATCH UP".
+ // The bard song needs to know when it's at the end of an easy chat word and not just at a space in
+ // the middle of one, so the loop below will replace spaces in each easy chat word with CHAR_BARD_WORD_DELIMIT.
+ // When it comes time to print the song's text all the CHAR_BARD_WORD_DELIMIT will get replaced with CHAR_SPACE.
+ //
+ // The song text will be displayed in two paragraphs, each containing 3 easy chat words (2 on the first line and 1 on the second).
+ for (paragraphNum = 0; paragraphNum < 2; paragraphNum++)
{
+ // Line 1, 1st word
wordEnd = CopyEasyChatWord(wordEnd, *(lyrics++));
while (wordEnd != str)
{
@@ -192,6 +201,7 @@ static void PrepareSongText(void)
str++;
*(wordEnd++) = CHAR_SPACE;
+ // Line 1, 2nd word
wordEnd = CopyEasyChatWord(wordEnd, *(lyrics++));
while (wordEnd != str)
{
@@ -203,6 +213,7 @@ static void PrepareSongText(void)
str++;
*(wordEnd++) = CHAR_NEWLINE;
+ // Line 2, 1st word
wordEnd = CopyEasyChatWord(wordEnd, *(lyrics++));
while (wordEnd != str)
{
@@ -211,8 +222,10 @@ static void PrepareSongText(void)
str++;
}
- if (lineNum == 0)
+ if (paragraphNum == 0)
{
+ // Erase the 1st paragraph for displaying the 2nd.
+ // The == 0 check assumes there are only 2 paragraphs.
*(wordEnd++) = EXT_CTRL_CODE_BEGIN;
*(wordEnd++) = EXT_CTRL_CODE_FILL_WINDOW;
}
@@ -421,17 +434,19 @@ enum {
#define tWordState data[1]
#define tDelay data[2]
#define tCharIndex data[3]
-#define tCurrWord data[4]
-#define tUseTemporaryLyrics data[5]
+#define tLyricsIndex data[4]
+#define tUseNewSongLyrics data[5]
-#define MACRO1(a) (((a) & 3) + (((a) / 8) & 1))
-#define MACRO2(a) (((a) % 4) + (((a) / 8) & 1))
+// Takes a 16-bit easy chat word value and returns a value 0-4 (i.e. a value less than NUM_BARD_PITCH_TABLES_PER_SIZE).
+// The relationship between the easy chat word and the chosen pitch table is essentially arbitrary.
+// This value will be used twice; once for an unused variable, and again to select a pitch table in CalcWordSounds.
+#define WORD_TO_PITCH_TABLE_INDEX(a) ( MOD(a, (NUM_BARD_PITCH_TABLES_PER_SIZE-1)) + (((a) >> 3) & 1) )
-static void StartBardSong(bool8 useTemporaryLyrics)
+static void StartBardSong(bool8 useNewSongLyrics)
{
u8 taskId = CreateTask(Task_BardSong, 80);
- gTasks[taskId].tUseTemporaryLyrics = useTemporaryLyrics;
+ gTasks[taskId].tUseNewSongLyrics = useNewSongLyrics;
}
static void EnableTextPrinters(void)
@@ -439,12 +454,12 @@ static void EnableTextPrinters(void)
gDisableTextPrinters = FALSE;
}
-static void DisableTextPrinters(struct TextPrinterTemplate * printer, u16 renderCmd)
+static void DisableTextPrinters(struct TextPrinterTemplate *printer, u16 renderCmd)
{
gDisableTextPrinters = TRUE;
}
-static void DrawSongTextWindow(const u8 * str)
+static void DrawSongTextWindow(const u8 *str)
{
DrawDialogueFrame(0, FALSE);
AddTextPrinterParameterized(0, FONT_NORMAL, str, 0, 1, 1, DisableTextPrinters);
@@ -452,6 +467,18 @@ static void DrawSongTextWindow(const u8 * str)
CopyWindowToVram(0, COPYWIN_FULL);
}
+#define BARD_SONG_BASE_VOLUME 0x100
+#define BARD_SONG_BASE_PITCH 0x200
+
+enum {
+ SOUND_STATE_START,
+ SOUND_STATE_PLAY,
+ SOUND_STATE_SET_BASE,
+ SOUND_STATE_END,
+ SOUND_STATE_WAIT,
+};
+
+// Sing one frame of the bard's song. 'task' is a pointer to Task_BardSong, which handles changing the states in here.
static void BardSing(struct Task *task, struct BardSong *song)
{
switch (task->tState)
@@ -463,60 +490,73 @@ static void BardSing(struct Task *task, struct BardSong *song)
s32 i;
// Copy lyrics
- if (gSpecialVar_0x8004 == 0)
+ if (!gSpecialVar_0x8004)
lyrics = bard->songLyrics;
else
- lyrics = bard->temporaryLyrics;
- for (i = 0; i < BARD_SONG_LENGTH; i++)
+ lyrics = bard->newSongLyrics;
+
+ for (i = 0; i < NUM_BARD_SONG_WORDS; i++)
song->lyrics[i] = lyrics[i];
- song->currWord = 0;
+
+ song->lyricsIndex = 0;
+ break;
}
- break;
- case BARD_STATE_WAIT_BGM:
- break;
case BARD_STATE_GET_WORD:
{
- u16 word = song->lyrics[song->currWord];
- song->sound = GetWordSounds(word);
- GetWordPhonemes(song, MACRO1(word));
- song->currWord++;
- if (song->sound->songLengthId != 0xFF)
- song->state = 0;
+ u16 easyChatWord = song->lyrics[song->lyricsIndex];
+ song->soundTemplates = GetWordSoundTemplates(easyChatWord);
+ CalcWordSounds(song, WORD_TO_PITCH_TABLE_INDEX(easyChatWord));
+ song->lyricsIndex++;
+ if (song->soundTemplates[0].songId != PHONEME_ID_NONE)
+ {
+ // Word has valid sounds, begin playing.
+ song->state = SOUND_STATE_START;
+ }
else
{
- song->state = 3;
- song->phonemeTimer = 2;
+ // Word has no valid sounds, skip to the end.
+ song->state = SOUND_STATE_END;
+ song->timer = 2;
}
break;
}
case BARD_STATE_HANDLE_WORD:
case BARD_STATE_WAIT_WORD:
{
- const struct BardSound *sound = &song->sound[song->currPhoneme];
+ const struct BardSoundTemplate *template = &song->soundTemplates[song->soundIndex];
switch (song->state)
{
- case 0:
- song->phonemeTimer = song->phonemes[song->currPhoneme].length;
- if (sound->songLengthId <= 50)
+ case SOUND_STATE_START:
+ song->timer = song->sounds[song->soundIndex].length;
+ if (template->songId < NUM_PHONEME_SONGS)
{
- u8 num = sound->songLengthId / 3;
- m4aSongNumStart(PH_TRAP_HELD + 3 * num);
+ // Phoneme "songs" come in triplets of PH_*_BLEND, PH_*_HELD, and PH_*_SOLO.
+ // The division then multiplication by 3 below is rounding any value from one of these triplets to a PH_*_HELD.
+ // This means the actual song files for any phoneme other than PH_*_HELD won't be played here, and the only difference
+ // when specifying a PH_*_BLEND or PH_*_SOLO in the songId will be the length of the sound, determined by 'sPhonemeLengths'.
+ u8 phonemeTripletId = template->songId / 3;
+ m4aSongNumStart((FIRST_PHONEME_SONG + 1) + phonemeTripletId * 3);
}
- song->state = 2;
- song->phonemeTimer--;
+ song->state = SOUND_STATE_SET_BASE;
+ song->timer--;
break;
- case 2:
- song->state = 1;
- if (sound->songLengthId <= 50)
+ case SOUND_STATE_SET_BASE:
+ song->state = SOUND_STATE_PLAY;
+ if (template->songId < NUM_PHONEME_SONGS)
{
- song->volume = 0x100 + sound->volume * 16;
+ // Adjust the song volume for the current phoneme.
+ // In practice no phonemes use this, so volume here will always be BARD_SONG_BASE_VOLUME.
+ song->volume = BARD_SONG_BASE_VOLUME + template->volume * 16;
m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume);
- song->pitch = 0x200 + song->phonemes[song->currPhoneme].pitch;
+
+ // Adjust the song pitch for the current phoneme.
+ song->pitch = BARD_SONG_BASE_PITCH + song->sounds[song->soundIndex].pitch;
m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, song->pitch);
}
break;
- case 1:
+ case SOUND_STATE_PLAY:
+ // Modulate the volume and pitch to make it sound a little more like singing.
if (song->voiceInflection > 10)
song->volume -= 2;
if (song->voiceInflection & 1)
@@ -526,31 +566,37 @@ static void BardSing(struct Task *task, struct BardSong *song)
m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume);
m4aMPlayPitchControl(&gMPlayInfo_SE2, TRACKS_ALL, song->pitch);
song->voiceInflection++;
- song->phonemeTimer--;
- if (song->phonemeTimer == 0)
+
+ song->timer--;
+ if (song->timer == 0)
{
- song->currPhoneme++;
- if (song->currPhoneme != 6 && song->sound[song->currPhoneme].songLengthId != 0xFF)
- song->state = 0;
+ if (++song->soundIndex != MAX_BARD_SOUNDS_PER_WORD && song->soundTemplates[song->soundIndex].songId != PHONEME_ID_NONE)
+ {
+ // There are more sounds to play for this word, return to the start.
+ song->state = SOUND_STATE_START;
+ }
else
{
- song->state = 3;
- song->phonemeTimer = 2;
+ // We've reached the final sound for this word, stop playing.
+ song->state = SOUND_STATE_END;
+ song->timer = 2;
}
}
break;
- case 3:
- song->phonemeTimer--;
- if (song->phonemeTimer == 0)
+ case SOUND_STATE_END:
+ // Delay, then stop playing the phoneme.
+ if (--song->timer == 0)
{
m4aMPlayStop(&gMPlayInfo_SE2);
- song->state = 4;
+ song->state = SOUND_STATE_WAIT; // We'll remain stuck at this sound state until Task_BardSong changes states from HANDLE_WORD/WAIT_WORD
}
break;
}
- }
break;
+ }
case BARD_STATE_PAUSE:
+ case BARD_STATE_WAIT_BGM:
+ // Non-singing states.
break;
}
}
@@ -569,7 +615,7 @@ static void Task_BardSong(u8 taskId)
task->tWordState = 0;
task->tDelay = 0;
task->tCharIndex = 0;
- task->tCurrWord = 0;
+ task->tLyricsIndex = 0;
FadeOutBGMTemporarily(4);
task->tState = BARD_STATE_WAIT_BGM;
break;
@@ -593,15 +639,17 @@ static void Task_BardSong(u8 taskId)
wordLen++;
}
- if (!task->tUseTemporaryLyrics)
- sUnknownBardRelated = MACRO2(bard->songLyrics[task->tCurrWord]);
+ // sUnusedPitchTableIndex is never read. For debugging perhaps, or one of the other languages.
+ if (!task->tUseNewSongLyrics)
+ sUnusedPitchTableIndex = WORD_TO_PITCH_TABLE_INDEX(bard->songLyrics[task->tLyricsIndex]);
else
- sUnknownBardRelated = MACRO2(bard->temporaryLyrics[task->tCurrWord]);
+ sUnusedPitchTableIndex = WORD_TO_PITCH_TABLE_INDEX(bard->newSongLyrics[task->tLyricsIndex]);
gBardSong.length /= wordLen;
if (gBardSong.length <= 0)
gBardSong.length = 1;
- task->tCurrWord++;
+
+ task->tLyricsIndex++;
if (task->tDelay == 0)
{
@@ -633,7 +681,7 @@ static void Task_BardSong(u8 taskId)
}
else if (gStringVar4[task->tCharIndex] == CHAR_SPACE)
{
- // Handle space
+ // End of easy chat word, move on to the next one.
EnableTextPrinters();
task->tCharIndex++;
task->tState = BARD_STATE_GET_WORD;
@@ -649,14 +697,16 @@ static void Task_BardSong(u8 taskId)
else if (gStringVar4[task->tCharIndex] == EXT_CTRL_CODE_BEGIN)
{
// Handle ctrl code
+ // The only expected ctrl codes are those for clearing the end of the paragraph,
+ // so this assumes there's a new word coming and does a short delay before the next paragraph.
task->tCharIndex += 2; // skip over control codes
task->tState = BARD_STATE_GET_WORD;
task->tDelay = 8;
}
else if (gStringVar4[task->tCharIndex] == CHAR_BARD_WORD_DELIMIT)
{
- // Handle word boundary
- gStringVar4[task->tCharIndex] = CHAR_SPACE; // Replace with a real space
+ // Space within the current easy chat word (see PrepareSongText), just replace it with a real space.
+ gStringVar4[task->tCharIndex] = CHAR_SPACE;
EnableTextPrinters();
task->tCharIndex++;
task->tDelay = 0;
@@ -700,7 +750,7 @@ void SetMauvilleOldManObjEventGfx(void)
// Language fixers?
-void SanitizeMauvilleOldManForRuby(union OldMan * oldMan)
+void SanitizeMauvilleOldManForRuby(union OldMan *oldMan)
{
s32 i;
u8 playerName[PLAYER_NAME_LENGTH + 1];
@@ -709,7 +759,7 @@ void SanitizeMauvilleOldManForRuby(union OldMan * oldMan)
{
case MAUVILLE_MAN_TRADER:
{
- struct MauvilleOldManTrader * trader = &oldMan->trader;
+ struct MauvilleOldManTrader *trader = &oldMan->trader;
for (i = 0; i < NUM_TRADER_ITEMS; i++)
{
if (trader->language[i] == LANGUAGE_JAPANESE)
@@ -719,7 +769,7 @@ void SanitizeMauvilleOldManForRuby(union OldMan * oldMan)
}
case MAUVILLE_MAN_STORYTELLER:
{
- struct MauvilleManStoryteller * storyteller = &oldMan->storyteller;
+ struct MauvilleManStoryteller *storyteller = &oldMan->storyteller;
for (i = 0; i < NUM_STORYTELLER_TALES; i++)
{
if (storyteller->gameStatIDs[i] != 0)
@@ -740,7 +790,7 @@ void SanitizeMauvilleOldManForRuby(union OldMan * oldMan)
}
}
-static void UNUSED SetMauvilleOldManLanguage(union OldMan * oldMan, u32 language1, u32 language2, u32 language3)
+static void UNUSED SetMauvilleOldManLanguage(union OldMan *oldMan, u32 language1, u32 language2, u32 language3)
{
s32 i;
@@ -748,7 +798,7 @@ static void UNUSED SetMauvilleOldManLanguage(union OldMan * oldMan, u32 language
{
case MAUVILLE_MAN_TRADER:
{
- struct MauvilleOldManTrader * trader = &oldMan->trader;
+ struct MauvilleOldManTrader *trader = &oldMan->trader;
for (i = 0; i < NUM_TRADER_ITEMS; i++)
{
@@ -761,7 +811,7 @@ static void UNUSED SetMauvilleOldManLanguage(union OldMan * oldMan, u32 language
break;
case MAUVILLE_MAN_STORYTELLER:
{
- struct MauvilleManStoryteller * storyteller = &oldMan->storyteller;
+ struct MauvilleManStoryteller *storyteller = &oldMan->storyteller;
for (i = 0; i < NUM_STORYTELLER_TALES; i++)
{
@@ -774,7 +824,7 @@ static void UNUSED SetMauvilleOldManLanguage(union OldMan * oldMan, u32 language
break;
case MAUVILLE_MAN_BARD:
{
- struct MauvilleManBard * bard = &oldMan->bard;
+ struct MauvilleManBard *bard = &oldMan->bard;
if (language3 == LANGUAGE_JAPANESE)
bard->language = language1;
@@ -784,7 +834,7 @@ static void UNUSED SetMauvilleOldManLanguage(union OldMan * oldMan, u32 language
break;
case MAUVILLE_MAN_HIPSTER:
{
- struct MauvilleManHipster * hipster = &oldMan->hipster;
+ struct MauvilleManHipster *hipster = &oldMan->hipster;
if (language3 == LANGUAGE_JAPANESE)
hipster->language = language1;
@@ -794,7 +844,7 @@ static void UNUSED SetMauvilleOldManLanguage(union OldMan * oldMan, u32 language
break;
case MAUVILLE_MAN_GIDDY:
{
- struct MauvilleManGiddy * giddy = &oldMan->giddy;
+ struct MauvilleManGiddy *giddy = &oldMan->giddy;
if (language3 == LANGUAGE_JAPANESE)
giddy->language = language1;
@@ -805,13 +855,13 @@ static void UNUSED SetMauvilleOldManLanguage(union OldMan * oldMan, u32 language
}
}
-void SanitizeReceivedEmeraldOldMan(union OldMan * oldMan, u32 version, u32 language)
+void SanitizeReceivedEmeraldOldMan(union OldMan *oldMan, u32 version, u32 language)
{
u8 playerName[PLAYER_NAME_LENGTH + 1];
s32 i;
if (oldMan->common.id == MAUVILLE_MAN_STORYTELLER && language == LANGUAGE_JAPANESE)
{
- struct MauvilleManStoryteller * storyteller = &oldMan->storyteller;
+ struct MauvilleManStoryteller *storyteller = &oldMan->storyteller;
for (i = 0; i < NUM_STORYTELLER_TALES; i++)
{
@@ -828,7 +878,7 @@ void SanitizeReceivedEmeraldOldMan(union OldMan * oldMan, u32 version, u32 langu
}
}
-void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 version, u32 language)
+void SanitizeReceivedRubyOldMan(union OldMan *oldMan, u32 version, u32 language)
{
bool32 isRuby = (version == VERSION_SAPPHIRE || version == VERSION_RUBY);
@@ -836,21 +886,23 @@ void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 version, u32 language
{
case MAUVILLE_MAN_TRADER:
{
- struct MauvilleOldManTrader * trader = &oldMan->trader;
+ struct MauvilleOldManTrader *trader = &oldMan->trader;
s32 i;
if (isRuby)
{
for (i = 0; i < NUM_TRADER_ITEMS; i++)
{
- u8 * str = trader->playerNames[i];
+ u8 *str = trader->playerNames[i];
if (str[0] == EXT_CTRL_CODE_BEGIN && str[1] == EXT_CTRL_CODE_JPN)
{
StripExtCtrlCodes(str);
trader->language[i] = LANGUAGE_JAPANESE;
}
else
+ {
trader->language[i] = language;
+ }
}
}
else
@@ -868,7 +920,7 @@ void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 version, u32 language
case MAUVILLE_MAN_STORYTELLER:
{
- struct MauvilleManStoryteller * storyteller = &oldMan->storyteller;
+ struct MauvilleManStoryteller *storyteller = &oldMan->storyteller;
s32 i;
if (isRuby)
@@ -883,7 +935,7 @@ void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 version, u32 language
break;
case MAUVILLE_MAN_BARD:
{
- struct MauvilleManBard * bard = &oldMan->bard;
+ struct MauvilleManBard *bard = &oldMan->bard;
if (isRuby)
{
@@ -893,7 +945,7 @@ void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 version, u32 language
break;
case MAUVILLE_MAN_HIPSTER:
{
- struct MauvilleManHipster * hipster = &oldMan->hipster;
+ struct MauvilleManHipster *hipster = &oldMan->hipster;
if (isRuby)
{
@@ -903,7 +955,7 @@ void SanitizeReceivedRubyOldMan(union OldMan * oldMan, u32 version, u32 language
break;
case MAUVILLE_MAN_GIDDY:
{
- struct MauvilleManGiddy * giddy = &oldMan->giddy;
+ struct MauvilleManGiddy *giddy = &oldMan->giddy;
if (isRuby)
{
@@ -1247,9 +1299,9 @@ static void GetStoryByStattellerPlayerName(u32 player, void *dst)
memcpy(dst, name, PLAYER_NAME_LENGTH);
}
-static void StorytellerSetPlayerName(u32 player, const u8 * src)
+static void StorytellerSetPlayerName(u32 player, const u8 *src)
{
- u8 * name = sStorytellerPtr->trainerNames[player];
+ u8 *name = sStorytellerPtr->trainerNames[player];
memset(name, EOS, PLAYER_NAME_LENGTH);
memcpy(name, src, PLAYER_NAME_LENGTH);
}
@@ -1265,7 +1317,7 @@ static void StorytellerRecordNewStat(u32 player, u32 stat)
sStorytellerPtr->language[player] = gGameLanguage;
}
-static void ScrambleStatList(u8 * arr, s32 count)
+static void ScrambleStatList(u8 *arr, s32 count)
{
s32 i;
diff --git a/src/menu_helpers.c b/src/menu_helpers.c
index d810508ae4..04e7f061b4 100644
--- a/src/menu_helpers.c
+++ b/src/menu_helpers.c
@@ -279,8 +279,8 @@ bool8 IsHoldingItemAllowed(u16 itemId)
{
// Enigma Berry can't be held in link areas
if (itemId == ITEM_ENIGMA_BERRY
- && ((gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRADE_CENTER)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRADE_CENTER))
+ && ((gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_TRADE_CENTER)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_TRADE_CENTER))
|| InUnionRoom() == TRUE))
return FALSE;
else
diff --git a/src/menu_specialized.c b/src/menu_specialized.c
index 20ddce1f44..6f04a4febc 100644
--- a/src/menu_specialized.c
+++ b/src/menu_specialized.c
@@ -317,7 +317,7 @@ void MailboxMenu_Free(void)
// filled with the graph color.
//---------------------------------------
-#define SHIFT_RIGHT_ADJUSTED(n, s)(((n) >> (s)) + (((n) >> ((s) - 1)) & 1))
+#define SHIFT_RIGHT_ADJUSTED(n, s) (((n) >> (s)) + (((n) >> ((s) - 1)) & 1))
void ConditionGraph_Init(struct ConditionGraph *graph)
{
@@ -1194,7 +1194,7 @@ void LoadConditionMonPicTemplate(struct SpriteSheet *sheet, struct SpriteTemplat
*pal = dataPal;
}
-void LoadConditionSelectionIcons(struct SpriteSheet *sheets, struct SpriteTemplate * template, struct SpritePalette *pals)
+void LoadConditionSelectionIcons(struct SpriteSheet *sheets, struct SpriteTemplate *template, struct SpritePalette *pals)
{
u8 i;
diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c
index 924428aea4..f8261fd391 100644
--- a/src/metatile_behavior.c
+++ b/src/metatile_behavior.c
@@ -320,7 +320,7 @@ bool8 MetatileBehavior_IsSouthArrowWarp(u8 metatileBehavior)
return FALSE;
}
-bool8 Unref_MetatileBehavior_IsArrowWarp(u8 metatileBehavior)
+bool8 UNUSED Unref_MetatileBehavior_IsArrowWarp(u8 metatileBehavior)
{
u8 isArrowWarp = FALSE;
diff --git a/src/mini_printf.c b/src/mini_printf.c
index 2a8c6e5cb7..3caf246048 100644
--- a/src/mini_printf.c
+++ b/src/mini_printf.c
@@ -36,7 +36,7 @@
#include "gba/types.h"
#include "gba/defines.h"
#include "config.h"
-#include "characters.h"
+#include "constants/characters.h"
#include "string_util.h"
#ifndef NDEBUG
@@ -86,6 +86,8 @@ static inline char mini_pchar_decode(char encoded)
ret = '('; // opening parentheses
else if (encoded == CHAR_RIGHT_PAREN)
ret = ')'; // closing parentheses
+ else if (encoded == CHAR_HYPHEN)
+ ret = '-'; // hyphen
return ret;
}
@@ -102,8 +104,10 @@ static s32 _putsAscii(char *s, s32 len, void *buf)
p0 = b->buffer;
/* Copy to buffer */
- for (i = 0; i < len; i++) {
- if(b->pbuffer == b->buffer + b->buffer_len - 1) {
+ for (i = 0; i < len; i++)
+ {
+ if(b->pbuffer == b->buffer + b->buffer_len - 1)
+ {
break;
}
*(b->pbuffer ++) = s[i];
@@ -125,11 +129,37 @@ static s32 _putsEncoded(char *s, s32 len, void *buf)
p0 = b->buffer;
/* Copy to buffer */
- for (i = 0; i < len; i++) {
- if(b->pbuffer == b->buffer + b->buffer_len - 1) {
+ for (i = 0; i < len; i++)
+ {
+ if(b->pbuffer == b->buffer + b->buffer_len - 1)
+ {
break;
}
- *(b->pbuffer ++) = mini_pchar_decode(s[i]);
+ if (s[i] == CHAR_NEWLINE)
+ {
+ *(b->pbuffer ++) = '\\';
+ *(b->pbuffer ++) = 'n';
+ }
+ else if (s[i] == CHAR_PROMPT_SCROLL)
+ {
+ *(b->pbuffer ++) = '\\';
+ *(b->pbuffer ++) = 'l';
+ }
+ else if (s[i] == CHAR_PROMPT_CLEAR)
+ {
+ *(b->pbuffer ++) = '\\';
+ *(b->pbuffer ++) = 'p';
+ }
+ else if (s[i] == CHAR_ELLIPSIS)
+ {
+ *(b->pbuffer ++) = '.';
+ *(b->pbuffer ++) = '.';
+ *(b->pbuffer ++) = '.';
+ }
+ else
+ {
+ *(b->pbuffer ++) = mini_pchar_decode(s[i]);
+ }
}
*(b->pbuffer) = 0;
return b->pbuffer - p0;
@@ -137,9 +167,9 @@ static s32 _putsEncoded(char *s, s32 len, void *buf)
static s32 mini_strlen(const char *s)
{
- s32 len = 0;
- while (s[len] != '\0') len++;
- return len;
+ s32 len = 0;
+ while (s[len] != '\0') len++;
+ return len;
}
static s32 mini_itoa(s32 value, u32 radix, s32 uppercase, bool32 unsig, char *buffer)
@@ -184,14 +214,15 @@ static s32 mini_itoa(s32 value, u32 radix, s32 uppercase, bool32 unsig, char *bu
return len;
}
-static s32 mini_pad(char* ptr, s32 len, char pad_char, s32 pad_to, char *buffer)
+static s32 mini_pad(char *ptr, s32 len, char pad_char, s32 pad_to, char *buffer)
{
s32 i;
bool32 overflow = FALSE;
- char * pbuffer = buffer;
+ char *pbuffer = buffer;
if(pad_to == 0)
pad_to = len;
- if (len > pad_to) {
+ if (len > pad_to)
+ {
len = pad_to;
overflow = TRUE;
}
@@ -229,7 +260,7 @@ s32 mini_vsnprintf(char *buffer, u32 buffer_len, const char *fmt, va_list va)
return b.pbuffer - b.buffer;
}
-s32 mini_vpprintf(void* buf, const char *fmt, va_list va)
+s32 mini_vpprintf(void *buf, const char *fmt, va_list va)
{
char bf[24];
char bf2[24];
@@ -243,7 +274,8 @@ s32 mini_vpprintf(void* buf, const char *fmt, va_list va)
{
len = 1;
len = _putsAscii(&ch, len, buf);
- } else
+ }
+ else
{
char pad_char = ' ';
s32 pad_to = 0;
@@ -279,7 +311,8 @@ s32 mini_vpprintf(void* buf, const char *fmt, va_list va)
if(l)
{
len = mini_itoa(va_arg(va, u32), 10, 0, (ch=='u'), bf2);
- } else
+ }
+ else
{
if(ch == 'u')
{
@@ -321,7 +354,8 @@ s32 mini_vpprintf(void* buf, const char *fmt, va_list va)
{
len = mini_pad(ptr, len, pad_char, pad_to, bf);
len = _putsAscii(bf, len, buf);
- } else
+ }
+ else
{
len = _putsAscii(ptr, len, buf);
}
@@ -333,7 +367,8 @@ s32 mini_vpprintf(void* buf, const char *fmt, va_list va)
{
len = mini_pad(ptr, len, pad_char, pad_to, bf);
len = _putsEncoded(bf, len, buf);
- } else
+ }
+ else
{
len = _putsEncoded(ptr, len, buf);
}
diff --git a/src/mirage_tower.c b/src/mirage_tower.c
index b1e2e5003b..84f44be626 100644
--- a/src/mirage_tower.c
+++ b/src/mirage_tower.c
@@ -56,12 +56,9 @@ struct FallAnim_Fossil
#define TAG_CEILING_CRUMBLE 4000
-#define MIRAGE_TOWER_GFX_LENGTH (sizeof(sBlankTile_Gfx) + sizeof(sMirageTower_Gfx))
+#define MIRAGE_TOWER_GFX_LENGTH (sizeof(sMirageTower_Gfx))
#define FOSSIL_DISINTEGRATE_LENGTH 0x100
-static const struct SpriteSheet sCeilingCrumbleSpriteSheets[];
-static const s16 sCeilingCrumblePositions[][3];
-
static void PlayerDescendMirageTower(u8);
static void DoScreenShake(u8);
static void IncrementCeilingCrumbleFinishedCount(void);
@@ -75,8 +72,7 @@ static void Task_FossilFallAndSink(u8);
static void SpriteCB_FallingFossil(struct Sprite *);
static void UpdateDisintegrationEffect(u8 *, u16, u8, u8, u8);
-static const u8 ALIGNED(2) sBlankTile_Gfx[32] = {0};
-static const u8 sMirageTower_Gfx[] = INCBIN_U8("graphics/misc/mirage_tower.4bpp");
+static const ALIGNED(2) u8 sMirageTower_Gfx[] = INCBIN_U8("graphics/misc/mirage_tower.4bpp");
static const u16 sMirageTowerTilemap[] = INCBIN_U16("graphics/misc/mirage_tower.bin");
static const u16 sFossil_Pal[] = INCBIN_U16("graphics/object_events/pics/misc/fossil.gbapal"); // Unused
static const u8 sFossil_Gfx[] = INCBIN_U8("graphics/object_events/pics/misc/fossil.4bpp"); // Duplicate of gObjectEventPic_Fossil
@@ -265,7 +261,7 @@ static u16 sDebug_DisintegrationData[8];
bool8 IsMirageTowerVisible(void)
{
- if (!(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE111) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE111)))
+ if (!(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ROUTE111) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ROUTE111)))
return FALSE;
return FlagGet(FLAG_MIRAGE_TOWER_VISIBLE);
}
@@ -288,8 +284,8 @@ void TryStartMirageTowerPulseBlendEffect(void)
return;
}
- if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(ROUTE111)
- || gSaveBlock1Ptr->location.mapNum != MAP_NUM(ROUTE111)
+ if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(MAP_ROUTE111)
+ || gSaveBlock1Ptr->location.mapNum != MAP_NUM(MAP_ROUTE111)
|| !FlagGet(FLAG_MIRAGE_TOWER_VISIBLE))
return;
@@ -302,8 +298,8 @@ void TryStartMirageTowerPulseBlendEffect(void)
void ClearMirageTowerPulseBlendEffect(void)
{
- if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(ROUTE111)
- || gSaveBlock1Ptr->location.mapNum != MAP_NUM(ROUTE111)
+ if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(MAP_ROUTE111)
+ || gSaveBlock1Ptr->location.mapNum != MAP_NUM(MAP_ROUTE111)
|| !FlagGet(FLAG_MIRAGE_TOWER_VISIBLE)
|| sMirageTowerPulseBlend == NULL)
return;
@@ -445,38 +441,47 @@ static void FinishCeilingCrumbleTask(u8 taskId)
ScriptContext_Enable();
}
+#define sIndex data[0]
+#define sYOffset data[1]
+
static void CreateCeilingCrumbleSprites(void)
{
u8 i;
u8 spriteId;
- for (i = 0; i < 8; i++)
+ for (i = 0; i < ARRAY_COUNT(sCeilingCrumblePositions); i++)
{
spriteId = CreateSprite(&sSpriteTemplate_CeilingCrumbleLarge, sCeilingCrumblePositions[i][0] + 120, sCeilingCrumblePositions[i][1], 8);
gSprites[spriteId].oam.priority = 0;
- gSprites[spriteId].oam.paletteNum = 0;
- gSprites[spriteId].data[0] = i;
+ // These sprites use color index 11 from the player's sprite palette. This probably wasn't intentional.
+ // The palettes for Brendan and May have different shades of green at this index, so the color of these sprites changes
+ // depending on the player's gender (and neither shade of green particularly fits a crumbling yellow/brown ceiling).
+ gSprites[spriteId].oam.paletteNum = PALSLOT_PLAYER;
+ gSprites[spriteId].sIndex = i;
}
- for (i = 0; i < 8; i++)
+ for (i = 0; i < ARRAY_COUNT(sCeilingCrumblePositions); i++)
{
spriteId = CreateSprite(&sSpriteTemplate_CeilingCrumbleSmall, sCeilingCrumblePositions[i][0] + 115, sCeilingCrumblePositions[i][1] - 3, 8);
gSprites[spriteId].oam.priority = 0;
- gSprites[spriteId].oam.paletteNum = 0;
- gSprites[spriteId].data[0] = i;
+ gSprites[spriteId].oam.paletteNum = PALSLOT_PLAYER;
+ gSprites[spriteId].sIndex = i;
}
}
static void SpriteCB_CeilingCrumble(struct Sprite *sprite)
{
- sprite->data[1] += 2;
- sprite->y2 = sprite->data[1] / 2;
- if(((sprite->y) + (sprite->y2)) > sCeilingCrumblePositions[sprite->data[0]][2])
+ sprite->sYOffset += 2;
+ sprite->y2 = sprite->sYOffset / 2;
+ if ((sprite->y + sprite->y2) > sCeilingCrumblePositions[sprite->sIndex][2])
{
DestroySprite(sprite);
IncrementCeilingCrumbleFinishedCount();
}
}
+#undef sIndex
+#undef sYOffset
+
static void SetInvisibleMirageTowerMetatiles(void)
{
u8 i;
@@ -543,7 +548,7 @@ static void InitMirageTowerShake(u8 taskId)
gTasks[taskId].tState++;
break;
case 2:
- CpuSet(sBlankTile_Gfx, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH / 2);
+ CpuSet(sMirageTower_Gfx, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH / 2);
LoadBgTiles(0, sMirageTowerGfxBuffer, MIRAGE_TOWER_GFX_LENGTH, 0);
gTasks[taskId].tState++;
break;
diff --git a/src/mon_markings.c b/src/mon_markings.c
index d7a61c27e7..1de8e413fd 100644
--- a/src/mon_markings.c
+++ b/src/mon_markings.c
@@ -23,7 +23,7 @@ static void SpriteCB_Cursor(struct Sprite *);
static struct Sprite *CreateMarkingComboSprite(u16, u16, const u16 *, u16);
static const u16 sMonMarkings_Pal[] = INCBIN_U16("graphics/interface/mon_markings.gbapal");
-static const u8 sMonMarkings_Gfx[] = INCBIN_U8("graphics/interface/mon_markings.4bpp");
+static const ALIGNED(4) u8 sMonMarkings_Gfx[] = INCBIN_U8("graphics/interface/mon_markings.4bpp"); // Alignment needed for dma copy
static const struct OamData sOamData_MenuWindow =
{
diff --git a/src/move_relearner.c b/src/move_relearner.c
index af4593e533..31ed7a5d4a 100644
--- a/src/move_relearner.c
+++ b/src/move_relearner.c
@@ -179,7 +179,7 @@ static EWRAM_DATA struct {
u16 listOffset;
u16 listRow;
bool8 showContestInfo;
-} sMoveRelearnerMenuSate = {0};
+} sMoveRelearnerMenuState = {0};
static const u16 sUI_Pal[] = INCBIN_U16("graphics/interface/ui_learn_move.gbapal");
@@ -369,7 +369,7 @@ static void VBlankCB_MoveRelearner(void)
TransferPlttBuffer();
}
-// Script arguments: The pokemon to teach is in VAR_0x8004
+// Script arguments: The Pokémon to teach is in VAR_0x8004
void TeachMoveRelearnerMove(void)
{
LockPlayerFieldControls();
@@ -401,9 +401,9 @@ static void CB2_InitLearnMove(void)
InitMoveRelearnerBackgroundLayers();
InitMoveRelearnerWindows(FALSE);
- sMoveRelearnerMenuSate.listOffset = 0;
- sMoveRelearnerMenuSate.listRow = 0;
- sMoveRelearnerMenuSate.showContestInfo = FALSE;
+ sMoveRelearnerMenuState.listOffset = 0;
+ sMoveRelearnerMenuState.listRow = 0;
+ sMoveRelearnerMenuState.showContestInfo = FALSE;
CreateLearnableMovesList();
@@ -411,7 +411,7 @@ static void CB2_InitLearnMove(void)
LoadSpritePalette(&sMoveRelearnerPalette);
CreateUISprites();
- sMoveRelearnerStruct->moveListMenuTask = ListMenuInit(&gMultiuseListMenuTemplate, sMoveRelearnerMenuSate.listOffset, sMoveRelearnerMenuSate.listRow);
+ sMoveRelearnerStruct->moveListMenuTask = ListMenuInit(&gMultiuseListMenuTemplate, sMoveRelearnerMenuState.listOffset, sMoveRelearnerMenuState.listRow);
SetBackdropFromColor(RGB_BLACK);
SetMainCallback2(CB2_MoveRelearnerMain);
}
@@ -429,14 +429,14 @@ static void CB2_InitLearnMoveReturnFromSelectMove(void)
SetVBlankCallback(VBlankCB_MoveRelearner);
InitMoveRelearnerBackgroundLayers();
- InitMoveRelearnerWindows(sMoveRelearnerMenuSate.showContestInfo);
+ InitMoveRelearnerWindows(sMoveRelearnerMenuState.showContestInfo);
CreateLearnableMovesList();
LoadSpriteSheet(&sMoveRelearnerSpriteSheet);
LoadSpritePalette(&sMoveRelearnerPalette);
CreateUISprites();
- sMoveRelearnerStruct->moveListMenuTask = ListMenuInit(&gMultiuseListMenuTemplate, sMoveRelearnerMenuSate.listOffset, sMoveRelearnerMenuSate.listRow);
+ sMoveRelearnerStruct->moveListMenuTask = ListMenuInit(&gMultiuseListMenuTemplate, sMoveRelearnerMenuState.listOffset, sMoveRelearnerMenuState.listRow);
SetBackdropFromColor(RGB_BLACK);
SetMainCallback2(CB2_MoveRelearnerMain);
}
@@ -533,11 +533,11 @@ static void DoMoveRelearnerMain(void)
}
else if (selection == MENU_B_PRESSED || selection == 1)
{
- if (sMoveRelearnerMenuSate.showContestInfo == FALSE)
+ if (sMoveRelearnerMenuState.showContestInfo == FALSE)
{
sMoveRelearnerStruct->state = MENU_STATE_SETUP_BATTLE_MODE;
}
- else if (sMoveRelearnerMenuSate.showContestInfo == TRUE)
+ else if (sMoveRelearnerMenuState.showContestInfo == TRUE)
{
sMoveRelearnerStruct->state = MENU_STATE_SETUP_CONTEST_MODE;
}
@@ -562,11 +562,11 @@ static void DoMoveRelearnerMain(void)
}
else if (selection == MENU_B_PRESSED || selection == 1)
{
- if (sMoveRelearnerMenuSate.showContestInfo == FALSE)
+ if (sMoveRelearnerMenuState.showContestInfo == FALSE)
{
sMoveRelearnerStruct->state = MENU_STATE_SETUP_BATTLE_MODE;
}
- else if (sMoveRelearnerMenuSate.showContestInfo == TRUE)
+ else if (sMoveRelearnerMenuState.showContestInfo == TRUE)
{
sMoveRelearnerStruct->state = MENU_STATE_SETUP_CONTEST_MODE;
}
@@ -622,11 +622,11 @@ static void DoMoveRelearnerMain(void)
else if (selection == MENU_B_PRESSED || selection == 1)
{
// What's the point? It gets set to MENU_STATE_PRINT_TRYING_TO_LEARN_PROMPT, anyway.
- if (sMoveRelearnerMenuSate.showContestInfo == FALSE)
+ if (sMoveRelearnerMenuState.showContestInfo == FALSE)
{
sMoveRelearnerStruct->state = MENU_STATE_SETUP_BATTLE_MODE;
}
- else if (sMoveRelearnerMenuSate.showContestInfo == TRUE)
+ else if (sMoveRelearnerMenuState.showContestInfo == TRUE)
{
sMoveRelearnerStruct->state = MENU_STATE_SETUP_CONTEST_MODE;
}
@@ -638,11 +638,11 @@ static void DoMoveRelearnerMain(void)
if (!MoveRelearnerRunTextPrinters())
{
FillWindowPixelBuffer(RELEARNERWIN_MSG, 0x11);
- if (sMoveRelearnerMenuSate.showContestInfo == FALSE)
+ if (sMoveRelearnerMenuState.showContestInfo == FALSE)
{
sMoveRelearnerStruct->state = MENU_STATE_SETUP_BATTLE_MODE;
}
- else if (sMoveRelearnerMenuSate.showContestInfo == TRUE)
+ else if (sMoveRelearnerMenuState.showContestInfo == TRUE)
{
sMoveRelearnerStruct->state = MENU_STATE_SETUP_CONTEST_MODE;
}
@@ -685,11 +685,11 @@ static void DoMoveRelearnerMain(void)
case MENU_STATE_FADE_FROM_SUMMARY_SCREEN:
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
sMoveRelearnerStruct->state++;
- if (sMoveRelearnerMenuSate.showContestInfo == FALSE)
+ if (sMoveRelearnerMenuState.showContestInfo == FALSE)
{
HideHeartSpritesAndShowTeachMoveText(TRUE);
}
- else if (sMoveRelearnerMenuSate.showContestInfo == TRUE)
+ else if (sMoveRelearnerMenuState.showContestInfo == TRUE)
{
ShowTeachMoveText(TRUE);
}
@@ -705,9 +705,9 @@ static void DoMoveRelearnerMain(void)
}
else
{
- u16 moveId = GetMonData(&gPlayerParty[sMoveRelearnerStruct->partyMon], MON_DATA_MOVE1 + sMoveRelearnerStruct->moveSlot);
+ u16 move = GetMonData(&gPlayerParty[sMoveRelearnerStruct->partyMon], MON_DATA_MOVE1 + sMoveRelearnerStruct->moveSlot);
- StringCopy(gStringVar3, gMoveNames[moveId]);
+ StringCopy(gStringVar3, gMoveNames[move]);
RemoveMonPPBonus(&gPlayerParty[sMoveRelearnerStruct->partyMon], sMoveRelearnerStruct->moveSlot);
SetMonMoveSlot(&gPlayerParty[sMoveRelearnerStruct->partyMon], GetCurrentSelectedMove(), sMoveRelearnerStruct->moveSlot);
StringCopy(gStringVar2, gMoveNames[GetCurrentSelectedMove()]);
@@ -751,7 +751,7 @@ static void DoMoveRelearnerMain(void)
static void FreeMoveRelearnerResources(void)
{
RemoveScrollArrows();
- DestroyListMenuTask(sMoveRelearnerStruct->moveListMenuTask, &sMoveRelearnerMenuSate.listOffset, &sMoveRelearnerMenuSate.listRow);
+ DestroyListMenuTask(sMoveRelearnerStruct->moveListMenuTask, &sMoveRelearnerMenuState.listOffset, &sMoveRelearnerMenuState.listRow);
FreeAllWindowBuffers();
FREE_AND_SET_NULL(sMoveRelearnerStruct);
ResetSpriteData();
@@ -778,7 +778,7 @@ static void HideHeartSpritesAndShowTeachMoveText(bool8 onlyHideSprites)
static void HandleInput(bool8 showContest)
{
s32 itemId = ListMenu_ProcessInput(sMoveRelearnerStruct->moveListMenuTask);
- ListMenuGetScrollAndRow(sMoveRelearnerStruct->moveListMenuTask, &sMoveRelearnerMenuSate.listOffset, &sMoveRelearnerMenuSate.listRow);
+ ListMenuGetScrollAndRow(sMoveRelearnerStruct->moveListMenuTask, &sMoveRelearnerMenuState.listOffset, &sMoveRelearnerMenuState.listRow);
switch (itemId)
{
@@ -792,13 +792,13 @@ static void HandleInput(bool8 showContest)
{
PutWindowTilemap(RELEARNERWIN_DESC_CONTEST);
sMoveRelearnerStruct->state = MENU_STATE_SETUP_CONTEST_MODE;
- sMoveRelearnerMenuSate.showContestInfo = TRUE;
+ sMoveRelearnerMenuState.showContestInfo = TRUE;
}
else
{
PutWindowTilemap(RELEARNERWIN_DESC_BATTLE);
sMoveRelearnerStruct->state = MENU_STATE_SETUP_BATTLE_MODE;
- sMoveRelearnerMenuSate.showContestInfo = FALSE;
+ sMoveRelearnerMenuState.showContestInfo = FALSE;
}
ScheduleBgCopyTilemapToVram(1);
@@ -824,7 +824,7 @@ static void HandleInput(bool8 showContest)
static s32 GetCurrentSelectedMove(void)
{
- return sMoveRelearnerStruct->menuItems[sMoveRelearnerMenuSate.listRow + sMoveRelearnerMenuSate.listOffset].id;
+ return sMoveRelearnerStruct->menuItems[sMoveRelearnerMenuState.listRow + sMoveRelearnerMenuState.listOffset].id;
}
// Theory: This used to make the heart sprites visible again (i.e.
@@ -876,7 +876,7 @@ static void AddScrollArrows(void)
{
gTempScrollArrowTemplate = sMoveListScrollArrowsTemplate;
gTempScrollArrowTemplate.fullyDownThreshold = sMoveRelearnerStruct->numMenuChoices - sMoveRelearnerStruct->numToShowAtOnce;
- sMoveRelearnerStruct->moveListScrollArrowTask = AddScrollIndicatorArrowPair(&gTempScrollArrowTemplate, &sMoveRelearnerMenuSate.listOffset);
+ sMoveRelearnerStruct->moveListScrollArrowTask = AddScrollIndicatorArrowPair(&gTempScrollArrowTemplate, &sMoveRelearnerMenuState.listOffset);
}
}
@@ -916,19 +916,19 @@ static void CreateLearnableMovesList(void)
sMoveRelearnerStruct->numToShowAtOnce = LoadMoveRelearnerMovesList(sMoveRelearnerStruct->menuItems, sMoveRelearnerStruct->numMenuChoices);
}
-void MoveRelearnerShowHideHearts(s32 moveId)
+void MoveRelearnerShowHideHearts(s32 move)
{
u16 numHearts;
u16 i;
- if (!sMoveRelearnerMenuSate.showContestInfo || moveId == LIST_CANCEL)
+ if (!sMoveRelearnerMenuState.showContestInfo || move == LIST_CANCEL)
{
for (i = 0; i < 16; i++)
gSprites[sMoveRelearnerStruct->heartSpriteIds[i]].invisible = TRUE;
}
else
{
- numHearts = (u8)(gContestEffects[gContestMoves[moveId].effect].appeal / 10);
+ numHearts = (u8)(gContestEffects[gContestMoves[move].effect].appeal / 10);
if (numHearts == 0xFF)
numHearts = 0;
@@ -942,7 +942,7 @@ void MoveRelearnerShowHideHearts(s32 moveId)
gSprites[sMoveRelearnerStruct->heartSpriteIds[i]].invisible = FALSE;
}
- numHearts = (u8)(gContestEffects[gContestMoves[moveId].effect].jam / 10);
+ numHearts = (u8)(gContestEffects[gContestMoves[move].effect].jam / 10);
if (numHearts == 0xFF)
numHearts = 0;
diff --git a/src/mystery_gift_client.c b/src/mystery_gift_client.c
index 567751bad3..78937d6c9b 100644
--- a/src/mystery_gift_client.c
+++ b/src/mystery_gift_client.c
@@ -19,7 +19,7 @@ enum {
FUNC_RUN_BUFFER,
};
-EWRAM_DATA static struct MysteryGiftClient * sClient = NULL;
+EWRAM_DATA static struct MysteryGiftClient *sClient = NULL;
static void MysteryGiftClient_Init(struct MysteryGiftClient *, u32, u32);
static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient *);
@@ -34,7 +34,7 @@ void MysteryGiftClient_Create(bool32 isWonderNews)
sClient->isWonderNews = isWonderNews;
}
-u32 MysteryGiftClient_Run(u16 * endVal)
+u32 MysteryGiftClient_Run(u16 *endVal)
{
u32 result;
if (sClient == NULL)
@@ -64,7 +64,7 @@ void MysteryGiftClient_SetParam(u32 val)
sClient->param = val;
}
-static void MysteryGiftClient_Init(struct MysteryGiftClient * client, u32 sendPlayerId, u32 recvPlayerId)
+static void MysteryGiftClient_Init(struct MysteryGiftClient *client, u32 sendPlayerId, u32 recvPlayerId)
{
client->unused = 0;
client->funcId = FUNC_INIT;
@@ -76,7 +76,7 @@ static void MysteryGiftClient_Init(struct MysteryGiftClient * client, u32 sendPl
MysteryGiftLink_Init(&client->link, sendPlayerId, recvPlayerId);
}
-static void MysteryGiftClient_Free(struct MysteryGiftClient * client)
+static void MysteryGiftClient_Free(struct MysteryGiftClient *client)
{
Free(client->sendBuffer);
Free(client->recvBuffer);
@@ -84,20 +84,20 @@ static void MysteryGiftClient_Free(struct MysteryGiftClient * client)
Free(client->msg);
}
-static void MysteryGiftClient_CopyRecvScript(struct MysteryGiftClient * client)
+static void MysteryGiftClient_CopyRecvScript(struct MysteryGiftClient *client)
{
memcpy(client->script, client->recvBuffer, MG_LINK_BUFFER_SIZE);
client->cmdidx = 0;
}
-static void MysteryGiftClient_InitSendWord(struct MysteryGiftClient * client, u32 ident, u32 word)
+static void MysteryGiftClient_InitSendWord(struct MysteryGiftClient *client, u32 ident, u32 word)
{
CpuFill32(0, client->sendBuffer, MG_LINK_BUFFER_SIZE);
*(u32 *)client->sendBuffer = word;
MysteryGiftLink_InitSend(&client->link, ident, client->sendBuffer, sizeof(word));
}
-static u32 Client_Init(struct MysteryGiftClient * client)
+static u32 Client_Init(struct MysteryGiftClient *client)
{
memcpy(client->script, gMysteryGiftClientScript_Init, MG_LINK_BUFFER_SIZE);
client->cmdidx = 0;
@@ -106,13 +106,13 @@ static u32 Client_Init(struct MysteryGiftClient * client)
return CLI_RET_INIT;
}
-static u32 Client_Done(struct MysteryGiftClient * client)
+static u32 Client_Done(struct MysteryGiftClient *client)
{
return CLI_RET_END;
}
-static u32 Client_Recv(struct MysteryGiftClient * client)
+static u32 Client_Recv(struct MysteryGiftClient *client)
{
if (MysteryGiftLink_Recv(&client->link))
{
@@ -122,7 +122,7 @@ static u32 Client_Recv(struct MysteryGiftClient * client)
return CLI_RET_ACTIVE;
}
-static u32 Client_Send(struct MysteryGiftClient * client)
+static u32 Client_Send(struct MysteryGiftClient *client)
{
if (MysteryGiftLink_Send(&client->link))
{
@@ -132,10 +132,10 @@ static u32 Client_Send(struct MysteryGiftClient * client)
return CLI_RET_ACTIVE;
}
-static u32 Client_Run(struct MysteryGiftClient * client)
+static u32 Client_Run(struct MysteryGiftClient *client)
{
// process command
- struct MysteryGiftClientCmd * cmd = &client->script[client->cmdidx];
+ struct MysteryGiftClientCmd *cmd = &client->script[client->cmdidx];
client->cmdidx++;
switch (cmd->instr)
{
@@ -245,7 +245,7 @@ static u32 Client_Run(struct MysteryGiftClient * client)
return CLI_RET_ACTIVE;
}
-static u32 Client_Wait(struct MysteryGiftClient * client)
+static u32 Client_Wait(struct MysteryGiftClient *client)
{
if (client->funcState)
{
@@ -255,7 +255,7 @@ static u32 Client_Wait(struct MysteryGiftClient * client)
return CLI_RET_ACTIVE;
}
-static u32 Client_RunMysteryEventScript(struct MysteryGiftClient * client)
+static u32 Client_RunMysteryEventScript(struct MysteryGiftClient *client)
{
switch (client->funcState)
{
@@ -274,7 +274,7 @@ static u32 Client_RunMysteryEventScript(struct MysteryGiftClient * client)
return CLI_RET_ACTIVE;
}
-static u32 Client_RunBufferScript(struct MysteryGiftClient * client)
+static u32 Client_RunBufferScript(struct MysteryGiftClient *client)
{
// exec arbitrary code
u32 (*func)(u32 *, struct SaveBlock2 *, struct SaveBlock1 *) = (void *)gDecompressionBuffer;
@@ -286,7 +286,7 @@ static u32 Client_RunBufferScript(struct MysteryGiftClient * client)
return CLI_RET_ACTIVE;
}
-static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient * client)
+static u32 MysteryGiftClient_CallFunc(struct MysteryGiftClient *client)
{
u32 (*funcs[])(struct MysteryGiftClient *) = {
[FUNC_INIT] = Client_Init,
diff --git a/src/mystery_gift_link.c b/src/mystery_gift_link.c
index 55f4b78527..2e0031722d 100644
--- a/src/mystery_gift_link.c
+++ b/src/mystery_gift_link.c
@@ -26,17 +26,17 @@ struct SendRecvHeader
static u32 MGL_Receive(struct MysteryGiftLink *);
static u32 MGL_Send(struct MysteryGiftLink *);
-u32 MysteryGiftLink_Recv(struct MysteryGiftLink * link)
+u32 MysteryGiftLink_Recv(struct MysteryGiftLink *link)
{
return link->recvFunc(link);
}
-u32 MysteryGiftLink_Send(struct MysteryGiftLink * link)
+u32 MysteryGiftLink_Send(struct MysteryGiftLink *link)
{
return link->sendFunc(link);
}
-void MysteryGiftLink_Init(struct MysteryGiftLink * link, u32 sendPlayerId, u32 recvPlayerId)
+void MysteryGiftLink_Init(struct MysteryGiftLink *link, u32 sendPlayerId, u32 recvPlayerId)
{
link->sendPlayerId = sendPlayerId;
link->recvPlayerId = recvPlayerId;
@@ -53,7 +53,7 @@ void MysteryGiftLink_Init(struct MysteryGiftLink * link, u32 sendPlayerId, u32 r
link->recvFunc = MGL_Receive;
}
-void MysteryGiftLink_InitSend(struct MysteryGiftLink * link, u32 ident, const void * src, u32 size)
+void MysteryGiftLink_InitSend(struct MysteryGiftLink *link, u32 ident, const void *src, u32 size)
{
link->state = 0;
link->sendIdent = ident;
@@ -66,7 +66,7 @@ void MysteryGiftLink_InitSend(struct MysteryGiftLink * link, u32 ident, const vo
link->sendBuffer = src;
}
-void MysteryGiftLink_InitRecv(struct MysteryGiftLink * link, u32 ident, void * dest)
+void MysteryGiftLink_InitRecv(struct MysteryGiftLink *link, u32 ident, void *dest)
{
link->state = 0;
link->recvIdent = ident;
@@ -76,7 +76,7 @@ void MysteryGiftLink_InitRecv(struct MysteryGiftLink * link, u32 ident, void * d
link->recvBuffer = dest;
}
-static void MGL_ReceiveBlock(u32 playerId, void * dest, size_t size)
+static void MGL_ReceiveBlock(u32 playerId, void *dest, size_t size)
{
memcpy(dest, gBlockRecvBuffer[playerId], size);
}
@@ -94,7 +94,7 @@ static void MGL_ResetReceived(u32 playerId)
ResetBlockReceivedFlag(playerId);
}
-static bool32 MGL_Receive(struct MysteryGiftLink * link)
+static bool32 MGL_Receive(struct MysteryGiftLink *link)
{
struct SendRecvHeader header;
@@ -159,7 +159,7 @@ static bool32 MGL_Receive(struct MysteryGiftLink * link)
return FALSE;
}
-static bool32 MGL_Send(struct MysteryGiftLink * link)
+static bool32 MGL_Send(struct MysteryGiftLink *link)
{
struct SendRecvHeader header;
diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c
index 78e4a45715..7bf6152c61 100644
--- a/src/mystery_gift_menu.c
+++ b/src/mystery_gift_menu.c
@@ -64,7 +64,7 @@ struct MysteryGiftTaskData
bool8 isWonderNews;
bool8 sourceIsFriend;
u8 msgId;
- u8 * clientMsg;
+ u8 *clientMsg;
};
static const struct BgTemplate sBGTemplates[] = {
@@ -485,8 +485,8 @@ void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void)
// Print the text window at the top of the screen with the title and control instructions
void PrintMysteryGiftOrEReaderHeader(bool8 isEReader, bool32 useCancel)
{
- const u8 * title;
- const u8 * options;
+ const u8 *title;
+ const u8 *options;
FillWindowPixelBuffer(WIN_HEADER, 0);
if (!isEReader)
{
@@ -597,7 +597,7 @@ static void ShowDownArrow(void)
DrawDownArrow(WIN_MSG, DOWN_ARROW_X, DOWN_ARROW_Y, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]);
}
-static bool32 UNUSED HideDownArrowAndWaitButton(u8 * textState)
+static bool32 UNUSED HideDownArrowAndWaitButton(u8 *textState)
{
switch (*textState)
{
@@ -614,7 +614,7 @@ static bool32 UNUSED HideDownArrowAndWaitButton(u8 * textState)
return FALSE;
}
-static bool32 PrintStringAndWait2Seconds(u8 * counter, const u8 * str)
+static bool32 PrintStringAndWait2Seconds(u8 *counter, const u8 *str)
{
if (*counter == 0)
MG_AddMessageTextPrinter(str);
@@ -631,7 +631,7 @@ static bool32 PrintStringAndWait2Seconds(u8 * counter, const u8 * str)
}
}
-static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whichMenu)
+static u32 MysteryGift_HandleThreeOptionMenu(u8 *unused0, u16 *unused1, u8 whichMenu)
{
struct ListMenuTemplate listMenuTemplate = sListMenuTemplate_ThreeOptions;
struct WindowTemplate windowTemplate = sWindowTemplate_ThreeOptions;
@@ -662,7 +662,7 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi
return response;
}
-s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, const u8 * str)
+s8 DoMysteryGiftYesNo(u8 *textState, u16 *windowId, bool8 yesNoBoxPlacement, const u8 *str)
{
struct WindowTemplate windowTemplate;
s8 input;
@@ -719,7 +719,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c
}
// Handle the "Receive/Send/Toss" menu that appears when selecting Wonder Card/News
-static s32 HandleGiftSelectMenu(u8 * textState, u16 * windowId, bool32 cannotToss, bool32 cannotSend)
+static s32 HandleGiftSelectMenu(u8 *textState, u16 *windowId, bool32 cannotToss, bool32 cannotSend)
{
struct WindowTemplate UNUSED windowTemplate;
s32 input;
@@ -786,7 +786,7 @@ static bool32 ValidateCardOrNews(bool32 isWonderNews)
return ValidateSavedWonderNews();
}
-static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 isWonderNews)
+static bool32 HandleLoadWonderCardOrNews(u8 *state, bool32 isWonderNews)
{
switch (*state)
{
@@ -852,7 +852,7 @@ static bool32 ExitWonderCardOrNews(bool32 isWonderNews, bool32 useCancel)
}
}
-static s32 AskDiscardGift(u8 * textState, u16 * windowId, bool32 isWonderNews)
+static s32 AskDiscardGift(u8 *textState, u16 *windowId, bool32 isWonderNews)
{
if (!isWonderNews)
return DoMysteryGiftYesNo(textState, windowId, TRUE, gText_IfThrowAwayCardEventWontHappen);
@@ -860,7 +860,7 @@ static s32 AskDiscardGift(u8 * textState, u16 * windowId, bool32 isWonderNews)
return DoMysteryGiftYesNo(textState, windowId, TRUE, gText_OkayToDiscardNews);
}
-static bool32 PrintThrownAway(u8 * textState, bool32 isWonderNews)
+static bool32 PrintThrownAway(u8 *textState, bool32 isWonderNews)
{
if (!isWonderNews)
return PrintMysteryGiftMenuMessage(textState, gText_WonderCardThrownAway);
@@ -868,7 +868,7 @@ static bool32 PrintThrownAway(u8 * textState, bool32 isWonderNews)
return PrintMysteryGiftMenuMessage(textState, gText_WonderNewsThrownAway);
}
-static bool32 SaveOnMysteryGiftMenu(u8 * state)
+static bool32 SaveOnMysteryGiftMenu(u8 *state)
{
switch (*state)
{
@@ -897,9 +897,9 @@ static bool32 SaveOnMysteryGiftMenu(u8 * state)
return FALSE;
}
-static const u8 * GetClientResultMessage(bool32 * successMsg, bool8 isWonderNews, bool8 sourceIsFriend, u32 msgId)
+static const u8 * GetClientResultMessage(bool32 *successMsg, bool8 isWonderNews, bool8 sourceIsFriend, u32 msgId)
{
- const u8 * msg = NULL;
+ const u8 *msg = NULL;
*successMsg = FALSE;
switch (msgId)
@@ -969,7 +969,7 @@ static const u8 * GetClientResultMessage(bool32 * successMsg, bool8 isWonderNews
return msg;
}
-static bool32 PrintSuccessMessage(u8 * state, const u8 * msg, u16 * timer)
+static bool32 PrintSuccessMessage(u8 *state, const u8 *msg, u16 *timer)
{
switch (*state)
{
@@ -996,9 +996,9 @@ static bool32 PrintSuccessMessage(u8 * state, const u8 * msg, u16 * timer)
return FALSE;
}
-static const u8 * GetServerResultMessage(bool32 * wonderSuccess, bool8 sourceIsFriend, u32 msgId)
+static const u8 * GetServerResultMessage(bool32 *wonderSuccess, bool8 sourceIsFriend, u32 msgId)
{
- const u8 * result = gText_CommunicationError;
+ const u8 *result = gText_CommunicationError;
*wonderSuccess = FALSE;
switch (msgId)
{
@@ -1053,10 +1053,10 @@ static const u8 * GetServerResultMessage(bool32 * wonderSuccess, bool8 sourceIsF
return result;
}
-static bool32 PrintServerResultMessage(u8 * state, u16 * timer, bool8 sourceIsFriend, u32 msgId)
+static bool32 PrintServerResultMessage(u8 *state, u16 *timer, bool8 sourceIsFriend, u32 msgId)
{
bool32 wonderSuccess;
- const u8 * str = GetServerResultMessage(&wonderSuccess, sourceIsFriend, msgId);
+ const u8 *str = GetServerResultMessage(&wonderSuccess, sourceIsFriend, msgId);
if (wonderSuccess)
return PrintSuccessMessage(state, str, timer);
else
@@ -1111,7 +1111,7 @@ enum {
static void CreateMysteryGiftTask(void)
{
u8 taskId = CreateTask(Task_MysteryGift, 0);
- struct MysteryGiftTaskData * data = (void *)gTasks[taskId].data;
+ struct MysteryGiftTaskData *data = (void *)gTasks[taskId].data;
data->state = MG_STATE_TO_MAIN_MENU;
data->textState = 0;
data->unused4 = 0;
diff --git a/src/mystery_gift_server.c b/src/mystery_gift_server.c
index 891870659d..c90e43dee0 100644
--- a/src/mystery_gift_server.c
+++ b/src/mystery_gift_server.c
@@ -13,7 +13,7 @@ enum {
FUNC_RUN,
};
-EWRAM_DATA static struct MysteryGiftServer * sServer = NULL;
+EWRAM_DATA static struct MysteryGiftServer *sServer = NULL;
static void MysteryGiftServer_Init(struct MysteryGiftServer *, const void *, u32, u32);
static void MysteryGiftServer_Free(struct MysteryGiftServer *);
@@ -34,7 +34,7 @@ void MysterGiftServer_CreateForCard(void)
MysteryGiftServer_Init(sServer, gMysteryGiftServerScript_SendWonderCard, 0, 1);
}
-u32 MysterGiftServer_Run(u16 * endVal)
+u32 MysterGiftServer_Run(u16 *endVal)
{
u32 result;
if (sServer == NULL)
@@ -49,7 +49,7 @@ u32 MysterGiftServer_Run(u16 * endVal)
return result;
}
-static void MysteryGiftServer_Init(struct MysteryGiftServer * svr, const void * script, u32 sendPlayerId, u32 recvPlayerId)
+static void MysteryGiftServer_Init(struct MysteryGiftServer *svr, const void *script, u32 sendPlayerId, u32 recvPlayerId)
{
svr->unused = 0;
svr->funcId = FUNC_INIT;
@@ -62,7 +62,7 @@ static void MysteryGiftServer_Init(struct MysteryGiftServer * svr, const void *
MysteryGiftLink_Init(&svr->link, sendPlayerId, recvPlayerId);
}
-static void MysteryGiftServer_Free(struct MysteryGiftServer * svr)
+static void MysteryGiftServer_Free(struct MysteryGiftServer *svr)
{
Free(svr->card);
Free(svr->news);
@@ -70,7 +70,7 @@ static void MysteryGiftServer_Free(struct MysteryGiftServer * svr)
Free(svr->linkGameData);
}
-static void MysteryGiftServer_InitSend(struct MysteryGiftServer * svr, u32 ident, const void * src, u32 size)
+static void MysteryGiftServer_InitSend(struct MysteryGiftServer *svr, u32 ident, const void *src, u32 size)
{
AGB_ASSERT(size <= MG_LINK_BUFFER_SIZE);
MysteryGiftLink_InitSend(&svr->link, ident, src, size);
@@ -78,7 +78,7 @@ static void MysteryGiftServer_InitSend(struct MysteryGiftServer * svr, u32 ident
// Given the command pointer parameter and the 'default' normal data.
// If the command's pointer is not empty use that as the send data, otherwise use the default.
-static const void * MysteryGiftServer_GetSendData(const void * dynamicData, const void * defaultData)
+static const void * MysteryGiftServer_GetSendData(const void *dynamicData, const void *defaultData)
{
if (dynamicData != NULL)
return dynamicData;
@@ -86,7 +86,7 @@ static const void * MysteryGiftServer_GetSendData(const void * dynamicData, cons
return defaultData;
}
-static u32 MysteryGiftServer_Compare(const void * a, const void * b)
+static u32 MysteryGiftServer_Compare(const void *a, const void *b)
{
if (b < a)
return 0;
@@ -96,36 +96,36 @@ static u32 MysteryGiftServer_Compare(const void * a, const void * b)
return 2;
}
-static u32 Server_Init(struct MysteryGiftServer * svr)
+static u32 Server_Init(struct MysteryGiftServer *svr)
{
svr->funcId = FUNC_RUN;
return SVR_RET_INIT;
}
-static u32 Server_Done(struct MysteryGiftServer * svr)
+static u32 Server_Done(struct MysteryGiftServer *svr)
{
return SVR_RET_END;
}
-static u32 Server_Recv(struct MysteryGiftServer * svr)
+static u32 Server_Recv(struct MysteryGiftServer *svr)
{
if (MysteryGiftLink_Recv(&svr->link))
svr->funcId = FUNC_RUN;
return SVR_RET_ACTIVE;
}
-static u32 Server_Send(struct MysteryGiftServer * svr)
+static u32 Server_Send(struct MysteryGiftServer *svr)
{
if (MysteryGiftLink_Send(&svr->link))
svr->funcId = FUNC_RUN;
return SVR_RET_ACTIVE;
}
-static u32 Server_Run(struct MysteryGiftServer * svr)
+static u32 Server_Run(struct MysteryGiftServer *svr)
{
// process command
- const struct MysteryGiftServerCmd * cmd = &svr->script[svr->cmdidx];
- const void * ptr;
+ const struct MysteryGiftServerCmd *cmd = &svr->script[svr->cmdidx];
+ const void *ptr;
svr->cmdidx++;
switch (cmd->instr)
@@ -280,7 +280,7 @@ static u32 (*const sFuncTable[])(struct MysteryGiftServer *) = {
[FUNC_RUN] = Server_Run
};
-static u32 MysteryGiftServer_CallFunc(struct MysteryGiftServer * svr)
+static u32 MysteryGiftServer_CallFunc(struct MysteryGiftServer *svr)
{
u32 response;
AGB_ASSERT(svr->funcId < ARRAY_COUNT(sFuncTable));
diff --git a/src/mystery_gift_view.c b/src/mystery_gift_view.c
index ac62c80bfa..357d0ae13e 100644
--- a/src/mystery_gift_view.c
+++ b/src/mystery_gift_view.c
@@ -23,9 +23,9 @@ struct WonderGraphics
u8 bodyTextPal:4;
u8 footerTextPal:4; // Card only
u8 stampShadowPal:4; // Card only
- const u32 * tiles;
- const u32 * map;
- const u16 * pal;
+ const u32 *tiles;
+ const u32 *map;
+ const u16 *pal;
};
//======================
@@ -52,7 +52,7 @@ struct WonderCardData
{
/*0000*/ struct WonderCard card;
/*014c*/ struct WonderCardMetadata cardMetadata;
- /*0170*/ const struct WonderGraphics * gfx;
+ /*0170*/ const struct WonderGraphics *gfx;
/*0174*/ u8 enterExitState;
/*0175*/ u8 statFooterWidth;
/*0176*/ u16 windowIds[CARD_WIN_COUNT];
@@ -68,7 +68,7 @@ struct WonderCardData
/*045C*/ u8 bgTilemapBuffer[0x1000];
};
-EWRAM_DATA static struct WonderCardData * sWonderCardData = NULL;
+EWRAM_DATA static struct WonderCardData *sWonderCardData = NULL;
static void BufferCardText(void);
static void DrawCardWindow(u8 whichWindow);
@@ -184,7 +184,7 @@ static const struct WonderGraphics sCardGraphics[NUM_WONDER_BGS] = {
{.titleTextPal = 1, .bodyTextPal = 0, .footerTextPal = 0, .stampShadowPal = 7, .tiles = sWonderCardBgGfx8, .map = sWonderCardBgTilemap8, .pal = sWonderCardBgPal8}
};
-bool32 WonderCard_Init(struct WonderCard * card, struct WonderCardMetadata * metadata)
+bool32 WonderCard_Init(struct WonderCard *card, struct WonderCardMetadata *metadata)
{
if (card == NULL || metadata == NULL)
return FALSE;
@@ -551,7 +551,7 @@ enum {
struct WonderNewsData
{
/*0000*/ struct WonderNews news;
- /*01bc*/ const struct WonderGraphics * gfx;
+ /*01bc*/ const struct WonderGraphics *gfx;
/*01c0*/ u8 arrowsRemoved:1;
u8 enterExitState:7;
/*01c1*/ u8 arrowTaskId;
@@ -569,7 +569,7 @@ struct WonderNewsData
/*03a4*/ u8 bgTilemapBuffer[0x1000];
};
-EWRAM_DATA static struct WonderNewsData * sWonderNewsData = NULL;
+EWRAM_DATA static struct WonderNewsData *sWonderNewsData = NULL;
static void BufferNewsText(void);
static void DrawNewsWindows(void);
@@ -640,7 +640,7 @@ static const struct WonderGraphics sNewsGraphics[NUM_WONDER_BGS] = {
{.titleTextPal = 1, .bodyTextPal = 0, .tiles = sWonderNewsGfx8, .map = sWonderNewsTilemap8, .pal = sWonderNewsPal8}
};
-bool32 WonderNews_Init(const struct WonderNews * news)
+bool32 WonderNews_Init(const struct WonderNews *news)
{
if (news == NULL)
return FALSE;
diff --git a/src/naming_screen.c b/src/naming_screen.c
index d8ae7ccd4d..f7f599f5b9 100644
--- a/src/naming_screen.c
+++ b/src/naming_screen.c
@@ -1959,7 +1959,7 @@ static void PrintKeyboardKeys(u8 window, u8 page)
PutWindowTilemap(window);
}
-static const u8 *const sNextKeyboardPageTilemaps[] =
+static const u32 *const sNextKeyboardPageTilemaps[] =
{
[KBPAGE_SYMBOLS] = gNamingScreenKeyboardUpper_Tilemap,
[KBPAGE_LETTERS_UPPER] = gNamingScreenKeyboardLower_Tilemap, // lower
diff --git a/src/new_game.c b/src/new_game.c
index ac3842e0ac..80746561b0 100644
--- a/src/new_game.c
+++ b/src/new_game.c
@@ -126,7 +126,7 @@ static void ClearFrontierRecord(void)
static void WarpToTruck(void)
{
- SetWarpDestination(MAP_GROUP(INSIDE_OF_TRUCK), MAP_NUM(INSIDE_OF_TRUCK), WARP_ID_NONE, -1, -1);
+ SetWarpDestination(MAP_GROUP(MAP_INSIDE_OF_TRUCK), MAP_NUM(MAP_INSIDE_OF_TRUCK), WARP_ID_NONE, -1, -1);
WarpIntoMap();
}
diff --git a/src/overworld.c b/src/overworld.c
index e9245ce0a0..32c5eb0678 100644
--- a/src/overworld.c
+++ b/src/overworld.c
@@ -180,14 +180,14 @@ static u16 (*sPlayerKeyInterceptCallback)(u32);
static bool8 sReceivingFromLink;
static u8 sRfuKeepAliveTimer;
-u16 *gOverworldTilemapBuffer_Bg2;
-u16 *gOverworldTilemapBuffer_Bg1;
-u16 *gOverworldTilemapBuffer_Bg3;
-u16 gHeldKeyCodeToSend;
-void (*gFieldCallback)(void);
-bool8 (*gFieldCallback2)(void);
-u8 gLocalLinkPlayerId; // This is our player id in a multiplayer mode.
-u8 gFieldLinkPlayerCount;
+COMMON_DATA u16 *gOverworldTilemapBuffer_Bg2 = NULL;
+COMMON_DATA u16 *gOverworldTilemapBuffer_Bg1 = NULL;
+COMMON_DATA u16 *gOverworldTilemapBuffer_Bg3 = NULL;
+COMMON_DATA u16 gHeldKeyCodeToSend = 0;
+COMMON_DATA void (*gFieldCallback)(void) = NULL;
+COMMON_DATA bool8 (*gFieldCallback2)(void) = NULL;
+COMMON_DATA u8 gLocalLinkPlayerId = 0; // This is our player id in a multiplayer mode.
+COMMON_DATA u8 gFieldLinkPlayerCount = 0;
EWRAM_DATA static u8 sObjectEventLoadFlag = 0;
EWRAM_DATA struct WarpData gLastUsedWarp = {0};
@@ -202,8 +202,8 @@ EWRAM_DATA struct LinkPlayerObjectEvent gLinkPlayerObjectEvents[4] = {0};
static const struct WarpData sDummyWarpData =
{
- .mapGroup = MAP_GROUP(UNDEFINED),
- .mapNum = MAP_NUM(UNDEFINED),
+ .mapGroup = MAP_GROUP(MAP_UNDEFINED),
+ .mapNum = MAP_NUM(MAP_UNDEFINED),
.warpId = WARP_ID_NONE,
.x = -1,
.y = -1,
@@ -562,9 +562,9 @@ static void SetWarpData(struct WarpData *warp, s8 mapGroup, s8 mapNum, s8 warpId
static bool32 IsDummyWarp(struct WarpData *warp)
{
- if (warp->mapGroup != (s8)MAP_GROUP(UNDEFINED))
+ if (warp->mapGroup != (s8)MAP_GROUP(MAP_UNDEFINED))
return FALSE;
- else if (warp->mapNum != (s8)MAP_NUM(UNDEFINED))
+ else if (warp->mapNum != (s8)MAP_NUM(MAP_UNDEFINED))
return FALSE;
else if (warp->warpId != WARP_ID_NONE)
return FALSE;
@@ -659,7 +659,7 @@ void SetWarpDestinationToHealLocation(u8 healLocationId)
{
const struct HealLocation *healLocation = GetHealLocation(healLocationId);
if (healLocation)
- SetWarpDestination(healLocation->group, healLocation->map, WARP_ID_NONE, healLocation->x, healLocation->y);
+ SetWarpDestination(healLocation->mapGroup, healLocation->mapNum, WARP_ID_NONE, healLocation->x, healLocation->y);
}
void SetWarpDestinationToLastHealLocation(void)
@@ -671,7 +671,7 @@ void SetLastHealLocationWarp(u8 healLocationId)
{
const struct HealLocation *healLocation = GetHealLocation(healLocationId);
if (healLocation)
- SetWarpData(&gSaveBlock1Ptr->lastHealLocation, healLocation->group, healLocation->map, WARP_ID_NONE, healLocation->x, healLocation->y);
+ SetWarpData(&gSaveBlock1Ptr->lastHealLocation, healLocation->mapGroup, healLocation->mapNum, WARP_ID_NONE, healLocation->x, healLocation->y);
}
void UpdateEscapeWarp(s16 x, s16 y)
@@ -729,7 +729,7 @@ void SetContinueGameWarpToHealLocation(u8 healLocationId)
{
const struct HealLocation *healLocation = GetHealLocation(healLocationId);
if (healLocation)
- SetWarpData(&gSaveBlock1Ptr->continueGameWarp, healLocation->group, healLocation->map, WARP_ID_NONE, healLocation->x, healLocation->y);
+ SetWarpData(&gSaveBlock1Ptr->continueGameWarp, healLocation->mapGroup, healLocation->mapNum, WARP_ID_NONE, healLocation->x, healLocation->y);
}
void SetContinueGameWarpToDynamicWarp(int unused)
@@ -1015,24 +1015,24 @@ static bool16 ShouldLegendaryMusicPlayAtLocation(struct WarpData *warp)
{
switch (warp->mapNum)
{
- case MAP_NUM(LILYCOVE_CITY):
- case MAP_NUM(MOSSDEEP_CITY):
- case MAP_NUM(SOOTOPOLIS_CITY):
- case MAP_NUM(EVER_GRANDE_CITY):
- case MAP_NUM(ROUTE124):
- case MAP_NUM(ROUTE125):
- case MAP_NUM(ROUTE126):
- case MAP_NUM(ROUTE127):
- case MAP_NUM(ROUTE128):
+ case MAP_NUM(MAP_LILYCOVE_CITY):
+ case MAP_NUM(MAP_MOSSDEEP_CITY):
+ case MAP_NUM(MAP_SOOTOPOLIS_CITY):
+ case MAP_NUM(MAP_EVER_GRANDE_CITY):
+ case MAP_NUM(MAP_ROUTE124):
+ case MAP_NUM(MAP_ROUTE125):
+ case MAP_NUM(MAP_ROUTE126):
+ case MAP_NUM(MAP_ROUTE127):
+ case MAP_NUM(MAP_ROUTE128):
return TRUE;
default:
if (VarGet(VAR_SOOTOPOLIS_CITY_STATE) < 4)
return FALSE;
switch (warp->mapNum)
{
- case MAP_NUM(ROUTE129):
- case MAP_NUM(ROUTE130):
- case MAP_NUM(ROUTE131):
+ case MAP_NUM(MAP_ROUTE129):
+ case MAP_NUM(MAP_ROUTE130):
+ case MAP_NUM(MAP_ROUTE131):
return TRUE;
}
}
@@ -1044,9 +1044,9 @@ static bool16 NoMusicInSotopolisWithLegendaries(struct WarpData *warp)
{
if (VarGet(VAR_SKY_PILLAR_STATE) != 1)
return FALSE;
- else if (warp->mapGroup != MAP_GROUP(SOOTOPOLIS_CITY))
+ else if (warp->mapGroup != MAP_GROUP(MAP_SOOTOPOLIS_CITY))
return FALSE;
- else if (warp->mapNum == MAP_NUM(SOOTOPOLIS_CITY))
+ else if (warp->mapNum == MAP_NUM(MAP_SOOTOPOLIS_CITY))
return TRUE;
else
return FALSE;
@@ -1056,10 +1056,10 @@ static bool16 IsInfiltratedWeatherInstitute(struct WarpData *warp)
{
if (VarGet(VAR_WEATHER_INSTITUTE_STATE))
return FALSE;
- else if (warp->mapGroup != MAP_GROUP(ROUTE119_WEATHER_INSTITUTE_1F))
+ else if (warp->mapGroup != MAP_GROUP(MAP_ROUTE119_WEATHER_INSTITUTE_1F))
return FALSE;
- else if (warp->mapNum == MAP_NUM(ROUTE119_WEATHER_INSTITUTE_1F)
- || warp->mapNum == MAP_NUM(ROUTE119_WEATHER_INSTITUTE_2F))
+ else if (warp->mapNum == MAP_NUM(MAP_ROUTE119_WEATHER_INSTITUTE_1F)
+ || warp->mapNum == MAP_NUM(MAP_ROUTE119_WEATHER_INSTITUTE_2F))
return TRUE;
else
return FALSE;
@@ -1071,10 +1071,10 @@ static bool16 IsInflitratedSpaceCenter(struct WarpData *warp)
return FALSE;
else if (VarGet(VAR_MOSSDEEP_CITY_STATE) > 2)
return FALSE;
- else if (warp->mapGroup != MAP_GROUP(MOSSDEEP_CITY_SPACE_CENTER_1F))
+ else if (warp->mapGroup != MAP_GROUP(MAP_MOSSDEEP_CITY_SPACE_CENTER_1F))
return FALSE;
- else if (warp->mapNum == MAP_NUM(MOSSDEEP_CITY_SPACE_CENTER_1F)
- || warp->mapNum == MAP_NUM(MOSSDEEP_CITY_SPACE_CENTER_2F))
+ else if (warp->mapNum == MAP_NUM(MAP_MOSSDEEP_CITY_SPACE_CENTER_1F)
+ || warp->mapNum == MAP_NUM(MAP_MOSSDEEP_CITY_SPACE_CENTER_2F))
return TRUE;
return FALSE;
}
@@ -1098,8 +1098,8 @@ u16 GetCurrLocationDefaultMusic(void)
u16 music;
// Play the desert music only when the sandstorm is active on Route 111.
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE111)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE111)
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ROUTE111)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ROUTE111)
&& GetSavedWeather() == WEATHER_SANDSTORM)
return MUS_DESERT;
@@ -1126,8 +1126,8 @@ u16 GetWarpDestinationMusic(void)
}
else
{
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAUVILLE_CITY)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAUVILLE_CITY))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_MAUVILLE_CITY)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_MAUVILLE_CITY))
return MUS_ROUTE110;
else
return MUS_ROUTE119;
@@ -1221,10 +1221,10 @@ void TryFadeOutOldMapMusic(void)
{
if (currentMusic == MUS_SURF
&& VarGet(VAR_SKY_PILLAR_STATE) == 2
- && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SOOTOPOLIS_CITY)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(SOOTOPOLIS_CITY)
- && sWarpDestination.mapGroup == MAP_GROUP(SOOTOPOLIS_CITY)
- && sWarpDestination.mapNum == MAP_NUM(SOOTOPOLIS_CITY)
+ && gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_SOOTOPOLIS_CITY)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_SOOTOPOLIS_CITY)
+ && sWarpDestination.mapGroup == MAP_GROUP(MAP_SOOTOPOLIS_CITY)
+ && sWarpDestination.mapNum == MAP_NUM(MAP_SOOTOPOLIS_CITY)
&& sWarpDestination.x == 29
&& sWarpDestination.y == 53)
return;
@@ -1297,7 +1297,7 @@ void UpdateAmbientCry(s16 *state, u16 *delayCounter)
}
}
// Ambient cries after the first one take between 1200-2399 frames (~20-40 seconds)
- // If the player has a pokemon with the ability Swarm in their party, the time is halved to 600-1199 frames (~10-20 seconds)
+ // If the player has a Pokémon with the ability Swarm in their party, the time is halved to 600-1199 frames (~10-20 seconds)
*delayCounter = ((Random() % 1200) + 1200) / divBy;
*state = AMB_CRY_WAIT;
break;
@@ -1309,18 +1309,18 @@ void UpdateAmbientCry(s16 *state, u16 *delayCounter)
}
break;
case AMB_CRY_IDLE:
- // No land/water pokemon on this map
+ // No land/water Pokémon on this map
break;
}
}
static void ChooseAmbientCrySpecies(void)
{
- if ((gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE130)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE130))
+ if ((gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ROUTE130)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ROUTE130))
&& !IsMirageIslandPresent())
{
- // Only play water pokemon cries on this route
+ // Only play water Pokémon cries on this route
// when Mirage Island is not present
sIsAmbientCryWaterMon = TRUE;
sAmbientCrySpecies = GetLocalWaterMon();
@@ -2931,7 +2931,7 @@ static void ZeroObjectEvent(struct ObjectEvent *objEvent)
// conflict with the usual Event Object struct, thus the definitions.
#define linkGender(obj) obj->singleMovementActive
// not even one can reference *byte* aligned bitfield members...
-#define linkDirection(obj) ((u8 *)obj)[offsetof(typeof(*obj), fieldEffectSpriteId) - 1] // -> rangeX
+#define linkDirection(obj) ((u8 *)obj)[offsetof(typeof(*obj), range)] // -> rangeX
static void SpawnLinkPlayerObjectEvent(u8 linkPlayerId, s16 x, s16 y, u8 gender)
{
@@ -3050,7 +3050,7 @@ static void SetPlayerFacingDirection(u8 linkPlayerId, u8 facing)
{
if (facing > FACING_FORCED_RIGHT)
{
- objEvent->triggerGroundEffectsOnMove = 1;
+ objEvent->triggerGroundEffectsOnMove = TRUE;
}
else
{
@@ -3199,7 +3199,7 @@ static void CreateLinkPlayerSprite(u8 linkPlayerId, u8 gameVersion)
sprite = &gSprites[objEvent->spriteId];
sprite->coordOffsetEnabled = TRUE;
sprite->data[0] = linkPlayerId;
- objEvent->triggerGroundEffectsOnMove = 0;
+ objEvent->triggerGroundEffectsOnMove = FALSE;
}
}
diff --git a/src/party_menu.c b/src/party_menu.c
index 9b076755c8..7cde1a018c 100755
--- a/src/party_menu.c
+++ b/src/party_menu.c
@@ -169,7 +169,7 @@ enum {
};
enum {
- // Window ids 0-5 are implicitly assigned to each party pokemon in InitPartyMenuBoxes
+ // Window ids 0-5 are implicitly assigned to each party Pokémon in InitPartyMenuBoxes
WIN_MSG = PARTY_SIZE,
};
@@ -231,7 +231,7 @@ static EWRAM_DATA u16 sUnused = 0;
EWRAM_DATA u8 gBattlePartyCurrentOrder[PARTY_SIZE / 2] = {0}; // bits 0-3 are the current pos of Slot 1, 4-7 are Slot 2, and so on
// IWRAM common
-void (*gItemUseCB)(u8, TaskFunc);
+COMMON_DATA void (*gItemUseCB)(u8, TaskFunc) = NULL;
static void ResetPartyMenu(void);
static void CB2_InitPartyMenu(void);
@@ -3092,7 +3092,7 @@ static void CursorCb_Give(u8 taskId)
static void CB2_SelectBagItemToGive(void)
{
- if (InBattlePyramid() == FALSE)
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE == FALSE)
GoToBagMenu(ITEMMENULOCATION_PARTY, POCKETS_COUNT, CB2_GiveHoldItem);
else
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PARTY, CB2_GiveHoldItem);
@@ -4275,7 +4275,7 @@ void CB2_ShowPartyMenuForItemUse(void)
static void CB2_ReturnToBagMenu(void)
{
- if (InBattlePyramid() == FALSE)
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE == FALSE)
GoToBagMenu(ITEMMENULOCATION_LAST, POCKETS_COUNT, NULL);
else
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.exitCallback);
@@ -4800,7 +4800,9 @@ static void Task_LearnNextMoveOrClosePartyMenu(u8 taskId)
if (IsFanfareTaskInactive() && ((JOY_NEW(A_BUTTON)) || (JOY_NEW(B_BUTTON))))
{
if (gPartyMenu.learnMoveState == 1)
+ {
Task_TryLearningNextMove(taskId);
+ }
else
{
if (gPartyMenu.learnMoveState == 2) // never occurs
@@ -5356,7 +5358,7 @@ void CB2_PartyMenuFromStartMenu(void)
// As opposted to by selecting Give in the party menu, which is handled by CursorCb_Give
void CB2_ChooseMonToGiveItem(void)
{
- MainCallback callback = (InBattlePyramid() == FALSE) ? CB2_ReturnToBagMenu : CB2_ReturnToPyramidBagMenu;
+ MainCallback callback = (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE) ? CB2_ReturnToBagMenu : CB2_ReturnToPyramidBagMenu;
InitPartyMenu(PARTY_MENU_TYPE_FIELD, PARTY_LAYOUT_SINGLE, PARTY_ACTION_GIVE_ITEM, FALSE, PARTY_MSG_GIVE_TO_WHICH_MON, Task_HandleChooseMonInput, callback);
gPartyMenu.bagItem = gSpecialVar_ItemId;
}
@@ -5589,8 +5591,8 @@ static bool8 GetBattleEntryEligibility(struct Pokemon *mon)
if (GetMonData(mon, MON_DATA_IS_EGG)
|| GetMonData(mon, MON_DATA_LEVEL) > GetBattleEntryLevelCap()
- || (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY)
+ || (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY)
&& GetMonData(mon, MON_DATA_HELD_ITEM) != ITEM_NONE))
{
return FALSE;
@@ -5801,7 +5803,7 @@ static bool8 TrySwitchInPokemon(void)
u8 newSlot;
u8 i;
- // In a multi battle, slots 1, 4, and 5 are the partner's pokemon
+ // In a multi battle, slots 1, 4, and 5 are the partner's Pokémon
if (IsMultiBattle() == TRUE && (slot == 1 || slot == 4 || slot == 5))
{
StringCopy(gStringVar1, GetTrainerPartnerName());
@@ -5913,20 +5915,20 @@ static void BufferBattlePartyOrder(u8 *partyBattleOrder, u8 flankId)
partyBattleOrder[i] = (partyIds[0 + (i * 2)] << 4) | partyIds[1 + (i * 2)];
}
-void BufferBattlePartyCurrentOrderBySide(u8 battlerId, u8 flankId)
+void BufferBattlePartyCurrentOrderBySide(u8 battler, u8 flankId)
{
- BufferBattlePartyOrderBySide(gBattleStruct->battlerPartyOrders[battlerId], flankId, battlerId);
+ BufferBattlePartyOrderBySide(gBattleStruct->battlerPartyOrders[battler], flankId, battler);
}
-// when GetBattlerSide(battlerId) == B_SIDE_PLAYER, this function is identical the one above
-static void BufferBattlePartyOrderBySide(u8 *partyBattleOrder, u8 flankId, u8 battlerId)
+// when GetBattlerSide(battler) == B_SIDE_PLAYER, this function is identical the one above
+static void BufferBattlePartyOrderBySide(u8 *partyBattleOrder, u8 flankId, u8 battler)
{
u8 partyIndexes[PARTY_SIZE];
int i, j;
u8 leftBattler;
u8 rightBattler;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
{
leftBattler = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT);
rightBattler = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT);
@@ -5985,7 +5987,7 @@ static void BufferBattlePartyOrderBySide(u8 *partyBattleOrder, u8 flankId, u8 ba
partyBattleOrder[i] = (partyIndexes[0 + (i * 2)] << 4) | partyIndexes[1 + (i * 2)];
}
-void SwitchPartyOrderLinkMulti(u8 battlerId, u8 slot, u8 slot2)
+void SwitchPartyOrderLinkMulti(u8 battler, u8 slot, u8 slot2)
{
u8 partyIds[PARTY_SIZE];
u8 tempSlot = 0;
@@ -5995,7 +5997,7 @@ void SwitchPartyOrderLinkMulti(u8 battlerId, u8 slot, u8 slot2)
if (IsMultiBattle())
{
- partyBattleOrder = gBattleStruct->battlerPartyOrders[battlerId];
+ partyBattleOrder = gBattleStruct->battlerPartyOrders[battler];
for (i = j = 0; i < PARTY_SIZE / 2; j++, i++)
{
partyIds[j] = partyBattleOrder[i] >> 4;
diff --git a/src/player_pc.c b/src/player_pc.c
index 009aa7810f..43239582ce 100644
--- a/src/player_pc.c
+++ b/src/player_pc.c
@@ -880,7 +880,9 @@ static void Mailbox_CancelMoveToBag(u8 taskId)
static void Mailbox_Give(u8 taskId)
{
if (CalculatePlayerPartyCount() == 0)
+ {
Mailbox_NoPokemonForMail(taskId);
+ }
else
{
FadeScreen(FADE_TO_BLACK, 0);
@@ -1049,7 +1051,7 @@ static void ItemStorage_PrintDescription(s32 id)
// Get item description (or Cancel text)
if (id != LIST_CANCEL)
- description = (u8 *)ItemId_GetDescription(gSaveBlock1Ptr->pcItems[id].itemId);
+ description = (u8 *)GetItemDescription(gSaveBlock1Ptr->pcItems[id].itemId);
else
description = ItemStorage_GetMessage(MSG_GO_BACK_TO_PREV);
@@ -1193,7 +1195,7 @@ static const u8 *ItemStorage_GetMessage(u16 itemId)
string = gText_MoveVar1Where;
break;
default:
- string = ItemId_GetDescription(itemId);
+ string = GetItemDescription(itemId);
break;
}
return string;
@@ -1271,7 +1273,7 @@ static void ItemStorage_ExitItemList(u8 taskId)
static void ItemStorage_StartItemSwap(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- ListMenuSetUnkIndicatorsStructField(tListTaskId, 16, 1);
+ ListMenuSetTemplateField(tListTaskId, LISTFIELD_CURSORKIND, CURSOR_INVISIBLE);
sItemStorageMenu->toSwapPos = gPlayerPCItemPageInfo.itemsAbove + gPlayerPCItemPageInfo.cursorPos;
ItemStorage_SetSwapArrow(tListTaskId, 0, 0);
ItemStorage_UpdateSwapLinePos(sItemStorageMenu->toSwapPos);
@@ -1445,7 +1447,7 @@ static void ItemStorage_DoItemToss(u8 taskId)
s16 *data = gTasks[taskId].data;
u16 pos = gPlayerPCItemPageInfo.cursorPos + gPlayerPCItemPageInfo.itemsAbove;
- if (!ItemId_GetImportance(gSaveBlock1Ptr->pcItems[pos].itemId))
+ if (!GetItemImportance(gSaveBlock1Ptr->pcItems[pos].itemId))
{
// Show toss confirmation prompt
CopyItemName(gSaveBlock1Ptr->pcItems[pos].itemId, gStringVar1);
diff --git a/src/pokeball.c b/src/pokeball.c
index bdc2b70369..5bbeb5c96a 100644
--- a/src/pokeball.c
+++ b/src/pokeball.c
@@ -40,7 +40,7 @@ static void SpriteCB_TradePokeballEnd(struct Sprite *sprite);
static void SpriteCB_HealthboxSlideInDelayed(struct Sprite *sprite);
static void SpriteCB_HealthboxSlideIn(struct Sprite *sprite);
static void SpriteCB_HitAnimHealthoxEffect(struct Sprite *sprite);
-static u16 GetBattlerPokeballItemId(u8 battlerId);
+static u16 GetBattlerPokeballItemId(u8 battler);
// rom const data
@@ -352,7 +352,7 @@ u8 DoPokeballSendOutAnimation(s16 pan, u8 kindOfThrow)
static void Task_DoPokeballSendOutAnim(u8 taskId)
{
u16 throwCaseId;
- u8 battlerId;
+ u8 battler;
u16 itemId, ballId;
u8 ballSpriteId;
bool8 notSendOut = FALSE;
@@ -364,12 +364,12 @@ static void Task_DoPokeballSendOutAnim(u8 taskId)
}
throwCaseId = gTasks[taskId].tThrowId;
- battlerId = gTasks[taskId].tBattler;
+ battler = gTasks[taskId].tBattler;
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
- itemId = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_POKEBALL);
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
+ itemId = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_POKEBALL);
else
- itemId = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_POKEBALL);
+ itemId = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_POKEBALL);
ballId = ItemIdToBallId(itemId);
LoadBallGfx(ballId);
@@ -381,15 +381,15 @@ static void Task_DoPokeballSendOutAnim(u8 taskId)
switch (throwCaseId)
{
case POKEBALL_PLAYER_SENDOUT:
- gBattlerTarget = battlerId;
+ gBattlerTarget = battler;
gSprites[ballSpriteId].x = 24;
gSprites[ballSpriteId].y = 68;
gSprites[ballSpriteId].callback = SpriteCB_PlayerMonSendOut_1;
break;
case POKEBALL_OPPONENT_SENDOUT:
- gSprites[ballSpriteId].x = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X);
- gSprites[ballSpriteId].y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 24;
- gBattlerTarget = battlerId;
+ gSprites[ballSpriteId].x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X);
+ gSprites[ballSpriteId].y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + 24;
+ gBattlerTarget = battler;
gSprites[ballSpriteId].data[0] = 0;
gSprites[ballSpriteId].callback = SpriteCB_OpponentMonSendOut;
break;
@@ -667,7 +667,7 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId)
u8 wantedCry = gTasks[taskId].tCryTaskWantedCry;
s8 pan = gTasks[taskId].tCryTaskPan;
u16 species = gTasks[taskId].tCryTaskSpecies;
- u8 battlerId = gTasks[taskId].tCryTaskBattler;
+ u8 battler = gTasks[taskId].tCryTaskBattler;
u8 monSpriteId = gTasks[taskId].tCryTaskMonSpriteId;
struct Pokemon *mon = (void *)(u32)((gTasks[taskId].tCryTaskMonPtr1 << 16) | (u16)(gTasks[taskId].tCryTaskMonPtr2));
@@ -684,7 +684,7 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId)
PlayCry_ByMode(species, pan, CRY_MODE_NORMAL);
else
PlayCry_ByMode(species, pan, CRY_MODE_WEAK);
- gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE;
+ gBattleSpritesDataPtr->healthBoxesData[battler].waitForCry = FALSE;
DestroyTask(taskId);
break;
case 2:
@@ -701,7 +701,7 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId)
else
PlayCry_ReleaseDouble(species, pan, CRY_MODE_WEAK_DOUBLES);
- gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE;
+ gBattleSpritesDataPtr->healthBoxesData[battler].waitForCry = FALSE;
DestroyTask(taskId);
}
else
@@ -741,7 +741,7 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId)
else
PlayCry_ReleaseDouble(species, pan, CRY_MODE_WEAK);
- gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = FALSE;
+ gBattleSpritesDataPtr->healthBoxesData[battler].waitForCry = FALSE;
DestroyTask(taskId);
break;
}
@@ -749,11 +749,11 @@ static void Task_PlayCryWhenReleasedFromBall(u8 taskId)
static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite)
{
- u8 battlerId = sprite->sBattler;
+ u8 battler = sprite->sBattler;
u32 ballId;
StartSpriteAnim(sprite, 1);
- ballId = ItemIdToBallId(GetBattlerPokeballItemId(battlerId));
+ ballId = ItemIdToBallId(GetBattlerPokeballItemId(battler));
AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId);
sprite->data[0] = LaunchBallFadeMonTask(TRUE, sprite->sBattler, 14, ballId);
sprite->callback = HandleBallAnimEnd;
@@ -766,19 +766,19 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite)
u16 wantedCryCase;
u8 taskId;
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
{
- mon = &gEnemyParty[gBattlerPartyIndexes[battlerId]];
+ mon = &gEnemyParty[gBattlerPartyIndexes[battler]];
pan = 25;
}
else
{
- mon = &gPlayerParty[gBattlerPartyIndexes[battlerId]];
+ mon = &gPlayerParty[gBattlerPartyIndexes[battler]];
pan = -25;
}
species = GetMonData(mon, MON_DATA_SPECIES);
- if ((battlerId == GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) || battlerId == GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT))
+ if ((battler == GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) || battler == GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT))
&& IsDoubleBattle() && gBattleSpritesDataPtr->animationData->introAnimActive)
{
if (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK)
@@ -794,18 +794,18 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite)
if (!IsDoubleBattle() || !gBattleSpritesDataPtr->animationData->introAnimActive)
wantedCryCase = 0;
- else if (battlerId == GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) || battlerId == GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT))
+ else if (battler == GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) || battler == GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT))
wantedCryCase = 1;
else
wantedCryCase = 2;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].waitForCry = TRUE;
+ gBattleSpritesDataPtr->healthBoxesData[battler].waitForCry = TRUE;
taskId = CreateTask(Task_PlayCryWhenReleasedFromBall, 3);
gTasks[taskId].tCryTaskSpecies = species;
gTasks[taskId].tCryTaskPan = pan;
gTasks[taskId].tCryTaskWantedCry = wantedCryCase;
- gTasks[taskId].tCryTaskBattler = battlerId;
+ gTasks[taskId].tCryTaskBattler = battler;
gTasks[taskId].tCryTaskMonSpriteId = gBattlerSpriteIds[sprite->sBattler];
gTasks[taskId].tCryTaskMonPtr1 = (u32)(mon) >> 16;
gTasks[taskId].tCryTaskMonPtr2 = (u32)(mon);
@@ -845,28 +845,28 @@ static void SpriteCB_BallThrow_StartCaptureMon(struct Sprite *sprite)
static void HandleBallAnimEnd(struct Sprite *sprite)
{
bool8 affineAnimEnded = FALSE;
- u8 battlerId = sprite->sBattler;
+ u8 battler = sprite->sBattler;
- gSprites[gBattlerSpriteIds[battlerId]].invisible = FALSE;
+ gSprites[gBattlerSpriteIds[battler]].invisible = FALSE;
if (sprite->animEnded)
sprite->invisible = TRUE;
- if (gSprites[gBattlerSpriteIds[battlerId]].affineAnimEnded)
+ if (gSprites[gBattlerSpriteIds[battler]].affineAnimEnded)
{
- StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[battlerId]], BATTLER_AFFINE_NORMAL);
+ StartSpriteAffineAnim(&gSprites[gBattlerSpriteIds[battler]], BATTLER_AFFINE_NORMAL);
affineAnimEnded = TRUE;
}
else
{
- gSprites[gBattlerSpriteIds[battlerId]].data[1] -= 288;
- gSprites[gBattlerSpriteIds[battlerId]].y2 = gSprites[gBattlerSpriteIds[battlerId]].data[1] >> 8;
+ gSprites[gBattlerSpriteIds[battler]].data[1] -= 288;
+ gSprites[gBattlerSpriteIds[battler]].y2 = gSprites[gBattlerSpriteIds[battler]].data[1] >> 8;
}
if (sprite->animEnded && affineAnimEnded)
{
s32 i, doneBattlers;
- gSprites[gBattlerSpriteIds[battlerId]].y2 = 0;
+ gSprites[gBattlerSpriteIds[battler]].y2 = 0;
gDoingBattleAnim = FALSE;
- gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = FALSE;
+ gBattleSpritesDataPtr->healthBoxesData[battler].ballAnimActive = FALSE;
FreeSpriteOamMatrix(sprite);
DestroySprite(sprite);
@@ -885,7 +885,7 @@ static void HandleBallAnimEnd(struct Sprite *sprite)
static void SpriteCB_BallThrow_CaptureMon(struct Sprite *sprite)
{
- u8 battlerId = sprite->sBattler;
+ u8 battler = sprite->sBattler;
sprite->data[4]++;
if (sprite->data[4] == 40)
@@ -904,7 +904,7 @@ static void SpriteCB_BallThrow_CaptureMon(struct Sprite *sprite)
DestroySprite(&gSprites[gBattlerSpriteIds[sprite->sBattler]]);
DestroySpriteAndFreeResources(sprite);
if (gMain.inBattle)
- gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = FALSE;
+ gBattleSpritesDataPtr->healthBoxesData[battler].ballAnimActive = FALSE;
}
}
@@ -1014,10 +1014,10 @@ static u8 LaunchBallFadeMonTaskForPokeball(bool8 unFadeLater, u8 spritePalNum, u
return LaunchBallFadeMonTask(unFadeLater, spritePalNum, selectedPalettes, BALL_POKE);
}
-// Sprite data for the pokemon
+// Sprite data for the Pokémon
#define sSpecies data[7]
-// Sprite data for the pokeball
+// Sprite data for the Poké Ball
#define sMonSpriteId data[0]
#define sDelay data[1]
#define sMonPalNum data[2]
@@ -1027,7 +1027,7 @@ static u8 LaunchBallFadeMonTaskForPokeball(bool8 unFadeLater, u8 spritePalNum, u
#define sFinalMonY data[6]
#define sTrigIdx data[7]
-// Pokeball in Birch intro, and when receiving via trade
+// Poké Ball in Birch intro, and when receiving via trade
void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 monPalNum, u8 x, u8 y, u8 oamPriority, u8 subpriority, u8 delay, u32 fadePalettes, u16 species)
{
u8 spriteId;
@@ -1238,16 +1238,16 @@ static void UNUSED DestroySpriteAndFreeResources_Ball(struct Sprite *sprite)
#define sDelayTimer data[1]
-void StartHealthboxSlideIn(u8 battlerId)
+void StartHealthboxSlideIn(u8 battler)
{
- struct Sprite *healthboxSprite = &gSprites[gHealthboxSpriteIds[battlerId]];
+ struct Sprite *healthboxSprite = &gSprites[gHealthboxSpriteIds[battler]];
healthboxSprite->sSpeedX = 5;
healthboxSprite->sSpeedY = 0;
healthboxSprite->x2 = 0x73;
healthboxSprite->y2 = 0;
healthboxSprite->callback = SpriteCB_HealthboxSlideIn;
- if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
{
healthboxSprite->sSpeedX = -healthboxSprite->sSpeedX;
healthboxSprite->sSpeedY = -healthboxSprite->sSpeedY;
@@ -1255,7 +1255,7 @@ void StartHealthboxSlideIn(u8 battlerId)
healthboxSprite->y2 = -healthboxSprite->y2;
}
gSprites[healthboxSprite->data[5]].callback(&gSprites[healthboxSprite->data[5]]);
- if (GetBattlerPosition(battlerId) == B_POSITION_PLAYER_RIGHT)
+ if (GetBattlerPosition(battler) == B_POSITION_PLAYER_RIGHT)
healthboxSprite->callback = SpriteCB_HealthboxSlideInDelayed;
}
@@ -1281,13 +1281,13 @@ static void SpriteCB_HealthboxSlideIn(struct Sprite *sprite)
#undef sSpeedY
#undef sDelayTimer
-void DoHitAnimHealthboxEffect(u8 battlerId)
+void DoHitAnimHealthboxEffect(u8 battler)
{
u8 spriteId;
spriteId = CreateInvisibleSpriteWithCallback(SpriteCB_HitAnimHealthoxEffect);
gSprites[spriteId].data[0] = 1;
- gSprites[spriteId].data[1] = gHealthboxSpriteIds[battlerId];
+ gSprites[spriteId].data[1] = gHealthboxSpriteIds[battler];
gSprites[spriteId].callback = SpriteCB_HitAnimHealthoxEffect;
}
@@ -1335,10 +1335,10 @@ void FreeBallGfx(u8 ballId)
FreeSpritePaletteByTag(gBallSpritePalettes[ballId].tag);
}
-static u16 GetBattlerPokeballItemId(u8 battlerId)
+static u16 GetBattlerPokeballItemId(u8 battler)
{
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
- return GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_POKEBALL);
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
+ return GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_POKEBALL);
else
- return GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_POKEBALL);
+ return GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_POKEBALL);
}
diff --git a/src/pokeblock.c b/src/pokeblock.c
index e01e821f7e..f3d1fa446e 100644
--- a/src/pokeblock.c
+++ b/src/pokeblock.c
@@ -699,7 +699,7 @@ static void DrawPokeblockMenuTitleText(void)
{
u8 i;
- const u8 *itemName = ItemId_GetName(ITEM_POKEBLOCK_CASE);
+ const u8 *itemName = GetItemName(ITEM_POKEBLOCK_CASE);
PrintOnPokeblockWindow(WIN_TITLE, itemName, GetStringCenterAlignXOffset(FONT_NORMAL, itemName, 0x48));
PrintOnPokeblockWindow(WIN_SPICY, gText_Spicy, 0);
diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c
index a334038d8d..f274077554 100644
--- a/src/pokeblock_feed.c
+++ b/src/pokeblock_feed.c
@@ -760,7 +760,7 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon)
break;
case 6:
ResetTempTileDataBuffers();
- DecompressAndCopyTileDataToVram(1, gBattleTerrainTiles_Building, 0, 0, 0);
+ DecompressAndCopyTileDataToVram(1, gBattleEnvironmentTiles_Building, 0, 0, 0);
sPokeblockFeed->loadGfxState++;
break;
case 7:
@@ -771,7 +771,7 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon)
}
break;
case 8:
- LoadCompressedPalette(gBattleTerrainPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
+ LoadCompressedPalette(gBattleEnvironmentPalette_Frontier, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
sPokeblockFeed->loadGfxState = 0;
return TRUE;
}
diff --git a/src/pokedex.c b/src/pokedex.c
index bd824aa567..96eedafad5 100644
--- a/src/pokedex.c
+++ b/src/pokedex.c
@@ -121,8 +121,8 @@ static EWRAM_DATA u8 sPokeBallRotation = 0;
static EWRAM_DATA struct PokedexListItem *sPokedexListItem = NULL;
// This is written to, but never read.
-u8 gUnusedPokedexU8;
-void (*gPokedexVBlankCB)(void);
+COMMON_DATA u8 gUnusedPokedexU8 = 0;
+COMMON_DATA void (*gPokedexVBlankCB)(void) = NULL;
struct SearchOptionText
{
@@ -1758,7 +1758,7 @@ static void Task_HandlePokedexStartMenuInput(u8 taskId)
CreateMonSpritesAtPos(sPokedexView->selectedPokemon, 0xE);
gMain.newKeys |= START_BUTTON; //Exit menu
break;
- case 3: //CLOSE POKEDEX
+ case 3: //CLOSE POKéDEX
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
gTasks[taskId].func = Task_ClosePokedex;
PlaySE(SE_PC_OFF);
@@ -1958,12 +1958,12 @@ static void Task_HandleSearchResultsStartMenuInput(u8 taskId)
CreateMonSpritesAtPos(sPokedexView->selectedPokemon, 0xE);
gMain.newKeys |= START_BUTTON;
break;
- case 3: //BACK TO POKEDEX
+ case 3: //BACK TO POKéDEX
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
gTasks[taskId].func = Task_ReturnToPokedexFromSearchResults;
PlaySE(SE_TRUCK_DOOR);
break;
- case 4: //CLOSE POKEDEX
+ case 4: //CLOSE POKéDEX
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
gTasks[taskId].func = Task_ClosePokedexFromSearchResultsStartMenu;
PlaySE(SE_PC_OFF);
@@ -2049,7 +2049,7 @@ static void Task_ClosePokedexFromSearchResultsStartMenu(u8 taskId)
#undef tLoadScreenTaskId
-// For loading main pokedex page or pokedex search results
+// For loading main pokedex page or Pokédex search results
static bool8 LoadPokedexListPage(u8 page)
{
switch (gMain.state)
@@ -2396,7 +2396,9 @@ static void CreateMonListEntry(u8 position, u16 b, u16 ignored)
if (vOffset >= LIST_SCROLL_STEP)
vOffset -= LIST_SCROLL_STEP;
if (entryNum < 0 || entryNum >= NATIONAL_DEX_COUNT || sPokedexView->pokedexList[entryNum].dexNum == 0xFFFF)
+ {
ClearMonListEntry(17, vOffset * 2, ignored);
+ }
else
{
ClearMonListEntry(17, vOffset * 2, ignored);
@@ -2685,7 +2687,9 @@ static bool8 TryDoInfoScreenScroll(void)
}
if (sPokedexView->selectedPokemon == selectedPokemon)
+ {
return FALSE;
+ }
else
{
sPokedexView->selectedPokemon = selectedPokemon;
@@ -2708,7 +2712,9 @@ static bool8 TryDoInfoScreenScroll(void)
}
if (sPokedexView->selectedPokemon == selectedPokemon)
+ {
return FALSE;
+ }
else
{
sPokedexView->selectedPokemon = selectedPokemon;
@@ -4036,7 +4042,7 @@ static void Task_HandleCaughtMonPageInput(u8 taskId)
}
else
{
- LoadPalette(gPokedexCaughtScreen_Pal + 1, BG_PLTT_ID(3) + 1, PLTT_SIZEOF(7));
+ LoadPalette(gPokedexBgHoenn_Pal + 49, BG_PLTT_ID(3) + 1, PLTT_SIZEOF(7));
}
}
@@ -4581,7 +4587,7 @@ static void UNUSED PrintDecimalNum(u8 windowId, u16 num, u8 left, u8 top)
static void DrawFootprint(u8 windowId, u16 dexNum)
{
u8 footprint4bpp[TILE_SIZE_4BPP * NUM_FOOTPRINT_TILES];
- const u8 * footprintGfx = gMonFootprintTable[NationalPokedexNumToSpecies(dexNum)];
+ const u8 *footprintGfx = gMonFootprintTable[NationalPokedexNumToSpecies(dexNum)];
u16 tileIdx = 0;
u16 i, j;
diff --git a/src/pokedex_area_region_map.c b/src/pokedex_area_region_map.c
index cd2975473a..06bd05a87b 100644
--- a/src/pokedex_area_region_map.c
+++ b/src/pokedex_area_region_map.c
@@ -17,7 +17,7 @@ static const u32 sPokedexAreaMapAffine_Tilemap[] = INCBIN_U32("graphics/pokedex/
void LoadPokedexAreaMapGfx(const struct PokedexAreaMapTemplate *template)
{
u8 mode;
- void * tilemap;
+ void *tilemap;
sPokedexAreaMapBgNum = Alloc(sizeof(sPokedexAreaMapBgNum));
mode = template->mode;
diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c
index f9181a985b..8b0a845102 100755
--- a/src/pokedex_area_screen.c
+++ b/src/pokedex_area_screen.c
@@ -29,9 +29,9 @@
// determined by the data for the corresponding MAPSEC in gRegionMapEntries.
// Only maps in the following map groups have their encounters considered for the area screen
-#define MAP_GROUP_TOWNS_AND_ROUTES MAP_GROUP(PETALBURG_CITY)
-#define MAP_GROUP_DUNGEONS MAP_GROUP(METEOR_FALLS_1F_1R)
-#define MAP_GROUP_SPECIAL_AREA MAP_GROUP(SAFARI_ZONE_NORTHWEST)
+#define MAP_GROUP_TOWNS_AND_ROUTES MAP_GROUP(MAP_PETALBURG_CITY)
+#define MAP_GROUP_DUNGEONS MAP_GROUP(MAP_METEOR_FALLS_1F_1R)
+#define MAP_GROUP_SPECIAL_AREA MAP_GROUP(MAP_SAFARI_ZONE_NORTHWEST)
#define AREA_SCREEN_WIDTH 32
#define AREA_SCREEN_HEIGHT 20
@@ -87,7 +87,7 @@ struct
/*0x6E8*/ u8 *screenSwitchState;
/*0x6EC*/ struct RegionMap regionMap;
/*0xF70*/ u8 charBuffer[64];
- /*0xFB0*/ struct Sprite * areaUnknownSprites[3];
+ /*0xFB0*/ struct Sprite *areaUnknownSprites[3];
/*0xFBC*/ u8 areaUnknownGraphicsBuffer[0x600];
} static EWRAM_DATA *sPokedexAreaScreen = NULL;
@@ -121,7 +121,7 @@ static const u16 sMovingRegionMapSections[3] =
static const u16 sFeebasData[][3] =
{
- {SPECIES_FEEBAS, MAP_GROUP(ROUTE119), MAP_NUM(ROUTE119)},
+ {SPECIES_FEEBAS, MAP_GROUP(MAP_ROUTE119), MAP_NUM(MAP_ROUTE119)},
{NUM_SPECIES}
};
@@ -285,7 +285,7 @@ static void FindMapsWithMon(u16 species)
}
// Add regular species to the area map
- for (i = 0; gWildMonHeaders[i].mapGroup != MAP_GROUP(UNDEFINED); i++)
+ for (i = 0; gWildMonHeaders[i].mapGroup != MAP_GROUP(MAP_UNDEFINED); i++)
{
if (MapHasSpecies(&gWildMonHeaders[i], species))
{
diff --git a/src/pokedex_cry_screen.c b/src/pokedex_cry_screen.c
index 2c352c67a0..2fb3d55a24 100644
--- a/src/pokedex_cry_screen.c
+++ b/src/pokedex_cry_screen.c
@@ -60,7 +60,7 @@ static void SpriteCB_CryMeterNeedle(struct Sprite *);
static void SetCryMeterNeedleTarget(s8);
// IWRAM common
-u8 gDexCryScreenState;
+COMMON_DATA u8 gDexCryScreenState = 0;
// EWRAM vars
static EWRAM_DATA struct PokedexCryScreen *sDexCryScreen = NULL;
@@ -362,7 +362,7 @@ static void BufferCryWaveformSegment(void)
else
baseBuffer = gSoundInfo.pcmBuffer + (gSoundInfo.pcmDmaPeriod + 1 - gPcmDmaCounter) * gSoundInfo.pcmSamplesPerVBlank;
- buffer = baseBuffer + 0x630;
+ buffer = baseBuffer + PCM_DMA_BUF_SIZE;
for (i = 0; i < ARRAY_COUNT(sDexCryScreen->cryWaveformBuffer); i++)
sDexCryScreen->cryWaveformBuffer[i] = buffer[i * 2] * 2;
}
diff --git a/src/pokemon.c b/src/pokemon.c
index d3a570e72f..a06693dc8a 100644
--- a/src/pokemon.c
+++ b/src/pokemon.c
@@ -67,7 +67,7 @@ static union PokemonSubstruct *GetSubstruct(struct BoxPokemon *boxMon, u32 perso
static void EncryptBoxMon(struct BoxPokemon *boxMon);
static void DecryptBoxMon(struct BoxPokemon *boxMon);
static void Task_PlayMapChosenOrBattleBGM(u8 taskId);
-static bool8 ShouldGetStatBadgeBoost(u16 flagId, u8 battlerId);
+static bool8 ShouldGetStatBadgeBoost(u16 flagId, u8 battler);
static u16 GiveMoveToBoxMon(struct BoxPokemon *boxMon, u16 move);
static bool8 ShouldSkipFriendshipChange(void);
static u8 CopyMonToPC(struct Pokemon *mon);
@@ -1354,10 +1354,10 @@ static const u16 sHoennToNationalOrder[NUM_SPECIES - 1] =
const struct SpindaSpot gSpindaSpotGraphics[] =
{
- {.x = 16, .y = 7, .image = INCBIN_U16("graphics/spinda_spots/spot_0.1bpp")},
- {.x = 40, .y = 8, .image = INCBIN_U16("graphics/spinda_spots/spot_1.1bpp")},
- {.x = 22, .y = 25, .image = INCBIN_U16("graphics/spinda_spots/spot_2.1bpp")},
- {.x = 34, .y = 26, .image = INCBIN_U16("graphics/spinda_spots/spot_3.1bpp")}
+ {.x = 16, .y = 7, .image = INCBIN_U16("graphics/pokemon/spinda/spots/spot_0.1bpp")},
+ {.x = 40, .y = 8, .image = INCBIN_U16("graphics/pokemon/spinda/spots/spot_1.1bpp")},
+ {.x = 22, .y = 25, .image = INCBIN_U16("graphics/pokemon/spinda/spots/spot_2.1bpp")},
+ {.x = 34, .y = 26, .image = INCBIN_U16("graphics/pokemon/spinda/spots/spot_3.1bpp")}
};
#include "data/pokemon/item_effects.h"
@@ -2639,7 +2639,7 @@ static void CreateEventMon(struct Pokemon *mon, u16 species, u8 level, u8 fixedI
}
// If FALSE, should load this game's Deoxys form. If TRUE, should load normal Deoxys form
-bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battlerId)
+bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battler)
{
switch (caseId)
{
@@ -2651,7 +2651,7 @@ bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battlerId)
return FALSE;
if (!gMain.inBattle)
return FALSE;
- if (gLinkPlayers[GetMultiplayerId()].id == battlerId)
+ if (gLinkPlayers[GetMultiplayerId()].id == battler)
return FALSE;
break;
case 2:
@@ -2661,7 +2661,7 @@ bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battlerId)
return FALSE;
if (!gMain.inBattle)
return FALSE;
- if (battlerId == 1 || battlerId == 4 || battlerId == 5)
+ if (battler == 1 || battler == 4 || battler == 5)
return TRUE;
return FALSE;
case 4:
@@ -2673,12 +2673,12 @@ bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battlerId)
return FALSE;
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
{
- if (gLinkPlayers[GetMultiplayerId()].id == battlerId)
+ if (gLinkPlayers[GetMultiplayerId()].id == battler)
return FALSE;
}
else
{
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
return FALSE;
}
}
@@ -2686,7 +2686,7 @@ bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battlerId)
{
if (!gMain.inBattle)
return FALSE;
- if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ if (GetBattlerSide(battler) == B_SIDE_PLAYER)
return FALSE;
}
break;
@@ -2874,8 +2874,11 @@ void CalculateMonStats(struct Pokemon *mon)
else
{
if (currentHP == 0 && oldMaxHP == 0)
+ {
currentHP = newMaxHP;
- else if (currentHP != 0) {
+ }
+ else if (currentHP != 0)
+ {
// BUG: currentHP is unintentionally able to become <= 0 after the instruction below. This causes the pomeg berry glitch.
currentHP += newMaxHP - oldMaxHP;
#ifdef BUGFIX
@@ -2884,7 +2887,9 @@ void CalculateMonStats(struct Pokemon *mon)
#endif
}
else
+ {
return;
+ }
}
SetMonData(mon, MON_DATA_HP, ¤tHP);
@@ -3134,8 +3139,8 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de
}
else
{
- attackerHoldEffect = ItemId_GetHoldEffect(attacker->item);
- attackerHoldEffectParam = ItemId_GetHoldEffectParam(attacker->item);
+ attackerHoldEffect = GetItemHoldEffect(attacker->item);
+ attackerHoldEffectParam = GetItemHoldEffectParam(attacker->item);
}
// Get defender hold item info
@@ -3146,8 +3151,8 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de
}
else
{
- defenderHoldEffect = ItemId_GetHoldEffect(defender->item);
- defenderHoldEffectParam = ItemId_GetHoldEffectParam(defender->item);
+ defenderHoldEffect = GetItemHoldEffect(defender->item);
+ defenderHoldEffectParam = GetItemHoldEffectParam(defender->item);
}
if (attacker->ability == ABILITY_HUGE_POWER || attacker->ability == ABILITY_PURE_POWER)
@@ -3399,11 +3404,11 @@ u8 CountAliveMonsInBattle(u8 caseId)
return retVal;
}
-static bool8 ShouldGetStatBadgeBoost(u16 badgeFlag, u8 battlerId)
+static bool8 ShouldGetStatBadgeBoost(u16 badgeFlag, u8 battler)
{
if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_EREADER_TRAINER | BATTLE_TYPE_RECORDED_LINK | BATTLE_TYPE_FRONTIER))
return FALSE;
- else if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ else if (GetBattlerSide(battler) != B_SIDE_PLAYER)
return FALSE;
else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER && gTrainerBattleOpponent_A == TRAINER_SECRET_BASE)
return FALSE;
@@ -3413,9 +3418,9 @@ static bool8 ShouldGetStatBadgeBoost(u16 badgeFlag, u8 battlerId)
return FALSE;
}
-u8 GetDefaultMoveTarget(u8 battlerId)
+u8 GetDefaultMoveTarget(u8 battler)
{
- u8 opposing = BATTLE_OPPOSITE(GET_BATTLER_SIDE(battlerId));
+ u8 opposing = BATTLE_OPPOSITE(GET_BATTLER_SIDE(battler));
if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
return GetBattlerAtPosition(opposing);
@@ -4424,7 +4429,7 @@ static u8 CopyMonToPC(struct Pokemon *mon)
{
for (boxPos = 0; boxPos < IN_BOX_COUNT; boxPos++)
{
- struct BoxPokemon* checkingMon = GetBoxedMonPtr(boxNo, boxPos);
+ struct BoxPokemon *checkingMon = GetBoxedMonPtr(boxNo, boxPos);
if (GetBoxMonData(checkingMon, MON_DATA_SPECIES, NULL) == SPECIES_NONE)
{
MonRestorePP(mon);
@@ -4633,59 +4638,59 @@ void RemoveBattleMonPPBonus(struct BattlePokemon *mon, u8 moveIndex)
mon->ppBonuses &= gPPUpClearMask[moveIndex];
}
-void CopyPlayerPartyMonToBattleData(u8 battlerId, u8 partyIndex)
+void CopyPlayerPartyMonToBattleData(u8 battler, u8 partyIndex)
{
u16 *hpSwitchout;
s32 i;
u8 nickname[POKEMON_NAME_BUFFER_SIZE];
- gBattleMons[battlerId].species = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPECIES, NULL);
- gBattleMons[battlerId].item = GetMonData(&gPlayerParty[partyIndex], MON_DATA_HELD_ITEM, NULL);
+ gBattleMons[battler].species = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPECIES, NULL);
+ gBattleMons[battler].item = GetMonData(&gPlayerParty[partyIndex], MON_DATA_HELD_ITEM, NULL);
for (i = 0; i < MAX_MON_MOVES; i++)
{
- gBattleMons[battlerId].moves[i] = GetMonData(&gPlayerParty[partyIndex], MON_DATA_MOVE1 + i, NULL);
- gBattleMons[battlerId].pp[i] = GetMonData(&gPlayerParty[partyIndex], MON_DATA_PP1 + i, NULL);
+ gBattleMons[battler].moves[i] = GetMonData(&gPlayerParty[partyIndex], MON_DATA_MOVE1 + i, NULL);
+ gBattleMons[battler].pp[i] = GetMonData(&gPlayerParty[partyIndex], MON_DATA_PP1 + i, NULL);
}
- gBattleMons[battlerId].ppBonuses = GetMonData(&gPlayerParty[partyIndex], MON_DATA_PP_BONUSES, NULL);
- gBattleMons[battlerId].friendship = GetMonData(&gPlayerParty[partyIndex], MON_DATA_FRIENDSHIP, NULL);
- gBattleMons[battlerId].experience = GetMonData(&gPlayerParty[partyIndex], MON_DATA_EXP, NULL);
- gBattleMons[battlerId].hpIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_HP_IV, NULL);
- gBattleMons[battlerId].attackIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_ATK_IV, NULL);
- gBattleMons[battlerId].defenseIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_DEF_IV, NULL);
- gBattleMons[battlerId].speedIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPEED_IV, NULL);
- gBattleMons[battlerId].spAttackIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPATK_IV, NULL);
- gBattleMons[battlerId].spDefenseIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPDEF_IV, NULL);
- gBattleMons[battlerId].personality = GetMonData(&gPlayerParty[partyIndex], MON_DATA_PERSONALITY, NULL);
- gBattleMons[battlerId].status1 = GetMonData(&gPlayerParty[partyIndex], MON_DATA_STATUS, NULL);
- gBattleMons[battlerId].level = GetMonData(&gPlayerParty[partyIndex], MON_DATA_LEVEL, NULL);
- gBattleMons[battlerId].hp = GetMonData(&gPlayerParty[partyIndex], MON_DATA_HP, NULL);
- gBattleMons[battlerId].maxHP = GetMonData(&gPlayerParty[partyIndex], MON_DATA_MAX_HP, NULL);
- gBattleMons[battlerId].attack = GetMonData(&gPlayerParty[partyIndex], MON_DATA_ATK, NULL);
- gBattleMons[battlerId].defense = GetMonData(&gPlayerParty[partyIndex], MON_DATA_DEF, NULL);
- gBattleMons[battlerId].speed = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPEED, NULL);
- gBattleMons[battlerId].spAttack = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPATK, NULL);
- gBattleMons[battlerId].spDefense = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPDEF, NULL);
- gBattleMons[battlerId].isEgg = GetMonData(&gPlayerParty[partyIndex], MON_DATA_IS_EGG, NULL);
- gBattleMons[battlerId].abilityNum = GetMonData(&gPlayerParty[partyIndex], MON_DATA_ABILITY_NUM, NULL);
- gBattleMons[battlerId].otId = GetMonData(&gPlayerParty[partyIndex], MON_DATA_OT_ID, NULL);
- gBattleMons[battlerId].type1 = gSpeciesInfo[gBattleMons[battlerId].species].types[0];
- gBattleMons[battlerId].type2 = gSpeciesInfo[gBattleMons[battlerId].species].types[1];
- gBattleMons[battlerId].ability = GetAbilityBySpecies(gBattleMons[battlerId].species, gBattleMons[battlerId].abilityNum);
+ gBattleMons[battler].ppBonuses = GetMonData(&gPlayerParty[partyIndex], MON_DATA_PP_BONUSES, NULL);
+ gBattleMons[battler].friendship = GetMonData(&gPlayerParty[partyIndex], MON_DATA_FRIENDSHIP, NULL);
+ gBattleMons[battler].experience = GetMonData(&gPlayerParty[partyIndex], MON_DATA_EXP, NULL);
+ gBattleMons[battler].hpIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_HP_IV, NULL);
+ gBattleMons[battler].attackIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_ATK_IV, NULL);
+ gBattleMons[battler].defenseIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_DEF_IV, NULL);
+ gBattleMons[battler].speedIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPEED_IV, NULL);
+ gBattleMons[battler].spAttackIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPATK_IV, NULL);
+ gBattleMons[battler].spDefenseIV = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPDEF_IV, NULL);
+ gBattleMons[battler].personality = GetMonData(&gPlayerParty[partyIndex], MON_DATA_PERSONALITY, NULL);
+ gBattleMons[battler].status1 = GetMonData(&gPlayerParty[partyIndex], MON_DATA_STATUS, NULL);
+ gBattleMons[battler].level = GetMonData(&gPlayerParty[partyIndex], MON_DATA_LEVEL, NULL);
+ gBattleMons[battler].hp = GetMonData(&gPlayerParty[partyIndex], MON_DATA_HP, NULL);
+ gBattleMons[battler].maxHP = GetMonData(&gPlayerParty[partyIndex], MON_DATA_MAX_HP, NULL);
+ gBattleMons[battler].attack = GetMonData(&gPlayerParty[partyIndex], MON_DATA_ATK, NULL);
+ gBattleMons[battler].defense = GetMonData(&gPlayerParty[partyIndex], MON_DATA_DEF, NULL);
+ gBattleMons[battler].speed = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPEED, NULL);
+ gBattleMons[battler].spAttack = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPATK, NULL);
+ gBattleMons[battler].spDefense = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPDEF, NULL);
+ gBattleMons[battler].isEgg = GetMonData(&gPlayerParty[partyIndex], MON_DATA_IS_EGG, NULL);
+ gBattleMons[battler].abilityNum = GetMonData(&gPlayerParty[partyIndex], MON_DATA_ABILITY_NUM, NULL);
+ gBattleMons[battler].otId = GetMonData(&gPlayerParty[partyIndex], MON_DATA_OT_ID, NULL);
+ gBattleMons[battler].types[0] = gSpeciesInfo[gBattleMons[battler].species].types[0];
+ gBattleMons[battler].types[1] = gSpeciesInfo[gBattleMons[battler].species].types[1];
+ gBattleMons[battler].ability = GetAbilityBySpecies(gBattleMons[battler].species, gBattleMons[battler].abilityNum);
GetMonData(&gPlayerParty[partyIndex], MON_DATA_NICKNAME, nickname);
- StringCopy_Nickname(gBattleMons[battlerId].nickname, nickname);
- GetMonData(&gPlayerParty[partyIndex], MON_DATA_OT_NAME, gBattleMons[battlerId].otName);
+ StringCopy_Nickname(gBattleMons[battler].nickname, nickname);
+ GetMonData(&gPlayerParty[partyIndex], MON_DATA_OT_NAME, gBattleMons[battler].otName);
- hpSwitchout = &gBattleStruct->hpOnSwitchout[GetBattlerSide(battlerId)];
- *hpSwitchout = gBattleMons[battlerId].hp;
+ hpSwitchout = &gBattleStruct->hpOnSwitchout[GetBattlerSide(battler)];
+ *hpSwitchout = gBattleMons[battler].hp;
for (i = 0; i < NUM_BATTLE_STATS; i++)
- gBattleMons[battlerId].statStages[i] = DEFAULT_STAT_STAGE;
+ gBattleMons[battler].statStages[i] = DEFAULT_STAT_STAGE;
- gBattleMons[battlerId].status2 = 0;
- UpdateSentPokesToOpponentValue(battlerId);
- ClearTemporarySpeciesSpriteData(battlerId, FALSE);
+ gBattleMons[battler].status2 = 0;
+ UpdateSentPokesToOpponentValue(battler);
+ ClearTemporarySpeciesSpriteData(battler, FALSE);
}
bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex)
@@ -4732,7 +4737,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
u32 temp1, temp2;
s8 friendshipChange = 0;
u8 holdEffect;
- u8 battlerId = MAX_BATTLERS_COUNT;
+ u8 battler = MAX_BATTLERS_COUNT;
u32 friendshipOnly = FALSE;
u16 heldItem;
u8 effectFlags;
@@ -4750,7 +4755,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
}
else
{
- holdEffect = ItemId_GetHoldEffect(heldItem);
+ holdEffect = GetItemHoldEffect(heldItem);
}
// Get battler id (if relevant)
@@ -4763,7 +4768,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
{
if (gBattlerPartyIndexes[i] == partyIndex)
{
- battlerId = i;
+ battler = i;
break;
}
i += 2;
@@ -4772,7 +4777,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
else
{
gActiveBattler = 0;
- battlerId = MAX_BATTLERS_COUNT;
+ battler = MAX_BATTLERS_COUNT;
}
// Skip using the item if it won't do anything
@@ -4804,9 +4809,9 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
case 0:
// Cure infatuation
if ((itemEffect[i] & ITEM0_INFATUATION)
- && gMain.inBattle && battlerId != MAX_BATTLERS_COUNT && (gBattleMons[battlerId].status2 & STATUS2_INFATUATION))
+ && gMain.inBattle && battler != MAX_BATTLERS_COUNT && (gBattleMons[battler].status2 & STATUS2_INFATUATION))
{
- gBattleMons[battlerId].status2 &= ~STATUS2_INFATUATION;
+ gBattleMons[battler].status2 &= ~STATUS2_INFATUATION;
retVal = FALSE;
}
@@ -4896,24 +4901,24 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
// Cure status
if ((itemEffect[i] & ITEM3_SLEEP)
- && HealStatusConditions(mon, partyIndex, STATUS1_SLEEP, battlerId) == 0)
+ && HealStatusConditions(mon, partyIndex, STATUS1_SLEEP, battler) == 0)
{
- if (battlerId != MAX_BATTLERS_COUNT)
- gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE;
+ if (battler != MAX_BATTLERS_COUNT)
+ gBattleMons[battler].status2 &= ~STATUS2_NIGHTMARE;
retVal = FALSE;
}
- if ((itemEffect[i] & ITEM3_POISON) && HealStatusConditions(mon, partyIndex, STATUS1_PSN_ANY | STATUS1_TOXIC_COUNTER, battlerId) == 0)
+ if ((itemEffect[i] & ITEM3_POISON) && HealStatusConditions(mon, partyIndex, STATUS1_PSN_ANY | STATUS1_TOXIC_COUNTER, battler) == 0)
retVal = FALSE;
- if ((itemEffect[i] & ITEM3_BURN) && HealStatusConditions(mon, partyIndex, STATUS1_BURN, battlerId) == 0)
+ if ((itemEffect[i] & ITEM3_BURN) && HealStatusConditions(mon, partyIndex, STATUS1_BURN, battler) == 0)
retVal = FALSE;
- if ((itemEffect[i] & ITEM3_FREEZE) && HealStatusConditions(mon, partyIndex, STATUS1_FREEZE, battlerId) == 0)
+ if ((itemEffect[i] & ITEM3_FREEZE) && HealStatusConditions(mon, partyIndex, STATUS1_FREEZE, battler) == 0)
retVal = FALSE;
- if ((itemEffect[i] & ITEM3_PARALYSIS) && HealStatusConditions(mon, partyIndex, STATUS1_PARALYSIS, battlerId) == 0)
+ if ((itemEffect[i] & ITEM3_PARALYSIS) && HealStatusConditions(mon, partyIndex, STATUS1_PARALYSIS, battler) == 0)
retVal = FALSE;
if ((itemEffect[i] & ITEM3_CONFUSION) // heal confusion
- && gMain.inBattle && battlerId != MAX_BATTLERS_COUNT && (gBattleMons[battlerId].status2 & STATUS2_CONFUSION))
+ && gMain.inBattle && battler != MAX_BATTLERS_COUNT && (gBattleMons[battler].status2 & STATUS2_CONFUSION))
{
- gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION;
+ gBattleMons[battler].status2 &= ~STATUS2_CONFUSION;
retVal = FALSE;
}
break;
@@ -5006,10 +5011,10 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
}
if (gMain.inBattle)
{
- if (battlerId != MAX_BATTLERS_COUNT)
+ if (battler != MAX_BATTLERS_COUNT)
{
- gAbsentBattlerFlags &= ~gBitTable[battlerId];
- CopyPlayerPartyMonToBattleData(battlerId, GetPartyIdFromBattlePartyId(gBattlerPartyIndexes[battlerId]));
+ gAbsentBattlerFlags &= ~gBitTable[battler];
+ CopyPlayerPartyMonToBattleData(battler, GetPartyIdFromBattlePartyId(gBattlerPartyIndexes[battler]));
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER && gBattleResults.numRevivesUsed < 255)
gBattleResults.numRevivesUsed++;
}
@@ -5059,17 +5064,17 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
SetMonData(mon, MON_DATA_HP, &dataUnsigned);
// Update battler (if applicable)
- if (gMain.inBattle && battlerId != MAX_BATTLERS_COUNT)
+ if (gMain.inBattle && battler != MAX_BATTLERS_COUNT)
{
- gBattleMons[battlerId].hp = dataUnsigned;
+ gBattleMons[battler].hp = dataUnsigned;
if (!(effectFlags & (ITEM4_REVIVE >> 2)) && GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
{
if (gBattleResults.numHealingItemsUsed < 255)
gBattleResults.numHealingItemsUsed++;
temp2 = gActiveBattler;
- gActiveBattler = battlerId;
- BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, 0);
+ gActiveBattler = battler;
+ BtlController_EmitGetMonData(B_COMM_TO_CONTROLLER, REQUEST_ALL_BATTLE, 0);
MarkBattlerForControllerExec(gActiveBattler);
gActiveBattler = temp2;
}
@@ -5090,23 +5095,23 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
// Heal PP for all moves
for (temp2 = 0; (signed)(temp2) < (signed)(MAX_MON_MOVES); temp2++)
{
- u16 moveId;
+ u16 move;
dataUnsigned = GetMonData(mon, MON_DATA_PP1 + temp2, NULL);
- moveId = GetMonData(mon, MON_DATA_MOVE1 + temp2, NULL);
- if (dataUnsigned != CalculatePPWithBonus(moveId, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), temp2))
+ move = GetMonData(mon, MON_DATA_MOVE1 + temp2, NULL);
+ if (dataUnsigned != CalculatePPWithBonus(move, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), temp2))
{
dataUnsigned += itemEffect[itemEffectParam];
- moveId = GetMonData(mon, MON_DATA_MOVE1 + temp2, NULL); // Redundant
- if (dataUnsigned > CalculatePPWithBonus(moveId, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), temp2))
+ move = GetMonData(mon, MON_DATA_MOVE1 + temp2, NULL); // Redundant
+ if (dataUnsigned > CalculatePPWithBonus(move, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), temp2))
{
- moveId = GetMonData(mon, MON_DATA_MOVE1 + temp2, NULL); // Redundant
- dataUnsigned = CalculatePPWithBonus(moveId, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), temp2);
+ move = GetMonData(mon, MON_DATA_MOVE1 + temp2, NULL); // Redundant
+ dataUnsigned = CalculatePPWithBonus(move, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), temp2);
}
SetMonData(mon, MON_DATA_PP1 + temp2, &dataUnsigned);
// Heal battler PP too (if applicable)
- if (gMain.inBattle && battlerId != MAX_BATTLERS_COUNT && MOVE_IS_PERMANENT(battlerId, temp2))
- gBattleMons[battlerId].pp[temp2] = dataUnsigned;
+ if (gMain.inBattle && battler != MAX_BATTLERS_COUNT && MOVE_IS_PERMANENT(battler, temp2))
+ gBattleMons[battler].pp[temp2] = dataUnsigned;
retVal = FALSE;
}
@@ -5116,23 +5121,23 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
else
{
// Heal PP for one move
- u16 moveId;
+ u16 move;
dataUnsigned = GetMonData(mon, MON_DATA_PP1 + moveIndex, NULL);
- moveId = GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL);
- if (dataUnsigned != CalculatePPWithBonus(moveId, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex))
+ move = GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL);
+ if (dataUnsigned != CalculatePPWithBonus(move, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex))
{
dataUnsigned += itemEffect[itemEffectParam++];
- moveId = GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL); // Redundant
- if (dataUnsigned > CalculatePPWithBonus(moveId, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex))
+ move = GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL); // Redundant
+ if (dataUnsigned > CalculatePPWithBonus(move, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex))
{
- moveId = GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL); // Redundant
- dataUnsigned = CalculatePPWithBonus(moveId, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex);
+ move = GetMonData(mon, MON_DATA_MOVE1 + moveIndex, NULL); // Redundant
+ dataUnsigned = CalculatePPWithBonus(move, GetMonData(mon, MON_DATA_PP_BONUSES, NULL), moveIndex);
}
SetMonData(mon, MON_DATA_PP1 + moveIndex, &dataUnsigned);
// Heal battler PP too (if applicable)
- if (gMain.inBattle && battlerId != MAX_BATTLERS_COUNT && MOVE_IS_PERMANENT(battlerId, moveIndex))
- gBattleMons[battlerId].pp[moveIndex] = dataUnsigned;
+ if (gMain.inBattle && battler != MAX_BATTLERS_COUNT && MOVE_IS_PERMANENT(battler, moveIndex))
+ gBattleMons[battler].pp[moveIndex] = dataUnsigned;
retVal = FALSE;
}
@@ -5271,7 +5276,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
return retVal;
}
-bool8 HealStatusConditions(struct Pokemon *mon, u32 battlePartyId, u32 healMask, u8 battlerId)
+bool8 HealStatusConditions(struct Pokemon *mon, u32 battlePartyId, u32 healMask, u8 battler)
{
u32 status = GetMonData(mon, MON_DATA_STATUS, 0);
@@ -5279,8 +5284,8 @@ bool8 HealStatusConditions(struct Pokemon *mon, u32 battlePartyId, u32 healMask,
{
status &= ~healMask;
SetMonData(mon, MON_DATA_STATUS, &status);
- if (gMain.inBattle && battlerId != MAX_BATTLERS_COUNT)
- gBattleMons[battlerId].status1 &= ~healMask;
+ if (gMain.inBattle && battler != MAX_BATTLERS_COUNT)
+ gBattleMons[battler].status1 &= ~healMask;
return FALSE;
}
else
@@ -5484,7 +5489,7 @@ u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 mode, u16 evolutionItem)
if (heldItem == ITEM_ENIGMA_BERRY)
holdEffect = gSaveBlock1Ptr->enigmaBerry.holdEffect;
else
- holdEffect = ItemId_GetHoldEffect(heldItem);
+ holdEffect = GetItemHoldEffect(heldItem);
// Prevent evolution with Everstone, unless we're just viewing the party menu with an evolution item
if (holdEffect == HOLD_EFFECT_PREVENT_EVOLVE && mode != EVO_MODE_ITEM_CHECK)
@@ -5684,7 +5689,7 @@ u16 SpeciesToCryId(u16 species)
// To draw a spot pixel, add 4 to the color index
#define SPOT_COLOR_ADJUSTMENT 4
/*
- The macro below handles drawing the randomly-placed spots on Spinda's front sprite.
+ The macros below handle drawing the randomly-placed spots on Spinda's front sprite.
Spinda has 4 spots, each with an entry in gSpindaSpotGraphics. Each entry contains
a base x and y coordinate for the spot and a 16x16 binary image. Each bit in the image
determines whether that pixel should be considered part of the spot.
@@ -5696,18 +5701,26 @@ u16 SpeciesToCryId(u16 species)
coordinate is calculated as (baseCoord + (given 4 bits of personality) - 8). In effect this
means each spot can start at any position -8 to +7 off of its base coordinates (256 possibilities).
- The macro then loops over the 16x16 spot image. For each bit in the spot's binary image, if
+ DRAW_SPINDA_SPOTS loops over the 16x16 spot image. For each bit in the spot's binary image, if
the bit is set then it's part of the spot; try to draw it. A pixel is drawn on Spinda if the
- pixel on Spinda satisfies the following formula: ((u8)(colorIndex - 1) <= 2). The -1 excludes
- transparent pixels, as these are index 0. Therefore only colors 1, 2, or 3 on Spinda will
- allow a spot to be drawn. These color indexes are Spinda's light brown body colors. To create
+ pixel is between FIRST_SPOT_COLOR and LAST_SPOT_COLOR (so only colors 1, 2, or 3 on Spinda will
+ allow a spot to be drawn). These color indexes are Spinda's light brown body colors. To create
the spot it adds 4 to the color index, so Spinda's spots will be colors 5, 6, and 7.
- The above is done two different ways in the macro: one with << 4, and one without. This
- is because Spinda's sprite is a 4 bits per pixel image, but the pointer to Spinda's pixels
+ The above is done in TRY_DRAW_SPOT_PIXEL two different ways: one with << 4, and one without.
+ This is because Spinda's sprite is a 4 bits per pixel image, but the pointer to Spinda's pixels
(destPixels) is an 8 bit pointer, so it addresses two pixels. Shifting by 4 accesses the 2nd
of these pixels, so this is done every other time.
*/
+
+// Draw spot pixel if this is Spinda's body color
+#define TRY_DRAW_SPOT_PIXEL(pixels, shift) \
+ if (((*(pixels) & (0xF << (shift))) >= (FIRST_SPOT_COLOR << (shift))) \
+ && ((*(pixels) & (0xF << (shift))) <= (LAST_SPOT_COLOR << (shift)))) \
+ { \
+ *(pixels) += (SPOT_COLOR_ADJUSTMENT << (shift)); \
+ }
+
#define DRAW_SPINDA_SPOTS(personality, dest) \
{ \
s32 i; \
@@ -5737,17 +5750,11 @@ u16 SpeciesToCryId(u16 species)
/* of the two pixels is being considered for drawing */ \
if (column & 1) \
{ \
- /* Draw spot pixel if this is Spinda's body color */ \
- if ((u8)((*destPixels & 0xF0) - (FIRST_SPOT_COLOR << 4))\
- <= ((LAST_SPOT_COLOR - FIRST_SPOT_COLOR) << 4))\
- *destPixels += (SPOT_COLOR_ADJUSTMENT << 4); \
+ TRY_DRAW_SPOT_PIXEL(destPixels, 4); \
} \
else \
{ \
- /* Draw spot pixel if this is Spinda's body color */ \
- if ((u8)((*destPixels & 0xF) - FIRST_SPOT_COLOR) \
- <= (LAST_SPOT_COLOR - FIRST_SPOT_COLOR)) \
- *destPixels += SPOT_COLOR_ADJUSTMENT; \
+ TRY_DRAW_SPOT_PIXEL(destPixels, 0); \
} \
} \
\
@@ -5833,7 +5840,7 @@ s32 GetBattlerMultiplayerId(u16 id)
u8 GetTrainerEncounterMusicId(u16 trainerOpponentId)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
return GetTrainerEncounterMusicIdInBattlePyramid(trainerOpponentId);
else if (InTrainerHillChallenge())
return GetTrainerEncounterMusicIdInTrainerHill(trainerOpponentId);
@@ -5877,16 +5884,11 @@ u16 ModifyStatByNature(u8 nature, u16 stat, u8 statIndex)
return retVal;
}
-#define IS_LEAGUE_BATTLE \
- ((gBattleTypeFlags & BATTLE_TYPE_TRAINER) \
- && (gTrainers[gTrainerBattleOpponent_A].trainerClass == TRAINER_CLASS_ELITE_FOUR \
- || gTrainers[gTrainerBattleOpponent_A].trainerClass == TRAINER_CLASS_LEADER \
- || gTrainers[gTrainerBattleOpponent_A].trainerClass == TRAINER_CLASS_CHAMPION)) \
-
void AdjustFriendship(struct Pokemon *mon, u8 event)
{
u16 species, heldItem;
u8 holdEffect;
+ s8 mod;
if (ShouldSkipFriendshipChange())
return;
@@ -5903,7 +5905,7 @@ void AdjustFriendship(struct Pokemon *mon, u8 event)
}
else
{
- holdEffect = ItemId_GetHoldEffect(heldItem);
+ holdEffect = GetItemHoldEffect(heldItem);
}
if (species && species != SPECIES_EGG)
@@ -5916,26 +5918,43 @@ void AdjustFriendship(struct Pokemon *mon, u8 event)
if (friendship > 199)
friendshipLevel++;
- if ((event != FRIENDSHIP_EVENT_WALKING || !(Random() & 1))
- && (event != FRIENDSHIP_EVENT_LEAGUE_BATTLE || IS_LEAGUE_BATTLE))
+ if (event == FRIENDSHIP_EVENT_WALKING)
{
- s8 mod = sFriendshipEventModifiers[event][friendshipLevel];
- if (mod > 0 && holdEffect == HOLD_EFFECT_FRIENDSHIP_UP)
- mod = (150 * mod) / 100;
- friendship += mod;
- if (mod > 0)
- {
- if (GetMonData(mon, MON_DATA_POKEBALL, 0) == ITEM_LUXURY_BALL)
- friendship++;
- if (GetMonData(mon, MON_DATA_MET_LOCATION, 0) == GetCurrentRegionMapSectionId())
- friendship++;
- }
- if (friendship < 0)
- friendship = 0;
- if (friendship > MAX_FRIENDSHIP)
- friendship = MAX_FRIENDSHIP;
- SetMonData(mon, MON_DATA_FRIENDSHIP, &friendship);
+ // 50% chance every 128 steps
+ if (Random() & 1)
+ return;
}
+ if (event == FRIENDSHIP_EVENT_LEAGUE_BATTLE)
+ {
+ // Only if it's a trainer battle with league progression significance
+ if (!(gBattleTypeFlags & BATTLE_TYPE_TRAINER))
+ return;
+ if (!(gTrainers[gTrainerBattleOpponent_A].trainerClass == TRAINER_CLASS_LEADER
+ || gTrainers[gTrainerBattleOpponent_A].trainerClass == TRAINER_CLASS_ELITE_FOUR
+ || gTrainers[gTrainerBattleOpponent_A].trainerClass == TRAINER_CLASS_CHAMPION))
+ return;
+ }
+
+ mod = sFriendshipEventModifiers[event][friendshipLevel];
+ if (mod > 0 && holdEffect == HOLD_EFFECT_FRIENDSHIP_UP)
+ // 50% increase, rounding down
+ mod = (150 * mod) / 100;
+
+ friendship += mod;
+ if (mod > 0)
+ {
+ if (GetMonData(mon, MON_DATA_POKEBALL, NULL) == ITEM_LUXURY_BALL)
+ friendship++;
+ if (GetMonData(mon, MON_DATA_MET_LOCATION, NULL) == GetCurrentRegionMapSectionId())
+ friendship++;
+ }
+
+ if (friendship < 0)
+ friendship = 0;
+ if (friendship > MAX_FRIENDSHIP)
+ friendship = MAX_FRIENDSHIP;
+
+ SetMonData(mon, MON_DATA_FRIENDSHIP, &friendship);
}
}
@@ -5996,7 +6015,7 @@ void MonGainEVs(struct Pokemon *mon, u16 defeatedSpecies)
}
else
{
- holdEffect = ItemId_GetHoldEffect(heldItem);
+ holdEffect = GetItemHoldEffect(heldItem);
}
if (holdEffect == HOLD_EFFECT_MACHO_BRACE)
@@ -6038,14 +6057,10 @@ void RandomlyGivePartyPokerus(struct Pokemon *party)
do
{
- do
- {
- rnd = Random() % PARTY_SIZE;
- mon = &party[rnd];
- }
- while (!GetMonData(mon, MON_DATA_SPECIES, 0));
+ rnd = Random() % PARTY_SIZE;
+ mon = &party[rnd];
}
- while (GetMonData(mon, MON_DATA_IS_EGG, 0));
+ while (!GetMonData(mon, MON_DATA_SPECIES, 0) || GetMonData(mon, MON_DATA_IS_EGG, 0));
if (!(CheckPartyHasHadPokerus(party, gBitTable[rnd])))
{
@@ -6384,11 +6399,17 @@ void ClearBattleMonForms(void)
u16 GetBattleBGM(void)
{
if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON)
+ {
return MUS_VS_KYOGRE_GROUDON;
+ }
else if (gBattleTypeFlags & BATTLE_TYPE_REGI)
+ {
return MUS_VS_REGI;
+ }
else if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK))
+ {
return MUS_VS_TRAINER;
+ }
else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
{
u8 trainerClass;
@@ -6435,7 +6456,9 @@ u16 GetBattleBGM(void)
}
}
else
+ {
return MUS_VS_WILD;
+ }
}
void PlayBattleBGM(void)
@@ -6851,22 +6874,22 @@ void BattleAnimateBackSprite(struct Sprite *sprite, u16 species)
static u8 UNUSED GetOwnOpposingLinkMultiBattlerId(bool8 rightSide)
{
s32 i;
- s32 battlerId = 0;
+ s32 battler = 0;
u8 multiplayerId = GetMultiplayerId();
switch (gLinkPlayers[multiplayerId].id)
{
case 0:
case 2:
- battlerId = rightSide ? 1 : 3;
+ battler = rightSide ? 1 : 3;
break;
case 1:
case 3:
- battlerId = rightSide ? 2 : 0;
+ battler = rightSide ? 2 : 0;
break;
}
for (i = 0; i < MAX_LINK_PLAYERS; i++)
{
- if (gLinkPlayers[i].id == (s16)battlerId)
+ if (gLinkPlayers[i].id == (s16)battler)
break;
}
return i;
@@ -6875,21 +6898,21 @@ static u8 UNUSED GetOwnOpposingLinkMultiBattlerId(bool8 rightSide)
u8 GetOpposingLinkMultiBattlerId(bool8 rightSide, u8 multiplayerId)
{
s32 i;
- s32 battlerId = 0;
+ s32 battler = 0;
switch (gLinkPlayers[multiplayerId].id)
{
case 0:
case 2:
- battlerId = rightSide ? 1 : 3;
+ battler = rightSide ? 1 : 3;
break;
case 1:
case 3:
- battlerId = rightSide ? 2 : 0;
+ battler = rightSide ? 2 : 0;
break;
}
for (i = 0; i < MAX_LINK_PLAYERS; i++)
{
- if (gLinkPlayers[i].id == (s16)battlerId)
+ if (gLinkPlayers[i].id == (s16)battler)
break;
}
return i;
@@ -6947,7 +6970,7 @@ static bool8 ShouldSkipFriendshipChange(void)
{
if (gMain.inBattle && gBattleTypeFlags & (BATTLE_TYPE_FRONTIER))
return TRUE;
- if (!gMain.inBattle && (InBattlePike() || InBattlePyramid()))
+ if (!gMain.inBattle && (InBattlePike() || CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE))
return TRUE;
return FALSE;
}
@@ -6969,7 +6992,7 @@ static bool8 ShouldSkipFriendshipChange(void)
#define ALLOC_FAIL_STRUCT (1 << 1)
#define GFX_MANAGER_ACTIVE 0xA3 // Arbitrary value
-static void InitMonSpritesGfx_Battle(struct MonSpritesGfxManager* gfx)
+static void InitMonSpritesGfx_Battle(struct MonSpritesGfxManager *gfx)
{
u16 i, j;
for (i = 0; i < gfx->numSprites; i++)
@@ -6982,7 +7005,7 @@ static void InitMonSpritesGfx_Battle(struct MonSpritesGfxManager* gfx)
}
}
-static void InitMonSpritesGfx_FullParty(struct MonSpritesGfxManager* gfx)
+static void InitMonSpritesGfx_FullParty(struct MonSpritesGfxManager *gfx)
{
u16 i, j;
for (i = 0; i < gfx->numSprites; i++)
diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c
index 25c7778f8b..8058074ef4 100644
--- a/src/pokemon_animation.c
+++ b/src/pokemon_animation.c
@@ -627,7 +627,7 @@ static const u8 sVerticalShakeData[][2] =
{-1, 0}
};
-static void (* const sMonAnimFunctions[])(struct Sprite *sprite) =
+static void (*const sMonAnimFunctions[])(struct Sprite *sprite) =
{
[ANIM_V_SQUISH_AND_BOUNCE] = Anim_VerticalSquishBounce,
[ANIM_CIRCULAR_STRETCH_TWICE] = Anim_CircularStretchTwice,
@@ -955,14 +955,14 @@ void StartMonSummaryAnimation(struct Sprite *sprite, u8 frontAnimId)
void LaunchAnimationTaskForBackSprite(struct Sprite *sprite, u8 backAnimSet)
{
- u8 nature, taskId, animId, battlerId;
+ u8 nature, taskId, animId, battler;
taskId = CreateTask(Task_HandleMonAnimation, 128);
gTasks[taskId].tPtrHi = (u32)(sprite) >> 16;
gTasks[taskId].tPtrLo = (u32)(sprite);
- battlerId = sprite->data[0];
- nature = GetNature(&gPlayerParty[gBattlerPartyIndexes[battlerId]]);
+ battler = sprite->data[0];
+ nature = GetNature(&gPlayerParty[gBattlerPartyIndexes[battler]]);
// * 3 below because each back anim has 3 variants depending on nature
animId = 3 * backAnimSet + sBackAnimNatureModTable[nature];
@@ -4969,29 +4969,24 @@ static void ShrinkGrowVibrate(struct Sprite *sprite)
}
else
{
- u8 posY_unsigned;
- s8 posY_signed;
- s32 posY;
- s16 index = (u16)(sprite->data[2] % sprite->data[6] * 256) / sprite->data[6] % 256;
+ s8 sinY;
+ u16 y;
+ s16 index = ((u16)(sprite->data[2] % sprite->data[6] * 256) / sprite->data[6]) % 256;
if (sprite->data[2] % 2 == 0)
{
sprite->data[4] = Sin(index, 32) + 256;
sprite->data[5] = Sin(index, 32) + 256;
- posY_unsigned = Sin(index, 32);
- posY_signed = posY_unsigned;
+ sinY = Sin(index, 32);
}
else
{
sprite->data[4] = Sin(index, 8) + 256;
sprite->data[5] = Sin(index, 8) + 256;
- posY_unsigned = Sin(index, 8);
- posY_signed = posY_unsigned;
+ sinY = Sin(index, 8);
}
- posY = posY_signed;
- if (posY < 0)
- posY += 7;
- sprite->y2 = (u32)(posY) >> 3;
+ y = sinY / 8;
+ sprite->y2 = y;
HandleSetAffineData(sprite, sprite->data[4], sprite->data[5], 0);
}
diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c
index e659eebe21..caed0bcdc3 100644
--- a/src/pokemon_icon.c
+++ b/src/pokemon_icon.c
@@ -4,8 +4,7 @@
#include "palette.h"
#include "pokemon_icon.h"
#include "sprite.h"
-
-#define POKE_ICON_BASE_PAL_TAG 56000
+#include "constants/pokemon_icon.h"
#define INVALID_ICON_SPECIES SPECIES_OLD_UNOWN_J // Oddly specific, used when an icon should be a ?. Any of the 'old unown' would work
diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c
index d744ff6650..326512acf0 100755
--- a/src/pokemon_jump.c
+++ b/src/pokemon_jump.c
@@ -108,7 +108,7 @@ enum {
// the lower 8 bits are a timer to the next state.
// When the timer is incremented above 255, it increments
// the vine state and the timer is reset.
-#define VINE_STATE_TIMER(vineState)(((vineState) << 8) | 0xFF)
+#define VINE_STATE_TIMER(vineState) (((vineState) << 8) | 0xFF)
enum {
MONSTATE_NORMAL, // Pokémon is either on the ground or in the middle of a jump
@@ -799,7 +799,7 @@ static void RecvLinkData_Leader(void)
sPokemonJump->allPlayersReady = TRUE;
}
-static bool32 (* const sPokeJumpLeaderFuncs[])(void) =
+static bool32 (*const sPokeJumpLeaderFuncs[])(void) =
{
[FUNC_GAME_INTRO] = GameIntro_Leader,
[FUNC_WAIT_ROUND] = WaitRound_Leader,
@@ -898,7 +898,7 @@ static void RecvLinkData_Member(void)
}
}
-static bool32 (* const sPokeJumpMemberFuncs[])(void) =
+static bool32 (*const sPokeJumpMemberFuncs[])(void) =
{
[FUNC_GAME_INTRO] = GameIntro_Member,
[FUNC_WAIT_ROUND] = WaitRound_Member,
diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c
index 574e6ba51e..19541d88d8 100644
--- a/src/pokemon_storage_system.c
+++ b/src/pokemon_storage_system.c
@@ -40,6 +40,7 @@
#include "constants/moves.h"
#include "constants/rgb.h"
#include "constants/songs.h"
+#include "constants/pokemon_icon.h"
/*
NOTE: This file is large. Some general groups of functions have
@@ -199,7 +200,7 @@ enum {
CURSOR_AREA_IN_BOX,
CURSOR_AREA_IN_PARTY,
CURSOR_AREA_BOX_TITLE,
- CURSOR_AREA_BUTTONS, // Party Pokemon and Close Box
+ CURSOR_AREA_BUTTONS, // Party Pokémon and Close Box
};
#define CURSOR_AREA_IN_HAND CURSOR_AREA_BOX_TITLE // Alt name for cursor area used by Move Items
@@ -215,7 +216,7 @@ enum {
#define BOXID_CANCELED 201
enum {
- PALTAG_MON_ICON_0 = 56000,
+ PALTAG_MON_ICON_0 = POKE_ICON_BASE_PAL_TAG,
PALTAG_MON_ICON_1, // Used implicitly in CreateMonIconSprite
PALTAG_MON_ICON_2, // Used implicitly in CreateMonIconSprite
PALTAG_3, // Unused
@@ -431,7 +432,7 @@ struct PokemonStorageSystemData
u16 scrollUnused5; // Never read
u16 scrollUnused6; // Never read
u8 filler1[22];
- u8 boxTitleTiles[1024];
+ u8 ALIGNED(2) boxTitleTiles[1024];
u8 boxTitleCycleId;
u8 wallpaperLoadState; // Written to, but never read.
u8 wallpaperLoadBoxId;
@@ -4823,7 +4824,7 @@ static void MovePartySpriteToNextSlot(struct Sprite *sprite, u16 partyId)
sprite->sMonY = (u16)(sprite->y) * 8;
sprite->sSpeedX = ((x * 8) - sprite->sMonX) / 8;
sprite->sSpeedY = ((y * 8) - sprite->sMonY) / 8;
- sprite->data[6] = 8;
+ sprite->sMoveSteps = 8;
sprite->callback = SpriteCB_MovePartyMonToNextSlot;
}
@@ -6496,10 +6497,10 @@ struct
{
{MAP_GROUPS_COUNT, 0, MOVE_SURF},
{MAP_GROUPS_COUNT, 0, MOVE_DIVE},
- {MAP_GROUP(EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), MAP_NUM(EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), MOVE_STRENGTH},
- {MAP_GROUP(EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), MAP_NUM(EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), MOVE_ROCK_SMASH},
- {MAP_GROUP(EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MAP_NUM(EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MOVE_STRENGTH},
- {MAP_GROUP(EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MAP_NUM(EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MOVE_ROCK_SMASH},
+ {MAP_GROUP(MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), MAP_NUM(MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), MOVE_STRENGTH},
+ {MAP_GROUP(MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), MAP_NUM(MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), MOVE_ROCK_SMASH},
+ {MAP_GROUP(MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MAP_NUM(MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MOVE_STRENGTH},
+ {MAP_GROUP(MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MAP_NUM(MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), MOVE_ROCK_SMASH},
};
static void GetRestrictedReleaseMoves(u16 *moves)
@@ -6982,7 +6983,7 @@ static void SetDisplayMonData(void *pokemon, u8 mode)
txtPtr[1] = EOS;
if (sStorage->displayMonItemId != ITEM_NONE)
- StringCopyPadded(sStorage->displayMonItemName, ItemId_GetName(sStorage->displayMonItemId), CHAR_SPACE, 8);
+ StringCopyPadded(sStorage->displayMonItemName, GetItemName(sStorage->displayMonItemId), CHAR_SPACE, 8);
else
StringFill(sStorage->displayMonItemName, CHAR_SPACE, 8);
}
@@ -8257,7 +8258,7 @@ static bool8 MultiMove_GrabSelection(void)
if (!DoMonPlaceChange())
{
StartCursorAnim(CURSOR_ANIM_FIST);
- MultiMove_InitMove(0, 256, 8);
+ MultiMove_InitMove(0, Q_8_8(1), 8);
InitMultiMonPlaceChange(TRUE);
sMultiMove->state++;
}
@@ -8290,7 +8291,7 @@ static bool8 MultiMove_PlaceMons(void)
{
case 0:
MultiMove_SetPlacedMonData();
- MultiMove_InitMove(0, -256, 8);
+ MultiMove_InitMove(0, Q_8_8(-1), 8);
InitMultiMonPlaceChange(FALSE);
sMultiMove->state++;
break;
@@ -8334,25 +8335,25 @@ static bool8 MultiMove_TryMoveGroup(u8 dir)
if (sMultiMove->minRow == 0)
return FALSE;
sMultiMove->minRow--;
- MultiMove_InitMove(0, 1024, 6);
+ MultiMove_InitMove(0, Q_8_8(4), 6);
break;
case 1: // Down
if (sMultiMove->minRow + sMultiMove->rowsTotal >= IN_BOX_ROWS)
return FALSE;
sMultiMove->minRow++;
- MultiMove_InitMove(0, -1024, 6);
+ MultiMove_InitMove(0, Q_8_8(-4), 6);
break;
case 2: // Left
if (sMultiMove->minColumn == 0)
return FALSE;
sMultiMove->minColumn--;
- MultiMove_InitMove(1024, 0, 6);
+ MultiMove_InitMove(Q_8_8(4), 0, 6);
break;
case 3: // Right
if (sMultiMove->minColumn + sMultiMove->columnsTotal >= IN_BOX_COLUMNS)
return FALSE;
sMultiMove->minColumn++;
- MultiMove_InitMove(-1024, 0, 6);
+ MultiMove_InitMove(Q_8_8(-4), 0, 6);
break;
}
return TRUE;
@@ -8985,7 +8986,7 @@ static bool8 IsMovingItem(void)
static const u8 *GetMovingItemName(void)
{
- return ItemId_GetName(sStorage->movingItemId);
+ return GetItemName(sStorage->movingItemId);
}
static u16 GetMovingItemId(void)
@@ -9180,9 +9181,9 @@ static void PrintItemDescription(void)
const u8 *description;
if (IsMovingItem())
- description = ItemId_GetDescription(sStorage->movingItemId);
+ description = GetItemDescription(sStorage->movingItemId);
else
- description = ItemId_GetDescription(sStorage->displayMonItemId);
+ description = GetItemDescription(sStorage->displayMonItemId);
FillWindowPixelBuffer(WIN_ITEM_DESC, PIXEL_FILL(1));
AddTextPrinterParameterized5(WIN_ITEM_DESC, FONT_NORMAL, description, 4, 0, 0, NULL, 0, 1);
@@ -9632,9 +9633,9 @@ u32 CountAllStorageMons(void)
return count;
}
-bool32 AnyStorageMonWithMove(u16 moveId)
+bool32 AnyStorageMonWithMove(u16 move)
{
- u16 moves[] = {moveId, MOVES_COUNT};
+ u16 moves[] = {move, MOVES_COUNT};
s32 i, j;
for (i = 0; i < TOTAL_BOXES_COUNT; i++)
diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c
index 4545411124..a5886fd6a9 100644
--- a/src/pokemon_summary_screen.c
+++ b/src/pokemon_summary_screen.c
@@ -88,13 +88,13 @@ enum {
#define PSS_LABEL_WINDOW_PORTRAIT_SPECIES 19 // The lower name
#define PSS_LABEL_WINDOW_END 20
-// Dynamic fields for the Pokemon Info page
+// Dynamic fields for the Pokémon Info page
#define PSS_DATA_WINDOW_INFO_ORIGINAL_TRAINER 0
#define PSS_DATA_WINDOW_INFO_ID 1
#define PSS_DATA_WINDOW_INFO_ABILITY 2
#define PSS_DATA_WINDOW_INFO_MEMO 3
-// Dynamic fields for the Pokemon Skills page
+// Dynamic fields for the Pokémon Skills page
#define PSS_DATA_WINDOW_SKILLS_HELD_ITEM 0
#define PSS_DATA_WINDOW_SKILLS_RIBBON_COUNT 1
#define PSS_DATA_WINDOW_SKILLS_STATS_LEFT 2 // HP, Attack, Defense
@@ -174,7 +174,7 @@ static EWRAM_DATA struct PokemonSummaryScreenData
u8 currPageIndex;
u8 minPageIndex;
u8 maxPageIndex;
- bool8 lockMonFlag; // This is used to prevent the player from changing pokemon in the move deleter select, etc, but it is not needed because the input is handled differently there
+ bool8 lockMonFlag; // This is used to prevent the player from changing Pokémon in the move deleter select, etc, but it is not needed because the input is handled differently there
u16 newMove;
u8 firstMoveIndex;
u8 secondMoveIndex;
@@ -184,7 +184,7 @@ static EWRAM_DATA struct PokemonSummaryScreenData
u8 windowIds[8];
u8 spriteIds[SPRITE_ARR_ID_COUNT];
bool8 handleDeoxys;
- s16 switchCounter; // Used for various switch statement cases that decompress/load graphics or pokemon data
+ s16 switchCounter; // Used for various switch statement cases that decompress/load graphics or Pokémon data
u8 unk_filler4[6];
} *sMonSummaryScreen = NULL;
EWRAM_DATA u8 gLastViewedMonIndex = 0;
@@ -2094,7 +2094,7 @@ static void ExitMovePositionSwitchMode(u8 taskId, bool8 swapMoves)
static void SwapMonMoves(struct Pokemon *mon, u8 moveIndex1, u8 moveIndex2)
{
- struct PokeSummary* summary = &sMonSummaryScreen->summary;
+ struct PokeSummary *summary = &sMonSummaryScreen->summary;
u16 move1 = summary->moves[moveIndex1];
u16 move2 = summary->moves[moveIndex2];
@@ -2129,7 +2129,7 @@ static void SwapMonMoves(struct Pokemon *mon, u8 moveIndex1, u8 moveIndex2)
static void SwapBoxMonMoves(struct BoxPokemon *mon, u8 moveIndex1, u8 moveIndex2)
{
- struct PokeSummary* summary = &sMonSummaryScreen->summary;
+ struct PokeSummary *summary = &sMonSummaryScreen->summary;
u16 move1 = summary->moves[moveIndex1];
u16 move2 = summary->moves[moveIndex2];
@@ -2682,7 +2682,7 @@ static void DrawContestMoveHearts(u16 move)
}
}
-static void LimitEggSummaryPageDisplay(void) // If the pokemon is an egg, limit the number of pages displayed to 1
+static void LimitEggSummaryPageDisplay(void) // If the Pokémon is an egg, limit the number of pages displayed to 1
{
if (sMonSummaryScreen->summary.isEgg)
ChangeBgX(3, 0x10000, BG_COORD_SET);
@@ -3324,7 +3324,7 @@ static void PrintHeldItemName(void)
&& IsMultiBattle() == TRUE
&& (sMonSummaryScreen->curMonIndex == 1 || sMonSummaryScreen->curMonIndex == 4 || sMonSummaryScreen->curMonIndex == 5))
{
- text = ItemId_GetName(ITEM_ENIGMA_BERRY);
+ text = GetItemName(ITEM_ENIGMA_BERRY);
}
else if (sMonSummaryScreen->summary.item == ITEM_NONE)
{
@@ -3999,7 +3999,7 @@ static bool32 UNUSED IsMonAnimationFinished(void)
return TRUE;
}
-static void StopPokemonAnimations(void) // A subtle effect, this function stops pokemon animations when leaving the PSS
+static void StopPokemonAnimations(void) // A subtle effect, this function stops Pokémon animations when leaving the PSS
{
u16 i;
u16 paletteIndex;
diff --git a/src/pokenav_conditions_search_results.c b/src/pokenav_conditions_search_results.c
index 1817398020..fcda1aa7cd 100644
--- a/src/pokenav_conditions_search_results.c
+++ b/src/pokenav_conditions_search_results.c
@@ -184,13 +184,21 @@ static bool32 HandleConditionSearchInput_WaitSetup(struct Pokenav_SearchResults
static u32 HandleConditionSearchInput(struct Pokenav_SearchResults *menu)
{
if (JOY_REPEAT(DPAD_UP))
+ {
return CONDITION_SEARCH_FUNC_MOVE_UP;
+ }
else if (JOY_REPEAT(DPAD_DOWN))
+ {
return CONDITION_SEARCH_FUNC_MOVE_DOWN;
+ }
else if (JOY_NEW(DPAD_LEFT))
+ {
return CONDITION_SEARCH_FUNC_PAGE_UP;
+ }
else if (JOY_NEW(DPAD_RIGHT))
+ {
return CONDITION_SEARCH_FUNC_PAGE_DOWN;
+ }
else if (JOY_NEW(B_BUTTON))
{
// Exiting back to main search menu
@@ -207,7 +215,9 @@ static u32 HandleConditionSearchInput(struct Pokenav_SearchResults *menu)
return CONDITION_SEARCH_FUNC_SELECT_MON;
}
else
+ {
return CONDITION_SEARCH_FUNC_NONE;
+ }
}
static u32 ReturnToConditionSearchList(struct Pokenav_SearchResults *menu)
@@ -228,27 +238,27 @@ static u32 GetReturningFromGraph(void)
static struct PokenavMonListItem * GetSearchResultsMonDataList(void)
{
- struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
+ struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
return menu->monList->monData;
}
static u16 GetSearchResultsMonListCount(void)
{
- struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
+ struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
return menu->monList->listCount;
}
// data below has been set by ConvertConditionsToListRanks
static s32 GetSearchResultsSelectedMonRank(void)
{
- struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
+ struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
s32 i = PokenavList_GetSelectedIndex();
return menu->monList->monData[i].data;
}
static u16 GetSearchResultsCurrentListIndex(void)
{
- struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
+ struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
return menu->monList->currIndex;
}
@@ -261,7 +271,7 @@ static u32 BuildPartyMonSearchResults(s32 state)
{
s32 i;
struct PokenavMonListItem item;
- struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
+ struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
menu->monList->listCount = 0;
menu->monList->currIndex = 0;
@@ -284,7 +294,7 @@ static u32 BuildPartyMonSearchResults(s32 state)
static u32 InitBoxMonSearchResults(s32 state)
{
- struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
+ struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
menu->monId = 0;
menu->boxId = 0;
return LT_INC_AND_CONTINUE;
@@ -292,7 +302,7 @@ static u32 InitBoxMonSearchResults(s32 state)
static u32 BuildBoxMonSearchResults(s32 state)
{
- struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
+ struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
s32 boxId = menu->boxId;
s32 monId = menu->monId;
s32 boxCount = 0;
@@ -330,7 +340,7 @@ static u32 BuildBoxMonSearchResults(s32 state)
// The condition value in data is then overwritten with their ranking.
static u32 ConvertConditionsToListRanks(s32 state)
{
- struct Pokenav_SearchResults * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
+ struct Pokenav_SearchResults *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_CONDITION_SEARCH_RESULTS);
s32 listCount = menu->monList->listCount;
s32 prevCondition = menu->monList->monData[0].data;
s32 i;
@@ -688,12 +698,12 @@ static void CreateSearchResultsList(void)
CreatePokenavList(&sConditionSearchResultBgTemplates[1], &template, 0);
}
-static void BufferSearchMonListItem(struct PokenavMonListItem * item, u8 * dest)
+static void BufferSearchMonListItem(struct PokenavMonListItem *item, u8 *dest)
{
u8 gender;
u8 level;
- u8 * s;
- const u8 * genderStr;
+ u8 *s;
+ const u8 *genderStr;
// Mon is in party
if (item->boxId == TOTAL_BOXES_COUNT)
@@ -706,7 +716,7 @@ static void BufferSearchMonListItem(struct PokenavMonListItem * item, u8 * dest)
// Mon is in PC
else
{
- struct BoxPokemon * mon = GetBoxedMonPtr(item->boxId, item->monId);
+ struct BoxPokemon *mon = GetBoxedMonPtr(item->boxId, item->monId);
gender = GetBoxMonGender(mon);
level = GetLevelFromBoxMonExp(mon);
GetBoxMonData(mon, MON_DATA_NICKNAME, gStringVar3);
diff --git a/src/pokenav_list.c b/src/pokenav_list.c
index ed3d40dee2..9d1c561d1f 100644
--- a/src/pokenav_list.c
+++ b/src/pokenav_list.c
@@ -34,7 +34,7 @@ struct PokenavListWindowState {
u16 selectedIndexOffset;
u16 entriesOnscreen;
u32 listItemSize;
- void * listPtr;
+ void *listPtr;
};
struct PokenavListSub
@@ -43,7 +43,7 @@ struct PokenavListSub
u32 printStart;
u32 printIndex;
u32 itemSize;
- void * listPtr;
+ void *listPtr;
s32 startBgY;
s32 endBgY;
u32 loopedTaskId;
@@ -192,7 +192,7 @@ static void InitListItems(struct PokenavListWindowState *windowState, struct Pok
PrintListItems(windowState->listPtr, windowState->windowTopIndex, numToPrint, windowState->listItemSize, 0, subPtr);
}
-static void PrintListItems(void * listPtr, u32 topIndex, u32 numItems, u32 itemSize, u32 printStart, struct PokenavListSub *list)
+static void PrintListItems(void *listPtr, u32 topIndex, u32 numItems, u32 itemSize, u32 printStart, struct PokenavListSub *list)
{
if (numItems == 0)
return;
diff --git a/src/pokenav_match_call_data.c b/src/pokenav_match_call_data.c
index f6d71009bb..1c3cf9aeeb 100644
--- a/src/pokenav_match_call_data.c
+++ b/src/pokenav_match_call_data.c
@@ -506,7 +506,7 @@ static const struct MatchCallStructTrainer sSidneyMatchCallHeader =
{
.type = MC_TYPE_LEADER,
.mapSec = MAPSEC_EVER_GRANDE_CITY,
- .flag = FLAG_REMATCH_SIDNEY,
+ .flag = FLAG_REGISTERED_SIDNEY,
.rematchTableIdx = REMATCH_SIDNEY,
.desc = gText_EliteFourMatchCallDesc,
.name = NULL,
@@ -522,7 +522,7 @@ static const struct MatchCallStructTrainer sPhoebeMatchCallHeader =
{
.type = MC_TYPE_LEADER,
.mapSec = MAPSEC_EVER_GRANDE_CITY,
- .flag = FLAG_REMATCH_PHOEBE,
+ .flag = FLAG_REGISTERED_PHOEBE,
.rematchTableIdx = REMATCH_PHOEBE,
.desc = gText_EliteFourMatchCallDesc,
.name = NULL,
@@ -538,7 +538,7 @@ static const struct MatchCallStructTrainer sGlaciaMatchCallHeader =
{
.type = MC_TYPE_LEADER,
.mapSec = MAPSEC_EVER_GRANDE_CITY,
- .flag = FLAG_REMATCH_GLACIA,
+ .flag = FLAG_REGISTERED_GLACIA,
.rematchTableIdx = REMATCH_GLACIA,
.desc = gText_EliteFourMatchCallDesc,
.name = NULL,
@@ -554,7 +554,7 @@ static const struct MatchCallStructTrainer sDrakeMatchCallHeader =
{
.type = MC_TYPE_LEADER,
.mapSec = MAPSEC_EVER_GRANDE_CITY,
- .flag = FLAG_REMATCH_DRAKE,
+ .flag = FLAG_REGISTERED_DRAKE,
.rematchTableIdx = REMATCH_DRAKE,
.desc = gText_EliteFourMatchCallDesc,
.name = NULL,
@@ -570,7 +570,7 @@ static const struct MatchCallStructTrainer sWallaceMatchCallHeader =
{
.type = MC_TYPE_LEADER,
.mapSec = MAPSEC_EVER_GRANDE_CITY,
- .flag = FLAG_REMATCH_WALLACE,
+ .flag = FLAG_REGISTERED_WALLACE,
.rematchTableIdx = REMATCH_WALLACE,
.desc = gText_ChampionMatchCallDesc,
.name = NULL,
@@ -1136,7 +1136,7 @@ bool32 MatchCall_HasRematchId(u32 idx)
void SetMatchCallRegisteredFlag(void)
{
- int r0 = GetRematchIdxByTrainerIdx(gSpecialVar_0x8004);
- if (r0 >= 0)
- FlagSet(FLAG_MATCH_CALL_REGISTERED + r0);
+ int index = GetRematchIdxByTrainerIdx(gSpecialVar_0x8004);
+ if (index >= 0)
+ FlagSet(TRAINER_REGISTERED_FLAGS_START + index);
}
diff --git a/src/pokenav_match_call_list.c b/src/pokenav_match_call_list.c
index 8d1a73f557..fb89e33e0b 100755
--- a/src/pokenav_match_call_list.c
+++ b/src/pokenav_match_call_list.c
@@ -261,7 +261,7 @@ static u32 LoopedTask_BuildMatchCallList(s32 taskState)
bool32 IsRematchEntryRegistered(int rematchIndex)
{
if (rematchIndex < REMATCH_TABLE_ENTRIES)
- return FlagGet(FLAG_MATCH_CALL_REGISTERED + rematchIndex);
+ return FlagGet(TRAINER_REGISTERED_FLAGS_START + rematchIndex);
return FALSE;
}
diff --git a/src/pokenav_menu_handler.c b/src/pokenav_menu_handler.c
index b81b4c892f..d67f61c1ea 100644
--- a/src/pokenav_menu_handler.c
+++ b/src/pokenav_menu_handler.c
@@ -257,7 +257,7 @@ static u32 HandleMainMenuInput(struct Pokenav_Menu *menu)
return POKENAV_MENU_FUNC_NONE;
}
-// Force the player to select Match Call during the call Mr. Stone pokenav tutorial
+// Force the player to select Match Call during the call Mr. Stone PokéNav tutorial
static u32 HandleMainMenuInputTutorial(struct Pokenav_Menu *menu)
{
if (UpdateMenuCursorPos(menu))
@@ -287,7 +287,7 @@ static u32 HandleMainMenuInputTutorial(struct Pokenav_Menu *menu)
return POKENAV_MENU_FUNC_NONE;
}
-// After calling Mr. Stone during the pokenav tutorial, force player to exit or use Match Call again
+// After calling Mr. Stone during the PokéNav tutorial, force player to exit or use Match Call again
static u32 HandleMainMenuInputEndTutorial(struct Pokenav_Menu *menu)
{
if (UpdateMenuCursorPos(menu))
diff --git a/src/pokenav_menu_handler_gfx.c b/src/pokenav_menu_handler_gfx.c
index ede88affdb..ce17f33cfc 100644
--- a/src/pokenav_menu_handler_gfx.c
+++ b/src/pokenav_menu_handler_gfx.c
@@ -45,8 +45,8 @@ struct Pokenav_MenuGfx
u8 numIconsBlending;
bool8 pokenavAlreadyOpen;
bool32 iconVisible[MAX_POKENAV_MENUITEMS];
- struct Sprite * blueLightSprite;
- struct Sprite * iconSprites[MAX_POKENAV_MENUITEMS][NUM_OPTION_SUBSPRITES];
+ struct Sprite *blueLightSprite;
+ struct Sprite *iconSprites[MAX_POKENAV_MENUITEMS][NUM_OPTION_SUBSPRITES];
u8 bg1TilemapBuffer[BG_SCREEN_SIZE];
};
@@ -380,7 +380,7 @@ static bool32 AreAnyTrainerRematchesNearby(void)
bool32 OpenPokenavMenuInitial(void)
{
- struct Pokenav_MenuGfx * gfx = OpenPokenavMenu();
+ struct Pokenav_MenuGfx *gfx = OpenPokenavMenu();
if (gfx == NULL)
return FALSE;
@@ -391,7 +391,7 @@ bool32 OpenPokenavMenuInitial(void)
bool32 OpenPokenavMenuNotInitial(void)
{
- struct Pokenav_MenuGfx * gfx = OpenPokenavMenu();
+ struct Pokenav_MenuGfx *gfx = OpenPokenavMenu();
if (gfx == NULL)
return FALSE;
@@ -402,7 +402,7 @@ bool32 OpenPokenavMenuNotInitial(void)
static struct Pokenav_MenuGfx * OpenPokenavMenu(void)
{
- struct Pokenav_MenuGfx * gfx = AllocSubstruct(POKENAV_SUBSTRUCT_MENU_GFX, sizeof(struct Pokenav_MenuGfx));
+ struct Pokenav_MenuGfx *gfx = AllocSubstruct(POKENAV_SUBSTRUCT_MENU_GFX, sizeof(struct Pokenav_MenuGfx));
if (gfx != NULL)
{
@@ -416,20 +416,20 @@ static struct Pokenav_MenuGfx * OpenPokenavMenu(void)
void CreateMenuHandlerLoopedTask(s32 ltIdx)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
gfx->loopedTaskId = CreateLoopedTask(sMenuHandlerLoopTaskFuncs[ltIdx], 1);
gfx->isTaskActiveCB = GetCurrentLoopedTaskActive;
}
bool32 IsMenuHandlerLoopedTaskActive(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
return gfx->isTaskActiveCB();
}
void FreeMenuHandlerSubstruct2(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
DestroyMovingDotsBgTask();
RemoveWindow(gfx->optionDescWindowId);
@@ -440,14 +440,14 @@ void FreeMenuHandlerSubstruct2(void)
static bool32 GetCurrentLoopedTaskActive(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
return IsLoopedTaskActive(gfx->loopedTaskId);
}
static u32 LoopedTask_OpenMenu(s32 state)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
switch (state)
{
@@ -505,7 +505,9 @@ static u32 LoopedTask_OpenMenu(s32 state)
ShowBg(2);
ShowBg(3);
if (gfx->pokenavAlreadyOpen)
+ {
PokenavFadeScreen(POKENAV_FADE_FROM_BLACK);
+ }
else
{
PlaySE(SE_POKENAV_ON);
@@ -815,7 +817,7 @@ static void FreeAndDestroyMainMenuSprites(void)
static void CreateMenuOptionSprites(void)
{
s32 i, j;
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
for (i = 0; i < MAX_POKENAV_MENUITEMS; i++)
{
@@ -831,7 +833,7 @@ static void CreateMenuOptionSprites(void)
static void DestroyMenuOptionSprites(void)
{
s32 i, j;
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
for (i = 0; i < MAX_POKENAV_MENUITEMS; i++)
{
@@ -852,7 +854,7 @@ static void DrawCurrentMenuOptionLabels(void)
static void DrawOptionLabelGfx(const u16 *const *optionGfx, s32 yPos, s32 deltaY)
{
s32 i, j;
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
s32 baseTile = GetSpriteTileStartByTag(GFXTAG_OPTIONS);
for (i = 0; i < MAX_POKENAV_MENUITEMS; i++)
@@ -985,7 +987,7 @@ static bool32 AreMenuOptionSpritesMoving(void)
#define sSlideSpeed data[2]
#define sSlideEndX data[7]
-static void StartOptionSlide(struct Sprite ** sprites, s32 startX, s32 endX, s32 time)
+static void StartOptionSlide(struct Sprite **sprites, s32 startX, s32 endX, s32 time)
{
s32 i;
@@ -1014,10 +1016,10 @@ static void StartOptionSlide(struct Sprite ** sprites, s32 startX, s32 endX, s32
// When an option is selected it zooms in and blends away as part
// of the transition to the next screen.
-static void StartOptionZoom(struct Sprite ** sprites)
+static void StartOptionZoom(struct Sprite **sprites)
{
s32 i;
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
u8 taskId;
for (i = 0; i < NUM_OPTION_SUBSPRITES; i++)
@@ -1039,7 +1041,7 @@ static void StartOptionZoom(struct Sprite ** sprites)
gfx->numIconsBlending++;
}
-static void SetOptionInvisibility(struct Sprite ** sprites, bool32 invisible)
+static void SetOptionInvisibility(struct Sprite **sprites, bool32 invisible)
{
s32 i;
@@ -1050,7 +1052,7 @@ static void SetOptionInvisibility(struct Sprite ** sprites, bool32 invisible)
}
}
-static void SpriteCB_OptionSlide(struct Sprite * sprite)
+static void SpriteCB_OptionSlide(struct Sprite *sprite)
{
sprite->sSlideTime--;
if (sprite->sSlideTime != -1)
@@ -1070,7 +1072,7 @@ static void SpriteCB_OptionSlide(struct Sprite * sprite)
#undef sSlideSpeed
#undef sSlideEndX
-static void SpriteCB_OptionZoom(struct Sprite * sprite)
+static void SpriteCB_OptionZoom(struct Sprite *sprite)
{
s32 temp;
s32 x;
@@ -1131,7 +1133,7 @@ static void SpriteCB_OptionZoom(struct Sprite * sprite)
static void Task_OptionBlend(u8 taskId)
{
- s16 * data = gTasks[taskId].data;
+ s16 *data = gTasks[taskId].data;
if (tBlendDelay == 0)
{
@@ -1183,7 +1185,7 @@ static void Task_OptionBlend(u8 taskId)
// Blue light that blinks if there are available rematches nearby
static void CreateMatchCallBlueLightSprite(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
u8 spriteId = CreateSprite(&sMatchCallBlueLightSpriteTemplate, 0x10, 0x60, 4);
gfx->blueLightSprite = &gSprites[spriteId];
if (AreAnyTrainerRematchesNearby())
@@ -1198,7 +1200,7 @@ static void DestroyRematchBlueLightSprite(void)
DestroySprite(gfx->blueLightSprite);
}
-static void SpriteCB_BlinkingBlueLight(struct Sprite * sprite)
+static void SpriteCB_BlinkingBlueLight(struct Sprite *sprite)
{
sprite->data[0]++;
if (sprite->data[0] > 8)
@@ -1210,7 +1212,7 @@ static void SpriteCB_BlinkingBlueLight(struct Sprite * sprite)
static void AddOptionDescriptionWindow(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
gfx->optionDescWindowId = AddWindow(&sOptionDescWindowTemplate);
PutWindowTilemap(gfx->optionDescWindowId);
@@ -1220,9 +1222,9 @@ static void AddOptionDescriptionWindow(void)
static void PrintCurrentOptionDescription(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
int menuItem = GetCurrentMenuItemId();
- const u8 * desc = sPageDescriptions[menuItem];
+ const u8 *desc = sPageDescriptions[menuItem];
u32 width = GetStringWidth(FONT_NORMAL, desc, -1);
FillWindowPixelBuffer(gfx->optionDescWindowId, PIXEL_FILL(6));
AddTextPrinterParameterized3(gfx->optionDescWindowId, FONT_NORMAL, (192 - width) / 2, 1, sOptionDescTextColors, 0, desc);
@@ -1232,8 +1234,8 @@ static void PrintCurrentOptionDescription(void)
// Can occur by obtaining a mon with a ribbon and then releasing all ribbon winners
static void PrintNoRibbonWinners(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
- const u8 * s = gText_NoRibbonWinners;
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ const u8 *s = gText_NoRibbonWinners;
u32 width = GetStringWidth(FONT_NORMAL, s, -1);
FillWindowPixelBuffer(gfx->optionDescWindowId, PIXEL_FILL(6));
AddTextPrinterParameterized3(gfx->optionDescWindowId, FONT_NORMAL, (192 - width) / 2, 1, sOptionDescTextColors2, 0, s);
@@ -1246,13 +1248,13 @@ static bool32 IsDma3ManagerBusyWithBgCopy_(void)
static void CreateMovingBgDotsTask(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
gfx->bg3ScrollTaskId = CreateTask(Task_MoveBgDots, 2);
}
static void DestroyMovingDotsBgTask(void)
{
- struct Pokenav_MenuGfx * gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
+ struct Pokenav_MenuGfx *gfx = GetSubstructPtr(POKENAV_SUBSTRUCT_MENU_GFX);
DestroyTask(gfx->bg3ScrollTaskId);
}
@@ -1288,9 +1290,9 @@ static bool32 IsTaskActive_UpdateBgDotsPalette(void)
static void Task_UpdateBgDotsPalette(u8 taskId)
{
u16 sp8[2];
- s16 * data = gTasks[taskId].data;
- const u16 * pal1 = (const u16 *)GetWordTaskArg(taskId, 1);
- const u16 * pal2 = (const u16 *)GetWordTaskArg(taskId, 3);
+ s16 *data = gTasks[taskId].data;
+ const u16 *pal1 = (const u16 *)GetWordTaskArg(taskId, 1);
+ const u16 *pal2 = (const u16 *)GetWordTaskArg(taskId, 3);
PokenavCopyPalette(pal1, pal2, 2, 12, ++data[0], sp8);
LoadPalette(sp8, BG_PLTT_ID(3) + 1, PLTT_SIZEOF(2));
@@ -1343,7 +1345,7 @@ static void InitMenuOptionGlow(void)
static void Task_CurrentMenuOptionGlow(u8 taskId)
{
- s16 * data = gTasks[taskId].data;
+ s16 *data = gTasks[taskId].data;
data[0]++;
if (data[0] > 0)
{
diff --git a/src/pokenav_ribbons_list.c b/src/pokenav_ribbons_list.c
index 05eded6240..44fd309c38 100644
--- a/src/pokenav_ribbons_list.c
+++ b/src/pokenav_ribbons_list.c
@@ -217,26 +217,26 @@ static u32 UpdateMonListBgs(void)
static struct PokenavMonListItem *GetMonRibbonMonListData(void)
{
- struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
+ struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
return list->monList->monData;
}
static s32 GetRibbonsMonListCount(void)
{
- struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
+ struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
return list->monList->listCount;
}
static s32 UNUSED GetMonRibbonSelectedMonData(void)
{
- struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
+ struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
s32 idx = PokenavList_GetSelectedIndex();
return list->monList->monData[idx].data;
}
static s32 GetRibbonListMenuCurrIndex(void)
{
- struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
+ struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
return list->monList->currIndex;
}
@@ -249,7 +249,7 @@ static u32 BuildPartyMonRibbonList(s32 state)
{
s32 i;
struct PokenavMonListItem item;
- struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
+ struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
list->monList->listCount = 0;
list->monList->currIndex = 0;
@@ -284,7 +284,7 @@ static u32 InitBoxMonRibbonList(s32 state)
static u32 BuildBoxMonRibbonList(s32 state)
{
- struct Pokenav_RibbonsMonList * list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
+ struct Pokenav_RibbonsMonList *list = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_LIST);
s32 boxId = list->boxId;
s32 monId = list->monId;
s32 boxCount = 0;
@@ -408,13 +408,13 @@ bool32 IsRibbonsMonListLoopedTaskActive(void)
bool32 GetRibbonsMonCurrentLoopedTaskActive(void)
{
- struct Pokenav_RibbonsMonMenu * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU);
+ struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU);
return IsLoopedTaskActive(menu->loopedTaskId);
}
void FreeRibbonsMonMenu(void)
{
- struct Pokenav_RibbonsMonMenu * menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU);
+ struct Pokenav_RibbonsMonMenu *menu = GetSubstructPtr(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU);
DestroyPokenavList();
RemoveWindow(menu->winid);
FreePokenavSubstruct(POKENAV_SUBSTRUCT_RIBBONS_MON_MENU);
@@ -668,7 +668,7 @@ static void DrawListIndexNumber(s32 windowId, s32 index, s32 max)
u8 strbuf[16];
u32 x;
- u8 * ptr = strbuf;
+ u8 *ptr = strbuf;
ptr = ConvertIntToDecimalStringN(ptr, index, STR_CONV_MODE_RIGHT_ALIGN, 3);
*ptr++ = CHAR_SLASH;
ConvertIntToDecimalStringN(ptr, max, STR_CONV_MODE_RIGHT_ALIGN, 3);
@@ -695,13 +695,13 @@ static void CreateRibbonMonsList(void)
}
// Buffers the "Nickname gender/level" text for the ribbon mon list
-static void BufferRibbonMonInfoText(struct PokenavListItem * listItem, u8 * dest)
+static void BufferRibbonMonInfoText(struct PokenavListItem *listItem, u8 *dest)
{
u8 gender;
u8 level;
- u8 * s;
- const u8 * genderStr;
- struct PokenavMonListItem * item = (struct PokenavMonListItem *)listItem;
+ u8 *s;
+ const u8 *genderStr;
+ struct PokenavMonListItem *item = (struct PokenavMonListItem *)listItem;
// Mon is in party
if (item->boxId == TOTAL_BOXES_COUNT)
@@ -714,7 +714,7 @@ static void BufferRibbonMonInfoText(struct PokenavListItem * listItem, u8 * dest
// Mon is in PC
else
{
- struct BoxPokemon * mon = GetBoxedMonPtr(item->boxId, item->monId);
+ struct BoxPokemon *mon = GetBoxedMonPtr(item->boxId, item->monId);
gender = GetBoxMonGender(mon);
level = GetLevelFromBoxMonExp(mon);
GetBoxMonData(mon, MON_DATA_NICKNAME, gStringVar3);
diff --git a/src/pokenav_ribbons_summary.c b/src/pokenav_ribbons_summary.c
index e77f839a80..c799daf57b 100644
--- a/src/pokenav_ribbons_summary.c
+++ b/src/pokenav_ribbons_summary.c
@@ -1080,7 +1080,7 @@ enum {
RIBBONGFX_GIFT_3,
};
-#define TO_PAL_OFFSET(palNum)((palNum) - PALTAG_RIBBON_ICONS_1)
+#define TO_PAL_OFFSET(palNum) ((palNum) - PALTAG_RIBBON_ICONS_1)
struct
{
diff --git a/src/random.c b/src/random.c
index de923fba63..aa2c67750d 100644
--- a/src/random.c
+++ b/src/random.c
@@ -5,8 +5,8 @@ EWRAM_DATA static u8 sUnknown = 0;
EWRAM_DATA static u32 sRandCount = 0;
// IWRAM common
-u32 gRngValue;
-u32 gRng2Value;
+COMMON_DATA u32 gRngValue = 0;
+COMMON_DATA u32 gRng2Value = 0;
u16 Random(void)
{
diff --git a/src/recorded_battle.c b/src/recorded_battle.c
index 42866c723b..559fc445f1 100644
--- a/src/recorded_battle.c
+++ b/src/recorded_battle.c
@@ -27,7 +27,7 @@ struct PlayerInfo
u32 trainerId;
u8 name[PLAYER_NAME_LENGTH + 1];
u8 gender;
- u16 battlerId;
+ u16 battler;
u16 language;
};
@@ -35,13 +35,13 @@ struct RecordedBattleSave
{
struct Pokemon playerParty[PARTY_SIZE];
struct Pokemon opponentParty[PARTY_SIZE];
- u8 playersName[MAX_BATTLERS_COUNT][PLAYER_NAME_LENGTH + 1];
- u8 playersGender[MAX_BATTLERS_COUNT];
- u32 playersTrainerId[MAX_BATTLERS_COUNT];
- u8 playersLanguage[MAX_BATTLERS_COUNT];
+ u8 playersName[MAX_LINK_PLAYERS][PLAYER_NAME_LENGTH + 1];
+ u8 playersGender[MAX_LINK_PLAYERS];
+ u32 playersTrainerId[MAX_LINK_PLAYERS];
+ u8 playersLanguage[MAX_LINK_PLAYERS];
u32 rngSeed;
u32 battleFlags;
- u8 playersBattlers[MAX_BATTLERS_COUNT];
+ u8 playersBattlers[MAX_LINK_PLAYERS];
u16 opponentA;
u16 opponentB;
u16 partnerId;
@@ -85,7 +85,7 @@ EWRAM_DATA static u32 sAI_Scripts = 0;
EWRAM_DATA static struct Pokemon sSavedPlayerParty[PARTY_SIZE] = {0};
EWRAM_DATA static struct Pokemon sSavedOpponentParty[PARTY_SIZE] = {0};
EWRAM_DATA static u16 sPlayerMonMoves[MAX_BATTLERS_COUNT / 2][MAX_MON_MOVES] = {0};
-EWRAM_DATA static struct PlayerInfo sPlayers[MAX_BATTLERS_COUNT] = {0};
+EWRAM_DATA static struct PlayerInfo sPlayers[MAX_LINK_PLAYERS] = {0};
EWRAM_DATA static bool8 sIsPlaybackFinished = 0;
EWRAM_DATA static u8 sRecordMixFriendName[PLAYER_NAME_LENGTH + 1] = {0};
EWRAM_DATA static u8 sRecordMixFriendClass = 0;
@@ -148,11 +148,11 @@ void RecordedBattle_SetTrainerInfo(void)
gRecordedBattleMultiplayerId = GetMultiplayerId();
linkPlayersCount = GetLinkPlayerCount();
- for (i = 0; i < MAX_BATTLERS_COUNT; i++)
+ for (i = 0; i < MAX_LINK_PLAYERS; i++)
{
sPlayers[i].trainerId = gLinkPlayers[i].trainerId;
sPlayers[i].gender = gLinkPlayers[i].gender;
- sPlayers[i].battlerId = gLinkPlayers[i].id;
+ sPlayers[i].battler = gLinkPlayers[i].id;
sPlayers[i].language = gLinkPlayers[i].language;
// Record names
@@ -178,7 +178,7 @@ void RecordedBattle_SetTrainerInfo(void)
| (gSaveBlock2Ptr->playerTrainerId[3] << 24);
sPlayers[0].gender = gSaveBlock2Ptr->playerGender;
- sPlayers[0].battlerId = 0;
+ sPlayers[0].battler = 0;
sPlayers[0].language = gGameLanguage;
for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++)
@@ -186,29 +186,29 @@ void RecordedBattle_SetTrainerInfo(void)
}
}
-void RecordedBattle_SetBattlerAction(u8 battlerId, u8 action)
+void RecordedBattle_SetBattlerAction(u8 battler, u8 action)
{
- if (sBattlerRecordSizes[battlerId] < BATTLER_RECORD_SIZE && sRecordMode != B_RECORD_MODE_PLAYBACK)
- sBattleRecords[battlerId][sBattlerRecordSizes[battlerId]++] = action;
+ if (sBattlerRecordSizes[battler] < BATTLER_RECORD_SIZE && sRecordMode != B_RECORD_MODE_PLAYBACK)
+ sBattleRecords[battler][sBattlerRecordSizes[battler]++] = action;
}
-void RecordedBattle_ClearBattlerAction(u8 battlerId, u8 bytesToClear)
+void RecordedBattle_ClearBattlerAction(u8 battler, u8 bytesToClear)
{
s32 i;
for (i = 0; i < bytesToClear; i++)
{
- sBattlerRecordSizes[battlerId]--;
- sBattleRecords[battlerId][sBattlerRecordSizes[battlerId]] = 0xFF;
- if (sBattlerRecordSizes[battlerId] == 0)
+ sBattlerRecordSizes[battler]--;
+ sBattleRecords[battler][sBattlerRecordSizes[battler]] = 0xFF;
+ if (sBattlerRecordSizes[battler] == 0)
break;
}
}
-u8 RecordedBattle_GetBattlerAction(u8 battlerId)
+u8 RecordedBattle_GetBattlerAction(u8 battler)
{
// Trying to read past array or invalid action byte, battle is over.
- if (sBattlerRecordSizes[battlerId] >= BATTLER_RECORD_SIZE || sBattleRecords[battlerId][sBattlerRecordSizes[battlerId]] == 0xFF)
+ if (sBattlerRecordSizes[battler] >= BATTLER_RECORD_SIZE || sBattleRecords[battler][sBattlerRecordSizes[battler]] == 0xFF)
{
gSpecialVar_Result = gBattleOutcome = B_OUTCOME_PLAYER_TELEPORTED; // hah
ResetPaletteFadeControl();
@@ -218,7 +218,7 @@ u8 RecordedBattle_GetBattlerAction(u8 battlerId)
}
else
{
- return sBattleRecords[battlerId][sBattlerRecordSizes[battlerId]++];
+ return sBattleRecords[battler][sBattlerRecordSizes[battler]++];
}
}
@@ -268,11 +268,11 @@ void RecordedBattle_RecordAllBattlerData(u8 *src)
{
for (size = *src; size != 0;)
{
- u8 battlerId = GetNextRecordedDataByte(src, &idx, &size);
+ u8 battler = GetNextRecordedDataByte(src, &idx, &size);
u8 numActions = GetNextRecordedDataByte(src, &idx, &size);
for (i = 0; i < numActions; i++)
- sBattleRecords[battlerId][sBattlerSavedRecordSizes[battlerId]++] = GetNextRecordedDataByte(src, &idx, &size);
+ sBattleRecords[battler][sBattlerSavedRecordSizes[battler]++] = GetNextRecordedDataByte(src, &idx, &size);
}
}
}
@@ -333,13 +333,13 @@ bool32 MoveRecordedBattleToSaveData(void)
battleSave->opponentParty[i] = sSavedOpponentParty[i];
}
- for (i = 0; i < MAX_BATTLERS_COUNT; i++)
+ for (i = 0; i < MAX_LINK_PLAYERS; i++)
{
for (j = 0; j < PLAYER_NAME_LENGTH + 1; j++)
battleSave->playersName[i][j] = sPlayers[i].name[j];
battleSave->playersGender[i] = sPlayers[i].gender;
battleSave->playersLanguage[i] = sPlayers[i].language;
- battleSave->playersBattlers[i] = sPlayers[i].battlerId;
+ battleSave->playersBattlers[i] = sPlayers[i].battler;
battleSave->playersTrainerId[i] = sPlayers[i].trainerId;
}
@@ -358,16 +358,16 @@ bool32 MoveRecordedBattleToSaveData(void)
}
else if (sBattleFlags & BATTLE_TYPE_MULTI)
{
- switch (sPlayers[0].battlerId)
+ switch (sPlayers[0].battler)
{
case 0:
case 2:
- if (!(sPlayers[gRecordedBattleMultiplayerId].battlerId & 1))
+ if (!(sPlayers[gRecordedBattleMultiplayerId].battler & 1))
battleSave->battleFlags |= BATTLE_TYPE_RECORDED_IS_MASTER;
break;
case 1:
case 3:
- if ((sPlayers[gRecordedBattleMultiplayerId].battlerId & 1))
+ if ((sPlayers[gRecordedBattleMultiplayerId].battler & 1))
battleSave->battleFlags |= BATTLE_TYPE_RECORDED_IS_MASTER;
break;
}
@@ -535,7 +535,7 @@ static void SetVariablesForRecordedBattle(struct RecordedBattleSave *src)
gEnemyParty[i] = src->opponentParty[i];
}
- for (i = 0; i < MAX_BATTLERS_COUNT; i++)
+ for (i = 0; i < MAX_LINK_PLAYERS; i++)
{
for (var = FALSE, j = 0; j < PLAYER_NAME_LENGTH + 1; j++)
{
@@ -707,35 +707,35 @@ void RecordedBattle_CopyBattlerMoves(void)
void RecordedBattle_CheckMovesetChanges(u8 mode)
{
- s32 battlerId, j, k;
+ s32 battler, j, k;
if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK))
return;
- for (battlerId = 0; battlerId < gBattlersCount; battlerId++)
+ for (battler = 0; battler < gBattlersCount; battler++)
{
// Player's side only
- if (GetBattlerSide(battlerId) != B_SIDE_OPPONENT)
+ if (GetBattlerSide(battler) != B_SIDE_OPPONENT)
{
if (mode == B_RECORD_MODE_RECORDING)
{
// Check if any of the battler's moves have changed.
for (j = 0; j < MAX_MON_MOVES; j++)
{
- if (gBattleMons[battlerId].moves[j] != sPlayerMonMoves[battlerId / 2][j])
+ if (gBattleMons[battler].moves[j] != sPlayerMonMoves[battler / 2][j])
break;
}
if (j != MAX_MON_MOVES)
{
// At least one of the moves has been changed
- RecordedBattle_SetBattlerAction(battlerId, ACTION_MOVE_CHANGE);
+ RecordedBattle_SetBattlerAction(battler, ACTION_MOVE_CHANGE);
for (j = 0; j < MAX_MON_MOVES; j++)
{
for (k = 0; k < MAX_MON_MOVES; k++)
{
- if (gBattleMons[battlerId].moves[j] == sPlayerMonMoves[battlerId / 2][k])
+ if (gBattleMons[battler].moves[j] == sPlayerMonMoves[battler / 2][k])
{
- RecordedBattle_SetBattlerAction(battlerId, k);
+ RecordedBattle_SetBattlerAction(battler, k);
break;
}
}
@@ -744,7 +744,7 @@ void RecordedBattle_CheckMovesetChanges(u8 mode)
}
else // B_RECORD_MODE_PLAYBACK
{
- if (sBattleRecords[battlerId][sBattlerRecordSizes[battlerId]] == ACTION_MOVE_CHANGE)
+ if (sBattleRecords[battler][sBattlerRecordSizes[battler]] == ACTION_MOVE_CHANGE)
{
u8 ppBonuses[MAX_MON_MOVES];
u8 moveSlots[MAX_MON_MOVES];
@@ -754,55 +754,55 @@ void RecordedBattle_CheckMovesetChanges(u8 mode)
// We know the current action is ACTION_MOVE_CHANGE, retrieve
// it without saving it to move on to the next action.
- RecordedBattle_GetBattlerAction(battlerId);
+ RecordedBattle_GetBattlerAction(battler);
for (j = 0; j < MAX_MON_MOVES; j++)
- ppBonuses[j] = ((gBattleMons[battlerId].ppBonuses & (3 << (j << 1))) >> (j << 1));
+ ppBonuses[j] = ((gBattleMons[battler].ppBonuses & (3 << (j << 1))) >> (j << 1));
for (j = 0; j < MAX_MON_MOVES; j++)
{
- moveSlots[j] = RecordedBattle_GetBattlerAction(battlerId);
- movePp.moves[j] = gBattleMons[battlerId].moves[moveSlots[j]];
- movePp.currentPp[j] = gBattleMons[battlerId].pp[moveSlots[j]];
+ moveSlots[j] = RecordedBattle_GetBattlerAction(battler);
+ movePp.moves[j] = gBattleMons[battler].moves[moveSlots[j]];
+ movePp.currentPp[j] = gBattleMons[battler].pp[moveSlots[j]];
movePp.maxPp[j] = ppBonuses[moveSlots[j]];
- mimickedMoveSlots[j] = (gDisableStructs[battlerId].mimickedMoves & gBitTable[j]) >> j;
+ mimickedMoveSlots[j] = (gDisableStructs[battler].mimickedMoves & gBitTable[j]) >> j;
}
for (j = 0; j < MAX_MON_MOVES; j++)
{
- gBattleMons[battlerId].moves[j] = movePp.moves[j];
- gBattleMons[battlerId].pp[j] = movePp.currentPp[j];
+ gBattleMons[battler].moves[j] = movePp.moves[j];
+ gBattleMons[battler].pp[j] = movePp.currentPp[j];
}
- gBattleMons[battlerId].ppBonuses = 0;
- gDisableStructs[battlerId].mimickedMoves = 0;
+ gBattleMons[battler].ppBonuses = 0;
+ gDisableStructs[battler].mimickedMoves = 0;
for (j = 0; j < MAX_MON_MOVES; j++)
{
- gBattleMons[battlerId].ppBonuses |= movePp.maxPp[j] << (j << 1);
- gDisableStructs[battlerId].mimickedMoves |= mimickedMoveSlots[j] << j;
+ gBattleMons[battler].ppBonuses |= movePp.maxPp[j] << (j << 1);
+ gDisableStructs[battler].mimickedMoves |= mimickedMoveSlots[j] << j;
}
- if (!(gBattleMons[battlerId].status2 & STATUS2_TRANSFORMED))
+ if (!(gBattleMons[battler].status2 & STATUS2_TRANSFORMED))
{
for (j = 0; j < MAX_MON_MOVES; j++)
- ppBonuses[j] = (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP_BONUSES, NULL) & ((3 << (j << 1)))) >> (j << 1);
+ ppBonuses[j] = (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_PP_BONUSES, NULL) & ((3 << (j << 1)))) >> (j << 1);
for (j = 0; j < MAX_MON_MOVES; j++)
{
- movePp.moves[j] = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_MOVE1 + moveSlots[j], NULL);
- movePp.currentPp[j] = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP1 + moveSlots[j], NULL);
+ movePp.moves[j] = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_MOVE1 + moveSlots[j], NULL);
+ movePp.currentPp[j] = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_PP1 + moveSlots[j], NULL);
movePp.maxPp[j] = ppBonuses[moveSlots[j]];
}
for (j = 0; j < MAX_MON_MOVES; j++)
{
- SetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_MOVE1 + j, &movePp.moves[j]);
- SetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP1 + j, &movePp.currentPp[j]);
+ SetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_MOVE1 + j, &movePp.moves[j]);
+ SetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_PP1 + j, &movePp.currentPp[j]);
}
ppBonusSet = 0;
for (j = 0; j < MAX_MON_MOVES; j++)
ppBonusSet |= movePp.maxPp[j] << (j << 1);
- SetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PP_BONUSES, &ppBonusSet);
+ SetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_PP_BONUSES, &ppBonusSet);
}
- gChosenMoveByBattler[battlerId] = gBattleMons[battlerId].moves[*(gBattleStruct->chosenMovePositions + battlerId)];
+ gChosenMoveByBattler[battler] = gBattleMons[battler].moves[*(gBattleStruct->chosenMovePositions + battler)];
}
}
}
diff --git a/src/region_map.c b/src/region_map.c
index 21c6314d30..22a3f567b4 100644
--- a/src/region_map.c
+++ b/src/region_map.c
@@ -189,7 +189,7 @@ static const u16 sTerraOrMarineCaveMapSecIds[ABNORMAL_WEATHER_LOCATIONS] =
[ABNORMAL_WEATHER_ROUTE_129_EAST - 1] = MAPSEC_ROUTE_129
};
-#define MARINE_CAVE_COORD(location)(ABNORMAL_WEATHER_##location - MARINE_CAVE_LOCATIONS_START)
+#define MARINE_CAVE_COORD(location) (ABNORMAL_WEATHER_##location - MARINE_CAVE_LOCATIONS_START)
static const struct UCoords16 sMarineCaveLocationCoords[MARINE_CAVE_LOCATIONS] =
{
@@ -288,56 +288,56 @@ static const u32 sFlyTargetIcons_Gfx[] = INCBIN_U32("graphics/pokenav/region_map
static const u8 sMapHealLocations[][3] =
{
- [MAPSEC_LITTLEROOT_TOWN] = {MAP_GROUP(LITTLEROOT_TOWN), MAP_NUM(LITTLEROOT_TOWN), HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F},
- [MAPSEC_OLDALE_TOWN] = {MAP_GROUP(OLDALE_TOWN), MAP_NUM(OLDALE_TOWN), HEAL_LOCATION_OLDALE_TOWN},
- [MAPSEC_DEWFORD_TOWN] = {MAP_GROUP(DEWFORD_TOWN), MAP_NUM(DEWFORD_TOWN), HEAL_LOCATION_DEWFORD_TOWN},
- [MAPSEC_LAVARIDGE_TOWN] = {MAP_GROUP(LAVARIDGE_TOWN), MAP_NUM(LAVARIDGE_TOWN), HEAL_LOCATION_LAVARIDGE_TOWN},
- [MAPSEC_FALLARBOR_TOWN] = {MAP_GROUP(FALLARBOR_TOWN), MAP_NUM(FALLARBOR_TOWN), HEAL_LOCATION_FALLARBOR_TOWN},
- [MAPSEC_VERDANTURF_TOWN] = {MAP_GROUP(VERDANTURF_TOWN), MAP_NUM(VERDANTURF_TOWN), HEAL_LOCATION_VERDANTURF_TOWN},
- [MAPSEC_PACIFIDLOG_TOWN] = {MAP_GROUP(PACIFIDLOG_TOWN), MAP_NUM(PACIFIDLOG_TOWN), HEAL_LOCATION_PACIFIDLOG_TOWN},
- [MAPSEC_PETALBURG_CITY] = {MAP_GROUP(PETALBURG_CITY), MAP_NUM(PETALBURG_CITY), HEAL_LOCATION_PETALBURG_CITY},
- [MAPSEC_SLATEPORT_CITY] = {MAP_GROUP(SLATEPORT_CITY), MAP_NUM(SLATEPORT_CITY), HEAL_LOCATION_SLATEPORT_CITY},
- [MAPSEC_MAUVILLE_CITY] = {MAP_GROUP(MAUVILLE_CITY), MAP_NUM(MAUVILLE_CITY), HEAL_LOCATION_MAUVILLE_CITY},
- [MAPSEC_RUSTBORO_CITY] = {MAP_GROUP(RUSTBORO_CITY), MAP_NUM(RUSTBORO_CITY), HEAL_LOCATION_RUSTBORO_CITY},
- [MAPSEC_FORTREE_CITY] = {MAP_GROUP(FORTREE_CITY), MAP_NUM(FORTREE_CITY), HEAL_LOCATION_FORTREE_CITY},
- [MAPSEC_LILYCOVE_CITY] = {MAP_GROUP(LILYCOVE_CITY), MAP_NUM(LILYCOVE_CITY), HEAL_LOCATION_LILYCOVE_CITY},
- [MAPSEC_MOSSDEEP_CITY] = {MAP_GROUP(MOSSDEEP_CITY), MAP_NUM(MOSSDEEP_CITY), HEAL_LOCATION_MOSSDEEP_CITY},
- [MAPSEC_SOOTOPOLIS_CITY] = {MAP_GROUP(SOOTOPOLIS_CITY), MAP_NUM(SOOTOPOLIS_CITY), HEAL_LOCATION_SOOTOPOLIS_CITY},
- [MAPSEC_EVER_GRANDE_CITY] = {MAP_GROUP(EVER_GRANDE_CITY), MAP_NUM(EVER_GRANDE_CITY), HEAL_LOCATION_EVER_GRANDE_CITY},
- [MAPSEC_ROUTE_101] = {MAP_GROUP(ROUTE101), MAP_NUM(ROUTE101), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_102] = {MAP_GROUP(ROUTE102), MAP_NUM(ROUTE102), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_103] = {MAP_GROUP(ROUTE103), MAP_NUM(ROUTE103), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_104] = {MAP_GROUP(ROUTE104), MAP_NUM(ROUTE104), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_105] = {MAP_GROUP(ROUTE105), MAP_NUM(ROUTE105), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_106] = {MAP_GROUP(ROUTE106), MAP_NUM(ROUTE106), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_107] = {MAP_GROUP(ROUTE107), MAP_NUM(ROUTE107), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_108] = {MAP_GROUP(ROUTE108), MAP_NUM(ROUTE108), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_109] = {MAP_GROUP(ROUTE109), MAP_NUM(ROUTE109), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_110] = {MAP_GROUP(ROUTE110), MAP_NUM(ROUTE110), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_111] = {MAP_GROUP(ROUTE111), MAP_NUM(ROUTE111), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_112] = {MAP_GROUP(ROUTE112), MAP_NUM(ROUTE112), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_113] = {MAP_GROUP(ROUTE113), MAP_NUM(ROUTE113), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_114] = {MAP_GROUP(ROUTE114), MAP_NUM(ROUTE114), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_115] = {MAP_GROUP(ROUTE115), MAP_NUM(ROUTE115), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_116] = {MAP_GROUP(ROUTE116), MAP_NUM(ROUTE116), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_117] = {MAP_GROUP(ROUTE117), MAP_NUM(ROUTE117), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_118] = {MAP_GROUP(ROUTE118), MAP_NUM(ROUTE118), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_119] = {MAP_GROUP(ROUTE119), MAP_NUM(ROUTE119), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_120] = {MAP_GROUP(ROUTE120), MAP_NUM(ROUTE120), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_121] = {MAP_GROUP(ROUTE121), MAP_NUM(ROUTE121), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_122] = {MAP_GROUP(ROUTE122), MAP_NUM(ROUTE122), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_123] = {MAP_GROUP(ROUTE123), MAP_NUM(ROUTE123), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_124] = {MAP_GROUP(ROUTE124), MAP_NUM(ROUTE124), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_125] = {MAP_GROUP(ROUTE125), MAP_NUM(ROUTE125), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_126] = {MAP_GROUP(ROUTE126), MAP_NUM(ROUTE126), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_127] = {MAP_GROUP(ROUTE127), MAP_NUM(ROUTE127), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_128] = {MAP_GROUP(ROUTE128), MAP_NUM(ROUTE128), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_129] = {MAP_GROUP(ROUTE129), MAP_NUM(ROUTE129), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_130] = {MAP_GROUP(ROUTE130), MAP_NUM(ROUTE130), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_131] = {MAP_GROUP(ROUTE131), MAP_NUM(ROUTE131), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_132] = {MAP_GROUP(ROUTE132), MAP_NUM(ROUTE132), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_133] = {MAP_GROUP(ROUTE133), MAP_NUM(ROUTE133), HEAL_LOCATION_NONE},
- [MAPSEC_ROUTE_134] = {MAP_GROUP(ROUTE134), MAP_NUM(ROUTE134), HEAL_LOCATION_NONE},
+ [MAPSEC_LITTLEROOT_TOWN] = {MAP_GROUP(MAP_LITTLEROOT_TOWN), MAP_NUM(MAP_LITTLEROOT_TOWN), HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F},
+ [MAPSEC_OLDALE_TOWN] = {MAP_GROUP(MAP_OLDALE_TOWN), MAP_NUM(MAP_OLDALE_TOWN), HEAL_LOCATION_OLDALE_TOWN},
+ [MAPSEC_DEWFORD_TOWN] = {MAP_GROUP(MAP_DEWFORD_TOWN), MAP_NUM(MAP_DEWFORD_TOWN), HEAL_LOCATION_DEWFORD_TOWN},
+ [MAPSEC_LAVARIDGE_TOWN] = {MAP_GROUP(MAP_LAVARIDGE_TOWN), MAP_NUM(MAP_LAVARIDGE_TOWN), HEAL_LOCATION_LAVARIDGE_TOWN},
+ [MAPSEC_FALLARBOR_TOWN] = {MAP_GROUP(MAP_FALLARBOR_TOWN), MAP_NUM(MAP_FALLARBOR_TOWN), HEAL_LOCATION_FALLARBOR_TOWN},
+ [MAPSEC_VERDANTURF_TOWN] = {MAP_GROUP(MAP_VERDANTURF_TOWN), MAP_NUM(MAP_VERDANTURF_TOWN), HEAL_LOCATION_VERDANTURF_TOWN},
+ [MAPSEC_PACIFIDLOG_TOWN] = {MAP_GROUP(MAP_PACIFIDLOG_TOWN), MAP_NUM(MAP_PACIFIDLOG_TOWN), HEAL_LOCATION_PACIFIDLOG_TOWN},
+ [MAPSEC_PETALBURG_CITY] = {MAP_GROUP(MAP_PETALBURG_CITY), MAP_NUM(MAP_PETALBURG_CITY), HEAL_LOCATION_PETALBURG_CITY},
+ [MAPSEC_SLATEPORT_CITY] = {MAP_GROUP(MAP_SLATEPORT_CITY), MAP_NUM(MAP_SLATEPORT_CITY), HEAL_LOCATION_SLATEPORT_CITY},
+ [MAPSEC_MAUVILLE_CITY] = {MAP_GROUP(MAP_MAUVILLE_CITY), MAP_NUM(MAP_MAUVILLE_CITY), HEAL_LOCATION_MAUVILLE_CITY},
+ [MAPSEC_RUSTBORO_CITY] = {MAP_GROUP(MAP_RUSTBORO_CITY), MAP_NUM(MAP_RUSTBORO_CITY), HEAL_LOCATION_RUSTBORO_CITY},
+ [MAPSEC_FORTREE_CITY] = {MAP_GROUP(MAP_FORTREE_CITY), MAP_NUM(MAP_FORTREE_CITY), HEAL_LOCATION_FORTREE_CITY},
+ [MAPSEC_LILYCOVE_CITY] = {MAP_GROUP(MAP_LILYCOVE_CITY), MAP_NUM(MAP_LILYCOVE_CITY), HEAL_LOCATION_LILYCOVE_CITY},
+ [MAPSEC_MOSSDEEP_CITY] = {MAP_GROUP(MAP_MOSSDEEP_CITY), MAP_NUM(MAP_MOSSDEEP_CITY), HEAL_LOCATION_MOSSDEEP_CITY},
+ [MAPSEC_SOOTOPOLIS_CITY] = {MAP_GROUP(MAP_SOOTOPOLIS_CITY), MAP_NUM(MAP_SOOTOPOLIS_CITY), HEAL_LOCATION_SOOTOPOLIS_CITY},
+ [MAPSEC_EVER_GRANDE_CITY] = {MAP_GROUP(MAP_EVER_GRANDE_CITY), MAP_NUM(MAP_EVER_GRANDE_CITY), HEAL_LOCATION_EVER_GRANDE_CITY},
+ [MAPSEC_ROUTE_101] = {MAP_GROUP(MAP_ROUTE101), MAP_NUM(MAP_ROUTE101), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_102] = {MAP_GROUP(MAP_ROUTE102), MAP_NUM(MAP_ROUTE102), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_103] = {MAP_GROUP(MAP_ROUTE103), MAP_NUM(MAP_ROUTE103), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_104] = {MAP_GROUP(MAP_ROUTE104), MAP_NUM(MAP_ROUTE104), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_105] = {MAP_GROUP(MAP_ROUTE105), MAP_NUM(MAP_ROUTE105), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_106] = {MAP_GROUP(MAP_ROUTE106), MAP_NUM(MAP_ROUTE106), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_107] = {MAP_GROUP(MAP_ROUTE107), MAP_NUM(MAP_ROUTE107), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_108] = {MAP_GROUP(MAP_ROUTE108), MAP_NUM(MAP_ROUTE108), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_109] = {MAP_GROUP(MAP_ROUTE109), MAP_NUM(MAP_ROUTE109), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_110] = {MAP_GROUP(MAP_ROUTE110), MAP_NUM(MAP_ROUTE110), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_111] = {MAP_GROUP(MAP_ROUTE111), MAP_NUM(MAP_ROUTE111), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_112] = {MAP_GROUP(MAP_ROUTE112), MAP_NUM(MAP_ROUTE112), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_113] = {MAP_GROUP(MAP_ROUTE113), MAP_NUM(MAP_ROUTE113), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_114] = {MAP_GROUP(MAP_ROUTE114), MAP_NUM(MAP_ROUTE114), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_115] = {MAP_GROUP(MAP_ROUTE115), MAP_NUM(MAP_ROUTE115), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_116] = {MAP_GROUP(MAP_ROUTE116), MAP_NUM(MAP_ROUTE116), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_117] = {MAP_GROUP(MAP_ROUTE117), MAP_NUM(MAP_ROUTE117), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_118] = {MAP_GROUP(MAP_ROUTE118), MAP_NUM(MAP_ROUTE118), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_119] = {MAP_GROUP(MAP_ROUTE119), MAP_NUM(MAP_ROUTE119), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_120] = {MAP_GROUP(MAP_ROUTE120), MAP_NUM(MAP_ROUTE120), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_121] = {MAP_GROUP(MAP_ROUTE121), MAP_NUM(MAP_ROUTE121), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_122] = {MAP_GROUP(MAP_ROUTE122), MAP_NUM(MAP_ROUTE122), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_123] = {MAP_GROUP(MAP_ROUTE123), MAP_NUM(MAP_ROUTE123), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_124] = {MAP_GROUP(MAP_ROUTE124), MAP_NUM(MAP_ROUTE124), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_125] = {MAP_GROUP(MAP_ROUTE125), MAP_NUM(MAP_ROUTE125), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_126] = {MAP_GROUP(MAP_ROUTE126), MAP_NUM(MAP_ROUTE126), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_127] = {MAP_GROUP(MAP_ROUTE127), MAP_NUM(MAP_ROUTE127), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_128] = {MAP_GROUP(MAP_ROUTE128), MAP_NUM(MAP_ROUTE128), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_129] = {MAP_GROUP(MAP_ROUTE129), MAP_NUM(MAP_ROUTE129), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_130] = {MAP_GROUP(MAP_ROUTE130), MAP_NUM(MAP_ROUTE130), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_131] = {MAP_GROUP(MAP_ROUTE131), MAP_NUM(MAP_ROUTE131), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_132] = {MAP_GROUP(MAP_ROUTE132), MAP_NUM(MAP_ROUTE132), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_133] = {MAP_GROUP(MAP_ROUTE133), MAP_NUM(MAP_ROUTE133), HEAL_LOCATION_NONE},
+ [MAPSEC_ROUTE_134] = {MAP_GROUP(MAP_ROUTE134), MAP_NUM(MAP_ROUTE134), HEAL_LOCATION_NONE},
};
static const u8 *const sEverGrandeCityNames[] =
@@ -976,10 +976,10 @@ static void InitMapBasedOnPlayerLocation(void)
u16 xOnMap;
struct WarpData *warp;
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SS_TIDAL_CORRIDOR)
- && (gSaveBlock1Ptr->location.mapNum == MAP_NUM(SS_TIDAL_CORRIDOR)
- || gSaveBlock1Ptr->location.mapNum == MAP_NUM(SS_TIDAL_LOWER_DECK)
- || gSaveBlock1Ptr->location.mapNum == MAP_NUM(SS_TIDAL_ROOMS)))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_SS_TIDAL_CORRIDOR)
+ && (gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_SS_TIDAL_CORRIDOR)
+ || gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_SS_TIDAL_LOWER_DECK)
+ || gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_SS_TIDAL_ROOMS)))
{
RegionMap_InitializeStateBasedOnSSTidalLocation();
return;
diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c
index fd2ed03cca..17a5d3b268 100644
--- a/src/reshow_battle_screen.c
+++ b/src/reshow_battle_screen.c
@@ -18,9 +18,9 @@
// this file's functions
static void CB2_ReshowBattleScreenAfterMenu(void);
-static bool8 LoadBattlerSpriteGfx(u8 battlerId);
-static void CreateBattlerSprite(u8 battlerId);
-static void CreateHealthboxSprite(u8 battlerId);
+static bool8 LoadBattlerSpriteGfx(u8 battler);
+static void CreateBattlerSprite(u8 battler);
+static void CreateHealthboxSprite(u8 battler);
static void ClearBattleBgCntBaseBlocks(void);
void ReshowBattleScreenDummy(void)
diff --git a/src/roamer.c b/src/roamer.c
index e9dc72a993..d5bba00e13 100644
--- a/src/roamer.c
+++ b/src/roamer.c
@@ -18,7 +18,7 @@ enum
EWRAM_DATA static u8 sLocationHistory[3][2] = {0};
EWRAM_DATA static u8 sRoamerLocation[2] = {0};
-#define ___ MAP_NUM(UNDEFINED) // For empty spots in the location table
+#define ___ MAP_NUM(MAP_UNDEFINED) // For empty spots in the location table
// Note: There are two potential softlocks that can occur with this table if its maps are
// changed in particular ways. They can be avoided by ensuring the following:
@@ -34,26 +34,26 @@ EWRAM_DATA static u8 sRoamerLocation[2] = {0};
// from that map when it lands there.
static const u8 sRoamerLocations[][6] =
{
- { MAP_NUM(ROUTE110), MAP_NUM(ROUTE111), MAP_NUM(ROUTE117), MAP_NUM(ROUTE118), MAP_NUM(ROUTE134), ___ },
- { MAP_NUM(ROUTE111), MAP_NUM(ROUTE110), MAP_NUM(ROUTE117), MAP_NUM(ROUTE118), ___, ___ },
- { MAP_NUM(ROUTE117), MAP_NUM(ROUTE111), MAP_NUM(ROUTE110), MAP_NUM(ROUTE118), ___, ___ },
- { MAP_NUM(ROUTE118), MAP_NUM(ROUTE117), MAP_NUM(ROUTE110), MAP_NUM(ROUTE111), MAP_NUM(ROUTE119), MAP_NUM(ROUTE123) },
- { MAP_NUM(ROUTE119), MAP_NUM(ROUTE118), MAP_NUM(ROUTE120), ___, ___, ___ },
- { MAP_NUM(ROUTE120), MAP_NUM(ROUTE119), MAP_NUM(ROUTE121), ___, ___, ___ },
- { MAP_NUM(ROUTE121), MAP_NUM(ROUTE120), MAP_NUM(ROUTE122), MAP_NUM(ROUTE123), ___, ___ },
- { MAP_NUM(ROUTE122), MAP_NUM(ROUTE121), MAP_NUM(ROUTE123), ___, ___, ___ },
- { MAP_NUM(ROUTE123), MAP_NUM(ROUTE122), MAP_NUM(ROUTE118), ___, ___, ___ },
- { MAP_NUM(ROUTE124), MAP_NUM(ROUTE121), MAP_NUM(ROUTE125), MAP_NUM(ROUTE126), ___, ___ },
- { MAP_NUM(ROUTE125), MAP_NUM(ROUTE124), MAP_NUM(ROUTE127), ___, ___, ___ },
- { MAP_NUM(ROUTE126), MAP_NUM(ROUTE124), MAP_NUM(ROUTE127), ___, ___, ___ },
- { MAP_NUM(ROUTE127), MAP_NUM(ROUTE125), MAP_NUM(ROUTE126), MAP_NUM(ROUTE128), ___, ___ },
- { MAP_NUM(ROUTE128), MAP_NUM(ROUTE127), MAP_NUM(ROUTE129), ___, ___, ___ },
- { MAP_NUM(ROUTE129), MAP_NUM(ROUTE128), MAP_NUM(ROUTE130), ___, ___, ___ },
- { MAP_NUM(ROUTE130), MAP_NUM(ROUTE129), MAP_NUM(ROUTE131), ___, ___, ___ },
- { MAP_NUM(ROUTE131), MAP_NUM(ROUTE130), MAP_NUM(ROUTE132), ___, ___, ___ },
- { MAP_NUM(ROUTE132), MAP_NUM(ROUTE131), MAP_NUM(ROUTE133), ___, ___, ___ },
- { MAP_NUM(ROUTE133), MAP_NUM(ROUTE132), MAP_NUM(ROUTE134), ___, ___, ___ },
- { MAP_NUM(ROUTE134), MAP_NUM(ROUTE133), MAP_NUM(ROUTE110), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE110), MAP_NUM(MAP_ROUTE111), MAP_NUM(MAP_ROUTE117), MAP_NUM(MAP_ROUTE118), MAP_NUM(MAP_ROUTE134), ___ },
+ { MAP_NUM(MAP_ROUTE111), MAP_NUM(MAP_ROUTE110), MAP_NUM(MAP_ROUTE117), MAP_NUM(MAP_ROUTE118), ___, ___ },
+ { MAP_NUM(MAP_ROUTE117), MAP_NUM(MAP_ROUTE111), MAP_NUM(MAP_ROUTE110), MAP_NUM(MAP_ROUTE118), ___, ___ },
+ { MAP_NUM(MAP_ROUTE118), MAP_NUM(MAP_ROUTE117), MAP_NUM(MAP_ROUTE110), MAP_NUM(MAP_ROUTE111), MAP_NUM(MAP_ROUTE119), MAP_NUM(MAP_ROUTE123) },
+ { MAP_NUM(MAP_ROUTE119), MAP_NUM(MAP_ROUTE118), MAP_NUM(MAP_ROUTE120), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE120), MAP_NUM(MAP_ROUTE119), MAP_NUM(MAP_ROUTE121), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE121), MAP_NUM(MAP_ROUTE120), MAP_NUM(MAP_ROUTE122), MAP_NUM(MAP_ROUTE123), ___, ___ },
+ { MAP_NUM(MAP_ROUTE122), MAP_NUM(MAP_ROUTE121), MAP_NUM(MAP_ROUTE123), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE123), MAP_NUM(MAP_ROUTE122), MAP_NUM(MAP_ROUTE118), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE124), MAP_NUM(MAP_ROUTE121), MAP_NUM(MAP_ROUTE125), MAP_NUM(MAP_ROUTE126), ___, ___ },
+ { MAP_NUM(MAP_ROUTE125), MAP_NUM(MAP_ROUTE124), MAP_NUM(MAP_ROUTE127), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE126), MAP_NUM(MAP_ROUTE124), MAP_NUM(MAP_ROUTE127), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE127), MAP_NUM(MAP_ROUTE125), MAP_NUM(MAP_ROUTE126), MAP_NUM(MAP_ROUTE128), ___, ___ },
+ { MAP_NUM(MAP_ROUTE128), MAP_NUM(MAP_ROUTE127), MAP_NUM(MAP_ROUTE129), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE129), MAP_NUM(MAP_ROUTE128), MAP_NUM(MAP_ROUTE130), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE130), MAP_NUM(MAP_ROUTE129), MAP_NUM(MAP_ROUTE131), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE131), MAP_NUM(MAP_ROUTE130), MAP_NUM(MAP_ROUTE132), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE132), MAP_NUM(MAP_ROUTE131), MAP_NUM(MAP_ROUTE133), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE133), MAP_NUM(MAP_ROUTE132), MAP_NUM(MAP_ROUTE134), ___, ___, ___ },
+ { MAP_NUM(MAP_ROUTE134), MAP_NUM(MAP_ROUTE133), MAP_NUM(MAP_ROUTE110), ___, ___, ___ },
{ ___, ___, ___, ___, ___, ___ },
};
@@ -172,7 +172,7 @@ void RoamerMove(void)
mapNum = sRoamerLocations[locSet][(Random() % (NUM_LOCATIONS_PER_SET - 1)) + 1];
if (!(sLocationHistory[2][MAP_GRP] == ROAMER_MAP_GROUP
&& sLocationHistory[2][MAP_NUM] == mapNum)
- && mapNum != MAP_NUM(UNDEFINED))
+ && mapNum != MAP_NUM(MAP_UNDEFINED))
break;
}
sRoamerLocation[MAP_NUM] = mapNum;
diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c
index 36ff3401d3..4f219d15b6 100644
--- a/src/rom_header_gf.c
+++ b/src/rom_header_gf.c
@@ -8,7 +8,7 @@
// The purpose of this struct is for outside applications to be
// able to access parts of the ROM or its save file, like a public API.
-// In vanilla, it was used by Colosseum and XD to access pokemon graphics.
+// In vanilla, it was used by Colosseum and XD to access Pokémon graphics.
//
// If this struct is rearranged in any way, it defeats the purpose of
// having it at all. Applications like PKHex or streaming HUDs may find
@@ -20,16 +20,16 @@ struct GFRomHeader
u32 version;
u32 language;
u8 gameName[32];
- const struct CompressedSpriteSheet * monFrontPics;
- const struct CompressedSpriteSheet * monBackPics;
- const struct CompressedSpritePalette * monNormalPalettes;
- const struct CompressedSpritePalette * monShinyPalettes;
- const u8 * const * monIcons;
- const u8 * monIconPaletteIds;
- const struct SpritePalette * monIconPalettes;
- const u8 (* monSpeciesNames)[];
- const u8 (* moveNames)[];
- const struct Decoration * decorations;
+ const struct CompressedSpriteSheet *monFrontPics;
+ const struct CompressedSpriteSheet *monBackPics;
+ const struct CompressedSpritePalette *monNormalPalettes;
+ const struct CompressedSpritePalette *monShinyPalettes;
+ const u8 *const *monIcons;
+ const u8 *monIconPaletteIds;
+ const struct SpritePalette *monIconPalettes;
+ const u8 (*monSpeciesNames)[];
+ const u8 (*moveNames)[];
+ const struct Decoration *decorations;
u32 flagsOffset;
u32 varsOffset;
u32 pokedexOffset;
@@ -69,13 +69,13 @@ struct GFRomHeader
u32 externalEventFlagsOffset;
u32 externalEventDataOffset;
u32 unk18;
- const struct SpeciesInfo * speciesInfo;
- const u8 (* abilityNames)[];
- const u8 * const * abilityDescriptions;
- const struct Item * items;
- const struct BattleMove * moves;
- const struct CompressedSpriteSheet * ballGfx;
- const struct CompressedSpritePalette * ballPalettes;
+ const struct SpeciesInfo *speciesInfo;
+ const u8 (*abilityNames)[];
+ const u8 *const *abilityDescriptions;
+ const struct Item *items;
+ const struct BattleMove *moves;
+ const struct CompressedSpriteSheet *ballGfx;
+ const struct CompressedSpritePalette *ballPalettes;
u32 gcnLinkFlagsOffset;
u32 gameClearFlag;
u32 ribbonFlag;
@@ -89,7 +89,7 @@ struct GFRomHeader
u32 giftRibbonsOffset;
u32 enigmaBerryOffset;
u32 enigmaBerrySize;
- const u8 * moveDescriptions;
+ const u8 *moveDescriptions;
u32 unk20;
};
diff --git a/src/rotating_gate.c b/src/rotating_gate.c
index 0b0c68a836..2c16057fdf 100644
--- a/src/rotating_gate.c
+++ b/src/rotating_gate.c
@@ -3,6 +3,7 @@
#include "event_data.h"
#include "event_object_movement.h"
#include "fieldmap.h"
+#include "rotating_gate.h"
#include "sound.h"
#include "sprite.h"
#include "constants/songs.h"
@@ -623,14 +624,14 @@ static EWRAM_DATA u8 sRotatingGate_PuzzleCount = 0;
static s32 GetCurrentMapRotatingGatePuzzleType(void)
{
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(FORTREE_CITY_GYM) &&
- gSaveBlock1Ptr->location.mapNum == MAP_NUM(FORTREE_CITY_GYM))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_FORTREE_CITY_GYM) &&
+ gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_FORTREE_CITY_GYM))
{
return PUZZLE_FORTREE_CITY_GYM;
}
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE110_TRICK_HOUSE_PUZZLE6) &&
- gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE110_TRICK_HOUSE_PUZZLE6))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ROUTE110_TRICK_HOUSE_PUZZLE6) &&
+ gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ROUTE110_TRICK_HOUSE_PUZZLE6))
{
return PUZZLE_ROUTE110_TRICK_HOUSE_PUZZLE6;
}
@@ -938,7 +939,7 @@ void RotatingGate_InitPuzzle(void)
}
}
-void RotatingGatePuzzleCameraUpdate(u16 deltaX, u16 deltaY)
+void RotatingGatePuzzleCameraUpdate(s16 deltaX, s16 deltaY)
{
if (GetCurrentMapRotatingGatePuzzleType())
{
@@ -957,7 +958,7 @@ void RotatingGate_InitPuzzleAndGraphics(void)
}
}
-bool8 CheckForRotatingGatePuzzleCollision(u8 direction, s16 x, s16 y)
+bool32 CheckForRotatingGatePuzzleCollision(u8 direction, s16 x, s16 y)
{
s32 i;
@@ -995,7 +996,7 @@ bool8 CheckForRotatingGatePuzzleCollision(u8 direction, s16 x, s16 y)
return FALSE;
}
-bool8 CheckForRotatingGatePuzzleCollisionWithoutAnimation(u8 direction, s16 x, s16 y)
+bool32 CheckForRotatingGatePuzzleCollisionWithoutAnimation(u8 direction, s16 x, s16 y)
{
s32 i;
diff --git a/src/rotating_tile_puzzle.c b/src/rotating_tile_puzzle.c
index 7581b81072..0eb58f9c1e 100644
--- a/src/rotating_tile_puzzle.c
+++ b/src/rotating_tile_puzzle.c
@@ -100,7 +100,7 @@ void FreeRotatingTilePuzzle(void)
TRY_FREE_AND_SET_NULL(sRotatingTilePuzzle);
- id = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ id = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[id]);
ScriptMovement_UnfreezeObjectEvents();
}
@@ -109,7 +109,7 @@ u16 MoveRotatingTileObjects(u8 puzzleNumber)
{
u8 i;
struct ObjectEventTemplate *objectEvents = gSaveBlock1Ptr->objectEventTemplates;
- u16 localId = 0;
+ u16 localId = LOCALID_NONE;
for (i = 0; i < OBJECT_EVENT_TEMPLATES_COUNT; i++)
{
diff --git a/src/roulette.c b/src/roulette.c
index 44dac2db6c..f4e6012a8d 100644
--- a/src/roulette.c
+++ b/src/roulette.c
@@ -70,13 +70,13 @@
// Get the id of the col/row from the selection ID
// e.g. GET_ROW(SQU_PURPLE_SKITTY) is ROW_PURPLE
-#define GET_COL(selectionId)((selectionId) % (NUM_BOARD_POKES + 1))
-#define GET_ROW(selectionId)((selectionId) / (NUM_BOARD_POKES + 1) * (NUM_BOARD_POKES + 1))
+#define GET_COL(selectionId) ((selectionId) % (NUM_BOARD_POKES + 1))
+#define GET_ROW(selectionId) ((selectionId) / (NUM_BOARD_POKES + 1) * (NUM_BOARD_POKES + 1))
// Get the col/row index from the selection ID
// e.g. GET_ROW_IDX(SQU_PURPLE_SKITTY) is 2 (purple being the 3rd row)
-#define GET_COL_IDX(selectionId)(selectionId - 1)
-#define GET_ROW_IDX(selectionId)(selectionId / 5 - 1)
+#define GET_COL_IDX(selectionId) (selectionId - 1)
+#define GET_ROW_IDX(selectionId) (selectionId / 5 - 1)
// Flags for the above selections, used to set which spaces have been hit or bet on
#define F_WYNAUT_COL (1 << COL_WYNAUT)
@@ -149,7 +149,7 @@
// 2 different Roulette tables with 2 different rates (normal vs service day special)
// & 1 gets which table, >> 7 gets if ROULETTE_SPECIAL_RATE is set
-#define GET_MIN_BET_ID(var)(((var) & 1) + (((var) >> 7) * 2))
+#define GET_MIN_BET_ID(var) (((var) & 1) + (((var) >> 7) * 2))
// Having Shroomish or Taillow in the party can make rolls more consistent in length
// It also increases the likelihood that, if they appear to unstick a ball, they'll move it to a slot the player bet on
@@ -990,8 +990,8 @@ static const struct RouletteFlashSettings sFlashData_Colors[NUM_ROULETTE_SLOTS +
},
};
-// Data to flash any pokemon icon (F_FLASH_ICON) on the roulette wheel. One entry for each color row
-// Each poke icon flashes with the tint of the row color it belongs to, so the pokemon itself is irrelevant
+// Data to flash any Pokémon icon (F_FLASH_ICON) on the roulette wheel. One entry for each color row
+// Each poke icon flashes with the tint of the row color it belongs to, so the Pokémon itself is irrelevant
static const struct RouletteFlashSettings sFlashData_PokeIcons[NUM_BOARD_COLORS] =
{
[GET_ROW_IDX(ROW_ORANGE)] = {
@@ -2702,7 +2702,7 @@ static const struct SpriteTemplate sSpriteTemplates_GridIcons[NUM_BOARD_POKES] =
}
};
-// Wheel icons are listed clockwise starting from 1 oclock on the roulette wheel (with pokeball upside right)
+// Wheel icons are listed clockwise starting from 1 oclock on the roulette wheel (with Poké Ball upside right)
// They go Wynaut -> Azurill -> Skitty -> Makuhita, and Orange -> Green -> Purple
static const struct SpriteTemplate sSpriteTemplates_WheelIcons[NUM_ROULETTE_SLOTS] =
{
@@ -4481,7 +4481,7 @@ static void SetBallStuck(struct Sprite *sprite)
// The below slot ids are relative to the slot the ball got stuck on
if ((sRoulette->useTaillow + 1) & sRoulette->partySpeciesFlags)
{
- // If the player has the corresponding pokemon in their party (HAS_SHROOMISH or HAS_TAILLOW),
+ // If the player has the corresponding Pokémon in their party (HAS_SHROOMISH or HAS_TAILLOW),
// there's a 75% chance that the ball will be moved to a spot they bet on
// assuming it was one of the slots identified as a candidate
if (betSlotId && (rand % 256) < 192)
diff --git a/src/rtc.c b/src/rtc.c
index b79f62a3c4..08d5ec4c98 100644
--- a/src/rtc.c
+++ b/src/rtc.c
@@ -10,7 +10,7 @@ static u8 sProbeResult;
static u16 sSavedIme;
// iwram common
-struct Time gLocalTime;
+COMMON_DATA struct Time gLocalTime = {0};
// const rom
diff --git a/src/save.c b/src/save.c
index 765fb045c3..bff1384c52 100644
--- a/src/save.c
+++ b/src/save.c
@@ -79,19 +79,19 @@ STATIC_ASSERT(sizeof(struct SaveBlock2) <= SECTOR_DATA_SIZE, SaveBlock2FreeSpace
STATIC_ASSERT(sizeof(struct SaveBlock1) <= SECTOR_DATA_SIZE * (SECTOR_ID_SAVEBLOCK1_END - SECTOR_ID_SAVEBLOCK1_START + 1), SaveBlock1FreeSpace);
STATIC_ASSERT(sizeof(struct PokemonStorage) <= SECTOR_DATA_SIZE * (SECTOR_ID_PKMN_STORAGE_END - SECTOR_ID_PKMN_STORAGE_START + 1), PokemonStorageFreeSpace);
-u16 gLastWrittenSector;
-u32 gLastSaveCounter;
-u16 gLastKnownGoodSector;
-u32 gDamagedSaveSectors;
-u32 gSaveCounter;
-struct SaveSector *gReadWriteSector; // Pointer to a buffer for reading/writing a sector
-u16 gIncrementalSectorId;
-u16 gSaveUnusedVar;
-u16 gSaveFileStatus;
-void (*gGameContinueCallback)(void);
-struct SaveSectorLocation gRamSaveSectorLocations[NUM_SECTORS_PER_SLOT];
-u16 gSaveUnusedVar2;
-u16 gSaveAttemptStatus;
+COMMON_DATA u16 gLastWrittenSector = 0;
+COMMON_DATA u32 gLastSaveCounter = 0;
+COMMON_DATA u16 gLastKnownGoodSector = 0;
+COMMON_DATA u32 gDamagedSaveSectors = 0;
+COMMON_DATA u32 gSaveCounter = 0;
+COMMON_DATA struct SaveSector *gReadWriteSector = NULL; // Pointer to a buffer for reading/writing a sector
+COMMON_DATA u16 gIncrementalSectorId = 0;
+COMMON_DATA u16 gSaveUnusedVar = 0;
+COMMON_DATA u16 gSaveFileStatus = 0;
+COMMON_DATA void (*gGameContinueCallback)(void) = NULL;
+COMMON_DATA struct SaveSectorLocation gRamSaveSectorLocations[NUM_SECTORS_PER_SLOT] = {0};
+COMMON_DATA u16 gSaveUnusedVar2 = 0;
+COMMON_DATA u16 gSaveAttemptStatus = 0;
EWRAM_DATA struct SaveSector gSaveDataBuffer = {0}; // Buffer used for reading/writing sectors
EWRAM_DATA static u8 sUnusedVar = 0;
@@ -826,7 +826,7 @@ bool8 LinkFullSave_SetLastSectorSignature(void)
return FALSE;
}
-u8 WriteSaveBlock2(void)
+bool8 WriteSaveBlock2(void)
{
if (gFlashMemoryPresent != TRUE)
return TRUE;
@@ -902,7 +902,7 @@ u8 LoadGameSave(u8 saveType)
u16 GetSaveBlocksPointersBaseOffset(void)
{
u16 i, slotOffset;
- struct SaveSector* sector;
+ struct SaveSector *sector;
sector = gReadWriteSector = &gSaveDataBuffer;
if (gFlashMemoryPresent != TRUE)
diff --git a/src/save_location.c b/src/save_location.c
index 74d2f2c44d..3384200598 100644
--- a/src/save_location.c
+++ b/src/save_location.c
@@ -119,9 +119,9 @@ void TrySetMapSaveWarpStatus(void)
TrySetUnknownWarpStatus();
}
-// In FRLG, only bits 0, 4, and 5 are set when the pokedex is received.
+// In FRLG, only bits 0, 4, and 5 are set when the Pokédex is received.
// Bits 1, 2, 3, and 15 are instead set by SetPostgameFlags.
-// These flags are read by Pokemon Colosseum/XD for linking. XD Additionally requires FLAG_SYS_GAME_CLEAR
+// These flags are read by Pokémon Colosseum/XD for linking. XD Additionally requires FLAG_SYS_GAME_CLEAR
void SetUnlockedPokedexFlags(void)
{
gSaveBlock2Ptr->gcnLinkFlags |= (1 << 15);
diff --git a/src/scrcmd.c b/src/scrcmd.c
index 147a11b869..32502e97ce 100644
--- a/src/scrcmd.c
+++ b/src/scrcmd.c
@@ -71,7 +71,7 @@ static void CloseBrailleWindow(void);
// This is defined in here so the optimizer can't see its value when compiling
// script.c.
-void * const gNullScriptPtr = NULL;
+void *const gNullScriptPtr = NULL;
static const u8 sScriptConditionTable[6][3] =
{
@@ -84,7 +84,7 @@ static const u8 sScriptConditionTable[6][3] =
{1, 0, 1}, // !=
};
-static u8 * const sScriptStringVars[] =
+static u8 *const sScriptStringVars[] =
{
gStringVar1,
gStringVar2,
@@ -786,7 +786,7 @@ bool8 ScrCmd_warphole(struct ScriptContext *ctx)
u16 y;
PlayerGetDestCoords(&x, &y);
- if (mapGroup == MAP_GROUP(UNDEFINED) && mapNum == MAP_NUM(UNDEFINED))
+ if (mapGroup == MAP_GROUP(MAP_UNDEFINED) && mapNum == MAP_NUM(MAP_UNDEFINED))
SetWarpDestinationToFixedHoleWarp(x - MAP_OFFSET, y - MAP_OFFSET);
else
SetWarpDestination(mapGroup, mapNum, WARP_ID_NONE, x - MAP_OFFSET, y - MAP_OFFSET);
@@ -1020,7 +1020,7 @@ bool8 ScrCmd_waitmovement(struct ScriptContext *ctx)
{
u16 localId = VarGet(ScriptReadHalfword(ctx));
- if (localId != 0)
+ if (localId != LOCALID_NONE)
sMovingNpcId = localId;
sMovingNpcMapGroup = gSaveBlock1Ptr->location.mapGroup;
sMovingNpcMapNum = gSaveBlock1Ptr->location.mapNum;
@@ -1034,7 +1034,7 @@ bool8 ScrCmd_waitmovementat(struct ScriptContext *ctx)
u8 mapGroup;
u8 mapNum;
- if (localId != 0)
+ if (localId != LOCALID_NONE)
sMovingNpcId = localId;
mapGroup = ScriptReadByte(ctx);
mapNum = ScriptReadByte(ctx);
@@ -1241,7 +1241,7 @@ bool8 ScrCmd_releaseall(struct ScriptContext *ctx)
u8 playerObjectId;
HideFieldMessageBox();
- playerObjectId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ playerObjectId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]);
ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents();
@@ -1255,7 +1255,7 @@ bool8 ScrCmd_release(struct ScriptContext *ctx)
HideFieldMessageBox();
if (gObjectEvents[gSelectedObjectEvent].active)
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[gSelectedObjectEvent]);
- playerObjectId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
+ playerObjectId = GetObjectEventIdByLocalIdAndMap(LOCALID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]);
ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents();
@@ -1607,9 +1607,9 @@ bool8 ScrCmd_bufferdecorationname(struct ScriptContext *ctx)
bool8 ScrCmd_buffermovename(struct ScriptContext *ctx)
{
u8 stringVarIndex = ScriptReadByte(ctx);
- u16 moveId = VarGet(ScriptReadHalfword(ctx));
+ u16 move = VarGet(ScriptReadHalfword(ctx));
- StringCopy(sScriptStringVars[stringVarIndex], gMoveNames[moveId]);
+ StringCopy(sScriptStringVars[stringVarIndex], gMoveNames[move]);
return FALSE;
}
@@ -1712,7 +1712,7 @@ bool8 ScrCmd_setmonmove(struct ScriptContext *ctx)
bool8 ScrCmd_checkpartymove(struct ScriptContext *ctx)
{
u8 i;
- u16 moveId = ScriptReadHalfword(ctx);
+ u16 move = ScriptReadHalfword(ctx);
gSpecialVar_Result = PARTY_SIZE;
for (i = 0; i < PARTY_SIZE; i++)
@@ -1720,7 +1720,7 @@ bool8 ScrCmd_checkpartymove(struct ScriptContext *ctx)
u16 species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES, NULL);
if (!species)
break;
- if (!GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) && MonKnowsMove(&gPlayerParty[i], moveId) == TRUE)
+ if (!GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) && MonKnowsMove(&gPlayerParty[i], move) == TRUE)
{
gSpecialVar_Result = i;
gSpecialVar_0x8004 = species;
@@ -2207,7 +2207,7 @@ bool8 ScrCmd_lockfortrainer(struct ScriptContext *ctx)
}
// This command will set a Pokémon's modernFatefulEncounter bit; there is no similar command to clear it.
-bool8 ScrCmd_setmonmodernfatefulencounter(struct ScriptContext *ctx)
+bool8 ScrCmd_setmodernfatefulencounter(struct ScriptContext *ctx)
{
bool8 isModernFatefulEncounter = TRUE;
u16 partyIndex = VarGet(ScriptReadHalfword(ctx));
@@ -2216,7 +2216,7 @@ bool8 ScrCmd_setmonmodernfatefulencounter(struct ScriptContext *ctx)
return FALSE;
}
-bool8 ScrCmd_checkmonmodernfatefulencounter(struct ScriptContext *ctx)
+bool8 ScrCmd_checkmodernfatefulencounter(struct ScriptContext *ctx)
{
u16 partyIndex = VarGet(ScriptReadHalfword(ctx));
diff --git a/src/script.c b/src/script.c
index c252c95f04..a953ff1e75 100644
--- a/src/script.c
+++ b/src/script.c
@@ -29,7 +29,7 @@ static bool8 sLockFieldControls;
extern ScrCmdFunc gScriptCmdTable[];
extern ScrCmdFunc gScriptCmdTableEnd[];
-extern void *gNullScriptPtr;
+extern void *const gNullScriptPtr;
void InitScriptContext(struct ScriptContext *ctx, void *cmdTable, void *cmdTableEnd)
{
@@ -378,7 +378,7 @@ void ClearRamScript(void)
CpuFill32(0, &gSaveBlock1Ptr->ramScript, sizeof(struct RamScript));
}
-bool8 InitRamScript(const u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objectId)
+bool8 InitRamScript(const u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 localId)
{
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
@@ -390,13 +390,13 @@ bool8 InitRamScript(const u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8
scriptData->magic = RAM_SCRIPT_MAGIC;
scriptData->mapGroup = mapGroup;
scriptData->mapNum = mapNum;
- scriptData->objectId = objectId;
+ scriptData->localId = localId;
memcpy(scriptData->script, script, scriptSize);
gSaveBlock1Ptr->ramScript.checksum = CalculateRamScriptChecksum();
return TRUE;
}
-const u8 *GetRamScript(u8 objectId, const u8 *script)
+const u8 *GetRamScript(u8 localId, const u8 *script)
{
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
gRamScriptRetAddr = NULL;
@@ -406,7 +406,7 @@ const u8 *GetRamScript(u8 objectId, const u8 *script)
return script;
if (scriptData->mapNum != gSaveBlock1Ptr->location.mapNum)
return script;
- if (scriptData->objectId != objectId)
+ if (scriptData->localId != localId)
return script;
if (CalculateRamScriptChecksum() != gSaveBlock1Ptr->ramScript.checksum)
{
@@ -420,18 +420,18 @@ const u8 *GetRamScript(u8 objectId, const u8 *script)
}
}
-#define NO_OBJECT OBJ_EVENT_ID_PLAYER
+#define NO_OBJECT LOCALID_PLAYER
bool32 ValidateSavedRamScript(void)
{
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
if (scriptData->magic != RAM_SCRIPT_MAGIC)
return FALSE;
- if (scriptData->mapGroup != MAP_GROUP(UNDEFINED))
+ if (scriptData->mapGroup != MAP_GROUP(MAP_UNDEFINED))
return FALSE;
- if (scriptData->mapNum != MAP_NUM(UNDEFINED))
+ if (scriptData->mapNum != MAP_NUM(MAP_UNDEFINED))
return FALSE;
- if (scriptData->objectId != NO_OBJECT)
+ if (scriptData->localId != NO_OBJECT)
return FALSE;
if (CalculateRamScriptChecksum() != gSaveBlock1Ptr->ramScript.checksum)
return FALSE;
@@ -445,11 +445,11 @@ u8 *GetSavedRamScriptIfValid(void)
return NULL;
if (scriptData->magic != RAM_SCRIPT_MAGIC)
return NULL;
- if (scriptData->mapGroup != MAP_GROUP(UNDEFINED))
+ if (scriptData->mapGroup != MAP_GROUP(MAP_UNDEFINED))
return NULL;
- if (scriptData->mapNum != MAP_NUM(UNDEFINED))
+ if (scriptData->mapNum != MAP_NUM(MAP_UNDEFINED))
return NULL;
- if (scriptData->objectId != NO_OBJECT)
+ if (scriptData->localId != NO_OBJECT)
return NULL;
if (CalculateRamScriptChecksum() != gSaveBlock1Ptr->ramScript.checksum)
{
@@ -466,5 +466,5 @@ void InitRamScript_NoObjectEvent(u8 *script, u16 scriptSize)
{
if (scriptSize > sizeof(gSaveBlock1Ptr->ramScript.data.script))
scriptSize = sizeof(gSaveBlock1Ptr->ramScript.data.script);
- InitRamScript(script, scriptSize, MAP_GROUP(UNDEFINED), MAP_NUM(UNDEFINED), NO_OBJECT);
+ InitRamScript(script, scriptSize, MAP_GROUP(MAP_UNDEFINED), MAP_NUM(MAP_UNDEFINED), NO_OBJECT);
}
diff --git a/src/script_movement.c b/src/script_movement.c
index 10517dfc8e..19e058aa19 100644
--- a/src/script_movement.c
+++ b/src/script_movement.c
@@ -89,7 +89,7 @@ static bool8 ScriptMovement_TryAddNewMovement(u8 taskId, u8 objEventId, const u8
return FALSE;
}
}
- moveScrId = GetMovementScriptIdFromObjectEventId(taskId, OBJ_EVENT_ID_PLAYER);
+ moveScrId = GetMovementScriptIdFromObjectEventId(taskId, LOCALID_PLAYER);
if (moveScrId == OBJECT_EVENTS_COUNT)
{
return TRUE;
diff --git a/src/script_pokemon_util.c b/src/script_pokemon_util.c
index 6e5653884b..ed28d47c5a 100755
--- a/src/script_pokemon_util.c
+++ b/src/script_pokemon_util.c
@@ -213,7 +213,7 @@ void ReducePlayerPartyToSelectedMons(void)
CpuFill32(0, party, sizeof party);
- // copy the selected pokemon according to the order.
+ // copy the selected Pokémon according to the order.
for (i = 0; i < MAX_FRONTIER_PARTY_SIZE; i++)
if (gSelectedOrderFromParty[i]) // as long as the order keeps going (did the player select 1 mon? 2? 3?), do not stop
party[i] = gPlayerParty[gSelectedOrderFromParty[i] - 1]; // index is 0 based, not literal
diff --git a/src/secret_base.c b/src/secret_base.c
index 9509cd0fc5..df06f9120c 100644
--- a/src/secret_base.c
+++ b/src/secret_base.c
@@ -110,30 +110,30 @@ static const struct SecretBaseEntranceMetatiles sSecretBaseEntranceMetatiles[] =
// x, y positions are for when the player warps in for the first time (in front of the computer)
static const u8 sSecretBaseEntrancePositions[NUM_SECRET_BASE_GROUPS * 4] =
{
- [SECRET_BASE_RED_CAVE1] = MAP_NUM(SECRET_BASE_RED_CAVE1), 0, 1, 3,
- [SECRET_BASE_RED_CAVE2] = MAP_NUM(SECRET_BASE_RED_CAVE2), 0, 5, 9,
- [SECRET_BASE_RED_CAVE3] = MAP_NUM(SECRET_BASE_RED_CAVE3), 0, 1, 3,
- [SECRET_BASE_RED_CAVE4] = MAP_NUM(SECRET_BASE_RED_CAVE4), 0, 7, 13,
- [SECRET_BASE_BROWN_CAVE1] = MAP_NUM(SECRET_BASE_BROWN_CAVE1), 0, 2, 3,
- [SECRET_BASE_BROWN_CAVE2] = MAP_NUM(SECRET_BASE_BROWN_CAVE2), 0, 9, 2,
- [SECRET_BASE_BROWN_CAVE3] = MAP_NUM(SECRET_BASE_BROWN_CAVE3), 0, 13, 4,
- [SECRET_BASE_BROWN_CAVE4] = MAP_NUM(SECRET_BASE_BROWN_CAVE4), 0, 1, 2,
- [SECRET_BASE_BLUE_CAVE1] = MAP_NUM(SECRET_BASE_BLUE_CAVE1), 0, 1, 3,
- [SECRET_BASE_BLUE_CAVE2] = MAP_NUM(SECRET_BASE_BLUE_CAVE2), 0, 1, 2,
- [SECRET_BASE_BLUE_CAVE3] = MAP_NUM(SECRET_BASE_BLUE_CAVE3), 0, 3, 15,
- [SECRET_BASE_BLUE_CAVE4] = MAP_NUM(SECRET_BASE_BLUE_CAVE4), 0, 3, 14,
- [SECRET_BASE_YELLOW_CAVE1] = MAP_NUM(SECRET_BASE_YELLOW_CAVE1), 0, 9, 3,
- [SECRET_BASE_YELLOW_CAVE2] = MAP_NUM(SECRET_BASE_YELLOW_CAVE2), 0, 8, 7,
- [SECRET_BASE_YELLOW_CAVE3] = MAP_NUM(SECRET_BASE_YELLOW_CAVE3), 0, 3, 6,
- [SECRET_BASE_YELLOW_CAVE4] = MAP_NUM(SECRET_BASE_YELLOW_CAVE4), 0, 5, 9,
- [SECRET_BASE_TREE1] = MAP_NUM(SECRET_BASE_TREE1), 0, 2, 3,
- [SECRET_BASE_TREE2] = MAP_NUM(SECRET_BASE_TREE2), 0, 5, 6,
- [SECRET_BASE_TREE3] = MAP_NUM(SECRET_BASE_TREE3), 0, 15, 3,
- [SECRET_BASE_TREE4] = MAP_NUM(SECRET_BASE_TREE4), 0, 4, 10,
- [SECRET_BASE_SHRUB1] = MAP_NUM(SECRET_BASE_SHRUB1), 0, 3, 3,
- [SECRET_BASE_SHRUB2] = MAP_NUM(SECRET_BASE_SHRUB2), 0, 1, 2,
- [SECRET_BASE_SHRUB3] = MAP_NUM(SECRET_BASE_SHRUB3), 0, 7, 8,
- [SECRET_BASE_SHRUB4] = MAP_NUM(SECRET_BASE_SHRUB4), 0, 9, 6,
+ [SECRET_BASE_RED_CAVE1] = MAP_NUM(MAP_SECRET_BASE_RED_CAVE1), 0, 1, 3,
+ [SECRET_BASE_RED_CAVE2] = MAP_NUM(MAP_SECRET_BASE_RED_CAVE2), 0, 5, 9,
+ [SECRET_BASE_RED_CAVE3] = MAP_NUM(MAP_SECRET_BASE_RED_CAVE3), 0, 1, 3,
+ [SECRET_BASE_RED_CAVE4] = MAP_NUM(MAP_SECRET_BASE_RED_CAVE4), 0, 7, 13,
+ [SECRET_BASE_BROWN_CAVE1] = MAP_NUM(MAP_SECRET_BASE_BROWN_CAVE1), 0, 2, 3,
+ [SECRET_BASE_BROWN_CAVE2] = MAP_NUM(MAP_SECRET_BASE_BROWN_CAVE2), 0, 9, 2,
+ [SECRET_BASE_BROWN_CAVE3] = MAP_NUM(MAP_SECRET_BASE_BROWN_CAVE3), 0, 13, 4,
+ [SECRET_BASE_BROWN_CAVE4] = MAP_NUM(MAP_SECRET_BASE_BROWN_CAVE4), 0, 1, 2,
+ [SECRET_BASE_BLUE_CAVE1] = MAP_NUM(MAP_SECRET_BASE_BLUE_CAVE1), 0, 1, 3,
+ [SECRET_BASE_BLUE_CAVE2] = MAP_NUM(MAP_SECRET_BASE_BLUE_CAVE2), 0, 1, 2,
+ [SECRET_BASE_BLUE_CAVE3] = MAP_NUM(MAP_SECRET_BASE_BLUE_CAVE3), 0, 3, 15,
+ [SECRET_BASE_BLUE_CAVE4] = MAP_NUM(MAP_SECRET_BASE_BLUE_CAVE4), 0, 3, 14,
+ [SECRET_BASE_YELLOW_CAVE1] = MAP_NUM(MAP_SECRET_BASE_YELLOW_CAVE1), 0, 9, 3,
+ [SECRET_BASE_YELLOW_CAVE2] = MAP_NUM(MAP_SECRET_BASE_YELLOW_CAVE2), 0, 8, 7,
+ [SECRET_BASE_YELLOW_CAVE3] = MAP_NUM(MAP_SECRET_BASE_YELLOW_CAVE3), 0, 3, 6,
+ [SECRET_BASE_YELLOW_CAVE4] = MAP_NUM(MAP_SECRET_BASE_YELLOW_CAVE4), 0, 5, 9,
+ [SECRET_BASE_TREE1] = MAP_NUM(MAP_SECRET_BASE_TREE1), 0, 2, 3,
+ [SECRET_BASE_TREE2] = MAP_NUM(MAP_SECRET_BASE_TREE2), 0, 5, 6,
+ [SECRET_BASE_TREE3] = MAP_NUM(MAP_SECRET_BASE_TREE3), 0, 15, 3,
+ [SECRET_BASE_TREE4] = MAP_NUM(MAP_SECRET_BASE_TREE4), 0, 4, 10,
+ [SECRET_BASE_SHRUB1] = MAP_NUM(MAP_SECRET_BASE_SHRUB1), 0, 3, 3,
+ [SECRET_BASE_SHRUB2] = MAP_NUM(MAP_SECRET_BASE_SHRUB2), 0, 1, 2,
+ [SECRET_BASE_SHRUB3] = MAP_NUM(MAP_SECRET_BASE_SHRUB3), 0, 7, 8,
+ [SECRET_BASE_SHRUB4] = MAP_NUM(MAP_SECRET_BASE_SHRUB4), 0, 9, 6,
};
#define GET_BASE_MAP_NUM(group) (sSecretBaseEntrancePositions[(group) + 0])
@@ -412,7 +412,7 @@ void SetOccupiedSecretBaseEntranceMetatiles(struct MapEvents const *events)
static void SetSecretBaseWarpDestination(void)
{
s8 secretBaseGroup = SECRET_BASE_ID_TO_GROUP(sCurSecretBaseId);
- SetWarpDestinationToMapWarp(MAP_GROUP(SECRET_BASE_RED_CAVE1), GET_BASE_MAP_NUM(secretBaseGroup), GET_BASE_WARP_ID(secretBaseGroup));
+ SetWarpDestinationToMapWarp(MAP_GROUP(MAP_SECRET_BASE_RED_CAVE1), GET_BASE_MAP_NUM(secretBaseGroup), GET_BASE_WARP_ID(secretBaseGroup));
}
#define tState data[0]
@@ -509,8 +509,8 @@ void EnterNewlyCreatedSecretBase(void)
bool8 CurMapIsSecretBase(void)
{
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SECRET_BASE_RED_CAVE1)
- && (u8)gSaveBlock1Ptr->location.mapNum <= MAP_NUM(SECRET_BASE_SHRUB4))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_SECRET_BASE_RED_CAVE1)
+ && (u8)gSaveBlock1Ptr->location.mapNum <= MAP_NUM(MAP_SECRET_BASE_SHRUB4))
return TRUE;
else
return FALSE;
@@ -771,7 +771,7 @@ static u8 GetAverageEVs(struct Pokemon *pokemon)
void SetPlayerSecretBaseParty(void)
{
u16 i;
- u16 moveIdx;
+ u16 moveIndex;
u16 partyId;
struct SecretBaseParty *party;
@@ -781,8 +781,8 @@ void SetPlayerSecretBaseParty(void)
{
for (i = 0; i < PARTY_SIZE; i++)
{
- for (moveIdx = 0; moveIdx < MAX_MON_MOVES; moveIdx++)
- party->moves[i * MAX_MON_MOVES + moveIdx] = MOVE_NONE;
+ for (moveIndex = 0; moveIndex < MAX_MON_MOVES; moveIndex++)
+ party->moves[i * MAX_MON_MOVES + moveIndex] = MOVE_NONE;
party->species[i] = SPECIES_NONE;
party->heldItems[i] = ITEM_NONE;
@@ -793,8 +793,8 @@ void SetPlayerSecretBaseParty(void)
if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) != SPECIES_NONE
&& !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG))
{
- for (moveIdx = 0; moveIdx < MAX_MON_MOVES; moveIdx++)
- party->moves[partyId * MAX_MON_MOVES + moveIdx] = GetMonData(&gPlayerParty[i], MON_DATA_MOVE1 + moveIdx);
+ for (moveIndex = 0; moveIndex < MAX_MON_MOVES; moveIndex++)
+ party->moves[partyId * MAX_MON_MOVES + moveIndex] = GetMonData(&gPlayerParty[i], MON_DATA_MOVE1 + moveIndex);
party->species[partyId] = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES);
party->heldItems[partyId] = GetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM);
diff --git a/src/shop.c b/src/shop.c
index 8fea1e1178..587060f024 100644
--- a/src/shop.c
+++ b/src/shop.c
@@ -369,7 +369,7 @@ static u8 CreateShopMenu(u8 martType)
return CreateTask(Task_ShopMenu, 8);
}
-static void SetShopMenuCallback(void (* callback)(void))
+static void SetShopMenuCallback(void (*callback)(void))
{
sMartInfo.callback = callback;
}
@@ -603,7 +603,7 @@ static void BuyMenuPrintItemDescriptionAndShowItemIcon(s32 item, bool8 onInit, s
if (item != LIST_CANCEL)
{
if (sMartInfo.martType == MART_TYPE_NORMAL)
- description = ItemId_GetDescription(item);
+ description = GetItemDescription(item);
else
description = gDecorations[item].description;
}
@@ -626,7 +626,7 @@ static void BuyMenuPrintPriceInList(u8 windowId, u32 itemId, u8 y)
{
ConvertIntToDecimalStringN(
gStringVar1,
- ItemId_GetPrice(itemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT),
+ GetItemPrice(itemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT),
STR_CONV_MODE_LEFT_ALIGN,
5);
}
@@ -985,7 +985,7 @@ static void Task_BuyMenu(u8 taskId)
BuyMenuPrintCursor(tListTaskId, COLORID_GRAY_CURSOR);
if (sMartInfo.martType == MART_TYPE_NORMAL)
- sShopData->totalCost = (ItemId_GetPrice(itemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT));
+ sShopData->totalCost = (GetItemPrice(itemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT));
else
sShopData->totalCost = gDecorations[itemId].price;
@@ -998,7 +998,7 @@ static void Task_BuyMenu(u8 taskId)
if (sMartInfo.martType == MART_TYPE_NORMAL)
{
CopyItemName(itemId, gStringVar1);
- if (ItemId_GetPocket(itemId) == POCKET_TM_HM)
+ if (GetItemPocket(itemId) == POCKET_TM_HM)
{
StringCopy(gStringVar2, gMoveNames[ItemIdToBattleMoveId(itemId)]);
BuyMenuDisplayMessage(taskId, gText_Var1CertainlyHowMany2, Task_BuyHowManyDialogueInit);
@@ -1058,7 +1058,7 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId)
if (AdjustQuantityAccordingToDPadInput(&tItemCount, sShopData->maxQuantity) == TRUE)
{
- sShopData->totalCost = (ItemId_GetPrice(tItemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT)) * tItemCount;
+ sShopData->totalCost = (GetItemPrice(tItemId) >> IsPokeNewsActive(POKENEWS_SLATEPORT)) * tItemCount;
BuyMenuPrintItemQuantityAndPrice(taskId);
}
else
diff --git a/src/slot_machine.c b/src/slot_machine.c
index 5ae0f9f1d5..217767fc9e 100644
--- a/src/slot_machine.c
+++ b/src/slot_machine.c
@@ -2324,7 +2324,9 @@ static bool8 ReelTask_MoveToStop(struct Task *task)
memcpy(reelStopShocks, sReelStopShocks, sizeof(sReelStopShocks));
reelPixelPos = sSlotMachine->reelPixelOffsets[task->tReelId] % REEL_SYMBOL_HEIGHT;
if (reelPixelPos != 0)
+ {
reelPixelPos = AdvanceSlotReelToNextSymbol(task->tReelId, sSlotMachine->reelSpeed);
+ }
else if (sSlotMachine->reelExtraTurns[task->tReelId])
{
sSlotMachine->reelExtraTurns[task->tReelId]--;
@@ -3324,7 +3326,8 @@ static void SpriteCB_FlashMatchingLines(struct Sprite *sprite)
if (sprite->sNumFullFlashes)
sprite->sNumFullFlashes--;
}
- else if (sprite->sColor >= maxColorChange) {
+ else if (sprite->sColor >= maxColorChange)
+ {
// Reached peak darkness, reverse
sprite->sColorIncr = -sprite->sColorIncr;
}
@@ -6984,7 +6987,7 @@ static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Win[] =
{ARRAY_COUNT(sSubsprites_DigitalDisplay_Win), sSubsprites_DigitalDisplay_Win}
};
-static const struct Subsprite sSubsprites_DigitalDisplay_Smoke[] =
+static const struct Subsprite sSubsprites_DigitalDisplay_SmokeBig[] =
{
{
.x = -16,
@@ -6996,7 +6999,7 @@ static const struct Subsprite sSubsprites_DigitalDisplay_Smoke[] =
}
};
-static const struct Subsprite sSubsprites_DigitalDisplay_Unused2[] =
+static const struct Subsprite sSubsprites_DigitalDisplay_SmokeSmall[] =
{
{
.x = -8,
@@ -7010,12 +7013,8 @@ static const struct Subsprite sSubsprites_DigitalDisplay_Unused2[] =
static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Smoke[] =
{
- {ARRAY_COUNT(sSubsprites_DigitalDisplay_Smoke), sSubsprites_DigitalDisplay_Smoke}
-};
-
-static const struct SubspriteTable sSubspriteTable_DigitalDisplay_Unused2[] =
-{
- {ARRAY_COUNT(sSubsprites_DigitalDisplay_Unused2), sSubsprites_DigitalDisplay_Unused2}
+ {ARRAY_COUNT(sSubsprites_DigitalDisplay_SmokeBig), sSubsprites_DigitalDisplay_SmokeBig},
+ {ARRAY_COUNT(sSubsprites_DigitalDisplay_SmokeSmall), sSubsprites_DigitalDisplay_SmokeSmall}
};
/*
diff --git a/src/sound.c b/src/sound.c
index bef3658ecd..d35e07d273 100644
--- a/src/sound.c
+++ b/src/sound.c
@@ -14,7 +14,7 @@ struct Fanfare
u16 duration;
};
-EWRAM_DATA struct MusicPlayerInfo* gMPlay_PokemonCry = NULL;
+EWRAM_DATA struct MusicPlayerInfo *gMPlay_PokemonCry = NULL;
EWRAM_DATA u8 gPokemonCryBGMDuckingCounter = 0;
static u16 sCurrentMapMusic;
@@ -23,7 +23,7 @@ static u8 sMapMusicState;
static u8 sMapMusicFadeInSpeed;
static u16 sFanfareCounter;
-bool8 gDisableMusic;
+COMMON_DATA bool8 gDisableMusic = 0;
extern struct ToneData gCryTable[];
extern struct ToneData gCryTable_Reverse[];
@@ -463,9 +463,9 @@ void PlayCryInternal(u16 species, s8 pan, s8 volume, u8 priority, u8 mode)
SetPokemonCryChorus(chorus);
SetPokemonCryPriority(priority);
- // This is a fancy way to get a cry of a pokemon.
+ // This is a fancy way to get a cry of a Pokémon.
// It creates 4 sets of 128 mini cry tables.
- // If you wish to expand pokemon, you need to
+ // If you wish to expand Pokémon, you need to
// append new cases to the switch.
species = SpeciesToCryId(species);
index = species % 128;
diff --git a/gflib/sprite.c b/src/sprite.c
similarity index 99%
rename from gflib/sprite.c
rename to src/sprite.c
index 80fba81fe3..708a3e7fdf 100644
--- a/gflib/sprite.c
+++ b/src/sprite.c
@@ -5,8 +5,6 @@
#define MAX_SPRITE_COPY_REQUESTS 64
-#define OAM_MATRIX_COUNT 32
-
#define sAnchorX data[6]
#define sAnchorY data[7]
@@ -121,8 +119,8 @@ typedef void (*AffineAnimCmdFunc)(u8 matrixNum, struct Sprite *);
#define AFFINE_ANIM_END 0x7FFF
// forward declarations
-const union AnimCmd * const gDummySpriteAnimTable[];
-const union AffineAnimCmd * const gDummySpriteAffineAnimTable[];
+const union AnimCmd *const gDummySpriteAnimTable[];
+const union AffineAnimCmd *const gDummySpriteAffineAnimTable[];
const struct SpriteTemplate gDummySpriteTemplate;
// Unreferenced data. Also unreferenced in R/S.
@@ -174,11 +172,11 @@ const struct OamData gDummyOamData = DUMMY_OAM_DATA;
static const union AnimCmd sDummyAnim = { ANIM_END };
-const union AnimCmd * const gDummySpriteAnimTable[] = { &sDummyAnim };
+const union AnimCmd *const gDummySpriteAnimTable[] = { &sDummyAnim };
static const union AffineAnimCmd sDummyAffineAnim = { AFFINE_ANIM_END };
-const union AffineAnimCmd * const gDummySpriteAffineAnimTable[] = { &sDummyAffineAnim };
+const union AffineAnimCmd *const gDummySpriteAffineAnimTable[] = { &sDummyAffineAnim };
const struct SpriteTemplate gDummySpriteTemplate =
{
@@ -276,8 +274,8 @@ static struct AffineAnimState sAffineAnimStates[OAM_MATRIX_COUNT];
static u16 sSpritePaletteTags[16];
// iwram common
-u32 gOamMatrixAllocBitmap;
-u8 gReservedSpritePaletteCount;
+COMMON_DATA u32 gOamMatrixAllocBitmap = 0;
+COMMON_DATA u8 gReservedSpritePaletteCount = 0;
EWRAM_DATA struct Sprite gSprites[MAX_SPRITES + 1] = {0};
EWRAM_DATA static u16 sSpritePriorities[MAX_SPRITES] = {0};
@@ -1090,9 +1088,13 @@ void ContinueAffineAnim(struct Sprite *sprite)
u8 matrixNum = GetSpriteMatrixNum(sprite);
if (sAffineAnimStates[matrixNum].delayCounter)
+ {
AffineAnimDelay(matrixNum, sprite);
+ }
else if (sprite->affineAnimPaused)
+ {
return;
+ }
else
{
s16 type;
diff --git a/src/start_menu.c b/src/start_menu.c
index 2faff8c63d..13a46c51c6 100644
--- a/src/start_menu.c
+++ b/src/start_menu.c
@@ -75,7 +75,7 @@ enum
};
// IWRAM common
-bool8 (*gMenuCallback)(void);
+COMMON_DATA bool8 (*gMenuCallback)(void) = NULL;
// EWRAM
EWRAM_DATA static u8 sSafariBallsWindowId = 0;
@@ -293,7 +293,7 @@ static void BuildStartMenuActions(void)
{
BuildBattlePikeStartMenu();
}
- else if (InBattlePyramid())
+ else if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
BuildBattlePyramidStartMenu();
}
@@ -439,7 +439,7 @@ static void RemoveExtraStartMenuWindows(void)
CopyWindowToVram(sSafariBallsWindowId, COPYWIN_GFX);
RemoveWindow(sSafariBallsWindowId);
}
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
ClearStdWindowAndFrameToTransparent(sBattlePyramidFloorWindowId, FALSE);
RemoveWindow(sBattlePyramidFloorWindowId);
@@ -499,7 +499,7 @@ static bool32 InitStartMenuStep(void)
case 3:
if (GetSafariZoneFlag())
ShowSafariBallsWindow();
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
ShowPyramidFloorWindow();
sInitStartMenuData[0]++;
break;
@@ -689,7 +689,7 @@ static bool8 StartMenuPokeNavCallback(void)
PlayRainStoppingSoundEffect();
RemoveExtraStartMenuWindows();
CleanupOverworldWindowsAndTilemaps();
- SetMainCallback2(CB2_InitPokeNav); // Display PokeNav
+ SetMainCallback2(CB2_InitPokeNav); // Display PokéNav
return TRUE;
}
@@ -720,7 +720,7 @@ static bool8 StartMenuPlayerNameCallback(void)
static bool8 StartMenuSaveCallback(void)
{
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
RemoveExtraStartMenuWindows();
gMenuCallback = SaveStartCallback; // Display save menu
@@ -981,7 +981,7 @@ static u8 SaveConfirmSaveCallback(void)
RemoveStartMenuWindow();
ShowSaveInfoWindow();
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
ShowSaveMessage(gText_BattlePyramidConfirmRest, SaveYesNoCallback);
}
@@ -1374,7 +1374,7 @@ static void ShowSaveInfoWindow(void)
if (FlagGet(FLAG_SYS_POKEDEX_GET) == TRUE)
{
- // Print pokedex count
+ // Print Pokédex count
yOffset += 16;
AddTextPrinterParameterized(sSaveInfoWindowId, FONT_NORMAL, gText_SavingPokedex, 0, yOffset, TEXT_SKIP_DRAW, NULL);
BufferSaveMenuText(SAVE_MENU_CAUGHT, gStringVar4, color);
diff --git a/src/starter_choose.c b/src/starter_choose.c
index 3d5291e887..aaf2fd7b7f 100644
--- a/src/starter_choose.c
+++ b/src/starter_choose.c
@@ -26,7 +26,7 @@
#define STARTER_MON_COUNT 3
-// Position of the sprite of the selected starter Pokemon
+// Position of the sprite of the selected starter Pokémon
#define STARTER_PKMN_POS_X (DISPLAY_WIDTH / 2)
#define STARTER_PKMN_POS_Y 64
@@ -248,18 +248,18 @@ static const union AnimCmd sAnim_StarterCircle[] =
ANIMCMD_END,
};
-static const union AnimCmd * const sAnims_Hand[] =
+static const union AnimCmd *const sAnims_Hand[] =
{
sAnim_Hand,
};
-static const union AnimCmd * const sAnims_Pokeball[] =
+static const union AnimCmd *const sAnims_Pokeball[] =
{
sAnim_Pokeball_Still,
sAnim_Pokeball_Moving,
};
-static const union AnimCmd * const sAnims_StarterCircle[] =
+static const union AnimCmd *const sAnims_StarterCircle[] =
{
sAnim_StarterCircle,
};
@@ -278,8 +278,8 @@ static const union AffineAnimCmd sAffineAnim_StarterCircle[] =
AFFINEANIMCMD_END,
};
-static const union AffineAnimCmd * const sAffineAnims_StarterPokemon = {sAffineAnim_StarterPokemon};
-static const union AffineAnimCmd * const sAffineAnims_StarterCircle[] = {sAffineAnim_StarterCircle};
+static const union AffineAnimCmd *const sAffineAnims_StarterPokemon = {sAffineAnim_StarterPokemon};
+static const union AffineAnimCmd *const sAffineAnims_StarterCircle[] = {sAffineAnim_StarterCircle};
static const struct CompressedSpriteSheet sSpriteSheet_PokeballSelect[] =
{
@@ -446,7 +446,7 @@ void CB2_ChooseStarter(void)
spriteId = CreateSprite(&sSpriteTemplate_Hand, 120, 56, 2);
gSprites[spriteId].data[0] = taskId;
- // Create three Pokeball sprites
+ // Create three Poké Ball sprites
spriteId = CreateSprite(&sSpriteTemplate_Pokeball, sPokeballCoords[0][0], sPokeballCoords[0][1], 2);
gSprites[spriteId].sTaskId = taskId;
gSprites[spriteId].sBallId = 0;
@@ -495,7 +495,7 @@ static void Task_HandleStarterChooseInput(u8 taskId)
spriteId = CreateSprite(&sSpriteTemplate_StarterCircle, sPokeballCoords[selection][0], sPokeballCoords[selection][1], 1);
gTasks[taskId].tCircleSpriteId = spriteId;
- // Create Pokemon sprite
+ // Create Pokémon sprite
spriteId = CreatePokemonFrontSprite(GetStarterPokemon(gTasks[taskId].tStarterSelection), sPokeballCoords[selection][0], sPokeballCoords[selection][1]);
gSprites[spriteId].affineAnims = &sAffineAnims_StarterPokemon;
gSprites[spriteId].callback = SpriteCB_StarterPokemon;
@@ -637,7 +637,7 @@ static u8 CreatePokemonFrontSprite(u16 species, u8 x, u8 y)
static void SpriteCB_SelectionHand(struct Sprite *sprite)
{
- // Float up and down above selected pokeball
+ // Float up and down above selected Poké Ball
sprite->x = sCursorCoords[gTasks[sprite->data[0]].tStarterSelection][0];
sprite->y = sCursorCoords[gTasks[sprite->data[0]].tStarterSelection][1];
sprite->y2 = Sin(sprite->data[1], 8);
@@ -646,7 +646,7 @@ static void SpriteCB_SelectionHand(struct Sprite *sprite)
static void SpriteCB_Pokeball(struct Sprite *sprite)
{
- // Animate pokeball if currently selected
+ // Animate Poké Ball if currently selected
if (gTasks[sprite->sTaskId].tStarterSelection == sprite->sBallId)
StartSpriteAnimIfDifferent(sprite, 1);
else
diff --git a/gflib/string_util.c b/src/string_util.c
similarity index 100%
rename from gflib/string_util.c
rename to src/string_util.c
diff --git a/src/task.c b/src/task.c
index 68fb679b3e..b188cbbcba 100644
--- a/src/task.c
+++ b/src/task.c
@@ -1,7 +1,7 @@
#include "global.h"
#include "task.h"
-struct Task gTasks[NUM_TASKS];
+COMMON_DATA struct Task gTasks[NUM_TASKS] = {0};
static void InsertTask(u8 newTaskId);
static u8 FindFirstActiveTask(void);
diff --git a/gflib/text.c b/src/text.c
similarity index 99%
rename from gflib/text.c
rename to src/text.c
index bc917c7ced..1c8a64d5c7 100644
--- a/gflib/text.c
+++ b/src/text.c
@@ -43,10 +43,10 @@ static u16 sLastTextBgColor;
static u16 sLastTextFgColor;
static u16 sLastTextShadowColor;
-const struct FontInfo *gFonts;
-bool8 gDisableTextPrinters;
-struct TextGlyph gCurGlyph;
-TextFlags gTextFlags;
+COMMON_DATA const struct FontInfo *gFonts = NULL;
+COMMON_DATA bool8 gDisableTextPrinters = 0;
+COMMON_DATA struct TextGlyph gCurGlyph = {0};
+COMMON_DATA TextFlags gTextFlags = {0};
static const u8 sFontHalfRowOffsets[] =
{
diff --git a/src/title_screen.c b/src/title_screen.c
index 12015b8bd8..1d605d1fc0 100644
--- a/src/title_screen.c
+++ b/src/title_screen.c
@@ -680,7 +680,7 @@ static void MainCB2(void)
UpdatePaletteFade();
}
-// Shine the Pokemon logo two more times, and fade in the version banner
+// Shine the Pokémon logo two more times, and fade in the version banner
static void Task_TitleScreenPhase1(u8 taskId)
{
// Skip to next phase when A, B, Start, or Select is pressed
@@ -728,7 +728,7 @@ static void Task_TitleScreenPhase1(u8 taskId)
#undef sParentTaskId
#undef sAlphaBlendIdx
-// Create "Press Start" and copyright banners, and slide Pokemon logo up
+// Create "Press Start" and copyright banners, and slide Pokémon logo up
static void Task_TitleScreenPhase2(u8 taskId)
{
u32 yPos;
@@ -767,7 +767,7 @@ static void Task_TitleScreenPhase2(u8 taskId)
if (!(gTasks[taskId].tCounter & 1) && gTasks[taskId].tBg2Y != 0)
gTasks[taskId].tBg2Y++;
- // Slide Pokemon logo up
+ // Slide Pokémon logo up
yPos = gTasks[taskId].tBg2Y * 256;
SetGpuReg(REG_OFFSET_BG2Y_L, yPos);
SetGpuReg(REG_OFFSET_BG2Y_H, yPos / 0x10000);
diff --git a/src/trade.c b/src/trade.c
index 5728a6ee51..e07e418d1a 100644
--- a/src/trade.c
+++ b/src/trade.c
@@ -157,7 +157,7 @@ struct InGameTrade {
u32 personality;
u16 heldItem;
u8 mailNum;
- u8 otName[11];
+ u8 otName[TRAINER_NAME_LENGTH + 1];
u8 otGender;
u8 sheen;
u16 requestedSpecies;
@@ -168,7 +168,7 @@ static EWRAM_DATA u8 *sMenuTextTileBuffer = NULL;
// Bytes 0-2 are used for the player's name text
// Bytes 3-5 are used for the partner's name text
// Bytes 6-7 are used for the Cancel text
-// Bytes 8-13 are used for the Choose a Pokemon text
+// Bytes 8-13 are used for the Choose a Pokémon text
// See the corresponding GFXTAGs in src/data/trade.h
static EWRAM_DATA u8 *sMenuTextTileBuffers[NUM_MENU_TEXT_SPRITES] = {NULL};
@@ -1010,25 +1010,25 @@ static void SetActiveMenuOptions(void)
{
if (i < sTradeMenu->partyCounts[TRADE_PLAYER])
{
- // Present player pokemon
+ // Present player Pokémon
gSprites[sTradeMenu->partySpriteIds[TRADE_PLAYER][i]].invisible = FALSE;
sTradeMenu->optionsActive[i] = TRUE;
}
else
{
- // Absent player pokemon
+ // Absent player Pokémon
sTradeMenu->optionsActive[i] = FALSE;
}
if (i < sTradeMenu->partyCounts[TRADE_PARTNER])
{
- // Present partner pokemon
+ // Present partner Pokémon
gSprites[sTradeMenu->partySpriteIds[TRADE_PARTNER][i]].invisible = FALSE;
sTradeMenu->optionsActive[i + PARTY_SIZE] = TRUE;
}
else
{
- // Absent partner pokemon
+ // Absent partner Pokémon
sTradeMenu->optionsActive[i + PARTY_SIZE] = FALSE;
}
}
@@ -1285,7 +1285,7 @@ static void Leader_HandleCommunication(void)
if (sTradeMenu->playerSelectStatus == STATUS_READY
&& sTradeMenu->partnerSelectStatus == STATUS_READY)
{
- // Both players have selected a pokemon to trade
+ // Both players have selected a Pokémon to trade
sTradeMenu->callbackId = CB_SET_SELECTED_MONS;
sTradeMenu->linkData[0] = LINKCMD_SET_MONS_TO_TRADE;
sTradeMenu->linkData[1] = sTradeMenu->cursorPosition;
@@ -1295,7 +1295,7 @@ static void Leader_HandleCommunication(void)
else if (sTradeMenu->playerSelectStatus == STATUS_READY
&& sTradeMenu->partnerSelectStatus == STATUS_CANCEL)
{
- // The player has selected a pokemon to trade,
+ // The player has selected a Pokémon to trade,
// but the partner has selected Cancel
PrintTradeMessage(MSG_CANCELED);
sTradeMenu->linkData[0] = LINKCMD_PARTNER_CANCEL_TRADE;
@@ -1308,7 +1308,7 @@ static void Leader_HandleCommunication(void)
else if (sTradeMenu->playerSelectStatus == STATUS_CANCEL
&& sTradeMenu->partnerSelectStatus == STATUS_READY)
{
- // The partner has selected a pokemon to trade,
+ // The partner has selected a Pokémon to trade,
// but the player has selected cancel
PrintTradeMessage(MSG_FRIEND_WANTS_TO_TRADE);
sTradeMenu->linkData[0] = LINKCMD_PLAYER_CANCEL_TRADE;
@@ -1465,7 +1465,7 @@ static void CB_ProcessMenuInput(void)
if (sTradeMenu->cursorPosition < PARTY_SIZE)
{
- // Selected pokemon in player's party
+ // Selected Pokémon in player's party
DrawTextBorderOuter(1, 1, 14);
FillWindowPixelBuffer(1, PIXEL_FILL(1));
PrintMenuTable(1, ARRAY_COUNT(sSelectTradeMonActions), sSelectTradeMonActions);
@@ -1476,7 +1476,7 @@ static void CB_ProcessMenuInput(void)
}
else if (sTradeMenu->cursorPosition < PARTY_SIZE * 2)
{
- // Selected pokemon in partner's party
+ // Selected Pokémon in partner's party
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
sTradeMenu->callbackId = CB_SHOW_MON_SUMMARY;
}
@@ -1855,7 +1855,7 @@ static void SetSelectedMon(u8 cursorPosition)
if (sTradeMenu->drawSelectedMonState[whichParty] == 0)
{
// Start the animation to display just the selected
- // pokemon in the middle of the screen
+ // Pokémon in the middle of the screen
sTradeMenu->drawSelectedMonState[whichParty] = 1;
sTradeMenu->selectedMonIdx[whichParty] = cursorPosition;
}
@@ -1889,10 +1889,10 @@ static void DrawSelectedMonScreen(u8 whichParty)
for (i = 0; i < PARTY_SIZE; i++)
ClearWindowTilemap(i + (whichParty * PARTY_SIZE + 2));
- // Re-display the selected pokemon
+ // Re-display the selected Pokémon
gSprites[sTradeMenu->partySpriteIds[selectedMonParty][partyIdx]].invisible = FALSE;
- // Move the selected pokemon to the center
+ // Move the selected Pokémon to the center
gSprites[sTradeMenu->partySpriteIds[selectedMonParty][partyIdx]].data[0] = 20;
gSprites[sTradeMenu->partySpriteIds[selectedMonParty][partyIdx]].data[2] = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][0]
+ sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14;
@@ -3109,13 +3109,13 @@ static void TradeMons(u8 playerPartyIdx, u8 partnerPartyIdx)
struct Pokemon *partnerMon = &gEnemyParty[partnerPartyIdx];
u16 partnerMail = GetMonData(partnerMon, MON_DATA_MAIL);
- // The mail attached to the sent Pokemon no longer exists in your file.
+ // The mail attached to the sent Pokémon no longer exists in your file.
if (playerMail != MAIL_NONE)
ClearMail(&gSaveBlock1Ptr->mail[playerMail]);
SWAP(*playerMon, *partnerMon, sTradeAnim->tempMon);
- // By default, a Pokemon received from a trade will have 70 Friendship.
+ // By default, a Pokémon received from a trade will have 70 Friendship.
// Eggs use Friendship to track egg cycles, so don't set this on Eggs.
friendship = 70;
if (!GetMonData(playerMon, MON_DATA_IS_EGG))
diff --git a/src/trader.c b/src/trader.c
index 254d809458..2e427e6f04 100644
--- a/src/trader.c
+++ b/src/trader.c
@@ -15,7 +15,7 @@
#include "task.h"
#include "script_menu.h"
-static const u8 * const sDefaultTraderNames[NUM_TRADER_ITEMS] =
+static const u8 *const sDefaultTraderNames[NUM_TRADER_ITEMS] =
{
gText_Tristan,
gText_Philip,
@@ -58,7 +58,7 @@ void Trader_ResetFlag(void)
void CreateAvailableDecorationsMenu(u8 taskId)
{
u8 i;
- s16 * data = gTasks[taskId].data;
+ s16 *data = gTasks[taskId].data;
struct MauvilleOldManTrader *trader = &gSaveBlock1Ptr->oldMan.trader;
struct WindowTemplate windowTemplate = {
.bg = 0,
@@ -98,7 +98,7 @@ void CreateAvailableDecorationsMenu(u8 taskId)
void Task_BufferDecorSelectionAndCloseWindow(u8 taskId, u8 decorationId)
{
- s16 * data = gTasks[taskId].data;
+ s16 *data = gTasks[taskId].data;
if (decorationId > NUM_DECORATIONS)
gSpecialVar_0x8004 = 0xFFFF;
else
diff --git a/src/trainer_hill.c b/src/trainer_hill.c
index 018b9f14ba..a42b988305 100644
--- a/src/trainer_hill.c
+++ b/src/trainer_hill.c
@@ -217,7 +217,7 @@ static const u8 *const sFloorStrings[] =
gText_TrainerHill4F,
};
-static void (* const sHillFunctions[])(void) =
+static void (*const sHillFunctions[])(void) =
{
[TRAINER_HILL_FUNC_START] = TrainerHillStartChallenge,
[TRAINER_HILL_FUNC_GET_OWNER_STATE] = GetOwnerState,
@@ -259,10 +259,10 @@ static const struct ObjectEventTemplate sTrainerObjectEventTemplate =
static const u32 sNextFloorMapNum[NUM_TRAINER_HILL_FLOORS] =
{
- [TRAINER_HILL_1F - 1] = MAP_NUM(TRAINER_HILL_2F),
- [TRAINER_HILL_2F - 1] = MAP_NUM(TRAINER_HILL_3F),
- [TRAINER_HILL_3F - 1] = MAP_NUM(TRAINER_HILL_4F),
- [TRAINER_HILL_4F - 1] = MAP_NUM(TRAINER_HILL_ROOF)
+ [TRAINER_HILL_1F - 1] = MAP_NUM(MAP_TRAINER_HILL_2F),
+ [TRAINER_HILL_2F - 1] = MAP_NUM(MAP_TRAINER_HILL_3F),
+ [TRAINER_HILL_3F - 1] = MAP_NUM(MAP_TRAINER_HILL_4F),
+ [TRAINER_HILL_4F - 1] = MAP_NUM(MAP_TRAINER_HILL_ROOF)
};
static const u8 sTrainerPartySlots[HILL_TRAINERS_PER_FLOOR][PARTY_SIZE / 2] =
{
@@ -366,13 +366,13 @@ static void FreeDataStruct(void)
TRY_FREE_AND_SET_NULL(sHillData);
}
-void CopyTrainerHillTrainerText(u8 which, u16 trainerId)
+void CopyTrainerHillTrainerText(u8 which, u16 localId)
{
u8 id, floorId;
SetUpDataStruct();
floorId = GetFloorId();
- id = trainerId - 1;
+ id = localId - 1;
switch (which)
{
@@ -783,7 +783,7 @@ static bool32 UNUSED OnTrainerHillRoof(void)
const struct WarpEvent* SetWarpDestinationTrainerHill4F(void)
{
- const struct MapHeader *header = Overworld_GetMapHeaderByGroupAndId(MAP_GROUP(TRAINER_HILL_4F), MAP_NUM(TRAINER_HILL_4F));
+ const struct MapHeader *header = Overworld_GetMapHeaderByGroupAndId(MAP_GROUP(MAP_TRAINER_HILL_4F), MAP_NUM(MAP_TRAINER_HILL_4F));
return &header->events->warps[1];
}
@@ -802,7 +802,7 @@ const struct WarpEvent* SetWarpDestinationTrainerHillFinalFloor(u8 warpEventId)
if (numFloors == 0 || numFloors > NUM_TRAINER_HILL_FLOORS)
numFloors = NUM_TRAINER_HILL_FLOORS;
- header = Overworld_GetMapHeaderByGroupAndId(MAP_GROUP(TRAINER_HILL_4F), sNextFloorMapNum[numFloors - 1]);
+ header = Overworld_GetMapHeaderByGroupAndId(MAP_GROUP(MAP_TRAINER_HILL_4F), sNextFloorMapNum[numFloors - 1]);
return &header->events->warps[0];
}
diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c
index b6e2b63c35..f36060e8d1 100644
--- a/src/trainer_pokemon_sprites.c
+++ b/src/trainer_pokemon_sprites.c
@@ -11,7 +11,7 @@
#define PICS_COUNT 8
-// Needs to be large enough to store either a decompressed pokemon pic or trainer pic
+// Needs to be large enough to store either a decompressed Pokémon pic or trainer pic
#define PIC_SPRITE_SIZE max(MON_PIC_SIZE, TRAINER_PIC_SIZE)
#define MAX_PIC_FRAMES max(MAX_MON_PIC_FRAMES, MAX_TRAINER_PIC_FRAMES)
diff --git a/src/trainer_see.c b/src/trainer_see.c
index 88f9215f77..f7b19aa8d9 100644
--- a/src/trainer_see.c
+++ b/src/trainer_see.c
@@ -49,11 +49,11 @@ static bool8 WaitRevealBuriedTrainer(u8 taskId, struct Task *task, struct Object
static void SpriteCB_TrainerIcons(struct Sprite *sprite);
// IWRAM common
-u16 gWhichTrainerToFaceAfterBattle;
-u8 gPostBattleMovementScript[4];
-struct ApproachingTrainer gApproachingTrainers[2];
-u8 gNoOfApproachingTrainers;
-bool8 gTrainerApproachedPlayer;
+COMMON_DATA u16 gWhichTrainerToFaceAfterBattle = 0;
+COMMON_DATA u8 gPostBattleMovementScript[4] = {0};
+COMMON_DATA struct ApproachingTrainer gApproachingTrainers[2] = {0};
+COMMON_DATA u8 gNoOfApproachingTrainers = 0;
+COMMON_DATA bool8 gTrainerApproachedPlayer = 0;
// EWRAM
EWRAM_DATA u8 gApproachingTrainerId = 0;
@@ -256,7 +256,7 @@ static u8 CheckTrainer(u8 objectEventId)
else
scriptPtr = GetObjectEventScriptPointerByObjectEventId(objectEventId);
- if (InBattlePyramid())
+ if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
{
if (GetBattlePyramidTrainerFlag(objectEventId))
return 0;
@@ -389,15 +389,15 @@ static u8 CheckPathBetweenTrainerAndPlayer(struct ObjectEvent *trainerObj, u8 ap
return 0;
}
- rangeX = trainerObj->rangeX;
- rangeY = trainerObj->rangeY;
- trainerObj->rangeX = 0;
- trainerObj->rangeY = 0;
+ rangeX = trainerObj->range.rangeX;
+ rangeY = trainerObj->range.rangeY;
+ trainerObj->range.rangeX = 0;
+ trainerObj->range.rangeY = 0;
collision = GetCollisionAtCoords(trainerObj, x, y, direction);
- trainerObj->rangeX = rangeX;
- trainerObj->rangeY = rangeY;
+ trainerObj->range.rangeX = rangeX;
+ trainerObj->range.rangeY = rangeY;
if (collision == COLLISION_OBJECT_EVENT)
return approachDistance;
@@ -595,7 +595,7 @@ static bool8 JumpInPlaceBuriedTrainer(u8 taskId, struct Task *task, struct Objec
if (gSprites[task->tOutOfAshSpriteId].animCmdIndex == 2)
{
trainerObj->fixedPriority = 0;
- trainerObj->triggerGroundEffectsOnMove = 1;
+ trainerObj->triggerGroundEffectsOnMove = TRUE;
sprite = &gSprites[trainerObj->spriteId];
sprite->oam.priority = 2;
@@ -800,15 +800,15 @@ void PlayerFaceTrainerAfterBattle(void)
objEvent = &gObjectEvents[gApproachingTrainers[gWhichTrainerToFaceAfterBattle].objectEventId];
gPostBattleMovementScript[0] = GetFaceDirectionMovementAction(GetOppositeDirection(objEvent->facingDirection));
gPostBattleMovementScript[1] = MOVEMENT_ACTION_STEP_END;
- ScriptMovement_StartObjectMovementScript(OBJ_EVENT_ID_PLAYER, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, gPostBattleMovementScript);
+ ScriptMovement_StartObjectMovementScript(LOCALID_PLAYER, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, gPostBattleMovementScript);
}
else
{
objEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
gPostBattleMovementScript[0] = GetFaceDirectionMovementAction(objEvent->facingDirection);
gPostBattleMovementScript[1] = MOVEMENT_ACTION_STEP_END;
- ScriptMovement_StartObjectMovementScript(OBJ_EVENT_ID_PLAYER, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, gPostBattleMovementScript);
+ ScriptMovement_StartObjectMovementScript(LOCALID_PLAYER, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, gPostBattleMovementScript);
}
- SetMovingNpcId(OBJ_EVENT_ID_PLAYER);
+ SetMovingNpcId(LOCALID_PLAYER);
}
diff --git a/src/tv.c b/src/tv.c
index ef493c10ce..8f4de5548e 100644
--- a/src/tv.c
+++ b/src/tv.c
@@ -63,14 +63,14 @@ enum {
ROULETTE,
};
-s8 sCurTVShowSlot;
-u16 sTV_SecretBaseVisitMovesTemp[8];
-u8 sTV_DecorationsBuffer[DECOR_MAX_SECRET_BASE];
-struct {
+COMMON_DATA s8 sCurTVShowSlot = 0;
+COMMON_DATA u16 sTV_SecretBaseVisitMovesTemp[8] = {0};
+COMMON_DATA u8 sTV_DecorationsBuffer[DECOR_MAX_SECRET_BASE] = {0};
+COMMON_DATA struct {
u8 level;
u16 species;
u16 move;
-} sTV_SecretBaseVisitMonsTemp[10];
+} sTV_SecretBaseVisitMonsTemp[10] = {0};
static u8 sTVShowMixingNumPlayers;
static u8 sTVShowNewsMixingNumPlayers;
@@ -199,31 +199,31 @@ static const struct {
.species = SPECIES_SEEDOT,
.moves = {MOVE_BIDE, MOVE_HARDEN, MOVE_LEECH_SEED},
.level = 3,
- .location = MAP_NUM(ROUTE102)
+ .location = MAP_NUM(MAP_ROUTE102)
},
{
.species = SPECIES_NUZLEAF,
.moves = {MOVE_HARDEN, MOVE_GROWTH, MOVE_NATURE_POWER, MOVE_LEECH_SEED},
.level = 15,
- .location = MAP_NUM(ROUTE114),
+ .location = MAP_NUM(MAP_ROUTE114),
},
{
.species = SPECIES_SEEDOT,
.moves = {MOVE_HARDEN, MOVE_GROWTH, MOVE_NATURE_POWER, MOVE_LEECH_SEED},
.level = 13,
- .location = MAP_NUM(ROUTE117),
+ .location = MAP_NUM(MAP_ROUTE117),
},
{
.species = SPECIES_SEEDOT,
.moves = {MOVE_GIGA_DRAIN, MOVE_FRUSTRATION, MOVE_SOLAR_BEAM, MOVE_LEECH_SEED},
.level = 25,
- .location = MAP_NUM(ROUTE120),
+ .location = MAP_NUM(MAP_ROUTE120),
},
{
.species = SPECIES_SKITTY,
.moves = {MOVE_GROWL, MOVE_TACKLE, MOVE_TAIL_WHIP, MOVE_ATTRACT},
.level = 8,
- .location = MAP_NUM(ROUTE116),
+ .location = MAP_NUM(MAP_ROUTE116),
}
};
@@ -836,8 +836,8 @@ void UpdateTVScreensOnMap(int width, int height)
break;
// case PLAYERS_HOUSE_TV_NONE:
default:
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(LILYCOVE_CITY_COVE_LILY_MOTEL_1F)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(LILYCOVE_CITY_COVE_LILY_MOTEL_1F))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F))
{
// NPC in Lilycove Hotel is always watching TV
SetTVMetatilesOnMap(width, height, METATILE_Building_TV_On);
@@ -992,6 +992,7 @@ static void TakeGabbyAndTyOffTheAir(void)
gSaveBlock1Ptr->gabbyAndTyData.onAir = FALSE;
}
+// See gabby_and_ty.inc for details
u8 GabbyAndTyGetBattleNum(void)
{
if (gSaveBlock1Ptr->gabbyAndTyData.battleNum > 5)
@@ -1033,41 +1034,42 @@ u8 GabbyAndTyGetLastBattleTrivia(void)
return 0;
}
+// See gabby_and_ty.inc for details
void GetGabbyAndTyLocalIds(void)
{
switch (GabbyAndTyGetBattleNum())
{
case 1:
- gSpecialVar_0x8004 = 14;
- gSpecialVar_0x8005 = 13;
+ gSpecialVar_0x8004 = LOCALID_ROUTE111_GABBY_1;
+ gSpecialVar_0x8005 = LOCALID_ROUTE111_TY_1;
break;
case 2:
- gSpecialVar_0x8004 = 5;
- gSpecialVar_0x8005 = 6;
+ gSpecialVar_0x8004 = LOCALID_ROUTE118_GABBY_1;
+ gSpecialVar_0x8005 = LOCALID_ROUTE118_TY_1;
break;
case 3:
- gSpecialVar_0x8004 = 18;
- gSpecialVar_0x8005 = 17;
+ gSpecialVar_0x8004 = LOCALID_ROUTE120_GABBY_1;
+ gSpecialVar_0x8005 = LOCALID_ROUTE120_TY_1;
break;
case 4:
- gSpecialVar_0x8004 = 21;
- gSpecialVar_0x8005 = 22;
+ gSpecialVar_0x8004 = LOCALID_ROUTE111_GABBY_2;
+ gSpecialVar_0x8005 = LOCALID_ROUTE111_TY_2;
break;
case 5:
- gSpecialVar_0x8004 = 8;
- gSpecialVar_0x8005 = 9;
+ gSpecialVar_0x8004 = LOCALID_ROUTE118_GABBY_2;
+ gSpecialVar_0x8005 = LOCALID_ROUTE118_TY_2;
break;
case 6:
- gSpecialVar_0x8004 = 19;
- gSpecialVar_0x8005 = 20;
+ gSpecialVar_0x8004 = LOCALID_ROUTE120_GABBY_2;
+ gSpecialVar_0x8005 = LOCALID_ROUTE120_TY_2;
break;
case 7:
- gSpecialVar_0x8004 = 23;
- gSpecialVar_0x8005 = 24;
+ gSpecialVar_0x8004 = LOCALID_ROUTE111_GABBY_3;
+ gSpecialVar_0x8005 = LOCALID_ROUTE111_TY_3;
break;
case 8:
- gSpecialVar_0x8004 = 10;
- gSpecialVar_0x8005 = 11;
+ gSpecialVar_0x8004 = LOCALID_ROUTE118_GABBY_3;
+ gSpecialVar_0x8005 = LOCALID_ROUTE118_TY_3;
break;
}
}
@@ -1503,8 +1505,8 @@ void TryPutSmartShopperOnAir(void)
TVShow *show;
u8 i;
- if (!(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRAINER_HILL_ENTRANCE) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRAINER_HILL_ENTRANCE))
- && !(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_MART) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BATTLE_FRONTIER_MART))
+ if (!(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_TRAINER_HILL_ENTRANCE) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_TRAINER_HILL_ENTRANCE))
+ && !(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_BATTLE_FRONTIER_MART) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_BATTLE_FRONTIER_MART))
&& !rbernoulli(1, 3))
{
sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows);
@@ -2199,7 +2201,7 @@ void TryPutLotteryWinnerReportOnAir(void)
}
}
-void TryPutBattleSeminarOnAir(u16 foeSpecies, u16 species, u8 moveIdx, const u16 *movePtr, u16 betterMove)
+void TryPutBattleSeminarOnAir(u16 foeSpecies, u16 species, u8 moveIndex, const u16 *movePtr, u16 betterMove)
{
TVShow *show;
u8 i;
@@ -2214,10 +2216,10 @@ void TryPutBattleSeminarOnAir(u16 foeSpecies, u16 species, u8 moveIdx, const u16
StringCopy(show->battleSeminar.playerName, gSaveBlock2Ptr->playerName);
show->battleSeminar.foeSpecies = foeSpecies;
show->battleSeminar.species = species;
- show->battleSeminar.move = movePtr[moveIdx];
+ show->battleSeminar.move = movePtr[moveIndex];
for (i = 0, j = 0; i < MAX_MON_MOVES; i++)
{
- if (i != moveIdx && movePtr[i])
+ if (i != moveIndex && movePtr[i])
{
show->battleSeminar.otherMoves[j] = movePtr[i];
j++;
@@ -2678,14 +2680,14 @@ static bool8 ShouldApplyPokeNewsEffect(u8 newsKind)
switch (newsKind)
{
case POKENEWS_SLATEPORT:
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SLATEPORT_CITY)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(SLATEPORT_CITY)
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_SLATEPORT_CITY)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_SLATEPORT_CITY)
&& gSpecialVar_LastTalked == LOCALID_SLATEPORT_ENERGY_GURU)
return TRUE;
return FALSE;
case POKENEWS_LILYCOVE:
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP))
return TRUE;
return FALSE;
}
@@ -2807,7 +2809,7 @@ static void SmartShopper_BufferPurchaseTotal(u8 varIdx, TVShow *show)
for (i = 0; i < SMARTSHOPPER_NUM_ITEMS; i++)
{
if (show->smartshopperShow.itemIds[i] != ITEM_NONE)
- price += ItemId_GetPrice(show->smartshopperShow.itemIds[i]) * show->smartshopperShow.itemAmounts[i];
+ price += GetItemPrice(show->smartshopperShow.itemIds[i]) * show->smartshopperShow.itemAmounts[i];
}
if (show->smartshopperShow.priceReduced == TRUE)
@@ -3357,18 +3359,18 @@ u32 GetPlayerIDAsU32(void)
u8 CheckForPlayersHouseNews(void)
{
// Check if not in Littleroot house map group
- if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F))
+ if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F))
return PLAYERS_HOUSE_TV_NONE;
// Check if not in player's house (dependent on gender)
if (gSaveBlock2Ptr->playerGender == MALE)
{
- if (gSaveBlock1Ptr->location.mapNum != MAP_NUM(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F))
+ if (gSaveBlock1Ptr->location.mapNum != MAP_NUM(MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F))
return PLAYERS_HOUSE_TV_NONE;
}
else
{
- if (gSaveBlock1Ptr->location.mapNum != MAP_NUM(LITTLEROOT_TOWN_MAYS_HOUSE_1F))
+ if (gSaveBlock1Ptr->location.mapNum != MAP_NUM(MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F))
return PLAYERS_HOUSE_TV_NONE;
}
@@ -3384,11 +3386,11 @@ u8 CheckForPlayersHouseNews(void)
void GetMomOrDadStringForTVMessage(void)
{
// If the player is checking the TV in their house it will only refer to their Mom.
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F))
{
if (gSaveBlock2Ptr->playerGender == MALE)
{
- if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F))
+ if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F))
{
StringCopy(gStringVar1, gText_Mom);
VarSet(VAR_TEMP_3, 1);
@@ -3396,7 +3398,7 @@ void GetMomOrDadStringForTVMessage(void)
}
else
{
- if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(LITTLEROOT_TOWN_MAYS_HOUSE_1F))
+ if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F))
{
StringCopy(gStringVar1, gText_Mom);
VarSet(VAR_TEMP_3, 1);
@@ -3440,7 +3442,7 @@ void GetMomOrDadStringForTVMessage(void)
void HideBattleTowerReporter(void)
{
VarSet(VAR_BRAVO_TRAINER_BATTLE_TOWER_ON, 0);
- RemoveObjectEventByLocalIdAndMap(LOCALID_BATTLE_TOWER_LOBBY_REPORTER, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
+ RemoveObjectEventByLocalIdAndMap(LOCALID_TOWER_LOBBY_REPORTER, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
FlagSet(FLAG_HIDE_BATTLE_TOWER_REPORTER);
}
@@ -4489,7 +4491,7 @@ static void DoTVShowTodaysSmartShopper(void)
break;
case SMARTSHOPPER_STATE_CLERK_NORMAL:
TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language);
- StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[0]));
+ StringCopy(gStringVar2, GetItemName(show->smartshopperShow.itemIds[0]));
ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[0]);
// Pick a random comment (SMARTSHOPPER_STATE_RAND_COMMENT_#)
sTVShowState += SMARTSHOPPER_STATE_CLERK_NORMAL + (Random() % (SMARTSHOPPER_STATE_RAND_COMMENT_4 - SMARTSHOPPER_STATE_RAND_COMMENT_1 + 1));
@@ -4511,7 +4513,7 @@ static void DoTVShowTodaysSmartShopper(void)
break;
case SMARTSHOPPER_STATE_SECOND_ITEM:
// Clerk describes 2nd type of item player purchased
- StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[1]));
+ StringCopy(gStringVar2, GetItemName(show->smartshopperShow.itemIds[1]));
ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[1]);
if (show->smartshopperShow.itemIds[2] != ITEM_NONE)
sTVShowState = SMARTSHOPPER_STATE_THIRD_ITEM;
@@ -4522,7 +4524,7 @@ static void DoTVShowTodaysSmartShopper(void)
break;
case SMARTSHOPPER_STATE_THIRD_ITEM:
// Clerk describes 3rd type of item player purchased
- StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[2]));
+ StringCopy(gStringVar2, GetItemName(show->smartshopperShow.itemIds[2]));
ConvertIntToDecimalString(2, show->smartshopperShow.itemAmounts[2]);
if (show->smartshopperShow.priceReduced == TRUE)
sTVShowState = SMARTSHOPPER_STATE_DURING_SALE;
@@ -4550,7 +4552,7 @@ static void DoTVShowTodaysSmartShopper(void)
case SMARTSHOPPER_STATE_CLERK_MAX:
// Clerk's comments if player purchased maximum number of 1st item
TVShowConvertInternationalString(gStringVar1, show->smartshopperShow.playerName, show->smartshopperShow.language);
- StringCopy(gStringVar2, ItemId_GetName(show->smartshopperShow.itemIds[0]));
+ StringCopy(gStringVar2, GetItemName(show->smartshopperShow.itemIds[0]));
if (show->smartshopperShow.priceReduced == TRUE)
sTVShowState = SMARTSHOPPER_STATE_DURING_SALE;
else
@@ -4674,7 +4676,7 @@ static void DoTVShowPokemonTodaySuccessfulCapture(void)
sTVShowState = 2;
break;
case 2:
- StringCopy(gStringVar2, ItemId_GetName(show->pokemonToday.ball));
+ StringCopy(gStringVar2, GetItemName(show->pokemonToday.ball));
ConvertIntToDecimalString(2, show->pokemonToday.nBallsUsed);
if (show->pokemonToday.nBallsUsed < 4)
sTVShowState = 3;
@@ -5364,7 +5366,8 @@ static void DoTVShow3CheersForPokeblocks(void)
if (show->threeCheers.sheen > 24)
{
StringCopy(gStringVar2, gText_Excellent);
- } else if (show->threeCheers.sheen > 22)
+ }
+ else if (show->threeCheers.sheen > 22)
{
StringCopy(gStringVar2, gText_VeryGood);
}
@@ -5713,7 +5716,7 @@ static void DoTVShowHoennTreasureInvestigators(void)
switch (state)
{
case 0:
- StringCopy(gStringVar1, ItemId_GetName(show->treasureInvestigators.item));
+ StringCopy(gStringVar1, GetItemName(show->treasureInvestigators.item));
if (show->treasureInvestigators.location == MAPSEC_DYNAMIC)
{
switch (show->treasureInvestigators.mapLayoutId)
@@ -5734,13 +5737,13 @@ static void DoTVShowHoennTreasureInvestigators(void)
}
break;
case 1:
- StringCopy(gStringVar1, ItemId_GetName(show->treasureInvestigators.item));
+ StringCopy(gStringVar1, GetItemName(show->treasureInvestigators.item));
TVShowConvertInternationalString(gStringVar2, show->treasureInvestigators.playerName, show->treasureInvestigators.language);
GetMapName(gStringVar3, show->treasureInvestigators.location, 0);
TVShowDone();
break;
case 2:
- StringCopy(gStringVar1, ItemId_GetName(show->treasureInvestigators.item));
+ StringCopy(gStringVar1, GetItemName(show->treasureInvestigators.item));
TVShowConvertInternationalString(gStringVar2, show->treasureInvestigators.playerName, show->treasureInvestigators.language);
TVShowDone();
break;
@@ -5848,7 +5851,7 @@ static void DoTVShowBreakingNewsTV(void)
break;
case 3:
ConvertIntToDecimalString(0, show->breakingNews.balls);
- StringCopy(gStringVar2, ItemId_GetName(show->breakingNews.caughtMonBall));
+ StringCopy(gStringVar2, GetItemName(show->breakingNews.caughtMonBall));
sTVShowState = 4;
break;
case 4:
@@ -6010,7 +6013,7 @@ static void DoTVShowPokemonLotteryWinnerFlashReport(void)
StringCopy(gStringVar2, gText_Second);
else
StringCopy(gStringVar2, gText_Third);
- StringCopy(gStringVar3, ItemId_GetName(show->lottoWinner.item));
+ StringCopy(gStringVar3, GetItemName(show->lottoWinner.item));
TVShowDone();
ShowFieldMessage(sTVPokemonLotteryWinnerFlashReportTextGroup[state]);
}
@@ -6241,7 +6244,7 @@ static void DoTVShowSpotTheCuties(void)
TVShowConvertInternationalString(gStringVar1, show->cuties.playerName, show->cuties.language);
TVShowConvertInternationalString(gStringVar2, show->cuties.nickname, show->cuties.pokemonNameLanguage);
- // Comments following the intro depend on how many ribbons the pokemon has
+ // Comments following the intro depend on how many ribbons the Pokémon has
if (show->cuties.nRibbons < 10)
sTVShowState = SPOTCUTIES_STATE_RIBBONS_LOW;
else if (show->cuties.nRibbons < 20)
@@ -6694,7 +6697,7 @@ static void DoTVShowSecretBaseSecrets(void)
sTVShowState = show->secretBaseSecrets.savedState;
break;
case SBSECRETS_STATE_USED_BAG:
- StringCopy(gStringVar2, ItemId_GetName(show->secretBaseSecrets.item));
+ StringCopy(gStringVar2, GetItemName(show->secretBaseSecrets.item));
sTVShowState = show->secretBaseSecrets.savedState;
break;
case SBSECRETS_STATE_USED_CUSHION:
diff --git a/src/union_room.c b/src/union_room.c
index 1b29863183..cd94cf23bf 100644
--- a/src/union_room.c
+++ b/src/union_room.c
@@ -1630,7 +1630,7 @@ static void CB2_TransitionToCableClub(void)
static void CreateTrainerCardInBuffer(void *dest, bool32 setWonderCard)
{
- struct TrainerCard * card = (struct TrainerCard *)dest;
+ struct TrainerCard *card = (struct TrainerCard *)dest;
TrainerCard_GenerateCardForLinkPlayer(card);
// Below field is re-used, to be read by Task_ExchangeCards
@@ -1672,7 +1672,7 @@ static void Task_StartActivity(u8 taskId)
HealPlayerParty();
SavePlayerParty();
LoadPlayerBag();
- WarpForCableClubActivity(MAP_GROUP(BATTLE_COLOSSEUM_2P), MAP_NUM(BATTLE_COLOSSEUM_2P), 6, 8, USING_SINGLE_BATTLE);
+ WarpForCableClubActivity(MAP_GROUP(MAP_BATTLE_COLOSSEUM_2P), MAP_NUM(MAP_BATTLE_COLOSSEUM_2P), 6, 8, USING_SINGLE_BATTLE);
SetMainCallback2(CB2_TransitionToCableClub);
break;
case ACTIVITY_BATTLE_DOUBLE:
@@ -1681,7 +1681,7 @@ static void Task_StartActivity(u8 taskId)
SavePlayerParty();
LoadPlayerBag();
CreateTrainerCardInBuffer(gBlockSendBuffer, TRUE);
- WarpForCableClubActivity(MAP_GROUP(BATTLE_COLOSSEUM_2P), MAP_NUM(BATTLE_COLOSSEUM_2P), 6, 8, USING_DOUBLE_BATTLE);
+ WarpForCableClubActivity(MAP_GROUP(MAP_BATTLE_COLOSSEUM_2P), MAP_NUM(MAP_BATTLE_COLOSSEUM_2P), 6, 8, USING_DOUBLE_BATTLE);
SetMainCallback2(CB2_TransitionToCableClub);
break;
case ACTIVITY_BATTLE_MULTI:
@@ -1690,19 +1690,19 @@ static void Task_StartActivity(u8 taskId)
SavePlayerParty();
LoadPlayerBag();
CreateTrainerCardInBuffer(gBlockSendBuffer, TRUE);
- WarpForCableClubActivity(MAP_GROUP(BATTLE_COLOSSEUM_4P), MAP_NUM(BATTLE_COLOSSEUM_4P), 5, 8, USING_MULTI_BATTLE);
+ WarpForCableClubActivity(MAP_GROUP(MAP_BATTLE_COLOSSEUM_4P), MAP_NUM(MAP_BATTLE_COLOSSEUM_4P), 5, 8, USING_MULTI_BATTLE);
SetMainCallback2(CB2_TransitionToCableClub);
break;
case ACTIVITY_TRADE:
CreateTrainerCardInBuffer(gBlockSendBuffer, TRUE);
CleanupOverworldWindowsAndTilemaps();
- WarpForCableClubActivity(MAP_GROUP(TRADE_CENTER), MAP_NUM(TRADE_CENTER), 5, 8, USING_TRADE_CENTER);
+ WarpForCableClubActivity(MAP_GROUP(MAP_TRADE_CENTER), MAP_NUM(MAP_TRADE_CENTER), 5, 8, USING_TRADE_CENTER);
SetMainCallback2(CB2_TransitionToCableClub);
break;
case ACTIVITY_RECORD_CORNER:
CreateTrainerCardInBuffer(gBlockSendBuffer, TRUE);
CleanupOverworldWindowsAndTilemaps();
- WarpForCableClubActivity(MAP_GROUP(RECORD_CORNER), MAP_NUM(RECORD_CORNER), 8, 9, USING_RECORD_CORNER);
+ WarpForCableClubActivity(MAP_GROUP(MAP_RECORD_CORNER), MAP_NUM(MAP_RECORD_CORNER), 8, 9, USING_RECORD_CORNER);
SetMainCallback2(CB2_TransitionToCableClub);
break;
case ACTIVITY_TRADE | IN_UNION_ROOM:
@@ -3125,7 +3125,7 @@ static void Task_RunUnionRoom(u8 taskId)
break;
case UR_STATE_REGISTER_COMPLETE:
SetTradeBoardRegisteredMonInfo(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel);
- ScheduleFieldMessageAndExit(sText_RegistraionCompleted);
+ ScheduleFieldMessageAndExit(sText_RegistrationCompleted);
break;
case UR_STATE_CANCEL_REGISTRATION_PROMPT:
switch (UnionRoomHandleYesNo(&uroom->textState, FALSE))
@@ -3496,10 +3496,10 @@ static void Task_SearchForChildOrParent(u8 taskId)
}
}
-static u8 CreateTask_SearchForChildOrParent(struct RfuIncomingPlayerList * parentList, struct RfuIncomingPlayerList * childList, u32 linkGroup)
+static u8 CreateTask_SearchForChildOrParent(struct RfuIncomingPlayerList *parentList, struct RfuIncomingPlayerList *childList, u32 linkGroup)
{
u8 taskId = CreateTask(Task_SearchForChildOrParent, 0);
- struct RfuIncomingPlayerList ** data = (void *)gTasks[taskId].data;
+ struct RfuIncomingPlayerList **data = (void *)gTasks[taskId].data;
data[0] = parentList;
data[1] = childList;
gTasks[taskId].data[4] = linkGroup;
@@ -3563,7 +3563,7 @@ static void Task_ListenForWonderDistributor(u8 taskId)
}
}
-static u8 CreateTask_ListenForCompatiblePartners(struct RfuIncomingPlayerList * list, u32 linkGroup)
+static u8 CreateTask_ListenForCompatiblePartners(struct RfuIncomingPlayerList *list, u32 linkGroup)
{
u8 taskId = CreateTask(Task_ListenForCompatiblePartners, 0);
struct RfuIncomingPlayerList **oldList = (void *) gTasks[taskId].data;
@@ -3572,7 +3572,7 @@ static u8 CreateTask_ListenForCompatiblePartners(struct RfuIncomingPlayerList *
return taskId;
}
-static u8 CreateTask_ListenForWonderDistributor(struct RfuIncomingPlayerList * list, u32 linkGroup)
+static u8 CreateTask_ListenForWonderDistributor(struct RfuIncomingPlayerList *list, u32 linkGroup)
{
u8 taskId = CreateTask(Task_ListenForWonderDistributor, 0);
struct RfuIncomingPlayerList **oldList = (void *) gTasks[taskId].data;
@@ -3650,7 +3650,7 @@ static s8 UnionRoomHandleYesNo(u8 *state, bool32 noDraw)
return MENU_NOTHING_CHOSEN;
}
-static u8 CreateTradeBoardWindow(const struct WindowTemplate * template)
+static u8 CreateTradeBoardWindow(const struct WindowTemplate *template)
{
u8 windowId = AddWindow(template);
DrawStdWindowFrame(windowId, FALSE);
@@ -3880,7 +3880,7 @@ static void ClearIncomingPlayerList(struct RfuIncomingPlayerList *list, u8 count
}
// Checks player name and trainer id, returns TRUE if they are not the same
-static bool8 ArePlayersDifferent(struct RfuPlayerData* player1, const struct RfuPlayerData* player2)
+static bool8 ArePlayersDifferent(struct RfuPlayerData *player1, const struct RfuPlayerData *player2)
{
s32 i;
@@ -4044,7 +4044,7 @@ static s32 UnionRoomGetPlayerInteractionResponse(struct RfuPlayerList *list, boo
{
bool32 metBefore;
- struct RfuPlayer * player = &list->players[playerIdx];
+ struct RfuPlayer *player = &list->players[playerIdx];
if (!player->rfu.data.startedActivity && !overrideGender)
{
@@ -4094,7 +4094,7 @@ static void ItemPrintFunc_EmptyList(u8 windowId, u32 itemId, u8 y)
{
}
-static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct RfuGameData * data, const u8 * playerName, u8 colorIdx)
+static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct RfuGameData *data, const u8 *playerName, u8 colorIdx)
{
u8 levelStr[4];
u16 species = data->tradeSpecies;
@@ -4146,7 +4146,7 @@ static void TradeBoardListMenuItemPrintFunc(u8 windowId, u32 itemId, u8 y)
}
}
-static s32 GetIndexOfNthTradeBoardOffer(struct RfuPlayer * players, s32 n)
+static s32 GetIndexOfNthTradeBoardOffer(struct RfuPlayer *players, s32 n)
{
s32 i;
s32 j = 0;
@@ -4306,8 +4306,8 @@ static bool32 PollPartnerYesNoResponse(struct WirelessLink_URoom *data)
bool32 InUnionRoom(void)
{
- return gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(UNION_ROOM)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(UNION_ROOM)
+ return gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_UNION_ROOM)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_UNION_ROOM)
? TRUE : FALSE;
}
diff --git a/src/union_room_battle.c b/src/union_room_battle.c
index c3ace12505..856f91bb78 100644
--- a/src/union_room_battle.c
+++ b/src/union_room_battle.c
@@ -26,7 +26,7 @@ struct UnionRoomBattle
s16 textState;
};
-static EWRAM_DATA struct UnionRoomBattle * sBattle = NULL;
+static EWRAM_DATA struct UnionRoomBattle *sBattle = NULL;
static const struct BgTemplate sBgTemplates[] = {
{
@@ -73,7 +73,7 @@ static void CB2_SetUpPartiesAndStartBattle(void)
SetMainCallback2(CB2_InitBattle);
}
-static void AddTextPrinterForUnionRoomBattle(u8 windowId, const u8 * str, u8 x, u8 y, s32 speed)
+static void AddTextPrinterForUnionRoomBattle(u8 windowId, const u8 *str, u8 x, u8 y, s32 speed)
{
s32 letterSpacing = 0;
s32 lineSpacing = 1;
@@ -81,7 +81,7 @@ static void AddTextPrinterForUnionRoomBattle(u8 windowId, const u8 * str, u8 x,
AddTextPrinterParameterized4(windowId, FONT_NORMAL, x, y, letterSpacing, lineSpacing, sTextColors, speed, str);
}
-static bool32 PrintUnionRoomBattleMessage(s16 * state, const u8 * str, s32 speed)
+static bool32 PrintUnionRoomBattleMessage(s16 *state, const u8 *str, s32 speed)
{
switch (*state)
{
diff --git a/src/union_room_chat.c b/src/union_room_chat.c
index 993e36de52..8cdd4bb144 100644
--- a/src/union_room_chat.c
+++ b/src/union_room_chat.c
@@ -155,7 +155,7 @@ struct UnionRoomChat
struct UnionRoomChatDisplay_Subtask
{
- bool32 (* callback)(u8 *);
+ bool32 (*callback)(u8 *);
bool8 active;
u8 state;
};
@@ -189,7 +189,7 @@ struct UnionRoomChatSprites
struct SubtaskInfo
{
u16 idx;
- bool32 (* callback)(u8 *);
+ bool32 (*callback)(u8 *);
};
struct MessageWindowInfo
diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c
index a7d5045b38..1f06828986 100644
--- a/src/union_room_player_avatar.c
+++ b/src/union_room_player_avatar.c
@@ -14,9 +14,9 @@
// Each parent player can lead a group of up to MAX_RFU_PLAYERS (including themselves).
// Multiply the leader's id by MAX_RFU_PLAYERS and add the member's id (0 if the leader) to
// get the sprite index of that player.
-#define UR_PLAYER_SPRITE_ID(leaderId, memberId)(MAX_RFU_PLAYERS * leaderId + memberId)
+#define UR_PLAYER_SPRITE_ID(leaderId, memberId) (MAX_RFU_PLAYERS * leaderId + memberId)
-static EWRAM_DATA struct UnionRoomObject * sUnionObjWork = NULL;
+static EWRAM_DATA struct UnionRoomObject *sUnionObjWork = NULL;
static EWRAM_DATA u32 sUnionObjRefreshTimer = 0;
static u8 CreateTask_AnimateUnionRoomPlayers(void);
@@ -136,7 +136,7 @@ static u8 GetUnionRoomPlayerGraphicsId(u32 gender, u32 id)
return sUnionRoomObjGfxIds[gender][id % NUM_UNION_ROOM_CLASSES];
}
-static void GetUnionRoomPlayerCoords(u32 leaderId, u32 memberId, s32 * x, s32 * y)
+static void GetUnionRoomPlayerCoords(u32 leaderId, u32 memberId, s32 *x, s32 *y)
{
*x = sUnionRoomPlayerCoords[leaderId][0] + sUnionRoomGroupOffsets[memberId][0] + MAP_OFFSET;
*y = sUnionRoomPlayerCoords[leaderId][1] + sUnionRoomGroupOffsets[memberId][1] + MAP_OFFSET;
@@ -181,10 +181,10 @@ static void RemoveUnionRoomPlayerObjectEvent(u32 leaderId)
RemoveObjectEventByLocalIdAndMap(sUnionRoomLocalIds[leaderId], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
}
-static bool32 SetUnionRoomPlayerEnterExitMovement(u32 leaderId, const u8 * movement)
+static bool32 SetUnionRoomPlayerEnterExitMovement(u32 leaderId, const u8 *movement)
{
u8 objectId;
- struct ObjectEvent * object;
+ struct ObjectEvent *object;
if (TryGetObjectEventIdByLocalIdAndMap(sUnionRoomLocalIds[leaderId], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId))
return FALSE;
object = &gObjectEvents[objectId];
@@ -198,7 +198,7 @@ static bool32 SetUnionRoomPlayerEnterExitMovement(u32 leaderId, const u8 * movem
static bool32 TryReleaseUnionRoomPlayerObjectEvent(u32 leaderId)
{
u8 objectId;
- struct ObjectEvent * object;
+ struct ObjectEvent *object;
if (TryGetObjectEventIdByLocalIdAndMap(sUnionRoomLocalIds[leaderId], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId))
return TRUE;
@@ -213,7 +213,7 @@ static bool32 TryReleaseUnionRoomPlayerObjectEvent(u32 leaderId)
return TRUE;
}
-u8 InitUnionRoomPlayerObjects(struct UnionRoomObject * players)
+u8 InitUnionRoomPlayerObjects(struct UnionRoomObject *players)
{
s32 i;
@@ -229,7 +229,7 @@ u8 InitUnionRoomPlayerObjects(struct UnionRoomObject * players)
return CreateTask_AnimateUnionRoomPlayers();
}
-static bool32 AnimateUnionRoomPlayerDespawn(s8 * state, u32 leaderId, struct UnionRoomObject * object)
+static bool32 AnimateUnionRoomPlayerDespawn(s8 *state, u32 leaderId, struct UnionRoomObject *object)
{
switch (*state)
{
@@ -253,7 +253,7 @@ static bool32 AnimateUnionRoomPlayerDespawn(s8 * state, u32 leaderId, struct Uni
return FALSE;
}
-static bool32 AnimateUnionRoomPlayerSpawn(s8 * state, u32 leaderId, struct UnionRoomObject * object)
+static bool32 AnimateUnionRoomPlayerSpawn(s8 *state, u32 leaderId, struct UnionRoomObject *object)
{
s16 x, y;
@@ -290,7 +290,7 @@ static bool32 AnimateUnionRoomPlayerSpawn(s8 * state, u32 leaderId, struct Union
static bool32 SpawnGroupLeader(u32 leaderId, u32 gender, u32 id)
{
- struct UnionRoomObject * object = &sUnionObjWork[leaderId];
+ struct UnionRoomObject *object = &sUnionObjWork[leaderId];
object->schedAnim = UNION_ROOM_SPAWN_IN;
object->gfxId = GetUnionRoomPlayerGraphicsId(gender, id);
@@ -302,7 +302,7 @@ static bool32 SpawnGroupLeader(u32 leaderId, u32 gender, u32 id)
static bool32 DespawnGroupLeader(u32 leaderId)
{
- struct UnionRoomObject * object = &sUnionObjWork[leaderId];
+ struct UnionRoomObject *object = &sUnionObjWork[leaderId];
object->schedAnim = UNION_ROOM_SPAWN_OUT;
if (object->state == 1)
@@ -311,7 +311,7 @@ static bool32 DespawnGroupLeader(u32 leaderId)
return FALSE;
}
-static void AnimateUnionRoomPlayer(u32 leaderId, struct UnionRoomObject * object)
+static void AnimateUnionRoomPlayer(u32 leaderId, struct UnionRoomObject *object)
{
switch (object->state)
{
@@ -390,7 +390,7 @@ void DestroyUnionRoomPlayerObjects(void)
DestroyTask_AnimateUnionRoomPlayers();
}
-void CreateUnionRoomPlayerSprites(u8 * spriteIds, s32 leaderId)
+void CreateUnionRoomPlayerSprites(u8 *spriteIds, s32 leaderId)
{
s32 memberId;
for (memberId = 0; memberId < MAX_RFU_PLAYERS; memberId++)
@@ -405,7 +405,7 @@ void CreateUnionRoomPlayerSprites(u8 * spriteIds, s32 leaderId)
}
}
-void DestroyUnionRoomPlayerSprites(u8 * spriteIds)
+void DestroyUnionRoomPlayerSprites(u8 *spriteIds)
{
s32 i;
for (i = 0; i < NUM_UNION_ROOM_SPRITES; i++)
@@ -427,7 +427,7 @@ void SetTilesAroundUnionRoomPlayersPassable(void)
}
}
-static u8 GetNewFacingDirectionForUnionRoomPlayer(u32 memberId, u32 leaderId, struct RfuGameData * gameData)
+static u8 GetNewFacingDirectionForUnionRoomPlayer(u32 memberId, u32 leaderId, struct RfuGameData *gameData)
{
if (memberId) // If not leader
return sMemberFacingDirections[memberId];
@@ -442,7 +442,7 @@ static bool32 IsUnionRoomPlayerInvisible(u32 leaderId, u32 memberId)
return IsVirtualObjectInvisible(UR_PLAYER_SPRITE_ID(leaderId, memberId) - UR_SPRITE_START_ID);
}
-static void SpawnGroupMember(u32 leaderId, u32 memberId, u8 graphicsId, struct RfuGameData * gameData)
+static void SpawnGroupMember(u32 leaderId, u32 memberId, u8 graphicsId, struct RfuGameData *gameData)
{
s32 x, y;
s32 id = UR_PLAYER_SPRITE_ID(leaderId, memberId);
@@ -465,7 +465,7 @@ static void DespawnGroupMember(u32 leaderId, u32 memberId)
MapGridSetMetatileImpassabilityAt(x, y, FALSE);
}
-static void AssembleGroup(u32 leaderId, struct RfuGameData * gameData)
+static void AssembleGroup(u32 leaderId, struct RfuGameData *gameData)
{
s16 x, y, x2, y2;
s32 i;
@@ -493,7 +493,7 @@ static void AssembleGroup(u32 leaderId, struct RfuGameData * gameData)
}
}
-static void SpawnGroupLeaderAndMembers(u32 leaderId, struct RfuGameData * gameData)
+static void SpawnGroupLeaderAndMembers(u32 leaderId, struct RfuGameData *gameData)
{
u32 i;
switch (gameData->activity)
@@ -528,7 +528,7 @@ static void DespawnGroupLeaderAndMembers(u32 leaderId, struct RfuGameData *gameD
static void UpdateUnionRoomPlayerSprites(struct WirelessLink_URoom *uroom)
{
s32 i;
- struct RfuPlayer * leaders;
+ struct RfuPlayer *leaders;
sUnionObjRefreshTimer = 0;
for (i = 0, leaders = uroom->playerList->players; i < MAX_UNION_ROOM_LEADERS; i++)
{
@@ -554,7 +554,7 @@ bool32 TryInteractWithUnionRoomMember(struct RfuPlayerList *list, s16 *memberIdP
{
s16 x, y;
s32 i, memberId;
- struct RfuPlayer * leaders;
+ struct RfuPlayer *leaders;
if (!IsPlayerStandingStill())
return FALSE;
diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c
index 2aefdedf38..c9d5c56e5c 100644
--- a/src/use_pokeblock.c
+++ b/src/use_pokeblock.c
@@ -73,10 +73,10 @@ struct UsePokeblockSession
u8 natureText[34];
};
-// This struct is identical to PokenavMonListItem, the struct used for managing lists of pokemon in the pokenav
+// This struct is identical to PokenavMonListItem, the struct used for managing lists of Pokémon in the PokéNav
// Given that this screen is essentially duplicated in the poknav, this struct was probably the same one with
// a more general name/purpose
-// TODO: Once the pokenav conditions screens are documented, resolve the above
+// TODO: Once the PokéNav conditions screens are documented, resolve the above
struct UsePokeblockMenuPokemon
{
u8 boxId; // Because this screen is never used for the PC this is always set to TOTAL_BOXES_COUNT to refer to party
@@ -1259,7 +1259,7 @@ static void LoadAndCreateSelectionIcons(void)
LoadSpriteSheets(spriteSheets);
LoadSpritePalettes(spritePals);
- // Fill pokeball selection icons up to number in party
+ // Fill Poké Ball selection icons up to number in party
for (i = 0; i < sMenu->info.numSelections - 1; i++)
{
spriteId = CreateSprite(&spriteTemplate, 226, (i * 20) + 8, 0);
@@ -1489,7 +1489,7 @@ static bool8 LoadNewSelection_CancelToMon(void)
case 2:
if (!ConditionMenu_UpdateMonEnter(&sMenu->graph, &sMenu->curMonXOffset))
{
- // Load the new adjacent pokemon (not the one being shown)
+ // Load the new adjacent Pokémon (not the one being shown)
LoadMonInfo(sMenu->toLoadSelection, sMenu->toLoadId);
sMenu->info.helperState++;
}
@@ -1552,7 +1552,7 @@ static bool8 LoadNewSelection_MonToMon(void)
case 2:
if (!ConditionMenu_UpdateMonEnter(&sMenu->graph, &sMenu->curMonXOffset))
{
- // Load the new adjacent pokemon (not the one being shown)
+ // Load the new adjacent Pokémon (not the one being shown)
LoadMonInfo(sMenu->toLoadSelection, sMenu->toLoadId);
sMenu->info.helperState++;
}
@@ -1593,8 +1593,8 @@ static void SpriteCB_SelectionIconCancel(struct Sprite *sprite)
sprite->oam.paletteNum = IndexOfSpritePaletteTag(TAG_CONDITION_CANCEL);
}
-// Calculate the max id for sparkles/stars that appear around the pokemon on the condition screen
-// All pokemon start with 1 sparkle (added by CreateConditionSparkleSprites), so the number here +1
+// Calculate the max id for sparkles/stars that appear around the Pokémon on the condition screen
+// All Pokémon start with 1 sparkle (added by CreateConditionSparkleSprites), so the number here +1
// is the total number of sparkles that appear
static void CalculateNumAdditionalSparkles(u8 monIndex)
{
diff --git a/src/wild_encounter.c b/src/wild_encounter.c
index 3a7f6cab23..7ac9ae0e8f 100644
--- a/src/wild_encounter.c
+++ b/src/wild_encounter.c
@@ -118,8 +118,8 @@ static bool8 CheckFeebas(void)
u8 route119Section = 0;
u16 spotId;
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE119)
- && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE119))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ROUTE119)
+ && gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ROUTE119))
{
GetXYCoordsOneStepInFrontOfPlayer(&x, &y);
x -= MAP_OFFSET;
@@ -309,14 +309,14 @@ static u16 GetCurrentMapWildMonHeaderId(void)
for (i = 0; ; i++)
{
const struct WildPokemonHeader *wildHeader = &gWildMonHeaders[i];
- if (wildHeader->mapGroup == MAP_GROUP(UNDEFINED))
+ if (wildHeader->mapGroup == MAP_GROUP(MAP_UNDEFINED))
break;
if (gWildMonHeaders[i].mapGroup == gSaveBlock1Ptr->location.mapGroup &&
gWildMonHeaders[i].mapNum == gSaveBlock1Ptr->location.mapNum)
{
- if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ALTERING_CAVE) &&
- gSaveBlock1Ptr->location.mapNum == MAP_NUM(ALTERING_CAVE))
+ if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(MAP_ALTERING_CAVE) &&
+ gSaveBlock1Ptr->location.mapNum == MAP_NUM(MAP_ALTERING_CAVE))
{
u16 alteringCaveId = VarGet(VAR_ALTERING_CAVE_WILD_SET);
if (alteringCaveId >= NUM_ALTERING_CAVE_TABLES)
@@ -364,7 +364,7 @@ static u8 PickWildMonNature(void)
}
}
}
- // check synchronize for a pokemon with the same ability
+ // check synchronize for a Pokémon with the same ability
if (!GetMonData(&gPlayerParty[0], MON_DATA_SANITY_IS_EGG)
&& GetMonAbility(&gPlayerParty[0]) == ABILITY_SYNCHRONIZE
&& Random() % 2 == 0)
@@ -540,8 +540,8 @@ static bool8 AllowWildCheckOnNewMetatile(void)
static bool8 AreLegendariesInSootopolisPreventingEncounters(void)
{
- if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(SOOTOPOLIS_CITY)
- || gSaveBlock1Ptr->location.mapNum != MAP_NUM(SOOTOPOLIS_CITY))
+ if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(MAP_SOOTOPOLIS_CITY)
+ || gSaveBlock1Ptr->location.mapNum != MAP_NUM(MAP_SOOTOPOLIS_CITY))
{
return FALSE;
}
@@ -812,16 +812,16 @@ u16 GetLocalWildMon(bool8 *isWaterMon)
// Neither
if (landMonsInfo == NULL && waterMonsInfo == NULL)
return SPECIES_NONE;
- // Land Pokemon
+ // Land Pokémon
else if (landMonsInfo != NULL && waterMonsInfo == NULL)
return landMonsInfo->wildPokemon[ChooseWildMonIndex_Land()].species;
- // Water Pokemon
+ // Water Pokémon
else if (landMonsInfo == NULL && waterMonsInfo != NULL)
{
*isWaterMon = TRUE;
return waterMonsInfo->wildPokemon[ChooseWildMonIndex_WaterRock()].species;
}
- // Either land or water Pokemon
+ // Either land or water Pokémon
if ((Random() % 100) < 80)
{
return landMonsInfo->wildPokemon[ChooseWildMonIndex_Land()].species;
@@ -851,7 +851,7 @@ bool8 UpdateRepelCounter(void)
{
u16 steps;
- if (InBattlePike() || InBattlePyramid())
+ if (InBattlePike() || CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
return FALSE;
if (InUnionRoom() == TRUE)
return FALSE;
diff --git a/gflib/window.c b/src/window.c
similarity index 99%
rename from gflib/window.c
rename to src/window.c
index 6f7af457d3..644048fad7 100644
--- a/gflib/window.c
+++ b/src/window.c
@@ -5,12 +5,12 @@
#include "blit.h"
// This global is set to 0 and never changed.
-u8 gTransparentTileNumber;
-void *gWindowBgTilemapBuffers[NUM_BACKGROUNDS];
+COMMON_DATA u8 gTransparentTileNumber = 0;
+COMMON_DATA void *gWindowBgTilemapBuffers[NUM_BACKGROUNDS] = {0};
extern u32 gWindowTileAutoAllocEnabled;
EWRAM_DATA struct Window gWindows[WINDOWS_MAX] = {0};
-EWRAM_DATA static struct Window* sWindowPtr = NULL;
+EWRAM_DATA static struct Window *sWindowPtr = NULL;
EWRAM_DATA static u16 sWindowSize = 0;
static u8 GetNumActiveWindowsOnBg(u8 bgId);
diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c
index 9a562cf7f7..7734c39d24 100644
--- a/src/wireless_communication_status_screen.c
+++ b/src/wireless_communication_status_screen.c
@@ -54,7 +54,7 @@ struct WirelessCommunicationStatusScreen
u8 filler[10];
};
-static struct WirelessCommunicationStatusScreen * sStatusScreen;
+static struct WirelessCommunicationStatusScreen *sStatusScreen;
static void CB2_InitWirelessCommunicationScreen(void);
static void Task_WirelessCommunicationScreen(u8);
@@ -247,7 +247,7 @@ static void CB2_ExitWirelessCommunicationStatusScreen(void)
}
// Cycle through palettes that relocate various shades of blue to create the wave effect at the bottom of the screen.
-static void CyclePalette(s16 * counter, s16 * palIdx)
+static void CyclePalette(s16 *counter, s16 *palIdx)
{
s32 idx;
if (++(*counter) > 5)
@@ -345,7 +345,7 @@ static void Task_WirelessCommunicationScreen(u8 taskId)
#undef tState
-static void WCSS_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 mode)
+static void WCSS_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 mode)
{
u8 color[3];
@@ -381,7 +381,7 @@ static void WCSS_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *
AddTextPrinterParameterized4(windowId, fontId, x, y, 0, 0, color, TEXT_SKIP_DRAW, str);
}
-static u32 CountPlayersInGroupAndGetActivity(struct RfuPlayer * player, u32 * groupCounts)
+static u32 CountPlayersInGroupAndGetActivity(struct RfuPlayer *player, u32 *groupCounts)
{
int i, j, k;
u32 activity = player->rfu.data.activity;
@@ -422,7 +422,7 @@ static u32 CountPlayersInGroupAndGetActivity(struct RfuPlayer * player, u32 * gr
#undef group_players
}
-static bool32 HaveCountsChanged(u32 * currCounts, u32 * prevCounts)
+static bool32 HaveCountsChanged(u32 *currCounts, u32 *prevCounts)
{
s32 i;
for (i = 0; i < NUM_GROUPTYPES; i++)
@@ -433,11 +433,11 @@ static bool32 HaveCountsChanged(u32 * currCounts, u32 * prevCounts)
return FALSE;
}
-static bool32 UpdateCommunicationCounts(u32 * groupCounts, u32 * prevGroupCounts, u32 * activities, u8 taskId)
+static bool32 UpdateCommunicationCounts(u32 *groupCounts, u32 *prevGroupCounts, u32 *activities, u8 taskId)
{
bool32 activitiesChanged = FALSE;
u32 groupCountBuffer[NUM_GROUPTYPES] = {0, 0, 0, 0};
- struct RfuPlayer ** players = (void *)gTasks[taskId].data;
+ struct RfuPlayer **players = (void *)gTasks[taskId].data;
s32 i;
for (i = 0; i < NUM_TASK_DATA; i++)
diff --git a/sym_bss.txt b/sym_bss.txt
index 3a23e74789..0520e0b5b0 100644
--- a/sym_bss.txt
+++ b/sym_bss.txt
@@ -1,10 +1,10 @@
.include "src/main.o"
- .include "gflib/malloc.o"
- .include "gflib/dma3_manager.o"
- .include "gflib/gpu_regs.o"
- .include "gflib/bg.o"
- .include "gflib/text.o"
- .include "gflib/sprite.o"
+ .include "src/malloc.o"
+ .include "src/dma3_manager.o"
+ .include "src/gpu_regs.o"
+ .include "src/bg.o"
+ .include "src/text.o"
+ .include "src/sprite.o"
.include "src/link.o"
.include "src/AgbRfu_LinkManager.o"
.include "src/link_rfu_3.o"
diff --git a/sym_common.txt b/sym_common.txt
index 7eebcac74e..e001c2ca59 100644
--- a/sym_common.txt
+++ b/sym_common.txt
@@ -1,37 +1,10 @@
- .space 0x8
+ .align 4
.include "main.o"
- @ ../gflib/bg.o
- .align 2
-gWindowTileAutoAllocEnabled:
- .space 4
- @ ../gflib/window.o
- .align 4
-gTransparentTileNumber:
- .space 1
- .align 4
-gWindowBgTilemapBuffers:
- .space 16
- @ ../gflib/text.o
- .align 4
-gFonts:
- .space 4
- .align 2
-gDisableTextPrinters:
- .space 1
- .align 4
-gCurGlyph:
- .space 132
- .align 2
-gTextFlags:
- .space 4
- @ ../gflib/sprite.o
- .align 2
-gOamMatrixAllocBitmap:
- .space 4
- .align 2
-gReservedSpritePaletteCount:
- .space 1
+ .include "bg.o"
.align 4
+ .include "window.o"
+ .include "text.o"
+ .include "sprite.o"
.include "link.o"
.include "AgbRfu_LinkManager.o"
.include "link_rfu_2.o"
@@ -53,9 +26,7 @@ gReservedSpritePaletteCount:
.include "tv.o"
.include "mauville_old_man.o"
.include "image_processing_effects.o"
-
- .space 0x4
-
+ .align 4
.include "contest_painting.o"
.include "field_specials.o"
.include "evolution_scene.o"
@@ -66,14 +37,9 @@ gReservedSpritePaletteCount:
.include "battle_anim_throw.o"
.include "battle_factory_screen.o"
.include "apprentice.o"
-
- .space 0x8
-
+ .align 4
.include "list_menu.o"
.include "party_menu.o"
-
- .space 0x44
-
.include "ereader_screen.o"
.include "m4a.o"
.include "agb_flash.o"
diff --git a/sym_ewram.txt b/sym_ewram.txt
index 414b7a3b23..92a69cc4c9 100644
--- a/sym_ewram.txt
+++ b/sym_ewram.txt
@@ -1,9 +1,10 @@
+ .include "src/malloc.o"
.include "src/decompress.o"
.include "src/main.o"
- .include "gflib/window.o"
- .include "gflib/text.o"
- .include "gflib/sprite.o"
- .include "gflib/string_util.o"
+ .include "src/window.o"
+ .include "src/text.o"
+ .include "src/sprite.o"
+ .include "src/string_util.o"
.include "src/link.o"
.include "src/AgbRfu_LinkManager.o"
.include "src/link_rfu_3.o"
diff --git a/tools/gbagfx/convert_png.c b/tools/gbagfx/convert_png.c
index c9c240efbb..58371229c0 100644
--- a/tools/gbagfx/convert_png.c
+++ b/tools/gbagfx/convert_png.c
@@ -62,7 +62,7 @@ static unsigned char *ConvertBitDepth(unsigned char *src, int srcBitDepth, int d
for (j = 8 - srcBitDepth; j >= 0; j -= srcBitDepth)
{
- unsigned char pixel = (srcByte >> j) % (1 << destBitDepth);
+ unsigned char pixel = ((srcByte >> j) % (1 << srcBitDepth)) % (1 << destBitDepth);
*dest |= pixel << destBit;
destBit -= destBitDepth;
if (destBit < 0)
diff --git a/tools/gbagfx/jasc_pal.c b/tools/gbagfx/jasc_pal.c
index e5ba9c3c2f..8d4bb137d5 100644
--- a/tools/gbagfx/jasc_pal.c
+++ b/tools/gbagfx/jasc_pal.c
@@ -46,10 +46,14 @@ void ReadJascPaletteLine(FILE *fp, char *line)
}
if (c == '\n')
- FATAL_ERROR("LF line endings aren't supported.\n");
+ {
+ line[length] = 0;
+
+ return;
+ }
if (c == EOF)
- FATAL_ERROR("Unexpected EOF. No CRLF at end of file.\n");
+ FATAL_ERROR("Unexpected EOF. No LF or CRLF at end of file.\n");
if (c == 0)
FATAL_ERROR("NUL character in file.\n");
diff --git a/tools/jsonproc/jsonproc.cpp b/tools/jsonproc/jsonproc.cpp
index 23056a5ff3..03e51b765a 100755
--- a/tools/jsonproc/jsonproc.cpp
+++ b/tools/jsonproc/jsonproc.cpp
@@ -1,4 +1,6 @@
// jsonproc.cpp
+// jsonproc converts JSON data to an output file based on an Inja template.
+// https://github.com/pantor/inja
#include "jsonproc.h"
@@ -105,10 +107,13 @@ int main(int argc, char *argv[])
});
env.add_callback("cleanString", 1, [](Arguments& args) {
- string badChars = ".'{} \n\t-\u00e9";
string str = args.at(0)->get();
for (unsigned int i = 0; i < str.length(); i++) {
- if (badChars.find(str[i]) != std::string::npos) {
+ // This code is not Unicode aware, so UTF-8 is not easily parsable without introducing
+ // another library. Just filter out any non-alphanumeric characters for now.
+ // TODO: proper Unicode string normalization
+ if ((i == 0 && isdigit(str[i]))
+ || !isalnum(str[i])) {
str[i] = '_';
}
}
diff --git a/tools/mapjson/json11.cpp b/tools/mapjson/json11.cpp
index 1da530206b..fcacdbeb39 100644
--- a/tools/mapjson/json11.cpp
+++ b/tools/mapjson/json11.cpp
@@ -23,6 +23,7 @@
#include
#include
#include
+#include
namespace json11 {
@@ -33,7 +34,6 @@ using std::vector;
using std::map;
using std::make_shared;
using std::initializer_list;
-using std::move;
/* Helper for representing null - just a do-nothing struct, plus comparison
* operators so the helpers in JsonValue work. We can't use nullptr_t because
@@ -149,7 +149,7 @@ protected:
// Constructors
explicit Value(const T &value) : m_value(value) {}
- explicit Value(T &&value) : m_value(move(value)) {}
+ explicit Value(T &&value) : m_value(std::move(value)) {}
// Get type tag
Json::Type type() const override {
@@ -196,7 +196,7 @@ class JsonString final : public Value {
const string &string_value() const override { return m_value; }
public:
explicit JsonString(const string &value) : Value(value) {}
- explicit JsonString(string &&value) : Value(move(value)) {}
+ explicit JsonString(string &&value) : Value(std::move(value)) {}
};
class JsonArray final : public Value {
@@ -204,7 +204,7 @@ class JsonArray final : public Value {
const Json & operator[](size_t i) const override;
public:
explicit JsonArray(const Json::array &value) : Value(value) {}
- explicit JsonArray(Json::array &&value) : Value(move(value)) {}
+ explicit JsonArray(Json::array &&value) : Value(std::move(value)) {}
};
class JsonObject final : public Value {
@@ -212,7 +212,7 @@ class JsonObject final : public Value {
const Json & operator[](const string &key) const override;
public:
explicit JsonObject(const Json::object &value) : Value(value) {}
- explicit JsonObject(Json::object &&value) : Value(move(value)) {}
+ explicit JsonObject(Json::object &&value) : Value(std::move(value)) {}
};
class JsonNull final : public Value {
@@ -254,12 +254,12 @@ Json::Json(double value) : m_ptr(make_shared(value)) {
Json::Json(int value) : m_ptr(make_shared(value)) {}
Json::Json(bool value) : m_ptr(value ? statics().t : statics().f) {}
Json::Json(const string &value) : m_ptr(make_shared(value)) {}
-Json::Json(string &&value) : m_ptr(make_shared(move(value))) {}
+Json::Json(string &&value) : m_ptr(make_shared(std::move(value))) {}
Json::Json(const char * value) : m_ptr(make_shared(value)) {}
Json::Json(const Json::array &values) : m_ptr(make_shared(values)) {}
-Json::Json(Json::array &&values) : m_ptr(make_shared(move(values))) {}
+Json::Json(Json::array &&values) : m_ptr(make_shared(std::move(values))) {}
Json::Json(const Json::object &values) : m_ptr(make_shared(values)) {}
-Json::Json(Json::object &&values) : m_ptr(make_shared(move(values))) {}
+Json::Json(Json::object &&values) : m_ptr(make_shared(std::move(values))) {}
/* * * * * * * * * * * * * * * * * * * *
* Accessors
@@ -357,7 +357,7 @@ struct JsonParser final {
* Mark this parse as failed.
*/
Json fail(string &&msg) {
- return fail(move(msg), Json());
+ return fail(std::move(msg), Json());
}
template
diff --git a/tools/mapjson/mapjson.cpp b/tools/mapjson/mapjson.cpp
index e53ac7924d..8d8ec4e4e6 100644
--- a/tools/mapjson/mapjson.cpp
+++ b/tools/mapjson/mapjson.cpp
@@ -30,6 +30,8 @@ using json11::Json;
#include "mapjson.h"
string version;
+// System directory separator
+string sep;
string read_text_file(string filepath) {
ifstream in_file(filepath);
@@ -94,6 +96,29 @@ string json_to_string(const Json &data, const string &field = "", bool silent =
return output;
}
+string get_generated_warning(const string &filename, bool isAsm) {
+ string comment = isAsm ? "@" : "//";
+
+ ostringstream warning;
+ warning << comment << "\n"
+ << comment << " DO NOT MODIFY THIS FILE! It is auto-generated from " << filename << "\n"
+ << comment << "\n\n";
+ return warning.str();
+}
+
+string get_include_guard_start(const string &name) {
+ ostringstream guard;
+ guard << "#ifndef GUARD_" << name << "_H\n"
+ << "#define GUARD_" << name << "_H\n\n";
+ return guard.str();
+}
+
+string get_include_guard_end(const string &name) {
+ ostringstream guard;
+ guard << "#endif // GUARD_" << name << "_H\n";
+ return guard.str();
+}
+
string generate_map_header_text(Json map_data, Json layouts_data) {
string map_layout_id = json_to_string(map_data, "layout");
@@ -112,8 +137,7 @@ string generate_map_header_text(Json map_data, Json layouts_data) {
ostringstream text;
string mapName = json_to_string(map_data, "name");
-
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" << mapName << "/map.json\n@\n\n";
+ text << get_generated_warning("data/maps/" + mapName + "/map.json", true);
text << mapName << ":\n"
<< "\t.4byte " << json_to_string(layout, "name") << "\n";
@@ -165,12 +189,10 @@ string generate_map_connections_text(Json map_data) {
if (map_data["connections"] == Json())
return string("\n");
- ostringstream text;
-
string mapName = json_to_string(map_data, "name");
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" << mapName << "/map.json\n@\n\n";
-
+ ostringstream text;
+ text << get_generated_warning("data/maps/" + mapName + "/map.json", true);
text << mapName << "_MapConnectionsList:\n";
for (auto &connection : map_data["connections"].array_items()) {
@@ -191,11 +213,11 @@ string generate_map_events_text(Json map_data) {
if (map_data.object_items().find("shared_events_map") != map_data.object_items().end())
return string("\n");
- ostringstream text;
-
string mapName = json_to_string(map_data, "name");
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/" << mapName << "/map.json\n@\n\n";
+ ostringstream text;
+ text << get_generated_warning("data/maps/" + mapName + "/map.json", true);
+ text << "\t.align 2\n\n";
string objects_label, warps_label, coords_label, bgs_label;
@@ -330,13 +352,22 @@ string generate_map_events_text(Json map_data) {
return text.str();
}
-string get_directory_name(string filename) {
- size_t dir_pos = filename.find_last_of("/\\");
+string strip_trailing_separator(string filename) {
+ if(filename.back() == '/' || filename.back() == '\\')
+ filename.pop_back();
+ return filename;
+}
+void infer_separator(string filename) {
+ size_t dir_pos = filename.find_last_of("/\\");
+ sep = filename[dir_pos];
+}
+string file_parent(string filename){
+ size_t dir_pos = filename.find_last_of("/\\");
return filename.substr(0, dir_pos + 1);
}
-void process_map(string map_filepath, string layouts_filepath) {
+void process_map(string map_filepath, string layouts_filepath, string output_dir) {
string mapdata_err, layouts_err;
string mapdata_json_text = read_text_file(map_filepath);
@@ -354,16 +385,58 @@ void process_map(string map_filepath, string layouts_filepath) {
string events_text = generate_map_events_text(map_data);
string connections_text = generate_map_connections_text(map_data);
- string files_dir = get_directory_name(map_filepath);
- write_text_file(files_dir + "header.inc", header_text);
- write_text_file(files_dir + "events.inc", events_text);
- write_text_file(files_dir + "connections.inc", connections_text);
+ string out_dir = strip_trailing_separator(output_dir).append(sep);
+ write_text_file(out_dir + "header.inc", header_text);
+ write_text_file(out_dir + "events.inc", events_text);
+ write_text_file(out_dir + "connections.inc", connections_text);
+}
+
+void process_event_constants(const vector &map_filepaths, string output_ids_file) {
+ string warning = get_generated_warning("data/maps/*/map.json", false);
+
+ string guard_name = "CONSTANTS_MAP_EVENT_IDS";
+ ostringstream ids_file_text;
+ ids_file_text << get_include_guard_start(guard_name) << warning;
+
+ for (const string &filepath : map_filepaths) {
+ string err;
+ string map_json_text = read_text_file(filepath);
+ Json map_data = Json::parse(map_json_text, err);
+ if (map_data == Json())
+ FATAL_ERROR("Failed to read '%s' while generating map event constants: %s\n", filepath.c_str(), err.c_str());
+
+ string map_id = json_to_string(map_data, "id");
+
+ // Get IDs from the object/clone events.
+ ostringstream map_ids_text;
+ auto obj_events = map_data["object_events"].array_items();
+ for (unsigned int i = 0; i < obj_events.size(); i++) {
+ auto obj_event = obj_events[i];
+ if (obj_event.object_items().find("local_id") != obj_event.object_items().end())
+ map_ids_text << "#define " << json_to_string(obj_event, "local_id") << " " << i + 1 << "\n";
+ }
+ // Get IDs from the warp events.
+ auto warp_events = map_data["warp_events"].array_items();
+ for (unsigned int i = 0; i < warp_events.size(); i++) {
+ auto warp_event = warp_events[i];
+ if (warp_event.object_items().find("warp_id") != warp_event.object_items().end())
+ map_ids_text << "#define " << json_to_string(warp_event, "warp_id") << " " << i << "\n";
+ }
+ // Only output if we found any IDs
+ string temp = map_ids_text.str();
+ if (!temp.empty()) {
+ ids_file_text << "// " << map_id << "\n" << temp << "\n";
+ }
+ }
+
+ ids_file_text << get_include_guard_end(guard_name);
+ write_text_file(output_ids_file, ids_file_text.str());
}
string generate_groups_text(Json groups_data) {
ostringstream text;
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/map_groups.json\n@\n\n";
+ text << get_generated_warning("data/maps/map_groups.json", true);
for (auto &key : groups_data["group_order"].array_items()) {
string group = json_to_string(key);
@@ -382,7 +455,7 @@ string generate_groups_text(Json groups_data) {
return text.str();
}
-string generate_connections_text(Json groups_data) {
+string generate_connections_text(Json groups_data, string include_path) {
vector map_names;
for (auto &group : groups_data["group_order"].array_items())
@@ -404,15 +477,15 @@ string generate_connections_text(Json groups_data) {
ostringstream text;
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/map_groups.json\n@\n\n";
+ text << get_generated_warning("data/maps/map_groups.json", true);
for (Json map_name : map_names)
- text << "\t.include \"data/maps/" << json_to_string(map_name) << "/connections.inc\"\n";
+ text << "\t.include \"" << include_path << "/" << json_to_string(map_name) << "/connections.inc\"\n";
return text.str();
}
-string generate_headers_text(Json groups_data) {
+string generate_headers_text(Json groups_data, string include_path) {
vector map_names;
for (auto &group : groups_data["group_order"].array_items())
@@ -421,15 +494,15 @@ string generate_headers_text(Json groups_data) {
ostringstream text;
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/map_groups.json\n@\n\n";
+ text << get_generated_warning("data/maps/map_groups.json", true);
for (string map_name : map_names)
- text << "\t.include \"data/maps/" << map_name << "/header.inc\"\n";
+ text << "\t.include \"" << include_path << "/" << map_name << "/header.inc\"\n";
return text.str();
}
-string generate_events_text(Json groups_data) {
+string generate_events_text(Json groups_data, string include_path) {
vector map_names;
for (auto &group : groups_data["group_order"].array_items())
@@ -438,24 +511,20 @@ string generate_events_text(Json groups_data) {
ostringstream text;
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/map_groups.json\n@\n\n";
+ text << get_generated_warning(include_path + "/map_groups.json", true);
for (string map_name : map_names)
- text << "\t.include \"data/maps/" << map_name << "/events.inc\"\n";
+ text << "\t.include \"" << include_path << "/" << map_name << "/events.inc\"\n";
return text.str();
}
string generate_map_constants_text(string groups_filepath, Json groups_data) {
- string file_dir = get_directory_name(groups_filepath);
- char dir_separator = file_dir.back();
+ string file_dir = file_parent(groups_filepath) + sep;
+ string guard_name = "CONSTANTS_MAP_GROUPS";
ostringstream text;
-
- text << "#ifndef GUARD_CONSTANTS_MAP_GROUPS_H\n"
- << "#define GUARD_CONSTANTS_MAP_GROUPS_H\n\n";
-
- text << "//\n// DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/map_groups.json\n//\n\n";
+ text << get_include_guard_start(guard_name) << get_generated_warning("data/maps/map_groups.json", false);
int group_num = 0;
@@ -466,7 +535,7 @@ string generate_map_constants_text(string groups_filepath, Json groups_data) {
size_t max_length = 0;
for (auto &map_name : groups_data[groupName].array_items()) {
- string map_filepath = file_dir + json_to_string(map_name) + dir_separator + "map.json";
+ string map_filepath = file_dir + json_to_string(map_name) + sep + "map.json";
string err_str;
Json map_data = Json::parse(read_text_file(map_filepath), err_str);
if (map_data == Json())
@@ -488,12 +557,16 @@ string generate_map_constants_text(string groups_filepath, Json groups_data) {
}
text << "#define MAP_GROUPS_COUNT " << group_num << "\n\n";
- text << "#endif // GUARD_CONSTANTS_MAP_GROUPS_H\n";
+ text << get_include_guard_end(guard_name);
return text.str();
}
-void process_groups(string groups_filepath) {
+// Output paths are directories with trailing path separators
+void process_groups(string groups_filepath, string output_asm, string output_c) {
+ output_asm = strip_trailing_separator(output_asm); // Remove separator if existing.
+ output_c = strip_trailing_separator(output_c);
+
string err;
Json groups_data = Json::parse(read_text_file(groups_filepath), err);
@@ -501,25 +574,22 @@ void process_groups(string groups_filepath) {
FATAL_ERROR("%s\n", err.c_str());
string groups_text = generate_groups_text(groups_data);
- string connections_text = generate_connections_text(groups_data);
- string headers_text = generate_headers_text(groups_data);
- string events_text = generate_events_text(groups_data);
+ string connections_text = generate_connections_text(groups_data, output_asm);
+ string headers_text = generate_headers_text(groups_data, output_asm);
+ string events_text = generate_events_text(groups_data, output_asm);
string map_header_text = generate_map_constants_text(groups_filepath, groups_data);
- string file_dir = get_directory_name(groups_filepath);
- char s = file_dir.back();
-
- write_text_file(file_dir + "groups.inc", groups_text);
- write_text_file(file_dir + "connections.inc", connections_text);
- write_text_file(file_dir + "headers.inc", headers_text);
- write_text_file(file_dir + "events.inc", events_text);
- write_text_file(file_dir + ".." + s + ".." + s + "include" + s + "constants" + s + "map_groups.h", map_header_text);
+ write_text_file(output_asm + sep + "groups.inc", groups_text);
+ write_text_file(output_asm + sep + "connections.inc", connections_text);
+ write_text_file(output_asm + sep + "headers.inc", headers_text);
+ write_text_file(output_asm + sep + "events.inc", events_text);
+ write_text_file(output_c + sep + "map_groups.h", map_header_text);
}
string generate_layout_headers_text(Json layouts_data) {
ostringstream text;
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/layouts/layouts.json\n@\n\n";
+ text << get_generated_warning("data/layouts/layouts.json", true);
for (auto &layout : layouts_data["layouts"].array_items()) {
if (layout == Json::object()) continue;
@@ -552,7 +622,7 @@ string generate_layout_headers_text(Json layouts_data) {
string generate_layouts_table_text(Json layouts_data) {
ostringstream text;
- text << "@\n@ DO NOT MODIFY THIS FILE! It is auto-generated from data/layouts/layouts.json\n@\n\n";
+ text << get_generated_warning("data/layouts/layouts.json", true);
text << "\t.align 2\n"
<< json_to_string(layouts_data, "layouts_table_label") << "::\n";
@@ -567,12 +637,9 @@ string generate_layouts_table_text(Json layouts_data) {
}
string generate_layouts_constants_text(Json layouts_data) {
+ string guard_name = "CONSTANTS_LAYOUTS";
ostringstream text;
-
- text << "#ifndef GUARD_CONSTANTS_LAYOUTS_H\n"
- << "#define GUARD_CONSTANTS_LAYOUTS_H\n\n";
-
- text << "//\n// DO NOT MODIFY THIS FILE! It is auto-generated from data/layouts/layouts.json\n//\n\n";
+ text << get_include_guard_start(guard_name) << get_generated_warning("data/layouts/layouts.json", false);
int i = 1;
for (auto &layout : layouts_data["layouts"].array_items()) {
@@ -581,12 +648,15 @@ string generate_layouts_constants_text(Json layouts_data) {
i++;
}
- text << "\n#endif // GUARD_CONSTANTS_LAYOUTS_H\n";
+ text << get_include_guard_end(guard_name);
return text.str();
}
-void process_layouts(string layouts_filepath) {
+void process_layouts(string layouts_filepath, string output_asm, string output_c) {
+ output_asm = strip_trailing_separator(output_asm).append(sep);
+ output_c = strip_trailing_separator(output_c).append(sep);
+
string err;
Json layouts_data = Json::parse(read_text_file(layouts_filepath), err);
@@ -597,12 +667,9 @@ void process_layouts(string layouts_filepath) {
string layouts_table_text = generate_layouts_table_text(layouts_data);
string layouts_constants_text = generate_layouts_constants_text(layouts_data);
- string file_dir = get_directory_name(layouts_filepath);
- char s = file_dir.back();
-
- write_text_file(file_dir + "layouts.inc", layout_headers_text);
- write_text_file(file_dir + "layouts_table.inc", layouts_table_text);
- write_text_file(file_dir + ".." + s + ".." + s + "include" + s + "constants" + s + "layouts.h", layouts_constants_text);
+ write_text_file(output_asm + "layouts.inc", layout_headers_text);
+ write_text_file(output_asm + "layouts_table.inc", layouts_table_text);
+ write_text_file(output_c + "layouts.h", layouts_constants_text);
}
int main(int argc, char *argv[]) {
@@ -616,33 +683,57 @@ int main(int argc, char *argv[]) {
char *mode_arg = argv[1];
string mode(mode_arg);
- if (mode != "layouts" && mode != "map" && mode != "groups")
- FATAL_ERROR("ERROR: must be 'layouts', 'map', or 'groups'.\n");
-
if (mode == "map") {
- if (argc != 5)
- FATAL_ERROR("USAGE: mapjson map \n");
+ if (argc != 6)
+ FATAL_ERROR("USAGE: mapjson map \n");
+ infer_separator(argv[3]);
string filepath(argv[3]);
string layouts_filepath(argv[4]);
+ string output_dir(argv[5]);
- process_map(filepath, layouts_filepath);
+ process_map(filepath, layouts_filepath, output_dir);
}
else if (mode == "groups") {
- if (argc != 4)
- FATAL_ERROR("USAGE: mapjson groups \n");
+ if (argc != 6)
+ FATAL_ERROR("USAGE: mapjson groups \n");
+ infer_separator(argv[3]);
string filepath(argv[3]);
+ string output_asm(argv[4]);
+ string output_c(argv[5]);
- process_groups(filepath);
+ process_groups(filepath, output_asm, output_c);
}
else if (mode == "layouts") {
- if (argc != 4)
- FATAL_ERROR("USAGE: mapjson layouts \n");
+ if (argc != 6)
+ FATAL_ERROR("USAGE: mapjson layouts \n");
+ infer_separator(argv[3]);
string filepath(argv[3]);
+ string output_asm(argv[4]);
+ string output_c(argv[5]);
- process_layouts(filepath);
+ process_layouts(filepath, output_asm, output_c);
+ }
+ else if (mode == "event_constants") {
+ if (argc < 5)
+ FATAL_ERROR("USAGE: mapjson event_constants [additional_map_files] ");
+
+ infer_separator(argv[3]);
+
+ vector filepaths;
+ const int firstMapFileArg = 3;
+ const int lastMapFileArg = argc - 2;
+ for (int i = firstMapFileArg; i <= lastMapFileArg; i++) {
+ filepaths.push_back(argv[i]);
+ }
+ string output_ids_file(argv[argc - 1]);
+
+ process_event_constants(filepaths, output_ids_file);
+ }
+ else {
+ FATAL_ERROR("ERROR: must be 'layouts', 'map', 'event_constants', or 'groups'.\n");
}
return 0;
diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile
index 1507c973f2..606318944c 100644
--- a/tools/preproc/Makefile
+++ b/tools/preproc/Makefile
@@ -3,10 +3,10 @@ CXX ?= g++
CXXFLAGS := -std=c++11 -O2 -Wall -Wno-switch -Werror
SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \
- utf8.cpp
+ utf8.cpp io.cpp
HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \
- utf8.h
+ utf8.h io.h
ifeq ($(OS),Windows_NT)
EXE := .exe
diff --git a/tools/preproc/asm_file.cpp b/tools/preproc/asm_file.cpp
index 04a7410e00..a82354cb5f 100644
--- a/tools/preproc/asm_file.cpp
+++ b/tools/preproc/asm_file.cpp
@@ -26,34 +26,13 @@
#include "char_util.h"
#include "utf8.h"
#include "string_parser.h"
-#include "../../gflib/characters.h"
+#include "../../include/constants/characters.h"
+#include "io.h"
-AsmFile::AsmFile(std::string filename) : m_filename(filename)
+AsmFile::AsmFile(std::string filename, bool isStdin, bool doEnum) : m_filename(filename)
{
- FILE *fp = std::fopen(filename.c_str(), "rb");
-
- if (fp == NULL)
- FATAL_ERROR("Failed to open \"%s\" for reading.\n", filename.c_str());
-
- std::fseek(fp, 0, SEEK_END);
-
- m_size = std::ftell(fp);
-
- if (m_size < 0)
- FATAL_ERROR("File size of \"%s\" is less than zero.\n", filename.c_str());
- else if (m_size == 0)
- return; // Empty file
-
- m_buffer = new char[m_size + 1];
-
- std::rewind(fp);
-
- if (std::fread(m_buffer, m_size, 1, fp) != 1)
- FATAL_ERROR("Failed to read \"%s\".\n", filename.c_str());
-
- m_buffer[m_size] = 0;
-
- std::fclose(fp);
+ m_buffer = ReadFileToBuffer(filename.c_str(), isStdin, &m_size);
+ m_doEnum = doEnum;
m_pos = 0;
m_lineNum = 1;
@@ -65,6 +44,7 @@ AsmFile::AsmFile(std::string filename) : m_filename(filename)
AsmFile::AsmFile(AsmFile&& other) : m_filename(std::move(other.m_filename))
{
m_buffer = other.m_buffer;
+ m_doEnum = other.m_doEnum;
m_pos = other.m_pos;
m_size = other.m_size;
m_lineNum = other.m_lineNum;
@@ -174,6 +154,8 @@ Directive AsmFile::GetDirective()
return Directive::String;
else if (CheckForDirective(".braille"))
return Directive::Braille;
+ else if (CheckForDirective("enum"))
+ return Directive::Enum;
else
return Directive::Unknown;
}
@@ -527,6 +509,99 @@ void AsmFile::OutputLine()
}
}
+// parses an assumed C `enum`. Returns false if `enum { ...` is not matched
+bool AsmFile::ParseEnum()
+{
+ if (!m_doEnum)
+ return false;
+
+ long fallbackPosition = m_pos;
+ std::string headerFilename = "";
+ long currentHeaderLine = SkipWhitespaceAndEol();
+ std::string enumName = ReadIdentifier();
+ currentHeaderLine += SkipWhitespaceAndEol();
+ std::string enumBase = "0";
+ long enumCounter = 0;
+ long symbolCount = 0;
+
+ if (m_buffer[m_pos] == ':') // :
+ {
+ m_pos++;
+ std::string underlyingType;
+ do {
+ currentHeaderLine += SkipWhitespaceAndEol();
+ underlyingType = ReadIdentifier();
+ } while (!underlyingType.empty());
+ currentHeaderLine += SkipWhitespaceAndEol();
+ }
+
+ if (m_buffer[m_pos] != '{') // assume assembly macro, otherwise assume enum and report errors accordingly
+ {
+ m_pos = fallbackPosition - 4;
+ return false;
+ }
+
+ currentHeaderLine += FindLastLineNumber(headerFilename);
+ m_pos++;
+ for (;;)
+ {
+ currentHeaderLine += SkipWhitespaceAndEol();
+ std::string currentIdentName = ReadIdentifier();
+ if (!currentIdentName.empty())
+ {
+ std::printf("# %ld \"%s\"\n", currentHeaderLine, headerFilename.c_str());
+ currentHeaderLine += SkipWhitespaceAndEol();
+ if (m_buffer[m_pos] == '=')
+ {
+ m_pos++;
+ SkipWhitespace();
+ enumBase.clear();
+ for (;;)
+ {
+ if (m_pos == m_size)
+ RaiseError("unexpected EOF");
+ if (m_buffer[m_pos] == ',')
+ break;
+ if (m_buffer[m_pos] == '\n')
+ {
+ currentHeaderLine++;
+ enumBase.push_back(' ');
+ }
+ else
+ {
+ enumBase.push_back(m_buffer[m_pos]);
+ }
+ m_pos++;
+ }
+ enumCounter = 0;
+ }
+ std::printf(".equiv %s, (%s) + %ld\n", currentIdentName.c_str(), enumBase.c_str(), enumCounter);
+ enumCounter++;
+ symbolCount++;
+ }
+ else if (symbolCount == 0)
+ {
+ RaiseError("%s:%ld: empty enum is invalid", headerFilename.c_str(), currentHeaderLine);
+ }
+
+ if (m_buffer[m_pos] != ',')
+ {
+ currentHeaderLine += SkipWhitespaceAndEol();
+ if (m_buffer[m_pos++] == '}' && m_buffer[m_pos++] == ';')
+ {
+ ExpectEmptyRestOfLine();
+ break;
+ }
+ else
+ {
+ RaiseError("unterminated enum from included file %s:%ld", headerFilename.c_str(), currentHeaderLine);
+ }
+ }
+ m_pos++;
+ }
+ return true;
+}
+
// Asserts that the rest of the line is empty and moves to the next one.
void AsmFile::ExpectEmptyRestOfLine()
{
@@ -599,3 +674,130 @@ void AsmFile::RaiseWarning(const char* format, ...)
{
DO_REPORT("warning");
}
+
+// Skips Whitespace including newlines and returns the amount of newlines skipped
+int AsmFile::SkipWhitespaceAndEol()
+{
+ int newlines = 0;
+ while (m_buffer[m_pos] == '\t' || m_buffer[m_pos] == ' ' || m_buffer[m_pos] == '\n')
+ {
+ if (m_buffer[m_pos] == '\n')
+ newlines++;
+ m_pos++;
+ }
+ return newlines;
+}
+
+// returns the last line indicator and its corresponding file name without modifying the token index
+int AsmFile::FindLastLineNumber(std::string& filename)
+{
+ long pos = m_pos;
+ long linebreaks = 0;
+ while (m_buffer[pos] != '#' && pos >= 0)
+ {
+ if (m_buffer[pos] == '\n')
+ linebreaks++;
+ pos--;
+ }
+
+ if (pos < 0)
+ RaiseError("line indicator for header file not found before `enum`");
+
+ pos++;
+ while (m_buffer[pos] == ' ' || m_buffer[pos] == '\t')
+ pos++;
+
+ if (!IsAsciiDigit(m_buffer[pos]))
+ RaiseError("malformatted line indicator found before `enum`, expected line number");
+
+ unsigned n = 0;
+ int digit = 0;
+ while ((digit = ConvertDigit(m_buffer[pos++], 10)) != -1)
+ n = 10 * n + digit;
+
+ while (m_buffer[pos] == ' ' || m_buffer[pos] == '\t')
+ pos++;
+
+ if (m_buffer[pos++] != '"')
+ RaiseError("malformatted line indicator found before `enum`, expected filename");
+
+ while (m_buffer[pos] != '"')
+ {
+ unsigned char c = m_buffer[pos++];
+
+ if (c == 0)
+ {
+ if (pos >= m_size)
+ RaiseError("unexpected EOF in line indicator");
+ else
+ RaiseError("unexpected null character in line indicator");
+ }
+
+ if (!IsAsciiPrintable(c))
+ RaiseError("unexpected character '\\x%02X' in line indicator", c);
+
+ if (c == '\\')
+ {
+ c = m_buffer[pos];
+ RaiseError("unexpected escape '\\%c' in line indicator", c);
+ }
+
+ filename += c;
+ }
+
+ return n + linebreaks - 1;
+}
+
+std::string AsmFile::ReadIdentifier()
+{
+ long start = m_pos;
+ if (!IsIdentifierStartingChar(m_buffer[m_pos]))
+ return std::string();
+
+ m_pos++;
+
+ while (IsIdentifierChar(m_buffer[m_pos]))
+ m_pos++;
+
+ return std::string(&m_buffer[start], m_pos - start);
+}
+
+long AsmFile::ReadInteger(std::string filename, long line)
+{
+ bool negate = false;
+ int radix = 10;
+ if (!IsAsciiDigit(m_buffer[m_pos]))
+ {
+ if (m_buffer[m_pos++] == '-')
+ negate = true;
+ else
+ RaiseError("expected number in included file %s:%ld", filename.c_str(), line);
+ }
+
+ if (m_buffer[m_pos] == '0' && m_buffer[m_pos + 1] == 'x')
+ {
+ radix = 16;
+ m_pos += 2;
+ }
+ else if (m_buffer[m_pos] == '0' && m_buffer[m_pos + 1] == 'b')
+ {
+ radix = 2;
+ m_pos += 2;
+ }
+ else if (m_buffer[m_pos] == '0' && IsAsciiDigit(m_buffer[m_pos+1]))
+ {
+ radix = 8;
+ m_pos++;
+ }
+
+ long n = 0;
+ int digit;
+
+ while ((digit = ConvertDigit(m_buffer[m_pos], radix)) != -1)
+ {
+ n = n * radix + digit;
+ m_pos++;
+ }
+
+ return negate ? -n : n;
+}
diff --git a/tools/preproc/asm_file.h b/tools/preproc/asm_file.h
index 29435f76a4..33e6ce5c49 100644
--- a/tools/preproc/asm_file.h
+++ b/tools/preproc/asm_file.h
@@ -31,13 +31,14 @@ enum class Directive
Include,
String,
Braille,
+ Enum,
Unknown
};
class AsmFile
{
public:
- AsmFile(std::string filename);
+ AsmFile(std::string filename, bool isStdin, bool doEnum);
AsmFile(AsmFile&& other);
AsmFile(const AsmFile&) = delete;
~AsmFile();
@@ -49,9 +50,11 @@ public:
bool IsAtEnd();
void OutputLine();
void OutputLocation();
+ bool ParseEnum();
private:
char* m_buffer;
+ bool m_doEnum;
long m_pos;
long m_size;
long m_lineNum;
@@ -68,6 +71,10 @@ private:
void RaiseError(const char* format, ...);
void RaiseWarning(const char* format, ...);
void VerifyStringLength(int length);
+ int SkipWhitespaceAndEol();
+ int FindLastLineNumber(std::string& filename);
+ std::string ReadIdentifier();
+ long ReadInteger(std::string filename, long line);
};
#endif // ASM_FILE_H
diff --git a/tools/preproc/c_file.cpp b/tools/preproc/c_file.cpp
index 508c628731..191ca4c152 100644
--- a/tools/preproc/c_file.cpp
+++ b/tools/preproc/c_file.cpp
@@ -30,56 +30,16 @@
#include "char_util.h"
#include "utf8.h"
#include "string_parser.h"
+#include "io.h"
CFile::CFile(const char * filenameCStr, bool isStdin)
{
- FILE *fp;
-
- if (isStdin) {
- fp = stdin;
+ if (isStdin)
m_filename = std::string{"/"}.append(filenameCStr);
- } else {
- fp = std::fopen(filenameCStr, "rb");
+ else
m_filename = std::string(filenameCStr);
- }
- std::string& filename = m_filename;
-
- if (fp == NULL)
- FATAL_ERROR("Failed to open \"%s\" for reading.\n", filename.c_str());
-
- m_size = 0;
- m_buffer = (char *)malloc(CHUNK_SIZE + 1);
- if (m_buffer == NULL) {
- FATAL_ERROR("Failed to allocate memory to process file \"%s\"!", filename.c_str());
- }
-
- std::size_t numAllocatedBytes = CHUNK_SIZE + 1;
- std::size_t bufferOffset = 0;
- std::size_t count;
-
- while ((count = std::fread(m_buffer + bufferOffset, 1, CHUNK_SIZE, fp)) != 0) {
- if (!std::ferror(fp)) {
- m_size += count;
-
- if (std::feof(fp)) {
- break;
- }
-
- numAllocatedBytes += CHUNK_SIZE;
- bufferOffset += CHUNK_SIZE;
- m_buffer = (char *)realloc(m_buffer, numAllocatedBytes);
- if (m_buffer == NULL) {
- FATAL_ERROR("Failed to allocate memory to process file \"%s\"!", filename.c_str());
- }
- } else {
- FATAL_ERROR("Failed to read \"%s\". (error: %s)", filename.c_str(), std::strerror(errno));
- }
- }
-
- m_buffer[m_size] = 0;
-
- std::fclose(fp);
+ m_buffer = ReadFileToBuffer(filenameCStr, isStdin, &m_size);
m_pos = 0;
m_lineNum = 1;
diff --git a/tools/preproc/c_file.h b/tools/preproc/c_file.h
index 49e633a18d..c40c33c962 100644
--- a/tools/preproc/c_file.h
+++ b/tools/preproc/c_file.h
@@ -56,6 +56,4 @@ private:
void RaiseWarning(const char* format, ...);
};
-#define CHUNK_SIZE 4096
-
#endif // C_FILE_H
diff --git a/tools/preproc/io.cpp b/tools/preproc/io.cpp
new file mode 100644
index 0000000000..321676180d
--- /dev/null
+++ b/tools/preproc/io.cpp
@@ -0,0 +1,51 @@
+#include "preproc.h"
+#include "io.h"
+#include
+#include
+#include
+
+char *ReadFileToBuffer(const char *filename, bool isStdin, long *size)
+{
+ FILE *fp;
+ if (isStdin)
+ fp = stdin;
+ else
+ fp = std::fopen(filename, "rb");
+
+ if (fp == NULL)
+ FATAL_ERROR("Failed to open \"%s\" for reading.\n", filename);
+
+ *size = 0;
+ char *buffer = (char *)malloc(CHUNK_SIZE + 1);
+ if (buffer == NULL) {
+ FATAL_ERROR("Failed to allocate memory to process file \"%s\"!", filename);
+ }
+
+ std::size_t numAllocatedBytes = CHUNK_SIZE + 1;
+ std::size_t bufferOffset = 0;
+ std::size_t count;
+
+ while ((count = std::fread(buffer + bufferOffset, 1, CHUNK_SIZE, fp)) != 0) {
+ if (!std::ferror(fp)) {
+ *size += count;
+
+ if (std::feof(fp)) {
+ break;
+ }
+
+ numAllocatedBytes += CHUNK_SIZE;
+ bufferOffset += CHUNK_SIZE;
+ buffer = (char *)realloc(buffer, numAllocatedBytes);
+ if (buffer == NULL) {
+ FATAL_ERROR("Failed to allocate memory to process file \"%s\"!", filename);
+ }
+ } else {
+ FATAL_ERROR("Failed to read \"%s\". (error: %s)", filename, std::strerror(errno));
+ }
+ }
+
+ buffer[*size] = 0;
+
+ std::fclose(fp);
+ return buffer;
+}
diff --git a/tools/preproc/io.h b/tools/preproc/io.h
new file mode 100644
index 0000000000..ac4e91051f
--- /dev/null
+++ b/tools/preproc/io.h
@@ -0,0 +1,8 @@
+#ifndef IO_H_
+#define IO_H_
+
+#define CHUNK_SIZE 4096
+
+char *ReadFileToBuffer(const char *filename, bool isStdin, long *size);
+
+#endif // IO_H_
diff --git a/tools/preproc/preproc.cpp b/tools/preproc/preproc.cpp
index eb2d4c8a23..20c2de51b6 100644
--- a/tools/preproc/preproc.cpp
+++ b/tools/preproc/preproc.cpp
@@ -20,11 +20,14 @@
#include
#include
+#include
#include "preproc.h"
#include "asm_file.h"
#include "c_file.h"
#include "charmap.h"
+static void UsageAndExit(const char *program);
+
Charmap* g_charmap;
void PrintAsmBytes(unsigned char *s, int length)
@@ -43,11 +46,12 @@ void PrintAsmBytes(unsigned char *s, int length)
}
}
-void PreprocAsmFile(std::string filename)
+void PreprocAsmFile(std::string filename, bool isStdin, bool doEnum)
{
std::stack stack;
- stack.push(AsmFile(filename));
+ stack.push(AsmFile(filename, isStdin, doEnum));
+ std::printf("# 1 \"%s\"\n", filename.c_str());
for (;;)
{
@@ -66,7 +70,7 @@ void PreprocAsmFile(std::string filename)
switch (directive)
{
case Directive::Include:
- stack.push(AsmFile(stack.top().ReadPath()));
+ stack.push(AsmFile(stack.top().ReadPath(), false, doEnum));
stack.top().OutputLocation();
break;
case Directive::String:
@@ -83,6 +87,12 @@ void PreprocAsmFile(std::string filename)
PrintAsmBytes(s, length);
break;
}
+ case Directive::Enum:
+ {
+ if (!stack.top().ParseEnum())
+ stack.top().OutputLine();
+ break;
+ }
case Directive::Unknown:
{
std::string globalLabel = stack.top().GetGlobalLabel();
@@ -109,9 +119,9 @@ void PreprocCFile(const char * filename, bool isStdin)
cFile.Preproc();
}
-char* GetFileExtension(char* filename)
+const char* GetFileExtension(const char* filename)
{
- char* extension = filename;
+ const char* extension = filename;
while (*extension != 0)
extension++;
@@ -130,35 +140,64 @@ char* GetFileExtension(char* filename)
return extension;
}
+static void UsageAndExit(const char *program)
+{
+ std::fprintf(stderr, "Usage: %s [-i] [-e] SRC_FILE CHARMAP_FILE\nwhere -i denotes if input is from stdin\n -e enables enum handling\n", program);
+ std::exit(EXIT_FAILURE);
+}
+
int main(int argc, char **argv)
{
- if (argc < 3 || argc > 4)
+ int opt;
+ const char *source = NULL;
+ const char *charmap = NULL;
+ bool isStdin = false;
+ bool doEnum = false;
+
+ /* preproc [-i] [-e] SRC_FILE CHARMAP_FILE */
+ while ((opt = getopt(argc, argv, "ie")) != -1)
{
- std::fprintf(stderr, "Usage: %s SRC_FILE CHARMAP_FILE [-i]\nwhere -i denotes if input is from stdin\n", argv[0]);
- return 1;
+ switch (opt)
+ {
+ case 'i':
+ isStdin = true;
+ break;
+ case 'e':
+ doEnum = true;
+ break;
+ default:
+ UsageAndExit(argv[0]);
+ break;
+ }
}
- g_charmap = new Charmap(argv[2]);
+ if (optind + 2 != argc)
+ UsageAndExit(argv[0]);
- char* extension = GetFileExtension(argv[1]);
+ source = argv[optind + 0];
+ charmap = argv[optind + 1];
+
+ g_charmap = new Charmap(charmap);
+
+ const char* extension = GetFileExtension(source);
if (!extension)
FATAL_ERROR("\"%s\" has no file extension.\n", argv[1]);
if ((extension[0] == 's') && extension[1] == 0)
- PreprocAsmFile(argv[1]);
- else if ((extension[0] == 'c' || extension[0] == 'i') && extension[1] == 0) {
- if (argc == 4) {
- if (argv[3][0] == '-' && argv[3][1] == 'i' && argv[3][2] == '\0') {
- PreprocCFile(argv[1], true);
- } else {
- FATAL_ERROR("unknown argument flag \"%s\".\n", argv[3]);
- }
- } else {
- PreprocCFile(argv[1], false);
- }
- } else
+ {
+ PreprocAsmFile(source, isStdin, doEnum);
+ }
+ else if ((extension[0] == 'c' || extension[0] == 'i') && extension[1] == 0)
+ {
+ if (doEnum)
+ FATAL_ERROR("-e is invalid for C sources\n");
+ PreprocCFile(source, isStdin);
+ }
+ else
+ {
FATAL_ERROR("\"%s\" has an unknown file extension of \"%s\".\n", argv[1], extension);
+ }
return 0;
}
diff --git a/tools/ramscrgen/elf.cpp b/tools/ramscrgen/elf.cpp
index 7e78704b8c..077fcc82a4 100644
--- a/tools/ramscrgen/elf.cpp
+++ b/tools/ramscrgen/elf.cpp
@@ -1,7 +1,6 @@
#include
#include
#include
-#include